Valores propios (Eigenvalues)

Entendiendo cómo una transformación estira el espacio

Los valores propios (eigenvalues) son un concepto central del álgebra lineal que describe cómo una matriz transforma ciertos vectores especiales. En redes neuronales, ayudan a entender estabilidad, dinámica del entrenamiento y comportamiento de las transformaciones.

👉 Son clave para analizar qué hace realmente una capa al espacio de datos.

Definición corta

Un valor propio es un escalar que indica cuánto se estira o comprime un vector especial (vector propio) al aplicar una transformación lineal.

Definición detallada

Dada una matriz AAA, un vector vvv es un vector propio si:Av=λvA v = \lambda v

👉 Donde:

  • vv = vector propio
  • λ\lambda = valor propio

Interpretación

Aplicar la matriz AA a vv:

👉 No cambia su dirección
👉 Solo cambia su magnitud

Intuición

La mayoría de vectores cambian de dirección al aplicar una transformación.

👉 Pero los vectores propios son especiales:

  • Se mantienen en la misma dirección
  • Solo se escalan

Interpretación geométrica

Una matriz puede:

  • Rotar
  • Escalar
  • Deformar

Los valores propios indican:

👉 cuánto se estira el espacio en ciertas direcciones específicas

Ejemplo simple

A=[2003]A = \begin{bmatrix} 2 & 0 \\ 0 & 3 \end{bmatrix}

Vectores propios:

  • [1,0][1, 0][1,0] → λ=2\lambda = 2λ=2
  • [0,1][0, 1][0,1] → λ=3\lambda = 3λ=3

👉 Significa:

  • eje X se escala por 2
  • eje Y se escala por 3

Cómo se calculan

Se resuelve:det(AλI)=0\det(A – \lambda I) = 0det(A−λI)=0

👉 Esto genera el polinomio característico.

Valores propios en redes neuronales

🔹 1. Estabilidad del entrenamiento

Valores propios grandes:

👉 pueden causar explosión de gradientes

Valores pequeños:

👉 pueden causar desaparición de gradientes

🔹 2. Análisis de capas

Permiten entender:

  • cómo una capa transforma datos
  • qué direcciones se amplifican

🔹 3. PCA (Análisis de componentes principales)

Los valores propios indican:

👉 qué direcciones contienen más información

🔹 4. Dinámica en RNNs

Los valores propios del Jacobiano afectan:

  • memoria
  • estabilidad

Ejemplo paso a paso

A=[4213]A = \begin{bmatrix} 4 & 2 \\ 1 & 3 \end{bmatrix}

Se calcula:det(AλI)=0\det(A – \lambda I) = 0det(A−λI)=0 4λ213λ=(4λ)(3λ)2\begin{vmatrix} 4-\lambda & 2 \\ 1 & 3-\lambda \end{vmatrix} = (4-\lambda)(3-\lambda) – 2=λ27λ+10=0= \lambda^2 – 7\lambda + 10 = 0

Solución:λ=5,2\lambda = 5, 2

👉 Dos valores propios.

Relación con otros conceptos

  • Matriz
  • Transformación lineal
  • Espacio vectorial
  • Descomposición espectral
  • PCA

Ejemplo en Python

import numpy as np
A = np.array([
[4, 2],
[1, 3]
])
eigenvalues, eigenvectors = np.linalg.eig(A)
print("Valores propios:", eigenvalues)
print("Vectores propios:\n", eigenvectors)

Ejemplo en PyTorch

import torch
A = torch.tensor([
[4.0, 2.0],
[1.0, 3.0]
])
eigenvalues, eigenvectors = torch.linalg.eig(A)
print("Valores propios:", eigenvalues)
print("Vectores propios:\n", eigenvectors)

Ejemplo conceptual

Transformación:
Un círculo → elipse

👉 Los ejes de la elipse = vectores propios
👉 Las longitudes = valores propios

⚠️ Errores comunes

Confundir valores propios con vectores propios

Son conceptos distintos pero relacionados.

Ignorar números complejos

Los valores propios pueden ser complejos.

Pensar que todos los vectores son propios

Solo algunos cumplen la condición.

Aplicación en deep learning

Ejemplo: matriz de pesos

WxW \cdot x

👉 Los valores propios de WWW:

  • indican qué direcciones se amplifican
  • ayudan a entender estabilidad

Interpretación profunda

Los valores propios permiten:

  • analizar transformaciones complejas
  • entender dinámica de redes profundas
  • detectar problemas de entrenamiento
  • identificar direcciones importantes

👉 Son una herramienta clave para interpretar modelos.

Conclusión

Los valores propios revelan cómo una transformación lineal afecta diferentes direcciones del espacio. Son esenciales para entender estabilidad, dinámica y estructura en redes neuronales.

👉 Dominar este concepto abre la puerta a entender el comportamiento profundo de los modelos.

Related Concepts