Spotify to dziś najpopularniejszy i najszybciej rozwijający się serwis strumieniujący muzykę. Jego twórcy wciąż mają mnóstwo ciekawych pomysłów na rozwój aplikacji: specjalnie dostosowany widok samochodowy, współtworzone playlisty czy funkcja Discover Weekly, która szczególnie podbiła serca melomanów z całego świata.
Discover Weekly to cotygodniowa porcja nowej muzyki, szeregowana w personalnych playlistach generowanych automatycznie przez Spotify dla każdego użytkownika. Lista agreguje utwory, których dotąd nie słuchaliśmy poprzez aplikację, a które z dużym prawdopodobieństwem powinny nam przypaść do gustu. W znacznej większości przypadków Discover Weekly spełnia swoje zadanie: osoby korzystające z aplikacji chwalą sobie cotygodniową dawkę nowości serwowaną przez Spotify i zwracają uwagę, że to właśnie dzięki niej odkrywają zupełnie nowe zespoły i piosenki, na które prawdopodobnie sami w ogóle by nie trafili.
W jaki sposób Spotify dobiera utwory do personalizowanych playlist Discover Weekly? Aplikacja wykorzystuje trzy różne typy rekomendacji, które odpowiednio współdziałając ze sobą, wspólnie przyczyniają się do sukcesu funkcjonalności.
Pierwszym z nich jest model Collaborative Filtering. Metoda ta może kojarzyć się z praktyką wykorzystywaną przez Netflix, gdzie użytkownicy ręcznie oceniają produkcje w kilkustopniowej skali, zaznaczając przy tytule odpowiednią ilość gwiazdek. Spotify nie ma jednak takiej funkcjonalności, ale jako odzwierciedlenie zainteresowania utworem traktuje ilość jego odtworzeń, a także dodatkowe dane: czy użytkownik zapisał piosenkę do swojej playlisty, odwiedził stronę wykonawcy po odtworzeniu utworu i inne.
Podstawą działania tej metody jest odnalezienie użytkowników o podobnym profilu, którzy lubią i słuchają takich samych utworów, a następnie wzajemne polecanie im piosenek, których jedna z tych osób jeszcze nie słuchała. Jak to działa? Jeśli jedna osoba lubi piosenki X, Y, Z, natomiast druga często słucha piosenek X, Y, Z i Q, to pierwszej osobie Spotify zaproponuje zapoznanie się z utworem Q. W praktyce, użytkownicy profilowani są w macierzach przeliczanych za pomocą programistycznych bibliotek w języku Python. W macierzy tej każdy rząd reprezentuje miliony użytkowników serwisu – każdy unikatowy użytkownik reprezentuje jeden rząd macierzy, a każda kolumna to jedna z milionów piosenek reprezentowanych w bazie danych. Dzięki działaniu skomplikowanych matematycznych obliczeń, algorytm tworzy wektory użytkowników oraz piosenek, które porównuje z innymi wektorami w poszukiwaniu tych najbardziej podobnych, co prowadzi do prostych, wspomnianych już porównań pozwalających odnaleźć utwory wpisujące się w gust każdego użytkownika.
Kolejny model rekomendacji opiera się o Natural Language Processing (NLP). NLP to zdolność komputera do interpretowania naturalnego, „ludzkiego” języka. Algorytmy Spotify nieustannie przeszukują Internet odwiedzając blogi, portale i inne źródła informacji o muzyce, w celu odnalezienia opinii użytkowników o danej muzyce czy artyście, dzięki czemu konkretny utwór można jeszcze trafniej dopasować do preferencji melomanów ze Spotify.
Ostatni model rekomendacji Spotify korzysta z surowych ścieżek audio. Jest on o tyle ciekawy, że nie bazuje na rekomendacjach muzyki czerpanych od użytkowników sprofilowanych w tych samych kategoriach, a jest w stanie wyszukać zupełnie nowe propozycje utworów, które dopiero pojawiają się na rynku muzycznym.
Ścieżki audio są analizowane dzięki sieciom neuronowym – tej samej technologii, która odpowiada między innymi za rozpoznawanie twarzy. Muzyka przetwarzana jest przez tworzenie spektogramu: wykresu widma amplitudowego sygnału, który finalnie pozwala określić czas trwania utworu, tempo, głośność, a nawet tonację. Tak sklasyfikowane utwory są – jak w przypadku pozostałych dwóch modeli – porównywane ze znanymi już i lubianymi przez użytkownika piosenkami, a te najbardziej odpowiadające ich charakterystyce polecane są w ramach playlisty Spotify Weekly.
Algorytmy stworzone przez Spotify wymagają ogromnej mocy obliczeniowej i zasobów sprzętowych, ale ta ogromna praca owocuje funkcjonalnością szeroko docenianą przez użytkowników. Wszystkich, którzy poszukują nowych brzmień kierujemy zatem do automatycznie generowanych playlist Discover Weekly (do odnalezienia na panelu głównym aplikacji) bądź do naszej autorskiej playlisty.