Algoderitmo: Recomendación musical para todos

All Entradas

En este post describo el funcionamiento del algoritmo que he creado para recomendar artistas emergentes de forma personalizada en algoderitmo.com, lanzado junto a mi nueva canción El Algoritmo.

Los sistemas de recomendación funcionan de dos maneras, se basan en lo que escuchan en común los usuarios (collaborative filtering), o en el contenido que se está recomendando (content-based), en este caso la música. La gran mayoría de los algoritmos que usamos a diario (para escuchar música, para comprar, para ver series) se basan en la primera manera. El problema es que esta solo es capaz de recomendar cosas populares. Por eso mi algoritmo se basa en la segunda forma, analizando el audio de las canciones. Para ello utiliza una gran red neuronal, una especie de GPT de la música, que acabo de publicar junto a mis compañeros de Pandora/SiriusXM en la mayor conferencia mundial de música y tecnología.

Estamos hablando de una herramienta de inteligencia artificial que se ha entrenado a sí misma (self-supivervised) a partir de millones de canciones para extraer una representación matemática de lo que cada canción es en «esencia».  Estas «escencias» se pueden visualizar como puntos en un mapa multidimensional, y se colocan tanto artistas independientes como artistas populares en este mapa. Así, las canciones que suenan similares estarán juntas en la misma región del mapa, independientemente de la popularidad del artista. Esto permite buscar un artista popular en el mapa y ver qué artistas independientes están cerca, lo que nos permite construir una playlist. (Este párrafo fue re-escrito por ChatGPT, que se explica mejor que yo).

¿Sabe de música la AI?

Hay que tener en cuenta que esta red neuronal no sabe de música, ya que ha aprendido sola, únicamente utilizando audios de canciones y ninguna otra información. Por tanto no sabe qué es más importante para un oyente en términos de similitud entre dos artistas, así que a veces puedes proponer dos artistas como similares pero con muy diferente género musical, ya que tal vez compartan un tipo de producción musical o alguna otra similitud en el audio. Las lista de canciones similares a un artista que propone el algoritmo podría mejorar sustancialmente si ajustamos la red neuronal reentrenándola con información musical, como géneros musicales, instrumentos, sonoridad, etc., pero esto lo dejo para una próxima versión del algoritmo.

Los géneros musicales también son puntos en este mapa, y los he calculado usando una técnica de zero-shot learning, utilizando los géneros que me proporcionaba la api de Spotify y calculando el centroide de todas las canciones de un mismo género. De esta manera en el mapa no solo hay artistas, sino también géneros. Esta técnica es limitada, y al no estar el espacio optimizado para representar géneros, no funciona bien en algunos casos, especialmente cuando las canciones del género usadas para calcular el centroide están demasiado dispersas en el mapa.

¿De dónde salen los artistas?

Los artistas emergentes con los que construyo las playlists vienen principalmente de convocatorias para artistas emergentes. En concreto, las fuentes de artistas que he usado son: los premios MIN de la música independiente 2021, la convocatoria girando por salas GPS 2022, los artistas seleccionados para participar en el Mercat de Música de Vic 2021 y 2022, los seleccionados para el BIME 2022, los seleccionados para las ayudas de las Cases de Música de Catalunya 2022, los seleccionados en el MadCool Talent 2021 y en el festival Ciudad Emergente de Argentina. De esta manera me aseguro que los grupos son independientes y activos. Luego lo he complementado con artistas emergentes sugeridos por curadores como Vicente Martín Abreu (En Bandeja de Plata), Raúl Chamorro (Ultra Local Records) y algunos blogs especializados. Dentro de este conjunto de artistas hay algunos artistas más populares, por tanto aplico un filtro, quedando fuera de la lista de artistas recomendables los que tengan más de 50 mil followers en Spotify. En total hay más de mil artistas emergentes en esta primera versión del algoritmo.

Los artistas desde los que puedes iniciar una playlist son tanto estos artistas emergentes como un gran número de artistas populares, de esta manera el usuario puede encontrar artistas que conoce y de su agrado. Sin embargo, estos artistas populares no aparecen en ninguna playlist generada por el algoritmo. Por último, el slider te permite mezclar la esencia de dos artistas o géneros en diferente grado (buscando el punto medio en el mapa), y si lo llevas a un extremo solo tendrá en cuenta a uno de los dos artistas.

Si te interesa el tema te dejo por aquí mi web y mi blog como investigador. Ah y no dejes de escuchar mi canción El Algoritmo.

http://sergiooramas.com/
https://medium.com/@soramas

2 Comments

  1. Sergito, ya por curiosidad. Hablas de mapas, el algoritmo es bidimensional o N-dimensional, con una dimension por «parametro»?

    Un abrazo, y a ver si te veo en Madrid o en TFE.

Comments are closed.