Yolo Vision Shenzhen
Shenzhen
Junte-se agora
Glossário

Adam Optimizer

Explore o Adam para aprendizagem profunda. Saiba como ele combina momentum e RMSProp para uma convergência mais rápida em modelos como Ultralytics .

O Adam , abreviação de Adaptive Moment Estimation (Estimativa Adaptativa de Momento), é um sofisticado algoritmo de otimização amplamente utilizado para treinar modelos de aprendizagem profunda. Ele revolucionou o campo ao combinar as vantagens de duas outras extensões populares do descida de gradiente estocástico (SGD): Algoritmo de Gradiente Adaptativo (AdaGrad) e Propagação da Média Quadrática (RMSProp). Ao calcular taxas de aprendizagem adaptativas individuais para diferentes parâmetros a partir de estimativas do primeiro e segundo momentos dos gradientes, Adam as redes neurais convergem significativamente mais rápido do que os métodos tradicionais. A sua robustez e requisitos mínimos de ajuste tornam-no a escolha padrão para muitos profissionais que estão a iniciar um novo projeto de aprendizagem automática (ML).

Como funciona Adam

Em sua essência, treinar um modelo envolve minimizar uma função de perda, que mede a diferença entre as previsões do modelo e os dados reais. Algoritmos padrão normalmente usam um tamanho de passo constante (taxa de aprendizagem) para descer a "paisagem de perda" em direção ao erro mínimo. No entanto, essa paisagem costuma ser complexa, apresentando ravinas e planaltos que podem prender algoritmos mais simples.

Adam isso mantendo dois buffers históricos para cada parâmetro:

  1. Momentum (Primeiro Momento): Semelhante a uma bola pesada a rolar colina abaixo, isto rastreia a média móvel dos gradientes passados para manter a velocidade na direção relevante.
  2. Variança (Segundo Momento): Isso rastreia a média móvel dos gradientes ao quadrado, que dimensiona a taxa de aprendizagem.

Essa combinação permite que o otimizador dê passos maiores em áreas planas da paisagem e passos menores e mais cautelosos em áreas íngremes ou ruidosas. A mecânica específica é detalhada no artigoAdam fundamental Adam , de Kingma e Ba, que demonstrou sua superioridade empírica em várias tarefas de aprendizagem profunda (DL).

Aplicações no Mundo Real

A versatilidade do Adam levou à sua adoção em praticamente todos os setores da inteligência artificial (IA).

  • Processamento de Linguagem Natural (NLP): Grandes modelos de linguagem, como Generative Pre-trained Transformers (GPT), dependem fortemente do Adam ou sua variante AdamW) para o treinamento. O algoritmo lida com os gradientes esparsos associados a vastos vocabulários e conjuntos de dados massivos de forma eficiente, permitindo a criação de poderosos chatbots e sistemas de tradução.
  • Visão detect acional na área da saúde: Na análise de imagens médicas, os modelos devem detetar anomalias sutis, como tumores em exames de ressonância magnética. Adam ajuda as redes neurais convolucionais (CNNs) a convergir rapidamente para soluções de alta precisão, o que é fundamental no desenvolvimento de ferramentas de diagnóstico para IA na área da saúde.

Adam . SGD

Embora Adam geralmente mais rápido a convergir, é importante distingui-lo do Stochastic Gradient Descent (SGD). SGD atualiza os pesos do modelo usando uma taxa de aprendizagem fixa e é frequentemente preferido para as etapas finais do treino de modelos de deteção de objetos de última geração, pois às vezes pode alcançar uma generalização ligeiramente melhor (precisão final) nos dados de teste.

No entanto, Adam «adaptativo», o que significa que lida com o ajuste da taxa de aprendizagem automaticamente. Isso torna-o muito mais fácil de usar para experiências iniciais e arquiteturas complexas, onde ajustar SGD difícil. Para os utilizadores que gerem experiências na Ultralytics , alternar entre esses otimizadores para comparar o desempenho é frequentemente um passo fundamental no ajuste de hiperparâmetros.

Implementação com Ultralytics

Frameworks modernos como PyTorch e a Ultralytics facilitam a utilização Adam . Uma variante popular chamada AdamW (Adam decaimento de peso) é frequentemente recomendada, pois corrige problemas com a regularização no Adam original. Isso é particularmente eficaz para as arquiteturas mais recentes, como YOLO26, que se beneficiam da estabilidade AdamW .

O exemplo a seguir demonstra como treinar um modelo YOLO26 usando o AdamW :

from ultralytics import YOLO

# Load the cutting-edge YOLO26n model
model = YOLO("yolo26n.pt")

# Train the model using the 'AdamW' optimizer
# The 'optimizer' argument allows easy switching between SGD, Adam, AdamW, etc.
results = model.train(data="coco8.yaml", epochs=5, optimizer="AdamW")

Para programadores interessados nos fundamentos teóricos mais profundos, recursos como as Notas de Otimização CS231n da Stanford fornecem excelentes visualizações de como Adam a outros algoritmos, como RMSProp e AdaGrad. Além disso, a DocumentaçãoPyTorch oferece detalhes técnicos sobre os argumentos e especificidades de implementação disponíveis para personalização.

Junte-se à comunidade Ultralytics

Junte-se ao futuro da IA. Conecte-se, colabore e cresça com inovadores globais

Junte-se agora