Was sind die Unterschiede zwischen PCA und Autoencoder?

56

Sowohl PCA als auch Autoencoder können die Demension reduzieren. Was ist also der Unterschied zwischen ihnen? In welcher Situation sollte ich einen über einen anderen setzen?

RockTheStar
quelle

Antworten:

52

PCA ist auf eine lineare Karte beschränkt, während Auto-Encoder nichtlineare Enoder / Decoder haben können.

Ein einschichtiger Auto-Encoder mit linearer Übertragungsfunktion entspricht nahezu PCA. Dies bedeutet, dass das von AE und PCA gefundene fast nicht dasselbe ist - der von den jeweiligen aufgespannte Unterraum jedoch.WWW

bayerj
quelle
Aha! Ich brauche also zwei Ebenen für die nichtlineare Transformation. Also mehrere Schichten bedeuten sehr komplexe nichtlineare?
RockTheStar
7
@RockTheStar: Es kommt nicht auf die Anzahl der Ebenen an, sondern auf die Aktivierungsfunktion [Übertragungsfunktion]. Bei der linearen Übertragungsfunktion führt keine Anzahl von Schichten zu einem nichtlinearen Autoencoder.
Amöbe sagt Reinstate Monica
Bei einer nichtlinearen Transformation gibt es sogar nur eine Schicht einer verborgenen Einheit. Die Lösung ist immer noch nicht linear?
RockTheStar
Ja. (In einigen Fällen kann es auch noch linear sein, z. B. wenn die ausgeblendeten Einheiten in nahezu linearen Bereichen aktiviert sind.)
bayerj
"Wenn die versteckten Einheiten in den nahen linearen Bereichen aktiviert sind", meinen Sie den linearen Teil in der Sigmoidfunktion, richtig?
RockTheStar
17

Wie bayerj hervorhebt, ist PCA eine Methode, die lineare Systeme voraussetzt, während dies bei Autoencodern (AE) nicht der Fall ist. Wenn im AE keine nichtlineare Funktion verwendet wird und die Anzahl der Neuronen in der verborgenen Schicht kleiner ist als die des Eingangs, können PCA und AE das gleiche Ergebnis liefern. Andernfalls findet die AE möglicherweise einen anderen Unterraum.

Zu beachten ist, dass die verborgene Ebene in einer AE eine größere Dimension aufweisen kann als die Eingabe. In solchen Fällen führen AEs möglicherweise keine Dimensionsreduzierung durch. In diesem Fall verstehen wir sie als Transformation von einem Merkmalsraum in einen anderen, wobei die Daten im neuen Merkmalsraum Variationsfaktoren entwirren.

In Bezug auf Ihre Frage, ob mehrere Ebenen eine sehr komplexe, nichtlineare Antwort auf bayerj bedeuten. Je nachdem, was Sie unter "sehr komplex, nicht linear" verstehen, könnte dies zutreffen. Die Tiefe bietet jedoch eine bessere Verallgemeinerung. Viele Verfahren erfordern eine gleiche Anzahl von Abtastwerten, die der Anzahl von Regionen entspricht. Es stellt sich jedoch heraus, dass "eine sehr große Anzahl von Regionen, z. B. , mit -Beispielen definiert werden kann ", gemäß Bengio et al . Dies ist ein Ergebnis der Komplexität der Darstellung, die sich aus dem Zusammensetzen niedrigerer Merkmale aus niedrigeren Schichten im Netzwerk ergibt.O ( N )O(2N)O(N)

DaemonMaker
quelle
2
thx für dein ans!
RockTheStar
6

Dies ist besser als Kommentar geeignet, aber da mir der Ruf dafür fehlt, wird es als Antwort gegeben.

Ich bin etwas verwirrt mit dem Gedanken, beinahe in bayerjs Antwort zu sein. Lesen neuronaler Netze und Hauptkomponentenanalyse: Lernen aus Beispielen ohne lokale Minima, in denen der Beweis erbracht wird.

'' Im autoassoziativen Fall ... und daher ist die eindeutige lokal und global optimale Karte W die orthogonale Projektion auf den Raum, der von den ersten Eigenvektoren von '' Σ X XpΣXX

Ist das dann nicht genau der von PCA überspannte Korrespondenzraum?

Johnblund
quelle
1
Das von Ihnen angegebene Papier verwendet einen linearen Autoencoder, dh keine nichtlineare Aktivierungsfunktion. Das ist der Grund, warum sich seine Gewichte genau über denselben von PCA überspannten Unterraum erstrecken.
Elliotp
6

{xiRn}i=1NN nXx1,,xN

h1=W1x+b1x^=W2h1+b2

x^W1Rn×mW2Rm×nm<n

mW2mX

W2mXXn×NW2m×nW2O(m2n)XO(n2N)m<n

DeltaIV
quelle