Pular para o conteúdo
Voltar para projetos
Machine LearningPythonData Analytics

Persona Vibe Engine: recomendação musical por mood

Motor de recomendação que agrupa faixas do Spotify Tracks Dataset com K-Means a partir de características acústicas e recomenda músicas do mesmo cluster em uma aplicação Streamlit.

Contexto

Projeto 100% offline sobre o Spotify Tracks Dataset (Kaggle). A aplicação publicada usa uma amostra de 30.000 faixas; as métricas foram calculadas sobre o dataset completo.

Problema

Recomendar músicas pelo clima (mood) sem depender de histórico de usuários, apenas das características acústicas das faixas.

Objetivo

Explorar clustering não supervisionado como base de um recomendador simples, documentando as escolhas de k e de transformação das features.

Pipeline

  1. 1Limpeza e deduplicação
  2. 2StandardScaler (7 features)
  3. 3K-Means (k=5)
  4. 4Nomes automáticos dos clusters
  5. 5Ranking por distância
  6. 6App Streamlit

Processo técnico

  • Escolha de k por silhouette (k=5 com 0,218, melhor valor a partir de k=3)
  • Comparação com GaussianMixture, que teve silhouette de 0,042 contra 0,222 do K-Means em k=5
  • Teste de binarização e Yeo-Johnson nas features, mantendo o StandardScaler pela simplicidade
  • Avaliação em 200 faixas de partida e 22 testes automatizados com pytest

Insights

  • Silhouette próximo de 0,2 indica clusters sobrepostos, esperado em audio features que formam um contínuo
  • A opção de preferir populares quase dobrou a popularidade média das sugestões (de 33 para 61)

Resultados

Aplicação online funcional; as recomendações acertam o mesmo gênero da faixa de partida em cerca de 9% dos casos, contra 1,6% no cluster e 0,8% no dataset ao acaso.

Limitações

  • O clustering usa só features acústicas e não captura idioma, época nem estilo
  • Um dos clusters concentra cerca de um terço das faixas
  • O gênero é um proxy ruidoso (114 gêneros), por isso os valores absolutos de avaliação são baixos

Screenshots

Capturas de tela serão adicionadas em breve.

Projetos relacionados