¿Cómo funciona el algoritmo y el sistema de recomendación de Spotify?
¿Quieres saber cómo funciona el algoritmo de recomendación de Spotify? Descubre los tres modelos en los que se apoya su sistema de recomendación: Modelo de Filtrado Colaborativo, Modelo de Procesamiento del Lenguaje Natural y Modelo de Audio Sin Procesar

Todos conocemos Spotify, una plataforma de música en streaming con más de 400 millones de usuarios mensuales. Los usuarios de esta plataforma tienen acceso a millones de canciones y podcast de creadores de todo el mundo.
Al igual que Netflix, la gran ventaja de Spotify frente a la competencia es su sistema de recomendación basado en Deep Learning. Este sistema permite ofrecer a los usuarios una experiencia totalmente personalizada basada en los datos que la plataforma recopila.
A través de 3 sistemas de recomendación que veremos más adelante la plataforma recomienda a los usuarios música similar a la que escuchan o han marcado como favorita. De esta manera consigue que los usuarios pasen más tiempo en su plataforma.
Modelos de recomendación utilizados por el algoritmo de Spotify
Spotify tiene 3 mecanismos para hacer recomendaciones dentro de su plataforma.
1. MODELO DE FILTRADO COLABORATIVO
Puede que te suene este modelo ya que es el que utiliza Netflix para hacer sus recomendaciones de películas. Fue la primera compañía en implementarlo y debido a su gran éxito, muchas comenzaron a aplicarlo.
Este modelo analiza el comportamiento de los distintos usuarios con las canciones, podcast, listas de reproducción, etc. De esta forma, le muestra al usuario canciones que pueden gustarle porque usuarios con gustos similares a él las escuchan.
Para que se entienda mejor vamos a poner un ejemplo:
- El usuario 1 escucha las canciones A, B y C
- El usuario 2 escucha las canciones A, B y D
- Entonces, Spotify detecta que son usuarios con gustos similares y por lo tanto, les gustarán las mismas canciones. Al usuario 1 le recomienda escuchar la canción D y al usuario 2 le recomienda escuchar la canción C.
Pero, ¿Cómo funciona este sistema de filtrado colaborativo?
Este modelo trabaja con la matriz de interacciones. La tarea del aprendizaje automático es aprender una función que prediga que canciones le van a gustar a cada usuario. La matriz suele ser enorme, muy dispersa y la mayoría de los valores faltan.
Cada fila de matriz representa uno de los más de 400 millones de usuarios de Spotify y cada columna representa una de las más de 35 millones de canciones de la plataforma.
Después, la biblioteca de Python ejecuta una fórmula de factorización de matriz larga y complicada que da como resultado, dos tipos de vectores (representados por X e Y). X es el vector usuario que representa el gusto de un solo usuario, e Y es el vector canción que representa el perfil de una sola canción.
En este punto, tenemos más de 400 millones de vectores de usuario y más de 35 millones de vectores de canción. Por sí solos, no aportan ninguna información, pero cuando los comparamos obtenemos una información muy valiosa.
Para conocer qué usuarios tienen unos gustos similares a los nuestros, hay que comparar nuestro vector con el resto de vectores, de esto se encarga el filtrado colaborativo. Una vez hecho esto, conoceremos qué usuarios son los más cercanos a nosotros. Y lo mismo ocurre con las canciones, cuando comparamos el vector de una canción con el resto de vectores de canción, encontramos qué canciones son similares.
2. MODELO DE PROCESAMIENTO DE LENGUAJE NATURAL
Otra forma que utiliza Spotify para hacer recomendaciones a sus usuarios es a través del procesamiento del lenguaje natural.
Las canciones al tratarse de audios no cuentan con palabras escritas que describan la canción, es decir, no se puede procesar ningún texto que nos diga si la canción es veraniega, nostálgica, divertida...
Para ello, se utilizan todos los contenidos publicados en la red como pueden ser blogs, sitios webs, artículos de revistas digitales, etc. en los que se hable de la canción o artista que se está estudiando para descubrir qué adjetivos o palabras se usan más frecuentemente para describir esa canción o artista en concreto.
Una vez que se han analizado todos estos contenidos, el algoritmo crea una matriz informativa que sirve como base de datos y podemos buscar similitudes entre canciones. Además, a cada término que define el track musical se le da una ponderación para saber la relevancia que tiene cada palabra en cada canción.
Por otro lado, también se busca en los artículos, blogs, etc. los artistas y canciones que se mencionan junto a otros.
3. MODELO DE AUDIO SIN PROCESAR
En este modelo, se analizan las canciones en sí para conocer sus características (duración de la canción, volumen, tempo, clave, etc.) y de esta forma trazar similitudes entre unas y otras.
Es muy útil sobre todo para poder recomendar aquellas canciones que son nuevas y aún no tienen ningún tipo de historial porque se puede comparar las características de esta canción con las de otras para encontrar similitudes y mostrársela a los usuarios que escuchan esas canciones similares.
¿Y cómo se analizan las canciones para obtener sus características?
La respuesta es muy sencilla, con redes neuronales convolucionales. Es la misma tecnología que se utiliza en el software de reconocimiento facial, pero en el caso de Spotify se ha modificado para usarlo en audios en lugar de píxeles.
Conclusión
Gracias a estos tres modelos de recomendación Spotify es capaz de hacer millones de recomendaciones basada en diferentes criterios ofreciendo una experiencia única. Le da a los usuarios la oportunidad de escuchar música nueva cada día sin repetir ninguna canción y descubrir nuevos artistas.
Cada día podemos ver la importancia que tienen la Inteligencia Artificial, el Machine Learning y el Deep Learning en los negocios. Trabajar los datos y utilizarlos a nuestro favor puede suponer una gran diferencia en nuestra empresa.