Dada una matriz , la factorización de matriz no negativa (NMF) encuentra dos matrices no negativas W m × k y H k × n (es decir, con todos los elementos ≥ 0 ) para representar la matriz descompuesta como:
por ejemplo, al exigir que y H no negativos minimicen el error de reconstrucción ‖ V - W H ‖ 2 .
¿Existen prácticas comunes para estimar el número en NMF? ¿Cómo podría usarse, por ejemplo, la validación cruzada para ese propósito?
Respuestas:
Para elegir un número óptimo de factores latentes en la factorización matricial no negativa, utilice la validación cruzada.
Como escribió, el objetivo de NMF es encontrarW y H baja dimensión con todos los elementos no negativos minimizando el error de reconstrucción ∥V−WH∥2 . Imagine que dejamos de lado un elemento de V , por ejemplo, Vab , y realizamos NMF de la matriz resultante con una celda faltante. Esto significa encontrar W y H minimizando el error de reconstrucción en todas las celdas no faltantes: ∑ij≠ab(Vij−[WH]ij)2.
Una vez hecho esto, podemos predecir el elemento izquierdoVab calculando [WH]ab y calcular el error de predicción eab=(Vab−[WH]ab)2. Se puede repetir este procedimiento dejando fuera todos los elementos Vab uno a la vez, y resumir los errores de predicción sobre todos ( k ) = ∑ a b e a ba yb . Esto dará como resultado un valor de PRENSA general (suma residual de cuadrados prevista)E(k)=∑abeab eso dependerá de k . Ojalá funcionen E(k) tenga un mínimo que pueda usarse como unak 'óptima'.
Tenga en cuenta que esto puede ser costoso desde el punto de vista computacional, ya que el NMF tiene que repetirse para cada valor omitido, y también puede ser difícil de programar (dependiendo de lo fácil que sea realizar el NMF con valores faltantes). En PCA, se puede evitar esto dejando fuera filas completas deV (lo que acelera mucho los cálculos), vea mi respuesta en ¿Cómo realizar una validación cruzada para PCA para determinar el número de componentes principales? , pero esto no es posible aquí.
Por supuesto, todos los principios habituales de validación cruzada se aplican aquí, por lo que uno puede omitir muchas celdas a la vez (en lugar de solo una) y / o repetir el procedimiento solo para algunas celdas aleatorias en lugar de recorrer todas las celdas. Ambos enfoques pueden ayudar a acelerar el proceso.
Editar (marzo de 2019): vea este muy bonito artículo ilustrado de @AlexWilliams : http://alexhwilliams.info/itsneuronalblog/2018/02/26/crossval . Alex usa https://github.com/kimjingu/nonnegfac-python para NMF con valores faltantes.
fuente
Que yo sepa, hay dos buenos criterios: 1) el coeficiente de correlación cophenetic y 2) comparar la suma residual de cuadrados con datos aleatorios para un conjunto de rangos (tal vez haya un nombre para eso, pero no lo recuerdo)
Coeficiente de correlación cophenetic: repite NMF varias veces por rango y calcula cuán similares son los resultados. En otras palabras, qué tan estables son los grupos identificados, dado que la semilla inicial es aleatoria. Elija la K más alta antes de que caiga el coeficiente cophenetic
RSS contra datos aleatorios Para cualquier enfoque de reducción de dimensionalidad, siempre hay una pérdida de información en comparación con sus datos originales (estimados por RSS). Ahora realice NMF para aumentar K y calcule RSS con su conjunto de datos original y uno aleatorio. Al comparar RSS en función de K, el RSS disminuye al aumentar K en el conjunto de datos original, pero este no es el caso para el conjunto de datos aleatorio. Al comparar ambas pendientes, debería haber una K donde se cruzan. En otras palabras, cuánta información podría permitirse perder (= K más alta) antes de estar dentro del ruido.
Espero haber sido lo suficientemente claro.
Editar: he encontrado esos artículos.
1.Jean-P. Brunet, Pablo Tamayo, Todd R. Golub y Jill P. Mesirov. Metagenes y descubrimiento de patrones moleculares utilizando factorización matricial. En Actas de la Academia Nacional de Ciencias de los Estados Unidos, 101 (12): 4164-4169, 2004.
2. Atila Frigyesi y Mattias Hoglund. Factorización de matriz no negativa para el análisis de datos complejos de expresión génica: identificación de subtipos de tumores clínicamente relevantes. Cancer Informatics, 6: 275-292, 2008.
fuente
En la factorización de NMF, el parámetro (observado en r en la mayoría de la literatura) es el rango de la aproximación de V y se elige de tal manera que k < min ( m , n ) . La elección del parámetro determina la representación de sus datos V en una base demasiado completa compuesta por las columnas de W ; el w i , i = 1 , 2 , ⋯ , k . El resultado es que los rangos de las matrices W y H tienen un límite superior dek r V k<min(m,n) V W wi , i=1,2,⋯,k W H y el producto W H es una aproximación de bajo rango de V ; También k a lo sumo. Por lo tanto, la elección de k < min ( m , n ) debería constituir una reducción de dimensionalidad en la que V puede generarse / extenderse a partir de los vectores de base mencionados anteriormente.k WH V k k<min(m,n) V
Se pueden encontrar más detalles en el capítulo 6 de este libro de S. Theodoridis y K. Koutroumbas.
Después de minimizar la función de costo elegida con respecto a y H , la elección óptima de k ( elegida empíricamente al trabajar con diferentes subespacios de características) debería dar V ∗ , una aproximación de V , con características representativas de su matriz de datos inicial V .W H k V∗ V V
Trabajar con diferentes subespacios de características en el sentido de que, el número de columnas en W , es el número de vectores base en el subespacio NMF. Y trabajar empíricamente con diferentes valores de k es equivalente a trabajar con diferentes espacios de características con dimensiones reducidas.k W k
fuente