Logo Logo BW diosito's blog

Introducción a PCA (Análisis de Componentes Principales)

July 29, 2025
3 min read
Table of Contents

El Análisis de Componentes Principales (PCA, por sus siglas en inglés) es una técnica muy utilizada en análisis de datos y aprendizaje automático para reducir la dimensionalidad de un dataset mientras se conserva la mayor cantidad de variabilidad posible.

¿Por qué PCA?

Cuando se tienen muchas variables cuantitativas en un dataset, PCA permite detectar relaciones entre ellas y construir nuevas variables (componentes) que capturan la mayor varianza posible.

Paso 1: Correlación de Pearson

PCA se basa en las correlaciones entre variables. Usamos el coeficiente de correlación de Pearson ( r ), definido como:

r=(xixˉ)(yiyˉ)(xixˉ)2(yiyˉ)2r = \frac{\sum (x_i - \bar{x})(y_i - \bar{y})}{\sqrt{\sum (x_i - \bar{x})^2} \cdot \sqrt{\sum (y_i - \bar{y})^2}}
  • ( r = 1 ): correlación positiva perfecta
  • ( r = -1 ): correlación negativa perfecta
  • ( r = 0 ): no hay correlación lineal

Nota: Las variables deben ser cuantitativas. Hay que tener cuidado si se ha hecho one-hot encoding de variables categóricas.

Paso 2: Normalización

Antes de aplicar PCA, es común normalizar los datos para que todas las variables tengan media cero y desviación estándar uno:

z=xxˉσz = \frac{x - \bar{x}}{\sigma}

Paso 3: Matriz de correlación y SVD

A partir del dataset normalizado se calcula la matriz de correlación ( R ), y luego se aplica SVD (descomposición espectral) para obtener:

  • Valores propios ( \lambda_i )
  • Vectores propios (componentes principales)

Los vectores propios son ortogonales y cada uno representa una nueva dimensión que resume la información de las variables originales.

Paso 4: Selección de componentes

La varianza explicada por cada componente se basa en su valor propio:

Varianza explicada=λij=1pλj\text{Varianza explicada} = \frac{\lambda_i}{\sum_{j=1}^p \lambda_j}

Una regla común es quedarse con los componentes que explican al menos el 70% de la varianza total.

Paso 5: Transformación de los datos

Se transforma el dataset proyectándolo sobre los vectores propios:

Yi=v1z1+v2z2++vpzpY_i = v_1 z_1 + v_2 z_2 + \dots + v_p z_p

donde ( v_i ) son los pesos (valores del vector propio), y ( z_i ) son las variables estandarizadas.

Aplicación de PCA

PCA es especialmente útil para:

  • Reducir la dimensionalidad en datasets con muchas variables
  • Mejorar el rendimiento de modelos
  • Visualizar datos en 2D o 3D
  • Preprocesar datos antes de clustering o regresión

Ejemplo de escalamiento previo al PCA:

x=xmin(x)max(x)min(x)x' = \frac{x - \min(x)}{\max(x) - \min(x)}

En próximos posts veremos cómo aplicar PCA manualmente y cómo usarlo para manejo de imágenes.