¿Cómo se puede usar la factorización matricial en el filtrado colaborativo?

Supongamos que tiene su matriz de utilidad con usuarios en las filas y revisiones de elementos en las columnas. Por ejemplo películas.

Una técnica popular es transformar esta matriz del espacio original de n-películas a un nuevo espacio de k-conceptos (k << n). De esta manera, descubrirá los factores que hacen que a los usuarios les guste o no las películas. Por ejemplo, imagina que tienes 10 películas de ciencia ficción y 10 dramas. Si reduce de 20 a 2 dimensiones, es probable que una de sus nuevas características mida si al usuario le gusta la ciencia ficción y la otra si le gustan los dramas.

La factorización de Matriz no negativa (NMF) se puede utilizar para calcular dos martrices Q y P donde Q es mxk y P es kxn. En la forma en que Q * P es tan similar como pueden ser a los elementos knwon en la matriz de utilidad original.

La matriz “Q” asignará a sus usuarios a factores y “P” asignará los factores a películas.

Multiplicar Q * P automáticamente te da todas las calificaciones faltantes porque Q * P es una matriz completa. Por lo tanto, puede usar esto como uno de los muchos componentes utilizados para estimar la calificación que algún usuario le dará a alguna película.

Luis.

Este es un tema complicado que no se da a una explicación simple. Pero aquí hay algunos artículos que son acertados.

Página en ucsd.edu
Factorización matricial: un sencillo tutorial e implementación en Python
(¡Me gusta especialmente el ángulo de pitón!)
y éste:
Página en uci.edu

Gracias por A2A
Eche un vistazo a mi respuesta reciente: la respuesta de Roman Trusov a ¿Cuál es un ejemplo muy simple de utilizar la factorización matricial en el aprendizaje automático, exactamente en los sistemas de recomendación?