Linear Algebra·Unidad 8

LA-08 — Symmetric matrices, quadratic forms, positive definiteness

Dos de las matrices más importantes en ML son simétricas: la covariance matrix (Prob-06, PCA) y la Hessian (Calc-06). Que una Hessian sea positive definite significa que estás en un mínimo (tu modelo convergió bien); indefinite significa un saddle point (el terror del deep learning). Quadratic forms $\mathbf{x}^\top A\mathbf{x}$ son la forma de casi toda loss cuadrática.

Why this matters for ML

Dos de las matrices más importantes en ML son simétricas: la covariance matrix (Prob-06, PCA) y la Hessian (Calc-06). Que una Hessian sea positive definite significa que estás en un mínimo (tu modelo convergió bien); indefinite significa un saddle point (el terror del deep learning). Quadratic forms xAx\mathbf{x}^\top A\mathbf{x} son la forma de casi toda loss cuadrática.

Concepts covered

  • Symmetric matrices y sus propiedades especiales
  • Spectral theorem (eigen-descomposición ortogonal)
  • Quadratic forms xAx\mathbf{x}^\top A\mathbf{x}
  • Positive/negative (semi)definite e indefinite
  • Test de definiteness vía eigenvalues
  • Conexión con mínimos/máximos/saddles

Intuition first

🎬 Repasa 3Blue1Brown E.o.L.A. cap. 14 pensando en el caso simétrico (eigenvectors perpendiculares). Complementa con Strang 18.06 L25–L28 (symmetric, positive definite).

Theory & key results

Symmetric: A=AA=A^\top. Propiedades regalo:

  • Sus eigenvalues son reales.
  • Sus eigenvectors se pueden elegir ortonormales.

Spectral theorem: toda matriz simétrica se descompone como A=QΛQ,A = Q\Lambda Q^\top, con QQ ortogonal (eigenvectors ortonormales) y Λ\Lambda diagonal (eigenvalues). Es la eigendecomposition de LA-07, pero ortogonal (por eso Q1=QQ^{-1}=Q^\top). Este es el motor de PCA y SVD.

Quadratic form: para AA simétrica, q(x)=xAx=i,jAijxixjq(\mathbf{x}) = \mathbf{x}^\top A\mathbf{x} = \sum_{i,j}A_{ij}x_i x_j. Es un escalar; generaliza ax2ax^2 a muchas variables. En la base de eigenvectors se vuelve iλiyi2\sum_i \lambda_i y_i^2 — una suma de parábolas escaladas por los eigenvalues.

Definiteness (según el signo de q(x)q(\mathbf{x}) para todo x0\mathbf{x}\neq0):

Tipo Condición Eigenvalues Geometría
Positive definite q>0q>0 todos >0>0 cuenco (bowl) → mínimo
Positive semidefinite q0q\ge0 todos 0\ge0 cuenco con valle plano
Negative definite q<0q<0 todos <0<0 domo → máximo
Indefinite cambia de signo mezcla ± saddle point

