In recent years, customer experience in the digital space has improved dramatically. Uber, Amazon, Netflix, Facebook, and Waze, for example, have made customer experience a key differentiator. We, as consumers, receive a greater personalized experience than ever before due to the information these companies gather about us and our habits. With this data, they are able to recommend products, target advertisements, and suggest music you may enjoy (and much more).
Personally, I love music and discovering my next favorite song. It is a true passion of mine. This, combined with work I do for our clients—empowering them to use all kinds of data—got me curious about Spotify and their algorithms. I’m often amazed by the quality of song recommendations that come from Spotify’s “Discover Weekly” playlist. “Discover Weekly” is a curated set of 30 songs recommended for individual users every Monday. But how does Spotify do it?
To get this personalized experience, Spotify has combined and weighted three distinct recommendation approaches to tune their model:
Collaborative filtering – What you listen to vs. what other listeners listen to.
Natural language processing – Analyzing content on the internet (e.g., blogs, websites, etc.).
Audio analysis – Analyzing the data behind each music track.
Collaborative filtering is the most heavily weighted and primary strategy Spotify uses to recommend music to individual listeners. At a basic level, Spotify looks at the songs you’ve listened to, favorited, and added to your individual playlists and cross references that list with lists from other customers. If you and another listener have 90% overlap in the music you both have listened to and favorited, chances are you’ll like the other 10% of music the other customer has in their library. Spotify is more likely to recommend music from listeners with similar tastes—someone with a 90% overlap versus someone with only a 10% overlap.
How does Spotify cross-reference listener preferences? Using matrices built off implicit feedback from your tendencies and the streaming tendencies of other customers. Very simply, if:
User D and User E have similar music tastes, both liking Song V, W, and Z and not liking Song X.
User E has not listened to Song Y, but User D likes Song Y.
Spotify will recommend Song Y to User E.
Now imagine, every customer using Spotify has a row in this master matrix and every song has a column… the result is a little more complicated and looks like this:
Source: Chris Johnson
Spotify uses a machine learning algorithm to figure out which users’ preferences are similar and which songs are similar without knowing what a single song sounds like. Spotify assumes that music sounds similar because the same listeners are listening to the same groupings of music and can recommend songs based on this information.
Collaborative filtering isn’t unique to Spotify’s music recommendations. Many retailers use similar machine learning models to recommend products online. Think: “Users who bought X, also bought Y.” By analyzing products typically bought together, patterns can be identified, and recommendations can be made to the customer.
Natural Language Processing
Natural language processing (NLP), at the highest level, is a branch of artificial intelligence (AI) where a computer is trained to understand “natural” or “human” speech. In Spotify’s case, this refers to song metadata, blog posts, and news articles. Spotify scours the web for text content that mentions artists, songs, and adjectives used to describe each. By comparing this to “natural language” written about other songs and artists and analyzing artists that are often referenced together, machine learning can determine similarities and differences between different songs and artists. Using a similar matrix algorithm as collaborative filtering, Spotify can ascertain which songs and artists are similar and could be recommended together.
Outside of Spotify, NLP is also leveraged by chatbots. Chatbots use NLP to understand text interactions with customers and determine whether the chatbot can handle next steps or the interaction needs to be escalated to a human. This technology is often used by retail companies looking to provide on-demand support for customers on their websites.
To learn about Credera’s perspective on natural language processing, machine learning, and artificial intelligence, please check out our recent machine learning blog series.
The first two techniques Spotify uses for recommending music do not use any analysis of the music itself. Audio analysis is the third and final way Spotify enhances their already-thorough recommendation model. This technique is how Spotify can recommend brand new music to its listeners. While collaborative filtering and NLP rely on other people listening and finding content on a specific artist or track, audio analysis can find similar music based on how the track sounds.
Using an AI-based technology similar to facial recognition, Spotify can analyze individual music files using convolutional neural networks (a form of deep learning). By analyzing markers in audio files that identify different themes in the music, Spotify can group similar music styles and artists by using hundreds of filters such as tempo, loudness, or specific musical keys, and use this data to enhance their recommendation model. Below shows a 30-second clip from “Around the World” by Daft Punk.
Source: The Echo Nest
Spotify analyzes excerpts from each song against filters that pick up harmonic content and determine predictors for how songs sound. Engineers at Spotify are always working to train these filtering models and to group, at even a higher level, songs based on larger concepts such as harmonicity, chords, and chord progressions.
Audio analysis can also be used outside of the music industry. It is possible to use similar technologies to analyze customer sentiment in a customer service capacity. The tone, speed, and amount of stress in a customer’s voice can be used to route calls in a call center to an appropriate audience. For example, if a customer seems particularly agitated, the call could be directly routed from an automated system to a supervisor to help mitigate the issue.
Using Data to Improve Customer Experience
Spotify is one of many companies using customer and outside information to improve experiences for their customers. For their “Discovery Weekly” playlist, Spotify is only using a few of the many possible techniques available to make recommendations for its users. With improving technologies and analysis techniques, data-driven customer experience will become the norm across most, if not all, companies in the years to come.
If you’re interested in learning how Credera can help your company improve customer experience using customer data and recommendation analysis, please reach out to firstname.lastname@example.org.