Sia PCA che autoencoder possono ridurre la demensione, quindi quali sono le differenze? In quale situazione dovrei usare l'uno sull'altro?
Sia PCA che autoencoder possono ridurre la demensione, quindi quali sono le differenze? In quale situazione dovrei usare l'uno sull'altro?
Risposte:
PCA è limitato a una mappa lineare, mentre gli encoder automatici possono avere enoder / decodificatori non lineari.
Un codificatore automatico a strato singolo con funzione di trasferimento lineare è quasi equivalente a PCA, dove quasi significa che la trovata da AE e PCA non sarà la stessa - ma il sottospazio spansionato dalla rispettiva volontà diW
Come sottolinea bayerj, PCA è un metodo che presuppone sistemi lineari in cui non lo sono gli Autoencoder (AE). Se non viene utilizzata alcuna funzione non lineare nell'AE e il numero di neuroni nello strato nascosto è di dimensione inferiore rispetto a quello dell'input, PCA e AE possono produrre lo stesso risultato. Altrimenti l'AE potrebbe trovare un sottospazio diverso.
Una cosa da notare è che il livello nascosto in un AE può avere una dimensionalità maggiore di quella dell'input. In tali casi, gli AE potrebbero non ridurre la dimensionalità. In questo caso li percepiamo come una trasformazione da uno spazio di funzionalità a un altro in cui i dati nel nuovo spazio di funzionalità districano i fattori di variazione.
Per quanto riguarda la tua domanda sul fatto che più livelli significhino non lineari molto complessi nella tua risposta a bayerj. A seconda di cosa si intende per "non lineare molto complesso" questo potrebbe essere vero. Tuttavia la profondità offre davvero una migliore generalizzazione. Molti metodi richiedono un numero uguale di campioni uguale al numero di regioni. Tuttavia risulta che "un numero molto grande di regioni, ad esempio , può essere definito con esempi " secondo Bengio et al . Questo è il risultato della complessità nella rappresentazione che deriva dalla composizione di funzioni inferiori da strati inferiori nella rete.O ( N )
Questo è più adatto come commento, ma poiché non ho la reputazione per quello che verrà dato come risposta.
In qualche modo mi sono confuso con l'idea di quasi nella risposta di bayerj: s. Lettura delle reti neurali e analisi delle componenti principali: apprendimento dagli esempi senza minimi locali in cui viene fornita la prova.
'' Nel caso ... e quindi l'unica mappa W localmente e globalmente ottimale è la proiezione ortogonale sullo spazio attraversato dai primi di '' Σ X X
Questo non è quindi esattamente lo spazio corrispondente così come attraversato da PCA?
La risposta attualmente accettata da @bayerj afferma che i pesi di un autoencoder lineare coprono lo stesso sottospazio dei principali componenti trovati da PCA, ma non sono gli stessi vettori. In particolare, non sono una base ortogonale. Questo è vero, tuttavia possiamo facilmente recuperare i componenti principali caricando i vettori dai pesi del codificatore automatico. Un po 'di notazione: lasciare che essere un insieme di vettori dimensionali, per la quale si vuole calcolare il PCA e lascia che sia la matrice le cui colonne sono . Quindi, definiamo un autoencoder lineare come la rete neurale a strato nascosto definita dalle seguenti equazioni: N n - X x 1 , … , x N