Dans tous les systèmes de recommandation modernes que j'ai vus qui reposent sur la factorisation matricielle, une factorisation matricielle non négative est effectuée sur la matrice utilisateur-film. Je peux comprendre pourquoi la non-négativité est importante pour l'interprétabilité et / ou si vous voulez des facteurs clairsemés. Mais si vous ne vous souciez que des performances de prédiction, comme dans le cas du concours Netflix par exemple, pourquoi imposer la restriction de non-négativité? Il semblerait que ce soit pire que d'autoriser également des valeurs négatives dans votre factorisation.
Cet article est un exemple très cité d'utilisation de la factorisation matricielle non négative dans le filtrage collaboratif.
Réponses:
Je ne suis pas un spécialiste des systèmes de recommandation, mais pour autant que je comprends, la prémisse de cette question est fausse.
La non-négativité n'est pas si importante pour le filtrage collaboratif.
Le prix Netflix a été remporté en 2009 par l'équipe BellKor. Voici l'article décrivant leur algorithme: La solution BellKor 2008 pour le prix Netflix . Comme il est facile à voir, ils utilisent une approche basée sur SVD:
Voir aussi cet article plus populaire par la même équipe Techniques de factorisation matricielle pour les systèmes de recommandation . Ils parlent beaucoup de SVD mais ne mentionnent pas du tout NNMF.
Voir également ce billet de blog populaire Netflix Update: Try This at Home de 2006, expliquant également les idées SVD.
Bien sûr, vous avez raison et il y a aussi du travail sur l'utilisation de NNMF pour le filtrage collaboratif. Alors, qu'est-ce qui fonctionne mieux, SVD ou NNMF? Je n'en ai aucune idée, mais voici la conclusion d' une étude comparative des algorithmes de filtrage collaboratif de 2012:
la source