Estoy aprendiendo acerca de la factorización matricial para los sistemas de recomendación y veo que el término latent features
ocurre con demasiada frecuencia, pero no puedo entender lo que significa. Sé lo que es una característica, pero no entiendo la idea de las características latentes. ¿Podría por favor explicarlo? ¿O al menos señalarme un papel / lugar donde pueda leer sobre él?
machine-learning
data-mining
recommender-system
Jack Twain
fuente
fuente
Respuestas:
A expensas de la simplificación excesiva, las características latentes son características 'ocultas' para distinguirlas de las características observadas. Las características latentes se calculan a partir de las características observadas utilizando la factorización matricial. Un ejemplo sería el análisis de documentos de texto. Las "palabras" extraídas de los documentos son características. Si factoriza los datos de las palabras, puede encontrar 'temas', donde 'tema' es un grupo de palabras con relevancia semántica. La factorización de matriz de bajo rango asigna varias filas (características observadas) a un conjunto más pequeño de filas (características latentes). Para elaborar, el documento podría haber observado características (palabras) como [velero, goleta, yate, barco de vapor, crucero] que 'factorizarían' a características latentes (tema) como 'barco' y 'barco'.
[velero, goleta, yate, barco de vapor, crucero, ...] -> [barco, barco]
La idea subyacente es que las características latentes son 'agregados' semánticamente relevantes de las características observadas. Cuando tiene características observadas a gran escala, de alta dimensión y ruidosas, tiene sentido construir su clasificador sobre características latentes.
Por supuesto, esta es una descripción simplificada para dilucidar el concepto. Puede leer los detalles sobre la asignación de Dirichlet latente (LDA) o los modelos probabilísticos de análisis semántico latente (pLSA) para obtener una descripción precisa.
fuente
Supongamos que tiene unaxij
(MxN)
matriz dispersa, dondeM
: representa el número de usuarios que dieron recomendaciones yN
es el número de elementos recomendados. El elemento de la matriz es la recomendación dada, con algunos elementos que faltan, es decir, para predecir.Entonces su matriz puede ser "factorizada", mediante la introducción de
K
"factores latentes", de modo que en lugar de una matriz tenga dos: - para(MxK)
usuarios, y(KxN)
- para elementos, cuya multiplicación de matriz produce la matriz original.Finalmente, a su pregunta: ¿cuáles son las características latentes en la factorización matricial? Son características desconocidas (
K
) en los gustos de los usuarios y elementos recomendados, de modo que cuando estas dos matrices se multiplican, producen una matriz de recomendaciones conocidas. Los pesos particulares (de las preferencias del usuario hacia una característica particular y la cantidad de una característica en un elemento particular) se definen a través del llamado Alternating Least Squares, más sobre el cual puede leer aquífuente
Me parece que las características latentes es un término utilizado para describir los criterios para clasificar las entidades por su estructura, en otras palabras, por las características (rasgos) que contienen, en lugar de las clases a las que pertenecen. El significado de la palabra "latente" aquí es muy similar a su significado en ciencias sociales, donde el término muy popular variable latente ( http://en.wikipedia.org/wiki/Latent_variable ) significa variable no observable (concepto).
La sección "Introducción" en el siguiente documento proporciona una buena explicación del significado y uso de las características latentes en el modelado de fenómenos de las ciencias sociales: http://papers.nips.cc/paper/3846-nonparametric-latent-feature-models-for- link-prediction.pdf .
fuente
Otro ejemplo, considere el caso de los usuarios de la matriz de clasificación de películas como la configuración de Netflix. Esta será una enorme matriz dispersa que es difícil de procesar.
Tenga en cuenta que cada usuario tendrá una preferencia específica como películas de ciencia ficción o películas románticas, etc. Por lo tanto, en lugar de almacenar todas las clasificaciones de películas, podríamos almacenar una única característica latente como la categoría de película que pertenece a diferentes géneros, por ejemplo: ciencia ficción o romance, lo que cuantifique su gusto por cada categoría. Estas se llaman Características latentes , que capturan la esencia de su gusto en lugar de almacenar toda la lista de películas.
Por supuesto, esto será una aproximación, pero por otro lado, tiene muy poco para almacenar.
Esto generalmente se hace usando técnicas de descomposición de matriz, como SVD que divide una matriz de recomendación de usuario a elemento a matriz de preferencia de usuario y matriz preferencia de elemento , la ventaja añadida es que en lugar de almacenar número efectivamente almacenar .N ∗ 1 1 ∗ N N 2 2 NN∗N N∗1 1∗N N2 2N
fuente