Aprende cómo el optimizador Adam potencia el entrenamiento eficiente de redes neuronales con tasas de aprendizaje adaptables, impulso y aplicaciones reales en IA.
Adam (Estimación Adaptativa de Momentos) es un algoritmo de optimización ampliamente adoptado y utilizado en el aprendizaje profundo (DL) y el aprendizaje automático (ML). Está diseñado para actualizar eficazmente los pesos de la red durante el proceso de entrenamiento adaptando la tasa de aprendizaje de cada parámetro individualmente. Presentado en el artículo"Adam: A Method for Stochastic Optimization" por Diederik P. Kingma y Jimmy Ba, Adam combina las ventajas de otras dos populares técnicas de optimización: AdaGrad (Algoritmo de Gradiente Adaptativo) y RMSprop(Propagación de la Raíz Cuadrática Media). Esta combinación lo hace especialmente eficaz para entrenar grandes redes neuronales con numerosos parámetros y conjuntos de datos complejos.
Adam calcula tasas de aprendizaje adaptativo para cada parámetro basándose en estimaciones del primer y segundo momento de los gradientes. Esencialmente, realiza un seguimiento de una media exponencialmente decreciente de los gradientes pasados (similar al momento) y una media exponencialmente decreciente de los gradientes pasados al cuadrado (similar a AdaGrad/RMSprop).
En comparación con algoritmos más sencillos como el Descenso Gradiente Estocástico (SGD), que utiliza una tasa de aprendizaje única y fija (o una que decae según un programa), la adaptación por parámetro de Adam a menudo permite avanzar más rápidamente en la búsqueda de una buena solución, especialmente con paisajes de pérdidas complejos.
Adán es popular por varias razones:
Adam es un optimizador para muchos modelos de última generación:
En visión por ordenador, Adam se utiliza con frecuencia para entrenar Redes Neuronales Convolucionales (CNN ) profundas para tareas como la clasificación de imágenes, la detección de objetos y la segmentación de imágenes. Por ejemplo, entrenar una Ultralytics YOLO de Ultralytics para detectar objetos en imágenes(como los del conjunto de datos COCO) o realizar la segmentación de instancias puede aprovechar Adam para lograr una convergencia eficiente durante la fase de entrenamiento. También se aplica en el análisis de imágenes médicas para tareas como la detección de tumores.
Adam es un optimizador estándar para entrenar grandes modelos lingüísticos (LLM) como las variantes BERT y GPT. Cuando se entrenan modelos para tareas como la traducción automática, el resumen de textos o el análisis de sentimientos, Adam ayuda a navegar eficazmente por el complejo panorama de las funciones de pérdida asociadas a estos grandes modelos(basados en transformadores).
Dentro del ecosistema Ultralytics , Adam y su variante AdamW (Adam con decaimiento de peso desacoplado) son optimizadores disponibles para el entrenamiento de los modelosYOLO Ultralytics . Aprovechar las tasas de aprendizaje adaptativo de Adam puede acelerar la convergencia durante el entrenamiento de modelos de detección de objetos, segmentación de instancias o estimación de poses como YOLO11 o YOLOv10. Aunque SGD suele ser el optimizador predeterminado y recomendado para algunos modelos YOLO debido a su potencial mejor generalización final(evitando el sobreajuste), Adam proporciona una alternativa robusta, especialmente útil en determinados escenarios o durante la experimentación inicial y la evaluación del modelo. Puedes configurar fácilmente el optimizador y otros ajustes de entrenamiento. Herramientas como Ultralytics HUB agilizan el proceso, permitiendo a los usuarios entrenar modelos utilizando varios optimizadores, incluido Adam, ya sea localmente o mediante entrenamiento en la nube. Frameworks como PyTorch y TensorFlow proporcionan implementaciones estándar de Adam, que se utilizan en el marco de Ultralytics . Para mejorar aún más el rendimiento, considera técnicas como la destilación de conocimientos o la exploración de diferentes arquitecturas de modelos.