IA y machine learning

El cálculo detrás de la IA moderna: funciones de pérdida, gradientes, retropropagación, optimizadores y modelos probabilísticos.

21 conceptos

El cálculo detrás de la IA moderna

Quítale la jerga a una red neuronal y lo que queda es cálculo: una gran función derivable, una pérdida escalar que mide su error y un algoritmo que sigue cuesta abajo la derivada de la pérdida.

Cálculo
   ├── Derivadas ──► Gradientes ──► Optimización ──► Descenso de gradiente
   ├── Derivadas parciales + regla de la cadena ──► Retropropagación
   ├── Integrales ──► Probabilidad ──► ML probabilístico (verosimilitudes, Bayes, difusión)
   └── Álgebra lineal + cálculo ──► Redes neuronales

Un paso de entrenamiento, de principio a fin:

entrada x ─► capa z = Wx + b ─► activación a = σ(z) ─► predicción ŷ ─► pérdida L(ŷ, y)
                                                                             │
actualizar pesos W ← W − η ∂L/∂W ◄── gradiente ∂L/∂W, ∂L/∂b (regla de la cadena, hacia atrás) ◄─┘

Las derivadas se conectan con el aprendizaje automático con fuerza ★★★★★ fundamental: sin gradiente no hay deep learning. Las integrales, con fuerza ★★★★ importante, a través de la probabilidad: el objetivo verdadero es una pérdida esperada y los modelos generativos son densidades. Cada flecha de abajo es una página que puedes abrir.

Conceptos

Regresión lineal

Ajustar y^=w⋅x+b\hat y = w\cdot x + b minimizando el error cuadrático. El problema de aprendizaje más sencillo, resoluble en forma cerrada anulando el gradiente, y la plantilla de todo lo que viene después.

UniversitarioAplicación

Función de pérdida

Un único número L(θ)L(\theta) que mide lo equivocado que está un modelo de parámetros θ\theta sobre los datos. Aprender es minimizarlo. El error cuadrático medio para regresión y la entropía cruzada para clasificación son las dos que usa todo el mundo.

UniversitarioAplicación

Descenso de gradiente

Repetir θ←θ−η ∇L(θ)\theta \leftarrow \theta - \eta\,\nabla L(\theta): dar un paso pequeño en contra del gradiente. Cauchy lo propuso en 1847; hoy (con sus variantes estocásticas y adaptativas) entrena prácticamente todas las redes neuronales.

UniversitarioAplicación◐ demo

Learning rate (tasa de aprendizaje)

El tamaño de paso η\eta del descenso de gradiente, el hiperparámetro más importante. La estabilidad exige η<2/λmax⁡\eta < 2/\lambda_{\max} (la mayor curvatura); los calendarios (calentamiento, decaimiento coseno) empiezan con cuidado, van rápido y terminan con pasos pequeños para asentarse en un mínimo.

UniversitarioAplicación

Regresión logística

Clasificación binaria con p(y=1∣x)=σ(w⋅x+b)p(y = 1\mid x) = \sigma(w\cdot x + b), entrenada por máxima verosimilitud (entropía cruzada). Es convexa, así que el descenso de gradiente encuentra el óptimo global: una sola neurona, y el puente hacia las redes neuronales.

UniversitarioAplicación

Funciones de activación

Las funciones no lineales que se aplican tras cada capa lineal. Sin ellas una red profunda se reduce a una sola aplicación lineal. Sus derivadas importan tanto como sus valores: las sigmoides se saturan (desvanecimiento del gradiente) y ReLU deja pasar el gradiente sin cambios donde está activa.

UniversitarioAplicación

Redes neuronales

Composiciones de aplicaciones afines y no linealidades, fθ=fL∘⋯∘f1f_\theta = f_L\circ\dots\circ f_1 con fℓ(a)=σ(Wℓa+bℓ)f_\ell(a) = \sigma(W_\ell a + b_\ell). Una función derivable con millones de parámetros ajustables, entrenada por descenso de gradiente.

AvanzadoAplicación

Diferenciación automática

Calcular derivadas exactas de programas aplicando la regla de la cadena a cada operación elemental. Ni simbólica (sin explosión de expresiones) ni numérica (sin error de truncamiento). El modo inverso da el gradiente de un escalar por una pequeña constante por el coste del programa.

AvanzadoAplicación

Retropropagación (backpropagation)

