Man vs. Machine - The Algorithm that beat the DJ

What if an algorithm could create a better set than a DJ? As we head further into AI and Deep Learning, what was once considered impossible, is now very plausible.

Two years ago I made the hypothesis that the DJ brain could be codified, so that an Algorithm could include nuances in a playlist which was previously only possible by humans.

Putting a list of songs together is relatively straight forward. Selecting a group of songs that fit together perfectly and then playing them in a sequence that has meaning…is a whole different ball game. But, if you think about it for a moment, that is exactly what a DJ does.

Discover Weekly is proof of how much we like to discover new music. My argument is that discovery shouldn’t be an isolated event, but be part of every day listening. As a DJ you often strive to push the boundaries and introduce people to new music, but always in a “trusted” environment, mixing the familiar with the new.

Up until now, human curators, selectors and DJ’s have been the experts with the personal touch, but because music is so incredibly personal — it’s never really tailored to you.

So my goal was to build an algorithm that could think like a DJ and be your support. With a click of the button, Muru can help you create your own personal playlists within seconds. Every time you press play Muru will find the right set of songs to create the best playlist possible. It’s as if you could just say to the DJ “You know the music I like, make me a playlist”.

In order to make this work, there are two elements that need to work in unison.

Song Classification

The 1st and perhaps most obvious one, is the data (the songs). Without accurate data it will never be easy to find what you like and recommenders will never be able to find you all the good music you will love.

The data problem today, is much larger than streaming services would ever like to admit. Only a tiny percentage of their catalogues only ever gets included in their recommenders which is why you often get stuck in a loop.

“Madlib” — is the name we gave our crazy classification system. You can grab any song of any digital catalogue and throw it into Madlib. Within seconds it will be able to accurately place it in the correct genre. At the moment our system can detect over 40 genres (like Funk, Hip Hop, Nu Disco, Breaks, Country, Heavy Metal etc.) and our accuracy score is 94%. This is not just for the back catalogue of music that already exists, but we built this so that the 20,000 songs that get added to streaming platforms every day — can actually be properly processed. Think of all the millions of songs (+100m) on Soundcloud that are not properly classified, therefore not part of the recommendation.

DJ Formula

The second part of the equation is what I mentioned before — the “Dj Formula”. How do you teach a machine to think like a DJ, so that when it is presented with a set of songs, it can order them in the best way possible? It is a complex problem to be sure, but with a sample of our test below, you can see that we are on to a winner.

Here you can see 3 playlists with the exact same songs, but in a different order. We asked 2 professional DJ’s to order these songs in the way it made the most sense to them. We instructed them both on what the 1st song (Jimpster) and the last song (Osunlade) should be. For the rest, the order was entirely up to them. We gave “Madlib” the same instructions.

Can you guess which one was created by the machine?

Man Vs. Machine — Muru_playlist 1

Man Vs. Machine — Muru_playlist 2

Man Vs. Machine — Muru_playlist 3

TEMPO distribution for each playlist

As we set the 1st and last track, we knew that the playlist would start and end with 115BPM, I also added a track with a lower BPM of 112 to see where it would be placed. You clearly see it in each distribution graph. In all three it is roughly in the middle of the playlist. I asked the DJ’s to imagine they were playing this set out — how would it evolve, what songs did they feel fit together better than others. You will be hard pressed to determine which one is “Madlib” and which belong to the humans.

We picked a niche genre like Deep House, because it is incredibly more complicated due to the very small nuances between tracks. But, we also feel that Club music is incredibly under served across all streaming services. So, we decided that was a great starting point.

Across all Club music, we know “Madlib” now thinks like a DJ, the next part of the puzzle is getting our classification accuracy to 99%.

With AI and Deep Learning, music tech is entering into a whole new and very exciting dimension. I firmly believe that our classification engine can benefit everyone in music streaming from the artist and labels down to the end user.