2017-05-02 1 views
0

Je dois faire un système de recommandation de musique pour une plate-forme de musique en utilisant l'apprentissage automatique.Google Cloud ML pour les recommandations

La plate-forme a:

  • 40+ millions de chansons
  • 4.5+ millions d'albums
  • 2.5+ millions artistes
  • 1648 Genres
  • 600k utilisateurs

Les relations entre les objets ci-dessus sont:

  • 1-chanson - beaucoup-genres
  • 1 chanson - de nombreux artistes-
  • 1 chanson - 1-album
  • 1-album - many-chansons
  • 1-album - beaucoup -Artistes
  • 1-artiste - de nombreux albums-
  • 1-artiste - de nombreuses chansons-

Et je l'ai eu utilisateurs ac tivity (chansons écoutées) et favoris (chanson, artiste, albums)

Amazon ML ne semble pas prendre en charge le filtrage collaboratif, et maintenant je regarde à travers Google Cloud ML.

Un problème est la taille des données. Fondamentalement, chaque chanson a 1+ genres et 1+ artistes qui sont des attributs catégoriques. Support Amazon ML ~ 100 catégories (en un coup d'oeil j'ai 2.5m si les artistes sont considérés comme des catégories). En regardant à travers les pages d'apprentissage automatique de Google, je n'ai trouvé que des exemples simples, donc je ne sais pas par où commencer. En tant que débutant dans le domaine de l'apprentissage automatique, je me demande si le problème est la façon dont je vois (essayez de résoudre) ces recommandations, ou même si ML est la voie à suivre. Google CloudML Engine est une solution hébergée pour l'exécution de programmes TensorFlow.

Répondre

1

TensorFlow est un cadre d'apprentissage automatique, conçu en fonction de l'échelle. Donc, tant que vous pouvez écrire un programme Distributed TensorFlow, vous pouvez l'exécuter sur CloudML Engine, ce qui devrait vous permettre d'évoluer assez bien. (Je noterai qu'il y a une courbe d'apprentissage à la fois pour TensorFlow et Machine Learning en général, mais vous aurez certainement besoin d'une solution basée sur ML pour les recommandations).

Un Google search rapide révèle plusieurs matériaux utiles pour la construction d'un système de recommandation à l'aide tensorflow (mise en garde: je ne vérifie pas l'un de ces):