¿Cuál es la relación entre autoencoders y autovectores?

Los codificadores automáticos son redes que tienen menos nodos en alguna capa que su entrada que intentan reconstruir sus entradas. Tenga en cuenta esta imagen (aunque quizás con más capas):

La capa intermedia con 2 nodos aquí tiene 2 características que debe usar para recrear las 4 señales en la salida.

Un vector propio de alguna transformación lineal es un vector normalizado cuya extensión está fijada por dicha transformación lineal.

La forma más obvia de conectar estas dos ideas en las que puedo pensar es que PCA es un método de reducción de dimensionalidad que esencialmente es solo elegir los vectores propios (componentes principales) con los valores propios más altos de una matriz que corresponde a elegir el subespacio lineal que contiene la mayor variación en el conjunto de datos.

La conexión entre PCA y autoencoders sería que ambos se usan para reducir la dimensionalidad. Sin embargo, “autoencoder” abarca una clase más amplia de redes que pueden aprender patrones no lineales.

Específicamente en términos del diagrama anterior (4 entradas, 2 nodos en la capa oculta y 4 salidas), podemos usar PCA para crear un autoencoder con 1 capa oculta tomando (en este caso) los coeficientes (digamos x e y) de proyectar en los primeros 2 componentes principales como los valores en la capa oculta dada por alguna entrada, y la salida está dada por x * (primer componente principal) + y * (segundo componente principal) como un vector (recuerde que los componentes principales son vectores propios de una determinada matriz).

Los coeficientes que representan un codificador automático de este tipo tendrían el error cuadrado más bajo (la precisión más alta según esa medida) para una red con 3 capas y 2 nodos en la capa oculta si la entrada fuera linealmente independiente en cada dimensión. (compruébalo por ti mismo, es posible que haya hablado mal)

Como se dijo antes, puede agregar más capas a un codificador automático y funciones de activación no lineal para que sea potencialmente más potente para una variedad de entradas.

Los autoencoders están relacionados con el factorizaton de matriz no negativa (NMF)

AutoEncoder

f (X) = X, sujeto a varias restricciones como la no negatividad y la dispersión

NMF convexo

X = CX, donde rango (C) = r, y C no negativo

NMF

X = WH, donde W, H no son negativos

NMF es como encontrar los vectores propios de X, donde todos los vectores tienen componentes no negativos