Inicio · Parte 12 — Optimización matemática y computacional
d es de descenso ⟺ dᵀ∇f < 0
la más empinada: d = −∇f
Newton: d = −H⁻¹∇f (también de descenso si H es definida positiva)
El criterio para que una dirección sirva es sencillo: su producto escalar con el gradiente debe ser negativo. Eso significa que forma un ángulo mayor de 90 grados con el gradiente, y que moverse un poco en esa dirección reduce la función. Hay infinitas direcciones que lo cumplen, no solo una.
El gradiente negativo es la de máximo descenso local, en el sentido de que maximiza la reducción por unidad de longitud del paso. Pero «localmente óptima» no significa «globalmente eficiente»: en un valle alargado el gradiente apunta hacia las paredes en vez de a lo largo del valle, y el descenso zigzaguea desperdiciando la mayor parte del movimiento.
Ese defecto es exactamente lo que corrigen los métodos posteriores. Momentum promedia gradientes sucesivos y el zigzag se cancela. Newton usa la curvatura para reescalar cada dirección y apunta directamente al mínimo de la aproximación cuadrática. Los métodos adaptativos escalan por coordenada. Todos siguen siendo direcciones de descenso, solo que mejor elegidas.
Conviene retener que cualquier dirección con producto escalar negativo funciona, incluso una aleatoria. Los métodos de optimización sin gradiente explotan esa libertad probando direcciones al azar y quedándose con las que reducen el objetivo. Son lentos pero aplicables donde no hay derivada, y la clase 259 los desarrolla.
Cuatro direcciones evaluadas desde el mismo punto.
f(x,y) = x² + 20y² punto (−2, 3) f = 184,0
∇f = (−4, 120)
dirección dᵀ∇f ¿descenso? f tras un paso
−gradiente −14 416 sí 183,8800
aleatoria válida −116 sí 183,9180
eje x + 4 no 184,0040
+gradiente +14 416 no 184,1201
La más empinada es −∇f, pero la aleatoria también sirve.
Nota: el gradiente vale 120 en y y −4 en x. El descenso
corregirá sobre todo y, y avanzará muy poco en x: ese
desequilibrio es el que produce el zigzag.
Cualquier dirección con dᵀ∇f < 0 hace descender la función.
python classes/part-12-optimizacion-matematica-y-computacional/243-gradiente-y-direcciones-de-descenso/lab.py
compmath run 243
-gradientecoordenada_xaleatoria_validaascensof_inicialla_mas_empinada{
"-gradiente": {
"dᵀ∇f": -14416.0,
"es_de_descenso": true,
"f_tras_el_paso": 183.87995333
},
"coordenada_x": {
"dᵀ∇f": 4.0,
"es_de_descenso": false,
"f_tras_el_paso": 184.004001
},
"aleatoria_valida": {
"dᵀ∇f": -116.0,
"es_de_descenso": true,
"f_tras_el_paso": 183.91798611
},
"ascenso": {
"dᵀ∇f": 14416.0,
"es_de_descenso": false,
"f_tras_el_paso": 184.12008663
},
"f_inicial": 184.0,
"la_mas_empinada": "-∇f"
}
Diseño de optimizadores, métodos de región de confianza, optimización sin derivadas y análisis de convergencia.
AdamW es el optimizador por defecto del entrenamiento moderno; entender su actualización explica el weight decay, el warmup y el gradient clipping.
9780387400655 verificado en International ISBN Agency (2026-08-19).9780511804441 verificado en International ISBN Agency (2026-08-19).