🧮 Computational Mathematics

Inicio · Parte 06 — Álgebra lineal II: descomposiciones y tensores

131 — Mínimos cuadrados lineales

intermedio-avanzado clase 11 de 20 4 horas demostración least_squares

Mínimos cuadrados es la proyección de b sobre el espacio columna, y su residuo es ortogonal a él.

Fórmulas

min ‖Ax − b‖²
ecuaciones normales: AᵀAx = Aᵀb
residuo ortogonal: Aᵀ(Ax − b) = 0

Desarrollo

Cuando un sistema tiene más ecuaciones que incógnitas, en general no hay solución exacta. Mínimos cuadrados busca la que minimiza la norma del residuo, y esa solución tiene una caracterización geométrica limpia: es la proyección ortogonal de b sobre el espacio columna de A (clase 119).

Derivar el objetivo ‖Ax − b‖² e igualar a cero da directamente las ecuaciones normales. La condición de ortogonalidad del residuo no es un requisito adicional: es equivalente a que el gradiente se anule. Álgebra y geometría dicen lo mismo.

Por qué se minimiza el cuadrado del residuo y no su valor absoluto tiene dos razones. La analítica: el cuadrado es derivable en todas partes y da solución cerrada, mientras que el valor absoluto exige programación lineal. Y la estadística: bajo error gaussiano, minimizar el error cuadrático es maximizar la verosimilitud (clase 215). No es una elección arbitraria, es la consecuencia de un supuesto.

La contrapartida es la sensibilidad a valores atípicos: elevar al cuadrado da mucho peso a los errores grandes. Cuando eso es un problema, se usan pérdidas robustas como Huber (clase 304), a costa de perder la solución cerrada.

Ejemplo trabajado

Ajustar una recta a cinco puntos.

datos: (0,1.0) (1,3.1) (2,4.9) (3,7.2) (4,8.9)

A = [[1,0],[1,1],[1,2],[1,3],[1,4]]
b = (1.0, 3.1, 4.9, 7.2, 8.9)

Ecuaciones normales AᵀA x = Aᵀb:
  intercepto = 1.02,  pendiente = 2.00

residuos: (−0.02, 0.08, −0.13, 0.16, −0.09)
SSE = 0.058

Verificación: Aᵀ·residuo = (0, 0)         ✓ ortogonal

Qué calcula el laboratorio

Mínimos cuadrados por ecuaciones normales.

python classes/part-06-algebra-lineal-ii-descomposiciones-y-tensores/131-minimos-cuadrados-lineales/lab.py
compmath run 131

Salidas del laboratorio (7)

Muestra de la ejecución real

{
  "datos": [
    [
      0.0,
      1.0
    ],
    [
      1.0,
      3.1
    ],
    [
      2.0,
      4.9
    ],
    [
      3.0,
      7.2
    ],
    [
      4.0,
      8.9
    ]
  ],
  "intercepto": 1.04,
  "pendiente": 1.99,
  "predicciones": [
    1.04,
    3.03,
    5.02,
    7.01,
    9.0
  ],
  "residuos": [
    -0.04,
    0.07,
    -0.12,
    0.19,
    -0.1
  ],
  "SSE": 0.067
}

Errores comunes

Dónde se usa

Regresión lineal, calibración de sensores, ajuste de curvas, estimación de parámetros y resolución de sistemas sobredeterminados.

Idea rectora de la parte

Diagonalizar es elegir la base donde la transformación solo escala.

Error a evitar

Interpretar autovalores complejos como error de cálculo.

Conexión con IA

LoRA factoriza matrices de bajo rango, la atención se define con productos tensoriales y la estabilidad del entrenamiento depende del espectro de los pesos.

Bibliografía de la clase

Archivos de la clase