Algoritmi e Spotify Intelligence: come fa il colosso della musica streaming a capire cosa ci piace?
Spotify è in continuo aggiornamento per migliorare il rapporto con il fruitore del servizio. Come fanno, però, ad elaborare delle playlist personalizzate, accurate e differenti ogni settimana che soddisfino appieno l’utente?
Evoluzione
Un algoritmo è una procedura di calcolo suddivisa in un numero finito di passi elementari che termina dopo aver eseguito un numero finito di operazioni. L’informatica parla chiaro. Ogni algoritmo, dal più esile al più pesante, è accomunato da quattro fattori fondamentali ed imprescindibili, senza cui una macchina non può lavorare: un algoritmo deve possedere una procedura di calcolo funzionale per risolvere un problema, realizzare passi finiti (sostanzialmente pochi) ed elementari e, per ultimo, un algoritmo, per funzionare, deve essere finito, ossia avere operazioni (sia logiche che matematiche) che devono terminare. Posto questo, dobbiamo chiederci: ma anche un sistema così all’avanguardia come Spotify utilizza tale sistema di base? La risposta è chiaramente affermativa: oggi, ogni app o programma sul mercato si regge su degli algoritmi che posseggono come humus comune proprio quei quattro elementi di base che abbiamo distinto nelle righe precedenti. Ora, solamente adesso, possiamo immergerci nel mondo della piattaforma di streaming musicale per eccellenza.
Dietro Spotify
Quella della Spotify Intelligence è un processo algoritmico abbastanza complesso. Soprattutto il sistema “Discover Weekly” (di cui parleremo approfonditamente) che consta di più di 100 milioni di playlist differenti che consegna ad ogni singolo utente registrato, ogni settimana, in base ai propri gusti personali. Ma come fa Spotify a creare questo sistema così accurato? Grazie a tre algoritmi che collaborano assieme: Collaborative Filtering, Natural Language Processing e Raw Audio Analysis. Il primo filtro usato è simile a quello di Netflix: Spotify elabora feedbacks, numero di ascolti, tempo di ascolto, click sulla pagina artista, quanti “hearts” ha ricevuto la traccia, eccetera. Questi indici possono aiutare utenti simili ad ascoltare canzoni simili. Tutti i dati, infine, sono poi combinati in enormi matrici di Python (uno specifico linguaggio di programmazione, ndr.) in cui ci sono utenti (righe) e tracce (colonne), che con operazioni matriciali trovano corrispondenze e affinità. Il Natural Language Processing è, invece, un’attività interessante di Spotify: grazie al machine learning Il cosiddetto “apprendimento automatico” di una macchina, ndr.), tale sub-algoritmo sonda blog, siti autorevoli e altre risorse per capire cosa si sta dicendo a riguardo dei trend musicali e dei brani specifici, così da elaborare le notissime classifiche “Top” e “Viral”.
Il Raw Audio è una sorta di controllo?
La terza (e più interessante) feature che utilizza Spotify è quella della Raw Audio Analysis. In questo meccanismo, analizzato e studiato in parte dall’agenzia musicale d’intelligence Echo Nest, utilizza le reti neurali (in particolare reti a convoluzione) per creare delle features per ogni traccia che viene caricata su Spotify. Questo meccanismo non discrimina le tracce in base alla popolarità o alla data di release, quindi, tecnicamente, potrebbe dare una chance in più alle tracce sconosciute di essere scoperte e messe sulle (New) Discover Weekly. Ogni esperienza su Spotify è, quindi, a sé stante: molto di rado, infatti, capita di avere playlist simili anche con persone che riproducono musica pressoché identica, questo perché il colosso dello streaming utilizza molti pattern e gradi di data analysis differenti e distanti da utente ad utente.
In conclusione, quando siete tristi e pensate che nessuno vi capisca poi così bene, pensate ai “Discover Weekly” e ai “Daily Mix” di Spotify: loro sapranno sempre come prendere una giornata grigia e risollevarla. A voi basta un click su una canzone, a loro una stringa di codice algoritmico per farvi uscire una… parentesi all’insù sul vostro volto.