jueves, 14 de abril de 2016

A música máis alegre e máis triste do mundo: un experimento con datos de Spotify

Calquera persoa con algo de coñecemento de programación e o uso de software libre pode elaborar as súas listas no servizo de 'streaming' musical. Este experimento logra dúas listas coas máis tristes e alegres do mundo.


Da mesma forma que estas empresas buscan continuamente patróns que lles permitan mellorar os seus servizos, calquera persoa con coñecementos de programación pode tamén facer uso destes datos para responder, a menor escala, as súas propias preguntas. Quizá, na nosa Alta Fidelidade particular, queremos nosa propia lista das cancións máis tristes do mundo para poder escoitar durante o atasco dos luns pola mañá. Ou quizá queremos as cancións máis alegres para poñer coma unha bala cando se volvan a convocar eleccións: dúas festas da democracia en tan pouco tempo!

O mellor de todo é que o traballo de selección xa o fixeron por nós os usuarios de Spotify ao crear as súas listas de reprodución públicas. Se accedemos a eses datos, podemos ver que cancións inclúense máis en listas alegres e cales en listas tristes. Así que desenvolvemos uns pequenos programas en Python ?para a descarga dos datos? e R ?para a posterior análise. Eliximos Spotify porque é relativamente sinxelo acceder ás súas bases de datos. Os lectores con inquietudes técnicas poden obter o código utilizado neste repositorio.

Para facernos esas dúas recompilacións que acabamos de mencionar, descargamos os nomes das cancións que integran todas as listas de reprodución publicadas en Spotify que contiñan no título a palabra sad (ou algún dos seus sinónimos) por unha banda, e happy (e novamente os seus sinónimos) por outra. Fixemos as procuras en inglés porque o número de listas etiquetadas nese idioma é bastante maior que en español (si, probamos). En total descargamos 11.330 listas de reprodución tristes, con máis case 330.000 cancións diferentes, e 8.931 listas de reprodución alegres, con máis de 350.000 temas distintos.

Unha vez que temos estes datos, a tentación de ver limitarse a mirar que cancións repítense máis en cada lista é forte. Con todo, iso daríanos como resultado que Sorry, de Justin Bieber, está simultaneamente entre as cinco cancións máis tristes e máis alegres. Hai un detalle importante: que unha canción apareza no 10 % das recompilacións de música triste non significa nada se aparece nun 15 % de listas etiquetadas con termos emocionalmente asépticos (música, favoritos, etc): esperamos que a música relacionada cunha sensación determinada apareza nunha porcentaxe maior das súas listas correspondentes. Para corrixir isto, descargamos tamén un conxunto de datos neutro que nos permita comprobar este nivel basal de cada tema: algo máis de 50000 listas de reprodución con máis de 1.600.000 cancións en total.

"En total descargamos 11.330 listas de reprodución tristes, con máis case 330.000 cancións diferentes, e 8.931 listas de reprodución alegres, con máis de 350.000 temas distintos"

Ben, cal é o resultado final? Despois de analizar os datos segundo os criterios que acabamos de mencionar, fixemos un ranking e recompilamos preto de 50 cancións de cada tipo coas que confeccionamos unhas listas que publicamos: as máis tristes [Spotify,YouTube] e as máis alegres [Spotify,YouTube]. Están ordenadas de maior a menor segundo a súa relevancia, pero se queren unicamente un cabalo gañador, estes serían Build you up, de Kim Taylor, e Celeste, de Ezra Vin. Justin Bieber segue por aí, pero nada é perfecto.

Os resultados conteñen os tipos de música que un esperaría: moito piano lento para a triste e ritmos animados para a alegre. Con todo, hai que ter en conta todas as limitacións que leva o método escollido: en realidade, soamente analizamos unha pequena porcentaxe de todas as cancións dispoñibles, e unicamente unha minúscula proporción de todos os usuarios emitiu o seu voto ao publicar as súas seleccións; pero mesmo con esta pequena fracción dos datos de Spotify puidemos obter resultados que teñen sentido.

Para levar a cabo este proxecto non fixeron falta modernísimos equipos nin tirar de cartón de crédito: dos cálculos encargouse un portátil con case 9 anos de antigüidade que se deixou un par de noites descargando as listas de cancións; todo o software empregado é libre e non houbo que pagar nin un céntimo en licenzas. A análise de datos non soamente permite a incursión de calquera que teña uns mínimos coñecementos de programación e unha base de datos á súa disposición, senón que, en moitos casos, nin sequera fai falta saber programar: simplemente fan falta ganas, a pregunta que se queira responder, os datos que poderían facelo, unha folla de cálculo e moita paciencia. Miren por exemplo o que fai @NacionRotonda nos seus intres libres.

No hay comentarios:

Publicar un comentario