El ACP consiste en encontrar e interpretar una descomposición del valor singular (SVD) de $X$ (o cualquier otra matriz similar obtenida mediante diversas formas de "normalización" de las filas y/o columnas de $X$ ). Hay conexiones directas entre cualquier SVD de $X$ y cualquier SVD de $XX^\prime$ . Expondré las conexiones en ambas direcciones, obteniendo una SVD de una a partir de una SVD de la otra.
1. Cualquier SVD de $X$ determina una SVD única de $XX^\prime$ .
Por definición, un SVD de $X$ es una representación de la forma
$$X = U\Sigma V^\prime$$
donde $\Sigma$ es diagonal con entradas no negativas y $U$ y $V$ son matrices ortogonales. Entre otras cosas, esto implica $V^\prime V = \mathbb{I}$ la matriz de identidad.
Calcula
$$XX^\prime = (U\Sigma V^\prime)(U\Sigma V^\prime)^\prime= (U\Sigma V^\prime)(V\Sigma U^\prime) = U\Sigma V^\prime V \Sigma U^\prime = U\Sigma \mathbb{I} \Sigma U^\prime = U (\Sigma^2) U^\prime.$$
Desde $\Sigma^2$ es diagonal con entradas no negativas y $U$ es ortogonal, se trata de una SVD de $XX^\prime$ .
2. Cualquier SVD de $XX^\prime$ da (al menos una) SVD de $X$ .
A la inversa, porque $XX^\prime$ es simétrica y positiva-definida, mediante una SVD o con la Teorema espectral se puede diagonalizar mediante una transformación ortogonal $U$ (para lo cual ambos $UU^\prime$ y $U^\prime U$ son matrices de identidad):
$$XX^\prime = U\Lambda^2 U^\prime.$$
En esta descomposición, $\Lambda$ es un $n\times n$ matriz diagonal ( $n$ es el número de filas de $X$ ) con $r = \text{rank}(X)$ entradas no nulas que -sin pérdida de generalidad- podemos suponer que son las primeras $r$ entradas $\Lambda_{ii}, i=1,2,\ldots, r$ . Definir $\Lambda^{-}$ para ser la matriz diagonal con entradas $1/\Lambda_{ii}, i=1,2,\ldots, r$ (y ceros en caso contrario). Es un inversa generalizada de $\Lambda$ . Sea
$$Y = \Lambda^{-}U^\prime X$$
y calcular
$$YY^\prime = \Lambda^{-} U^\prime XX^\prime U \Lambda^{-} = \Lambda^{-} \Lambda^2 \Lambda^{-} = \mathbb{I}_{r;n}.$$
(He empleado la notación $\mathbb{I}_{r;n}$ para una identidad como $n\times n$ matriz de rango $r$ : tiene $r$ unos a lo largo de la diagonal y ceros en el resto). Este resultado implica $Y$ debe ser una matriz de bloques de la forma
$$Y = \pmatrix{W^\prime & 0 \\ 0 & 0}$$
con $W$ un $r\times r$ matriz ortogonal. Los ceros son matrices de dimensiones adecuadas para rellenar el resto de $Y$ (que tiene las mismas dimensiones que $X$ ). Sea $p$ sea el número de columnas de $X$ . Ciertamente $r \le p$ . Si $r \lt p$ podemos ampliar $W$ a un $p\times p$ matriz ortogonal $V$ . Esto se puede hacer de muchas maneras, pero una sencilla es poner $W^\prime$ en el bloque superior izquierdo, una matriz de identidad de dimensiones $p-r\times p-r$ en el bloque inferior derecho, y ceros en el resto.
Ya que (por construcción) $V^\prime V = \mathbb{I}_p$ ,
$$U^\prime X V = \Lambda Y V = \Lambda (V^\prime V) = \Lambda.$$
Al multiplicar por la izquierda por $U$ y multiplicando por la derecha por $V^\prime$ obtenemos
$$U\Lambda V^\prime = (UU^\prime) X (VV^\prime) = X,$$
que es una SVD de $X$ .
$$XX^\prime = (U\Sigma V^\prime)(U\Sigma V^\prime)^\prime= (U\Sigma V^\prime)(V\Sigma U^\prime) = U\Sigma V^\prime V \Sigma U^\prime = U\Sigma \mathbb{I} \Sigma U^\prime = U (\Sigma^2) U^\prime.$$
Desde $\Sigma^2$ es diagonal con entradas no negativas y $U$ es ortogonal, se trata de una SVD de $XX^\prime$ .