38 votos

Linealidad del PCA

Sin embargo, el ACP se considera un procedimiento lineal:

$$\mathrm{PCA}(X)\neq \mathrm{PCA}(X_1)+\mathrm{PCA}(X_2)+\ldots+\mathrm{PCA}(X_n),$$

donde $X=X_1+X_2+\ldots+X_n$ . Es decir, los vectores propios obtenidos por los ACP sobre las matrices de datos $X_i$ no suman para igualar los vectores propios obtenidos por PCA en la suma de las matrices de datos $X_i$ . ¿Pero no es la definición de una función lineal $f$ eso:

$$f(x+y)=f(x)+f(y)?$$

Entonces, ¿por qué se considera que el ACP es "lineal" si no cumple esta condición tan básica de linealidad?

49voto

zowens Puntos 1417

Cuando decimos que el PCA es un método lineal, nos referimos al mapa de reducción de la dimensionalidad $f:\mathbf x\mapsto \mathbf z$ del espacio de alta dimensión $\mathbb R^p$ a un espacio de menor dimensión $\mathbb R^k$ . En PCA, este mapeo viene dado por la multiplicación de $\mathbf x$ por la matriz de vectores propios del PCA, por lo que es manifiestamente lineal (la multiplicación de matrices es lineal): $$\mathbf z = f(\mathbf x) = \mathbf V^\top \mathbf x.$$ Esto contrasta con métodos no lineales de reducción de la dimensionalidad donde el mapa de reducción de la dimensionalidad puede ser no lineal.

Por otro lado, el $k$ vectores propios superiores $\mathbf V\in \mathbb R^{p\times k}$ se calculan a partir de la matriz de datos $\mathbf X\in \mathbb R^{n\times p}$ usando lo que usted llamó $\mathrm{PCA}()$ en su pregunta: $$\mathbf V = \mathrm{PCA}(\mathbf X),$$ y este es ciertamente no lineal: implica calcular los vectores propios de la matriz de covarianza, que es un procedimiento no lineal. (Como ejemplo trivial, la multiplicación de $\mathbf X$ por $2$ aumenta la matriz de covarianza en $4$ pero sus vectores propios siguen siendo los mismos, ya que están normalizados para tener una longitud unitaria).

6voto

zildjohn01 Puntos 6173

"Lineal" puede significar muchas cosas, y no se emplea exclusivamente de manera formal.

El ACP no suele definirse como una función en el sentido formal y, por tanto, no se espera que cumpla los requisitos de una función lineal cuando se describe como tal. Se describe más a menudo, como has dicho, como un procedimiento, y a veces como un algoritmo (aunque no me gusta esta última opción). A menudo se dice que es lineal de manera informal, no bien definida.

El ACP puede considerarse lineal, por ejemplo, en el siguiente sentido. Pertenece a una familia de métodos que consideran que cada variable $X_i$ puede ser aproximada por una función $$ X_i \approx f_Y(\alpha) $$ donde $\alpha \in \mathbb{R}^k$ y $Y$ es un conjunto de $k$ variables con alguna propiedad deseable. En el caso de PCA, $Y$ es un conjunto de variables independientes que puede reducirse en cardinalidad con una pérdida mínima en la precisión de la aproximación en un sentido específico. Se trata de propiedades deseables en numerosos entornos.

Ahora, para el PCA, cada $f_i$ se restringe a la forma $$ f_Y(\alpha) = \sum_{i=1}^k \alpha_{i}Y_i $$ es decir, una combinación lineal de las variables en $Y$ .

Dada esta restricción, ofrece un procedimiento para encontrar los valores óptimos (en cierto sentido) de $Y$ y el $\alpha_{ij}$ 's. Es decir, el ACP sólo considera las funciones lineales como hipótesis plausibles. En este sentido, creo que puede describirse legítimamente como "lineal".

5voto

user164061 Puntos 281

El PCA proporciona/es una transformación lineal.

Si se toma el mapa asociado a un análisis particular, digamos $\mathbf{M} \equiv PCA(X_1 + X_2)$ entonces $\mathbf{M}(X_1+X_2) = \mathbf{M}(X_1) + \mathbf{M}(X_2)$ .

El culpable es que $PCA(X_1 + X_2)$ , $PCA(X_1)$ y $PCA(X_2)$ no son los mismo transformaciones lineales.


Como comparación, un ejemplo muy simple de un proceso que utiliza una transformación lineal pero que no es una transformación lineal en sí misma:

La rotación $D(\mathbf{v})$ que duplica el ángulo de un vector $\mathbf{v}$ (digamos un punto en el espacio euclidiano 2-d) con algún vector de referencia (digamos $\left[x,y\right]=\left[1,0\right]$ ), no es una transformación lineal. Por ejemplo

$D(\left[1,1\right]) \rightarrow \left[0,\sqrt{2}\right]$

y

$D(\left[0,1\right]) \rightarrow \left[-1,0\right]$

pero

$D(\left[1,1\right]+\left[0,1\right]=\left[1,2\right]) \rightarrow \left[-0.78,2.09\right] \neq \left[-1,\sqrt{2}\right]$

esta duplicación del ángulo, que implica el cálculo de ángulos, no es lineal, y es análoga a la afirmación de la ameba, que el cálculo del vector propio no es lineal

i-Ciencias.com

I-Ciencias es una comunidad de estudiantes y amantes de la ciencia en la que puedes resolver tus problemas y dudas.
Puedes consultar las preguntas de otros usuarios, hacer tus propias preguntas o resolver las de los demás.

Powered by:

X