He visto dos amplios usos de la factorización matricial en los recomendadores. Ambos implican factorizaciones aproximadas de bajo rango. El primero es realmente un enfoque genérico que se puede combinar con muchas factorizaciones: mínimos cuadrados alternos (aquí está mi resumen: recomendaciones grandes y prácticas con mínimos cuadrados alternos), y el segundo es una factorización específica en sí misma, la descomposición del valor singular
Alternar mínimos cuadrados es flexible pero menos preciso. Se refiere a cualquier medio de factorizar [matemática] A \ aprox X_kY_k ^ T [/ matemática], donde [matemática] X_k [/ matemática] y [matemática] Y_k [/ matemática] tienen un rango bajo. “Aproximado” significa minimizar alguna diferencia de error al cuadrado con la entrada A, pero aquí puede personalizar exactamente lo que se considera en la función de pérdida. Por ejemplo, puede ignorar los valores faltantes (crucial) o ponderar diferentes [matemáticas] A_ {ij} [/ matemáticas] de manera diferente. El precio es que no obtienes muchas garantías sobre los dos factores. No son necesariamente ortonormales. En la práctica no ayuda, pero no duele mucho.
La factorización aquí solo implica la resolución alterna de [matemáticas] X_k [/ matemáticas] y [matemáticas] Y_k [/ matemáticas] arreglando el otro. Cuando se soluciona, es un problema que tiene una solución analítica directa, que es completamente paralelizable (también importante). Puede elegir varias descomposiciones para conectar en esta fase; Utilizo una descomposición QR porque es rápida y puede ‘detectar’ cuando el rango solicitado es incluso demasiado bajo.
- ¿Cuáles son los casos de uso (existentes o futuros) en los que el uso de la Red Adversaria Generativa es particularmente interesante?
- ¿Ya es posible aprender las reglas de un juego como Monopoly utilizando un aprendizaje no supervisado?
- ¿Cuál es la ventaja de tener en cuenta la curvatura al optimizar las redes neuronales profundas?
- ¿Crees que la tecnología 'block chain' es la próxima gran novedad en informática?
- ¿Qué es una explicación simplificada y una prueba del lema de Johnson-Lindenstrauss?
En contraste, la SVD es una descomposición particular que ofrece más garantías sobre su factorización [matemática] A = U \ Sigma V_k ^ T [/ matemática]. Los dos factores externos son ortorormales, por ejemplo. [math] \ Sigma [/ math] incluso te ayudará a mostrarte cuán grande debe ser k.
El costo es velocidad y flexibilidad. La SVD es relativamente más computacionalmente costosa y más difícil de paralelizar. Tampoco hay una buena manera de lidiar con los valores faltantes o la ponderación; debe suponer que en su escasa entrada, los valores faltantes son iguales a un valor medio 0. (Alguien puede corregirme si estas suposiciones son mitigables).