Why this matters for ML
Resolver es el esqueleto de la regresión lineal (las normal equations son un sistema). El rank te dice si tus features son redundantes o si un modelo tiene solución única. Los cuatro subespacios fundamentales (column space, null space) explican cuándo un problema de ML tiene solución y cuántas.
Concepts covered
- Sistema lineal
- Gaussian elimination, row echelon form (REF) y reduced (RREF)
- Pivots
- Rank
- Column space y null space (kernel)
- Existencia y unicidad de soluciones
Intuition first
🎬 3Blue1Brown E.o.L.A. cap. 7 ("Inverse matrices, column space and null space"). Piensa en como "¿qué input aterriza en tras la transformación ?".
Theory & key results
Sistema: ecuaciones, incógnitas ↔ con .
Gaussian elimination: con tres row operations (intercambiar filas, escalar una fila, sumar múltiplo de una fila a otra) llevas a forma triangular (REF) y luego a RREF. No cambian el conjunto solución.
Pivots: las primeras entradas no nulas de cada fila en REF. El número de pivots = rank.
Rank : número de filas (o columnas) linealmente independientes = dimensión del column space. Intuición ML: cuántas "direcciones de información" reales hay.
Column space : span de las columnas de = todos los alcanzables. tiene solución ⟺ .
Null space : todos los con . Su dimensión es (rank–nullity theorem). Si , hay infinitas soluciones (o ninguna).
Existencia y unicidad (para cuadrada ):
- (full rank): solución única para todo ; invertible.
- : null space no trivial → o infinitas soluciones o ninguna, según .
Worked example
Resolver Fila2 ← Fila2 − 3·Fila1: , lado derecho . Dos pivots → rank 2 → solución única. Back-substitution: ; . Solución .
Notebook exercises (by hand)
- Lleva a RREF y da su rank. ¿Qué notas de la fila 2?
- Para del ej. anterior, describe y .
- ¿Cuántas soluciones tiene si es con rank 2? Depende de : explica ambos casos.
- Verifica el rank–nullity theorem () en un ejemplo de rank 2.
- Resuelve por eliminación: .
- Si dos feature columns de tu dataset son idénticas, ¿qué le pasa al rank y por qué eso complica ajustar un modelo lineal?
Python lab
import numpy as np
from numpy.linalg import matrix_rank, solve
A = np.array([[1.,2.],[3.,4.]]); b = np.array([5.,6.])
print("rank:", matrix_rank(A)) # 2 -> full rank
print("solución:", solve(A, b)) # [-4. , 4.5]
# sistema singular (columnas dependientes)
S = np.array([[1.,1.,2.],[2.,2.,4.],[0.,1.,1.]])
print("rank singular:", matrix_rank(S)) # < 3
# null space vía SVD (pequeño adelanto de LA-09)
U, s, Vt = np.linalg.svd(S)
null = Vt[np.isclose(s, 0)].T if np.any(np.isclose(s,0)) else "trivial"
print("null space:\n", null)
Implementa tu propia Gaussian elimination sobre una matriz aumentada y compárala con np.linalg.solve — es el mejor ejercicio del módulo.
Examen final 📝
Intenta cada nivel antes de abrir las soluciones.
🟡 Medio
- Resuelve por eliminación: .
- Da el rank de llevándola a REF.
🟠 Medio-difícil
- Para : describe (column space) y encuentra una base de (null space).
- Un sistema con de tiene . Da un para el que haya infinitas soluciones y explica cuándo no habría ninguna.
🔴 Difícil
- Demuestra el rank–nullity theorem en un caso concreto de rank 2 (construye la matriz, calcula rank y , verifica ) y explícalo conceptualmente.
- En regresión lineal, requiere que sea invertible. Muestra que y concluye qué condición sobre las feature columns garantiza solución única.
✅ Soluciones
- De la 2ª: . Sustituye: .
- Fila2−2·Fila1 → fila nula; Fila3−Fila1=. Quedan 2 pivots ⇒ rank 2.
- La 2ª fila es 2× la 1ª: (una recta en , dim 1). : ⇒ base p. ej. (dim 2). Check rank-nullity: . ✓
- Con rank 2 en , . Si (p. ej. una columna de ), hay infinitas soluciones (solución particular + todo el null space). Si , ninguna.
- Ej.: (fila3=fila1+fila2). rank 2, dim 1. . Conceptual: cada dimensión de input o "sobrevive" (contribuye al rank/output) o "colapsa" (cae en el null space); la suma es la dimensión total del input.
- y tienen el mismo null space (, porque ), luego misma nullity y mismo rank. () es invertible ⟺ rank ⟺ las feature columns son linealmente independientes (sin colinealidad).