Capítulo 3

Optimización Convexa

3.1 Conjuntos Convexos

Un conjunto C es convexo si el segmento entre dos puntos cualesquiera está contenido en C:

x,yC,  t[0,1]:  tx+(1t)yC\forall \mathbf{x}, \mathbf{y} \in C, \; \forall t \in [0,1]: \; t\mathbf{x} + (1-t)\mathbf{y} \in C

Ejemplos convexos

  • • Espacios vectoriales
  • • Bolas y elipsoides
  • • Semiespacios {x:aTxb}\{\mathbf{x} : \mathbf{a}^T \mathbf{x} \le b\}
  • • Poliedros (intersección de semiespacios)

Operaciones que preservan convexidad

  • • Intersección de conjuntos convexos
  • • Suma de Minkowski
  • • Proyección (lineal o afín)

3.2 Funciones Convexas

f es convexa si el segmento entre dos puntos está sobre la gráfica:

f(tx+(1t)y)tf(x)+(1t)f(y)f(t\mathbf{x} + (1-t)\mathbf{y}) \le t f(\mathbf{x}) + (1-t) f(\mathbf{y})

Equivalente a que la Hessiana sea semidefinida positiva (si f es dos veces diferenciable).

Ejemplos convexas

  • f(x)=x2f(x) = x^2 (cuadrática)
  • f(x)=exf(x) = e^x (exponencial)
  • f(x)=logxf(x) = -\log x (log-barrier)
  • • Normas: xp\|\mathbf{x}\|_p
  • • Pérdida cuadrática en regresión

No convexas en ML

  • • Redes neuronales profundas
  • • Mezcla de Gaussianas
  • • Pérdida con funciones periódicas
  • • Autoencoders variacionales

3.3 ¿Por Qué es Importante la Convexidad?

Mínimo global

Todo mínimo local de una función convexa es global. No importa dónde empiece el optimizador.

Convergencia garantizada

GD con tasa apropiada converge al óptimo global en funciones convexas (con tasa O(1/k) o mejor).

Dualidad fuerte

Para problemas convexos, el dual tiene el mismo valor que el primal. Permite resolver problemas complejos desde su formulación dual (ej: SVM).

3.4 Problemas Convexos en ML

Regresión Lineal (OLS)

minyXβ2\min \|y - X\beta\|^2

Función convexa (cuadrática). Solución cerrada.

Ridge / LASSO

minyXβ2+λβpp\min \|y - X\beta\|^2 + \lambda \|\beta\|_p^p

Ridge (p=2) y LASSO (p=1) son convexos.

Regresión Logística

minlog(1+eyiwTxi)\min \sum \log(1 + e^{-y_i \mathbf{w}^T \mathbf{x}_i})

Convexa. No tiene solución cerrada pero converge con GD.

SVM

min12w2+Cξi\min \frac{1}{2}\|\mathbf{w}\|^2 + C\sum \xi_i

Problema cuadrático convexo con restricciones lineales.

python
import numpy as np
from sklearn.linear_model import LogisticRegression
from sklearn.datasets import make_classification

X, y = make_classification(n_samples=1000, n_features=20, random_state=42)

# Regresión logística = optimización convexa
model = LogisticRegression(
    penalty='l2',  # ridge en log-loss = convexo
    solver='lbfgs',  # optimizador quasi-Newton
    max_iter=1000
)
model.fit(X, y)
print(f"Score: {model.score(X, y):.4f}")

# Verificar convergencia (el solver converge porque es convexo)
print(f"n_iter: {model.n_iter_[0]}")