La factorisation en matrices non négatives (NMF ou NNMF), également appelée approximation matricielle non négative, est un groupe d'algorithmes en analyse multivariée et en algèbre linéaire. L'objectif est de factoriser une matrice donnée V en deux matrices, généralement notées W et H, de sorte que ces trois matrices ne contiennent que des éléments non négatifs. Cette contrainte rend les facteurs résultants plus faciles à inspecter et à interpréter, et elle s'aligne avec des applications où les données elles-mêmes sont intrinsèquement non négatives, comme les spectrogrammes audio ou les mesures d'activité musculaire. Comme une factorisation exacte n'est généralement pas possible, les méthodes NMF calculent une solution approximative numériquement.
.
NMF a trouvé des applications dans divers domaines, y compris l'astronomie, la vision par ordinateur, le regroupement de documents, l'imputation de données manquantes, la chimiométrie, le traitement du signal audio, les systèmes de recommandation, et la bioinformatique. Son attrait réside dans sa capacité à produire des représentations basées sur des parties, où les données originales sont exprimées comme des combinaisons additives d'un petit ensemble de composants appris.
Histoire
Le concept de factorisation non négative a des racines en chimiométrie, où il était longtemps connu sous le nom de "résolution de courbes auto-modélisées." Dans ce cadre, les vecteurs dans la matrice de facteurs droite sont traités comme des courbes continues plutôt que comme des vecteurs discrets. Dans les années 1990, un groupe de recherche finlandais a développé des méthodes connexes sous le nom de "factorisation matricielle positive." L'approche a gagné une reconnaissance plus large comme factorisation en matrices non négatives après que Daniel D. Lee et H. Sebastian Seung ont étudié ses propriétés et publié des algorithmes simples et efficaces pour deux types de factorisation en 1999 et en 2001. Leur travail a souligné l'interprétabilité des facteurs résultants et a suscité un intérêt généralisé pour la méthode.
Contexte
Étant donné une matrice V de taille m × n, NMF cherche à l'approximer comme le produit de deux matrices: V ≈ W H, où W est m × p et H est p × n. Le rang p est typiquement choisi pour être beaucoup plus petit que m et n, donc la factorisation compresse les données originales en une représentation de dimension inférieure. La multiplication matricielle peut être comprise colonne par colonne: chaque vecteur colonne de V est une combinaison linéaire des vecteurs colonnes de W, avec des coefficients donnés par la colonne correspondante de H.
Par exemple, dans une application de fouille de textes, V pourrait avoir 10 000 lignes représentant des mots et 500 colonnes représentant des documents. Si l'algorithme est demandé de trouver 10 caractéristiques, W sera 10 000 × 10 et H sera 10 × 500. Chaque colonne du produit W H est alors une combinaison linéaire des 10 vecteurs de caractéristiques dans W, pondérée par les entrées dans la colonne correspondante de H. Chaque vecteur de caractéristiques dans W peut être interprété comme un archétype de document, où les valeurs des cellules indiquent l'importance de chaque mot dans cette caractéristique. De même, chaque colonne de H donne les poids de ces caractéristiques pour un document spécifique, permettant la reconstruction du document original comme une somme pondérée des archétypes.
Propriété de regroupement
NMF possède une propriété de regroupement inhérente. Lorsqu'on approxime V par W H, l'algorithme regroupe automatiquement les colonnes des données d'entrée. L'approximation est réalisée en minimisant une fonction d'erreur, souvent la norme de Frobenius de la différence entre V et W H, soumise aux contraintes de non-négativité sur W et H. Si une contrainte d'orthogonalité supplémentaire est imposée sur H (c'est-à-dire, H Hᵀ = I), la minimisation devient mathématiquement équivalente au regroupement K-means. Dans ce cas, les entrées de H indiquent directement l'appartenance au groupe: pour une colonne donnée j, la plus grande entrée H_kj identifie le groupe auquel le point de données v_j appartient. Cette propriété rend NMF un outil utile pour l'apprentissage non supervisé et l'analyse exploratoire des données.
Algorithmes et calcul
Plusieurs algorithmes ont été développés pour calculer NMF. Le plus largement utilisé est la règle de mise à jour multiplicative introduite par Lee et Seung, qui met à jour itérativement W et H tout en préservant la non-négativité. D'autres approches incluent les moindres carrés alternés, les méthodes de gradient projeté, et des variantes qui incorporent des contraintes de parcimonie ou de lissage. Le choix de l'algorithme dépend souvent de la taille des données, de la précision souhaitée, et de l'application spécifique. Comme le problème est non convexe, les solutions peuvent dépendre de l'initialisation, et des exécutions multiples avec des points de départ différents sont parfois utilisées pour obtenir un résultat stable.
Applications
NMF est appliqué dans une large gamme de domaines. Dans le traitement du signal audio, il est utilisé pour décomposer des spectrogrammes en composants spectraux, permettant la séparation de sources ou la transcription musicale. Dans le regroupement de documents et la modélisation de sujets, NMF identifie des sujets latents comme des ensembles de mots, avec chaque document représenté comme un mélange de sujets. Dans la bioinformatique, il aide à analyser des données d'expression génique en identifiant des motifs de gènes co-exprimés. Dans les systèmes de recommandation, NMF peut factoriser des matrices de notations utilisateur-élément pour découvrir des facteurs latents qui prédisent les préférences des utilisateurs. De plus, NMF a été utilisé en vision par ordinateur pour l'extraction de caractéristiques faciales et en chimiométrie pour résoudre des signaux spectraux qui se chevauchent.