IA 360
Glosario Inteligencia Artificial

Optimización

Optimizar es encontrar la mejor solución de una función objetivo, su máximo o su mínimo. En el aprendizaje automático es el motor del entrenamiento: ajustar los parámetros de un modelo para minimizar su error. Explicamos qué es una función objetivo, la diferencia entre problemas convexos y no convexos, el descenso de gradiente y sus variantes, y por qué no siempre se alcanza el óptimo global.

Admin IA360 4 min de lectura Read in English
Optimización

Optimizar es encontrar la mejor solución posible de una función objetivo —su valor máximo o mínimo—, quizá sujeta a restricciones que delimitan qué soluciones son admisibles. Es una idea matemática general, pero en inteligencia artificial ocupa un lugar central: entrenar un modelo es, literalmente, un problema de optimización. Se define una función de pérdida que mide cuánto se equivoca el modelo, y el entrenamiento consiste en ajustar sus parámetros para minimizarla.

Los ingredientes

Todo problema de optimización tiene tres piezas: una función objetivo (o de coste, o de pérdida) que se quiere minimizar o maximizar; unas variables de decisión que se pueden ajustar —en un modelo, sus pesos—; y, a veces, unas restricciones que acotan la región de soluciones válidas. Una solución que respeta las restricciones es «factible»; entre las factibles, la que optimiza la función objetivo es la «óptima».

Convexo y no convexo

La distinción más importante es esta. En un problema convexo, todo mínimo local es también el mínimo global: no hay trampas, y se puede resolver con garantías. El entrenamiento de las redes neuronales, en cambio, es no convexo: al encadenar transformaciones lineales con funciones de activación no lineales, el paisaje de la pérdida se llena de valles, y el optimizador puede detenerse en un mínimo local que no es el mejor.

El descenso de gradiente

El método dominante en el aprendizaje profundo es el descenso de gradiente: calcula la pendiente (el gradiente) de la pérdida respecto a cada parámetro y da un pequeño paso en la dirección que la reduce, repitiendo hasta converger. Tiene variantes según cuántos datos usa en cada paso: el descenso estocástico (SGD), que usa un solo ejemplo, y el mini-batch, que usa pequeños lotes y es el estándar. Sobre ellos se construyen optimizadores adaptativos como Adam (Kingma y Ba, 2015), que ajusta el paso de cada parámetro combinando información de los gradientes recientes.

Sin garantía de óptimo global

Conviene ser honesto: en los problemas no convexos no hay garantía de alcanzar el mínimo global, y en la práctica se buscan buenos mínimos locales. Funciona sorprendentemente bien porque, en las dimensiones altísimas de una red, muchos de esos mínimos tienen un error parecido al óptimo y el ruido del muestreo ayuda a escapar de los peores. Es una observación empírica robusta, no un teorema.

Compartir este artículo

Este sitio web utiliza cookies para mejorar la experiencia de navegación. Política de cookies.

↑↓ navegar ↵ abrir esc cerrar