Ich bin verwirrt über das ZCA-Weißmachen und das normale Weißmachen (das durch Teilen der Hauptkomponenten durch die Quadratwurzeln der PCA-Eigenwerte erhalten wird). Soweit ich weiss,
wo U PCA Eigenvektoren sind.
Was sind die Verwendungen von ZCA-Bleaching? Was sind die Unterschiede zwischen normalem Bleaching und ZCA-Bleaching?
pca
dimensionality-reduction
image-processing
RockTheStar
quelle
quelle
Antworten:
Das linke Unterdiagramm zeigt die Daten und ihre Hauptachsen. Beachten Sie die dunkle Schattierung in der oberen rechten Ecke der Verteilung: Sie kennzeichnet die Ausrichtung. Die Zeilen von werden in der zweiten Teilzeichnung angezeigt: Dies sind die Vektoren, auf die die Daten projiziert werden. Nach dem Aufhellen (unten) sieht die Verteilung rund aus. Beachten Sie jedoch, dass sie auch gedreht aussieht. Die dunkle Ecke befindet sich jetzt auf der Ostseite und nicht auf der Nordostseite. Die Zeilen von werden im dritten angezeigt (beachten Sie, dass sie nicht orthogonal sind!). Nach dem Aufhellen (unten) sieht die Verteilung rund aus und ist wie ursprünglich ausgerichtet. Natürlich kann man von PCA-Weißdaten zu ZCA-Weißdaten gelangen, indem man mit rotiert .WPCA WZCA E
Der Begriff "ZCA" scheint in Bell und Sejnowski 1996 eingeführt worden zu seinim Kontext der unabhängigen Komponentenanalyse und steht für "Nullphasen-Komponentenanalyse". Siehe dort für weitere Details. Höchstwahrscheinlich sind Sie im Rahmen der Bildverarbeitung auf diesen Begriff gestoßen. Es stellt sich heraus, dass bei Anwendung auf eine Reihe natürlicher Bilder (Pixel als Merkmale, jedes Bild als Datenpunkt) die Hauptachsen wie Fourier-Komponenten mit zunehmenden Frequenzen aussehen (siehe erste Spalte in Abbildung 1 unten). Sie sind also sehr "global". Andererseits sehen Zeilen der ZCA-Transformation sehr "lokal" aus, siehe die zweite Spalte. Dies liegt genau daran, dass ZCA versucht, die Daten so wenig wie möglich zu transformieren, und daher sollte jede Zeile näher an einer der ursprünglichen Basisfunktionen liegen (dh Bilder mit nur einem aktiven Pixel). Und dies ist möglich zu erreichen,
Aktualisieren
Weitere Beispiele für ZCA-Filter und mit ZCA transformierte Bilder finden Sie in Krizhevsky, 2009, Lernen mehrerer Ebenen von Features aus kleinen Bildern , siehe auch Beispiele in der Antwort von @ bayerj (+1).
Ich denke, diese Beispiele geben eine Vorstellung davon, wann die ZCA-Aufhellung der PCA vorzuziehen sein könnte. Und zwar noch ZCA-geweißt Bilder normale Bilder ähneln , während PCA-geweißt diejenigen , nichts wie normale Bilder aussehen. Dies ist wahrscheinlich wichtig für Algorithmen wie Faltungsnetzwerke (wie sie beispielsweise in Krizhevskys Arbeit verwendet werden), die benachbarte Pixel gemeinsam behandeln und sich daher stark auf die lokalen Eigenschaften natürlicher Bilder stützen. Für die meisten anderen Algorithmen für maschinelles Lernen sollte es absolut irrelevant sein, ob die Daten mit PCA oder ZCA weiß werden.
quelle
Bei gegebener Komposition einer Kovarianzmatrix ist wobei die Diagonalmatrix der Eigenwerte Beim normalen Bleaching werden die Daten in einen Raum umgewandelt, in dem die Kovarianzmatrix diagonal ist: (mit einigem Missbrauch der Notation.) Das heißt, wir können die Kovarianz diagonalisieren, indem wir die Daten nach transformieren
Dies ist ein gewöhnliches Aufhellen mit PCA. Jetzt macht ZCA etwas anderes - es addiert ein kleines Epsilon zu den Eigenwerten und transformiert die Daten zurück. Hier einige Bilder aus dem CIFAR-Datensatz vor und nach ZCA.
Vor dem ZCA:
Nach ZCA mitϵ=0.0001
Nach ZCA mitϵ=0.1
Bei Bilddaten befinden sich Hochfrequenzdaten normalerweise in dem von den niedrigeren Eigenwerten aufgespannten Raum. Daher ist ZCA eine Möglichkeit, diese zu stärken, was zu sichtbareren Kanten usw. führt.
quelle