En todos los sistemas de recomendación modernos que he visto que se basan en la factorización matricial, se realiza una factorización matricial no negativa en la matriz de película del usuario. Puedo entender por qué la no negatividad es importante para la interpretabilidad y / o si desea factores dispersos. Pero si solo te importa el rendimiento de predicción, como en la competencia de premios de Netflix, por ejemplo, ¿por qué imponer la restricción de no negatividad? Parecería ser estrictamente peor que permitir valores negativos también en su factorización.
Este artículo es un ejemplo muy citado del uso de la factorización matricial no negativa en el filtrado colaborativo.
Respuestas:
No soy especialista en sistemas de recomendación, pero por lo que entiendo, la premisa de esta pregunta es incorrecta.
La no negatividad no es tan importante para el filtrado colaborativo.
El premio de Netflix fue ganado en 2009 por el equipo de BellKor. Aquí está el documento que describe su algoritmo: La solución BellKor 2008 para el Premio Netflix . Como es fácil de ver, utilizan un enfoque basado en SVD:
Vea también este artículo más popular del mismo equipo Técnicas de factorización matricial para sistemas de recomendación . Hablan mucho sobre SVD pero no mencionan NNMF en absoluto.
Consulte también esta popular publicación de blog Actualización de Netflix: intente esto en casa desde 2006, que también explica las ideas SVD.
Por supuesto que tiene razón y también se está trabajando en el uso de NNMF para el filtrado colaborativo. Entonces, ¿qué funciona mejor, SVD o NNMF? No tengo idea, pero aquí está la conclusión de un estudio comparativo de algoritmos de filtrado colaborativo de 2012:
fuente