1 O sistema funciona da seguinte maneira:
lê o histórico de reproduções;
encontra usuários com comportamento semelhante;
identificar músicas escutadas por usuários semelhantes;
recomendo ao usuário faixas atuais que ele ainda não ouviu.
2 implementação
import pandas as pd
from scipy.sparse import csr_matrix
from sklearn.neighbors import NearestNeighbors
df = pd.read_csv("playcatch.csv")
matriz = df.pivot_table(
index="user_id",
columns="track_id",
values="play_count",
aggfunc="sum",
fill_value=0
)
sparse = csr_matrix(matriz.values)
modelo = NearestNeighbors(metric="cosine", algorithm="brute")
modelo.fit(sparse)