Test práctico: calcula los eigenvalues y mira sus signos. (Alternativa: leading principal minors — Sylvester's criterion.) Una covariance matrix siempre es positive semidefinite.

Conexión clave con optimización (Calc-10): la Hessian HH de una loss en un punto crítico es simétrica; su definiteness clasifica el punto: PD → mínimo local, ND → máximo, indefinite → saddle.

Worked example

A=[2112]A=\begin{bmatrix}2&1\1&2\end{bmatrix} (simétrica). Eigenvalues (de LA-07): 33 y 11, ambos >0>0positive definite. Entonces q(x)=2x12+2x1x2+2x22>0q(\mathbf{x})=2x_1^2+2x_1x_2+2x_2^2 > 0 para todo x0\mathbf{x}\neq0: es un cuenco, su único punto crítico (el origen) es un mínimo.

Contraejemplo: B=[1001]B=\begin{bmatrix}1&0\0&-1\end{bmatrix} tiene eigenvalues 1,11,-1indefinite; q(x)=x12x22q(\mathbf{x})=x_1^2-x_2^2 es una silla.

Notebook exercises (by hand)

  1. Verifica que A=[2112]A=\begin{bmatrix}2&1\1&2\end{bmatrix} es simétrica y escribe xAx\mathbf{x}^\top A\mathbf{x} como polinomio en x1,x2x_1,x_2.
  2. Clasifica [3001]\begin{bmatrix}3&0\0&1\end{bmatrix}, [0110]\begin{bmatrix}0&1\1&0\end{bmatrix}, [2005]\begin{bmatrix}-2&0\0&-5\end{bmatrix} por sus eigenvalues.
  3. Demuestra que para cualquier matriz real MM, MMM^\top M es simétrica y positive semidefinite.
  4. Escribe la spectral decomposition A=QΛQA=Q\Lambda Q^\top de la matriz del ej. 1.
  5. Si la Hessian de una loss en un punto crítico tiene eigenvalues {4,2}{4, -2}, ¿qué tipo de punto es y qué implica para el entrenamiento?
  6. Argumenta por qué una covariance matrix nunca puede ser negative definite.

Python lab

import numpy as np

def classify(A):
    w = np.linalg.eigvalsh(A)     # eigvalsh: para matrices simétricas
    if np.all(w > 0):  return "positive definite (mínimo)"
    if np.all(w >= 0): return "positive semidefinite"
    if np.all(w < 0):  return "negative definite (máximo)"
    return "indefinite (saddle)"

for M in [np.array([[2.,1.],[1.,2.]]),
          np.array([[1.,0.],[0.,-1.]]),
          np.array([[3.,0.],[0.,1.]])]:
    print(classify(M), "  eig:", np.linalg.eigvalsh(M))

# spectral theorem: A = Q Λ Qᵀ
A = np.array([[2.,1.],[1.,2.]])
w, Q = np.linalg.eigh(A)
print("reconstruye A:", np.allclose(Q @ np.diag(w) @ Q.T, A))
print("Q ortogonal:", np.allclose(Q.T @ Q, np.eye(2)))

# MᵀM siempre PSD
M = np.random.randn(4,3)
print("min eig de MᵀM:", np.linalg.eigvalsh(M.T @ M).min() >= -1e-9)

Examen final 📝

Intenta cada nivel antes de abrir las soluciones.

🟡 Medio

  1. Escribe xAx\mathbf x^\top A\mathbf x como polinomio para A=[3225]A=\begin{bmatrix}3&2\2&5\end{bmatrix}.
  2. Clasifica la definiteness de [2003]\begin{bmatrix}2&0\0&-3\end{bmatrix} y [4114]\begin{bmatrix}4&1\1&4\end{bmatrix} por sus eigenvalues.

🟠 Medio-difícil

  1. Demuestra que para cualquier MRm×nM\in\mathbb{R}^{m\times n}, la matriz MMM^\top M es simétrica y positive semidefinite.
  2. Escribe la spectral decomposition A=QΛQA=Q\Lambda Q^\top de A=[3223]A=\begin{bmatrix}3&2\2&3\end{bmatrix}.

🔴 Difícil

  1. La Hessian de una loss en un punto crítico es H=[210121012]H=\begin{bmatrix}2&-1&0\-1&2&-1\0&-1&2\end{bmatrix}. Determina si el punto es mínimo, máximo o saddle (calcula/argumenta el signo de los eigenvalues; pista: es la matriz de un grafo camino, todos sus eigenvalues son positivos).
  2. Demuestra que una matriz simétrica AA es positive definite si y solo si puede escribirse como A=BBA=B^\top B con BB de rank completo (relación con Cholesky, LA-09).
✅ Soluciones
  1. 3x12+4x1x2+5x223x_1^2+4x_1x_2+5x_2^2 (el término cruzado es 2A12x1x2=4x1x22A_{12}x_1x_2=4x_1x_2).
  2. Primera: eigenvalues 2,32,-3indefinite (saddle). Segunda: eigenvalues 5,3>05,3>0positive definite (mínimo).
  3. (MM)=M(M)=MM(M^\top M)^\top=M^\top(M^\top)^\top=M^\top M ⇒ simétrica. Para cualquier x\mathbf x: xMMx=Mx20\mathbf x^\top M^\top M\mathbf x=|M\mathbf x|^2\ge0 ⇒ PSD.
  4. Eigenvalues 55 (v (1,1)/2(1,1)/\sqrt2) y 11 (v (1,1)/2(1,-1)/\sqrt2). Q=12[1111]Q=\frac{1}{\sqrt2}\begin{bmatrix}1&1\1&-1\end{bmatrix}, Λ=diag(5,1)\Lambda=\text{diag}(5,1), A=QΛQA=Q\Lambda Q^\top.
  5. Todos los eigenvalues de HH son 22cos(kπ/4)>02-2\cos(k\pi/4)>0 para k=1,2,3k=1,2,3 (≈0.59, 2, 3.41) ⇒ positive definitemínimo local.
  6. (⇐) Si A=BBA=B^\top B con BB full rank, xAx=Bx2>0\mathbf x^\top A\mathbf x=|B\mathbf x|^2>0 para x0\mathbf x\neq0 (porque Bx0B\mathbf x\neq0). (⇒) Si AA es PD, por spectral theorem A=QΛQA=Q\Lambda Q^\top con Λ>0\Lambda>0; toma B=Λ1/2QB=\Lambda^{1/2}Q^\top, entonces BB=QΛQ=AB^\top B=Q\Lambda Q^\top=A y BB es full rank. (Cholesky da un BB triangular concreto.)