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 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.
Función de pérdida
Un único número que mide lo equivocado que está un modelo de parámetros 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.
Descenso de gradiente
Repetir : 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.
Learning rate (tasa de aprendizaje)
El tamaño de paso del descenso de gradiente, el hiperparámetro más importante. La estabilidad exige (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.
Regresión logística
Clasificación binaria con , 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.
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.
Redes neuronales
Composiciones de aplicaciones afines y no linealidades, con . Una función derivable con millones de parámetros ajustables, entrenada por descenso de gradiente.
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.
Retropropagación (backpropagation)
El algoritmo que calcula y 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.
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.
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.
Regularización
Añadir una penalización a la pérdida, (decaimiento de pesos) o (dispersión), para preferir modelos más sencillos y reducir el sobreajuste. Su gradiente encoge un poco cada peso en cada paso.
Paisaje de la pérdida (loss landscape)
La geometría de 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.
Optimización de segundo orden (con hessiano)
Usar la curvatura para elegir el paso: . 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).
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.
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.
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.
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.
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).
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).
Neural ODE
Una red residual es el método de Euler; con la red se convierte en una EDO , 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).
Las matemáticas sobre las que funciona este dominio
ƒ Fundamentos ★★★★★
- Funciones★★★★★→Redes neuronales
- Composición★★★★★→Redes neuronales, Diferenciación automática
- Funciones logarítmicas★★★★★→Función de pérdida
- Funciones inversas★★★★★→Modelos generativos
- Funciones exponenciales★★★★★→Funciones de activación
- Funciones hiperbólicas★★★★★→Funciones de activación
- Valor absoluto★★★★★→Función de pérdida
- Dominio y recorrido★★★★★→Funciones de activación
ε Continuidad ★★★★★
f′ Derivadas ★★★★★
- Derivada★★★★★→Descenso de gradiente, Diferenciación automática
- Reglas de derivación★★★★★→Diferenciación automática
- Derivadas de funciones elementales★★★★★→Funciones de activación, Diferenciación automática
- Regla de la cadena★★★★★→Diferenciación automática, Retropropagación (backpropagation)
- Derivabilidad y derivadas laterales★★★★★→Función de pérdida, Funciones de activación
- Derivadas de orden superior★★★★★→Optimización de segundo orden (con hessiano)
min Extremos y optimización ★★★★★
- Máximos y mínimos★★★★★→Función de pérdida
- Convexidad y concavidad★★★★★→Función de pérdida, Paisaje de la pérdida (loss landscape), Máquinas de vectores soporte (SVM)
- Multiplicadores de Lagrange★★★★★→Regularización, Máquinas de vectores soporte (SVM)
- Condiciones KKT★★★★★→Máquinas de vectores soporte (SVM)
- Puntos críticos y criterios de la derivada★★★★★→Descenso de gradiente, Paisaje de la pérdida (loss landscape)
≈ Métodos numéricos ★★★★★
- Método de Newton★★★★★→Optimización de segundo orden (con hessiano)
- Condicionamiento★★★★★→Paisaje de la pérdida (loss landscape)
- Estabilidad numérica★★★★★→Función de pérdida
- Orden y velocidad de convergencia★★★★★→Descenso de gradiente
- Iteración de punto fijo★★★★★→Aprendizaje por refuerzo
- Diferenciación numérica★★★★★→Diferenciación automática
- Integración numérica (cuadratura)★★★★★→Inferencia bayesiana
Σ Series ★★★★★
∇ Cálculo multivariable ★★★★★
- Funciones de varias variables★★★★★→Función de pérdida
- Derivadas parciales★★★★★→Retropropagación (backpropagation)
- Gradiente★★★★★→Descenso de gradiente
- Regla de la cadena multivariable★★★★★→Diferenciación automática, Retropropagación (backpropagation)
- Matriz jacobiana★★★★★→Diferenciación automática, Modelos generativos
- Matriz hessiana★★★★★→Paisaje de la pérdida (loss landscape), Optimización de segundo orden (con hessiano)
- Extremos en varias variables★★★★★→Regresión lineal, Paisaje de la pérdida (loss landscape)
- Superficies y conjuntos de nivel★★★★★→Paisaje de la pérdida (loss landscape)
- +2
ℱ Transformadas ★★★★★
ℙ Probabilidad y cálculo ★★★★★
- Función de densidad de probabilidad★★★★★→Función de pérdida, Inferencia bayesiana, Modelos generativos
- Esperanza★★★★★→Función de pérdida, Descenso de gradiente estocástico (SGD), Aprendizaje por refuerzo
- Estimación por máxima verosimilitud★★★★★→Función de pérdida, Regresión logística, Modelos generativos
- Variables aleatorias continuas★★★★★→Modelos generativos
- Varianza★★★★★→Redes neuronales, Descenso de gradiente estocástico (SGD), Momento y Adam
- Distribuciones continuas★★★★★→Modelos generativos