Back to Index

Machine Learning at Spotify - Gustav Soderstrom | AI Podcast Clips


Transcript

There's an interesting statistic I saw. So Spotify has, maybe you can correct me, but over 50 million songs, tracks and over 3 billion playlists. So 50 million songs and 3 billion playlists, 60 times more playlists. What do you make of that? Yeah, so the way I think about it is that from a statistician or machine learning point of view, you have all these, if you want to think about reinforcement learning, you have this state space of all the tracks and you can take different journeys through this world.

And I think of these as people helping themselves and each other, creating interesting vectors through this space of tracks. And then it's not so surprising that across many tens of millions of atomic units, there will be billions of paths that make sense. And we're probably pretty quite far away from having found all of them.

So our job now is users, when Spotify started, it was really a search box that was for the time pretty powerful. And then I like to refer to it as this programming language called playlisting, where if you, as you probably were pretty good at music, you knew your new releases, you knew your back catalog, you knew your Star Way to Heaven, you could create a soundtrack for yourself using this playlisting tool that's like metaprogramming language for music to soundtrack your life.

And people who were good at music, it's back to how do you scale the product. For people who are good at music, that wasn't actually enough. If you had the catalog and a good search tool, you can create your own sessions. You could create really good a soundtrack for your entire life, probably perfectly personalized because you did it yourself.

But the problem was most people, many people aren't that good at music. They just can't spend the time. Even if you're very good at music, it's going to be hard to keep up. So what we did to try to scale this was to essentially try to build, you can think of them as agents that this friend that some people had that helped them navigate this music catalog.

That's what we're trying to do for you. But also there is something like 200 million active users on Spotify. So there, okay, so from the machine learning perspective, you have these 200 million people plus they're creating, it's really interesting to think of a playlist as, I mean, I don't know if you meant it that way, but it's almost like a programming language.

It's a release, a trace of exploration of those individual agents, the listeners, and you have all this new tracks coming in. So it's a fascinating space that is ripe for machine learning. So is there, is it possible, how can playlists be used as data in terms of machine learning and to help Spotify organize the music?

So we found in our data, not surprising that people who playlisted a lot, they retained much better. They had a great experience. And so our first attempt was to playlist for users. And so we acquired this company called Tunigo of editors and professional playlisters and kind of leveraged the maximum of human intelligence to help build kind of these vectors through the track space for people.

And that broadened the product. Then the obvious next, and we use statistical means where they could see when they created a playlist, how did that playlist perform? They could see skips of the songs, they could see how the songs perform and they manually iterated the playlist to maximize performance for a large group of people.

But there were never enough editors to playlist for you personally. So the promise of machine learning was to go from kind of group personalization, using editors and tools and statistics to individualization. And then what's so interesting about the 3 billion playlists we have is, we ended, the truth is we lucked out.

This was not a priority strategy as is often the case. It looks really smart in hindsight was as dumb luck. We looked at these playlists and we had some people in the company, a person named Eric Bernadotton, who was really good at machine learning already back then in like 2007, 2008.

Back then it was mostly collaborative filtering and so forth. But we realized that what this is, is people are grouping tracks for themselves that have some semantic meaning to them. And then they actually label it with a playlist name as well. So in a sense, people were grouping tracks along semantic dimensions and labeling them.

And so could you use that information to find that latent embedding? And so we started playing around with collaborative filtering and we saw tremendous success with it. Basically trying to extract some of these dimensions. And if you think about it, it's not surprising at all. It'd be quite surprising if playlists were actually random, if they had no semantic meaning.

For most people, they group these tracks for some reason. So we just happened to cross this incredible data set where people are taking these tens of millions of tracks and grouped them along different semantic vectors. And the semantics being outside the individual users, so it's some kind of universal.

There's a universal embedding that holds across people on this earth. Yes, I do think that the embeddings you find are going to be reflective of the people who playlisted. So if you have a lot of indie lovers who playlist, your embed is going to perform better there. But what we found was that, yes, there were these latent similarities.

They were very powerful. And it was interesting because I think that the people who playlisted the most initially were the so-called music aficionados who were really into music. And they often had a certain... Their taste was often geared towards a certain type of music. And so what surprised us, if you look at the problem from the outside, you might expect that the algorithms would start performing best with mainstreamers first, because it somehow feels like an easier problem to solve mainstream taste than really particular taste.

It was the complete opposite for us. The recommendations performed fantastically for people who saw themselves as having very unique taste. That's probably because all of them playlisted and they didn't perform so well for mainstreamers. They actually thought they were a bit too particular and unorthodox. So we had the complete opposite of what we expected.

Success within the hardest problem first, and then had to try to scale to more mainstream recommendations.