El algoritmo que calcula ∂L/∂W\partial L/\partial W y ∂L/∂b\partial L/\partial b para cada capa de una red: una pasada hacia delante guardando los valores intermedios y otra hacia atrás aplicando la regla de la cadena desde la pérdida hasta las entradas. Coste: unas dos veces la pasada hacia delante, sea cual sea el número de parámetros.

AvanzadoAplicación◐ demo

Descenso de gradiente estocástico (SGD)

Usar el gradiente de un lote pequeño aleatorio en vez del de todo el conjunto de datos: una estimación ruidosa pero insesgada, miles de veces más barata. El ruido incluso ayuda a escapar de sillas y de mínimos estrechos.

AvanzadoAplicación

Momento y Adam

El momento promedia gradientes pasados (una bola pesada que sigue rodando por los barrancos); RMSProp divide por la media cuadrática móvil del gradiente (pasos por parámetro). Adam combina ambos y es el optimizador por defecto del deep learning.

AvanzadoAplicación

Regularización

Añadir una penalización a la pérdida, L+λ∥θ∥2L + \lambda\norm\theta^2 (decaimiento de pesos) o λ∥θ∥1\lambda\norm\theta_1 (dispersión), para preferir modelos más sencillos y reducir el sobreajuste. Su gradiente 2λθ2\lambda\theta encoge un poco cada peso en cada paso.

AvanzadoAplicación

Paisaje de la pérdida (loss landscape)

La geometría de L(θ)L(\theta) sobre el espacio de parámetros: valles, mesetas, puntos de silla y barrancos. Su curvatura (hessiano) controla lo deprisa y lo estable que se mueven los optimizadores, y los mínimos planos tienden a generalizar mejor que los agudos.

AvanzadoAplicación

Optimización de segundo orden (con hessiano)

Usar la curvatura para elegir el paso: θ←θ−H−1∇L\theta \leftarrow \theta - H^{-1}\nabla L. Convergencia cuadrática cerca de un mínimo e inmune al mal condicionamiento, pero el hessiano de un modelo grande ni siquiera se puede almacenar; por eso en la práctica se usan aproximaciones (L-BFGS, Gauss–Newton, K-FAC, Shampoo).

EspecializaciónAplicación

Deep learning (aprendizaje profundo)

Entrenar redes muy profundas (CNN, transformers) con retropropagación y SGD adaptativo sobre conjuntos de datos enormes. El cálculo es el mismo que para una neurona; lo que cambió es la escala, la arquitectura (conexiones residuales, normalización, atención) y el hardware.

AvanzadoAplicación

Redes convolucionales (CNN)

Redes cuyas capas convolucionan la entrada con núcleos pequeños aprendidos: equivariantes a traslaciones y con pocos parámetros. La columna vertebral de la visión por computador desde 2012.

AvanzadoAplicación

Máquinas de vectores soporte (SVM)

Encontrar el hiperplano separador de mayor margen: un programa cuadrático convexo cuyo dual lagrangiano solo usa los datos a través de productos escalares; de ahí el truco del núcleo.

AvanzadoAplicación

Aprendizaje por refuerzo

Un agente aprende a actuar maximizando la recompensa descontada esperada. Los métodos de valor iteran el operador de Bellman (una contracción); los de gradiente de política hacen ascenso de gradiente sobre una esperanza. RLHF lo usa para ajustar modelos de lenguaje.

AvanzadoAplicación

Inferencia bayesiana

Tratar los parámetros como aleatorios y actualizar una densidad a priori en una a posteriori con la regla de Bayes. La integral normalizadora es intratable en general, así que en la práctica se usa MCMC (muestreo) o inferencia variacional (optimización).

AvanzadoAplicación

Modelos generativos

Modelos que aprenden una densidad de probabilidad de los datos y muestrean de ella. El cálculo está por todas partes: cambio de variables y determinantes jacobianos (flows), integrales ELBO (VAE), críticos lipschitzianos (WGAN) y ecuaciones diferenciales estocásticas u ordinarias integradas hacia atrás en el tiempo (difusión).

EspecializaciónAplicación

Neural ODE

Una red residual xℓ+1=xℓ+hF(xℓ)x_{\ell+1} = x_\ell + hF(x_\ell) es el método de Euler; con h→0h \to 0 la red se convierte en una EDO x˙=Fθ(x,t)\dot x = F_\theta(x, t), que se evalúa con un resolvedor de EDO y se entrena con el método adjunto (el modo inverso de la diferenciación automática en tiempo continuo).

EspecializaciónAplicación

Las matemáticas sobre las que funciona este dominio

Σ Series ★★★★★

↑ ↓ para navegar · ↵ · Esc