Quais são as diferenças entre PCA e autoencoder?

56

O PCA e o autoencoder podem reduzir a demension, então, qual é a diferença entre eles? Em que situação devo usar um sobre o outro?

RockTheStar
fonte

Respostas:

52

O PCA é restrito a um mapa linear, enquanto os codificadores automáticos podem ter codificadores / decodificadores não lineares.

Um codificador automático de camada única com função de transferência linear é quase equivalente ao PCA, onde quase significa que o encontrado pelo AE e pelo PCA não será o mesmo - mas o subespaço medido pelo respectivo W será.WW

bayerj
fonte
Entendo! Então, eu preciso ter duas camadas para transformação não linear. Então, várias camadas significam não-lineares muito complexos?
RockTheStar 15/10
7
@RockTheStar: não é o número de camadas que importa, mas a função de ativação [função de transferência]. Com a função de transferência linear, nenhum número de camadas levará a um autoencoder não linear.
Ameba diz Reinstate Monica
Portanto, com a transformação não linear, mesmo existe apenas 1 camada de unidade oculta. A solução ainda não é linear?
RockTheStar 15/10
Sim. (Também ele ainda pode ser linear, em alguns casos, por exemplo, quando as unidades ocultas são ativados em regiões quase linear.)
bayerj
"quando as unidades ocultas são ativadas nas regiões lineares próximas", você quer dizer a parte linear na função sigmóide, certo?
RockTheStar
17

Como bayerj aponta, o PCA é um método que assume sistemas lineares onde os Autoencoders (AE) não. Se nenhuma função não linear for usada no EA e o número de neurônios na camada oculta for de menor dimensão, então o da entrada então o PCA e o EA poderão produzir o mesmo resultado. Caso contrário, o EA poderá encontrar um subespaço diferente.

Uma coisa a notar é que a camada oculta em um EA pode ser de maior dimensionalidade do que a da entrada. Nesses casos, os EA podem não estar reduzindo a dimensionalidade. Nesse caso, nós os percebemos fazendo uma transformação de um espaço de recurso para outro, em que os dados no novo espaço de recurso separam fatores de variação.

O(2N)O(N)

DaemonMaker
fonte
2
thx para o seu ans!
RockTheStar
6

Isso é mais adequado como comentário, mas como eu não tenho a reputação de que isso será dado como resposta.

Um tanto confuso com a noção de quase na resposta de bayerj: s. Leitura de redes neurais e análise de componentes principais: aprendendo com exemplos sem mínimos locais onde a prova é fornecida.

pΣXX

Este não é exatamente o espaço correspondente, conforme estendido pelo PCA?

johnblund
fonte
11
O artigo que você cita utiliza um autoencoder linear, ou seja, nenhuma função de ativação não linear. É por isso que seus pesos abrangem exatamente o mesmo subespaço do PCA.
Elliotp 22/02
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
fonte