Nicht-negative Matrix Faktorisierung (nMF) Seminar „Sparse Coding“ Autor: Christian Sier
Gliederung des Vortrags Motivation und Einführung Mathematische Formulierung des Problems Algorithmen zur Berechnung Anwendung der NMF Zusammenfassung und Ausblick
Das Problem Gegeben sei eine Ausgangsmatrix V der Größe n x m (die Eingabedaten) Jede Spalte repräsentiert dabei einen Informationsvektor (z.B. Pixel eines Bildes) n*m Werte speichern aufwendig, Reduktion erwünscht Idee: Matrix V in ein Matrix-Produkt W*H zerlegen, so dass gilt: V≈W*H Informationen aus W und H wieder herstellbar, aber weniger Speicher nötig
Zerlegung der Matrix Wann kann man eine Matrix zerlegen? Natürlich immer möglich V ist eine nxm-Matrix, W eine nxr-Matrix und H eine rxm Matrix Wähle r so: n*r + r*m « n*m Diese Ungleichung hat aber die Folge, dass die Zerlegung zu Informationsverlust führt
Eigenschaften der Zerlegung Die Spalten von W nennt man Basis- Vektoren, die Spalten von H Kodierungs- Vektoren Multipliziert man W nur mit einer Spalte von H, erhält man die Information zurück v = W*h
Non-negative matrix factorization Idee: Adaption natürlicher Kodierung Basis-Vektoren sollen lokale Teile der Ursprungsdaten darstellen (z.B. bei Bildern von Gesichtern eine Nase) Nicht-negative Kodierungs-Vektoren haben die Folge, dass Ursprungsdaten nur additiv aus den Basis-Vektoren erzeugt werden Parallele zu Neuronen (wenn aktiv, dann positiv)
Beispiel Vektor-Quantisierung
Beispiel PCA
Beispiel nMF
Gliederung des Vortrags Motivation und Einführung Mathematische Formulierung des Problems Algorithmen zur Berechnung Anwendung der NMF Zusammenfassung und Ausblick
Mathematische Formulierung I Least Square Error minimieren A = V, B = WH Ist genau dann null, wenn V = WH Wird Dimensionsreduktion durchgeführt, ist die PCA bzgl. des LSE besser als die NMF Grund: Einschränkung auf nicht-negative Einträge in den Matrizen
Mathematische Formulierung II Die Ausgangsmatrix V soll in zwei nicht- negative Matrizen zerlegt werden Folge: Algorithmus muss gewährleisten, dass W und H keine negativen Einträge erhalten können Sind negative Zwischenergebnisse erlaubt? Bei iterativer Berechnung nicht
Spärlichkeit I Zerlegung liefert bei Dimensionsreduktion lediglich eine Speicherersparnis ohne Spärlichkeit Ziel: Daten rekonstruierbar mit wenigen „Neuronen“ (sparse coding) Mathematische Grundlagen für Spärlichkeit existieren vielfältig
Spärlichkeit II Folgendes Beispiel basiert auf Verhältnis zwischen L1- und L2-Norm L1-Norm eines Vektors ergibt sich durch Aufsummieren der Beträge aller Einträge L2-Norm eines Vektors ergibt sich durch Aufsummieren der Quadrate aller Einträge und anschließendem Wurzelziehen n gibt Anzahl der Einträge des Vektors an
Spärlichkeit III Spärlichkeit abhängig von den Einträgen des Vektors, die nicht null sind Nur ein Eintrag von null verschieden, dann Spärlichkeit von 1 Alle Einträge gleich groß, dann keine Spärlichkeit
Spärlichkeit IV Beispiel: V konstant, Spärlichkeit unterschiedlich
Gliederung des Vortrags Motivation und Einführung Mathematische Formulierung des Problems Algorithmen zur Berechnung Anwendung der NMF Zusammenfassung und Ausblick
Formel von Paatero & Tapper Grundidee: Belege W und H zufällig Annäherung an die Lösung mittels Gradientenabstieg Kostenfunktion z.B. der Mean Square Error Berechne den MSE vor und nach der Iteration Erhöht sich der MSE, verwerfe den Schritt
Formel von Paatero & Tapper Additive Iterationsformeln für W und H Die Koeffizienten η aμ und η ia geben die Schrittweite wieder Können konstant oder variabel gehalten werden Für andere Kostenfunktionen (z.B. Diver- genz) ergeben sich andere Formeln
Formel von Paatero & Tapper Abwechselnde Optimierung: erst W konstant halten und H verbessern und umgekehrt Problem: keine gemeinsame Optimierung, sondern jeweils einzeln Es wird daher nur ein lokales Minimum gefunden, keine globale Lösung Kovergenz kann bei zu kleiner Schrittweite lange dauern
Algorithmus von Lee & Seung Baut auf der Formel von Paatero & Tapper auf Schrittweite wird dynamisch bestimmt Eingesetzt in die Formel Vorteil: MSE kann sich nicht mehr erhöhen
Algorithmus von Lee & Seung Vorteile der Algorithmen: leicht zu programmieren und ziemlich schnell Aber: es wird keine Spärlichkeit erzwungen! Beispiel mit unterschiedlichen V:
Algorithmus von Hoyer Erweiterung des vorherigen Algorithmus Grundidee erneut: Minimierung des MSE Aber: Optimierung mit der Bedingung, Spärlichkeit einzuhalten Man kann die Bedingung sowohl auf W als auch auf H anwenden Benutzer muss entscheiden, welche Bedingungen die Anwendung erfordern
Algorithmus von Hoyer Zuerst belege W und H zufällig Soll W spärlich sein, so erzwinge vor der ersten Iteration für jede Spalte von W die gewünschte Spärlichkeit Soll H spärlich sein, so erzwinge vor der ersten Iteration für jede Spalte von H die gewünschte Spärlichkeit
Algorithmus von Hoyer Nun interiere Soll W spärlich werden, dann - - erzwinge wieder Spärlichkeit Soll H spärlich werden, dann - - erzwinge wieder Spärlichkeit Sollen W oder H nicht spärlich werden, ver- wende die Iterationsformeln von Lee und Seung
Algorithmus von Hoyer Wie erzwingt man Spärlichkeit eines Vektors? Gegeben sind der Vektor s, die zugehörige L1- und L2-Norm und Spärlichkeit Suche Vektor x mit folgenden Eigenschaften: - nicht-negativ - hat selbe L2-Norm wie Vektor s - LSE zum Vektor s minimal - erfüllt Spärlichkeitsbedingung
Algorithmus von Hoyer Koeffizienten entsprechen wieder der Schrittweite Schrittweite wird zu Beginn festgelegt Erhöht sich der MSE, verwerfe den Schritt und senke die Schrittweite (z.B. Halbieren)
Algorithmus von Hoyer Fazit: Erweiterung des vorangegangenen Algorithmus um Spärlichkeitsbedingung Führt aber zu größerem MSE Erhöhte Laufzeit Wichtig: Ergebnis des Algorithmus hängt immer von den Randbedingungen des Benutzers ab!
Algorithmus von Hoyer Beispiel (mit selber Ausgangsmatrix V): Dargestellt sind die Basis-Vektoren
Gliederung des Vortrags Motivation und Einführung Mathematische Formulierung des Problems Algorithmen zur Berechnung Anwendung der NMF Zusammenfassung und Ausblick
Anwendung der NMF Datenreduktion ist nicht das primäre Ziel NMF eignet sich gut für Mustererkennung Matrizen W und H verwendbar in Neuronalen Netzen Eingabevektor v ist zu klassifizieren W -1 *v = h’ Test, welchem bekannten Kodierungsvektor h’ am meisten ähnelt
Anwendung der NMF Aber: es gibt Probleme, für die die PCA besser geeignet ist Performance hängt von vielen Faktoren ab - Wahl der Dimensionsreduktion - Art der Ausgangsinformation - Art des Problems Kombination von PCA und NMF denkbar zur Erhöhung der Performance
Face recognition Beispiel: Gesichter erkennen Ausgangsmatrix V besteht aus m Vektoren (die Bilder) mit n Einträgen (Pixel) Ergebnis: NMF hier meist besser als PCA Grund: NMF erkennt lokale Merkmale, PCA lediglich globale Merkmale Folge: NMF kommt zudem mit Störungen (z.B. Sonnenbrille) besser zurecht
Face recognition Hier nochmal das Beispiel vom Anfang:
Texte klassifizieren Anderes Anwendungsbeispiel: Texte einer Rubrik zuordnen Jede Spalte in V steht für einen Ausgangs- text mit Häufigkeiten von Wörtern Die Spalten von W stehen für Gruppen von Wörtern, die in Zusammenhang stehen Deswegen Spärlichkeit auf W erzwingen Die Spalten von H setzen die Texte wieder “zusammen”
Texte klassifizieren Beispiel: Texte aus einer Enzyklopädie Ein Ausschnitt aus W und H
Texte klassifizieren Vorteile gegenüber Vektor-Quantisierung und PCA Texte setzen sich aus einigen wenigen Wort-Gruppierungen zusammen Bei VQ würden sie sich nur aus einer Gruppe zusammensetzen Bei PCA würden sie sich aus allen Gruppen zusammensetzen
Rezeptive Felder mit NMF Zeige, dass NMF mit spärlicher Bedingung parallelen zu rezeptiven Feldern hat Zufällige Ausschnitte aus natürlichen Bildern werden Hochpass gefiltert Positive und negative Anteile werden in ON- und OFF-Channel aufgeteilt Führe auf beiden Kanälen NMF aus mit der Bedingung, dass H spärlich sein soll (im Beispiel 85%), aus
Rezeptive Felder mit NMF Ergebnisse der NMF: Bilden eine neue Matrix W' = W ON - W OFF
Rezeptive Felder mit NMF W' entspricht gerichteten, Gabor-ähnlichen Merkmalen – bekannt von rezeptiven Feldern Grau entspricht der „0“
Gliederung des Vortrags Motivation und Einführung Mathematische Formulierung des Problems Algorithmen zur Berechnung Anwendung der NMF Zusammenfassung und Ausblick
Zusammenfassung NMF ist eine Methode zur Dimensionsre- duktion Spärlichkeit kann erzwungen werden (mit- tels einer mathematischer Grundlage), führt aber zu weiterem Informationsverlust Generelle Aussage, welchen Algorithmus man verwendet etc. nicht möglich Hängt vom Problem ab
Ausblick NMF hat viele Variationen Kombination mit anderen Methode (PCA) denkbar bzw. wird schon umgesetzt Rechnersehen bleibt eine experimentelle Disziplin => probieren, probieren, probieren => Spieltrieb ist sehr vorteilhaft