Ir para o conteúdo principal

O que é Adagrad?

Um otimizador adaptativo da taxa de aprendizado que ajusta o tamanho do passo por parâmetro com base nos gradientes acumulados, especialmente útil para dados esparsos e PNL (Processamento de Linguagem Natural).

4 Personas AI Agents 1b

Summary

  • Divide a taxa de aprendizado pela raiz quadrada dos gradientes quadrados acumulados para cada parâmetro, resultando em tamanhos de passo adaptativos por parâmetro com decaimento acentuado ao longo do tempo.
  • Particularmente eficaz para recursos esparsos e embeddings de palavras em PNL, onde recursos pouco frequentes precisam de atualizações maiores para aprender representações significativas a partir de exemplos de treinamento limitados.
  • Pode sofrer com taxas de aprendizado decrescentes que interrompem o treinamento prematuramente; melhorado por variantes como Adadelta e RMSprop usando médias móveis exponenciais em vez de acumulação completa.

Um dos algoritmos mais populares para otimização em machine learning e deep learning é o gradiente descendente. Ele é usado para treinar modelos de machine learning.

Tipos de gradiente descendente

Tipos de gradiente descendente — gradiente descendente em batch, gradiente descendente estocástico, gradiente descendente em minibatch Atualmente, existem três tipos principais de gradiente descendente usados em algoritmos de machine learning e deep learning.

Gradiente descendente em batch

O gradiente descendente em batch é o mais simples. Ele calcula o erro para cada dado no conjunto de dados de treinamento, mas o modelo só é atualizado depois de todos os dados de treinamento terem sido computados.

Gradiente descendente estocástico

O gradiente descendente estocástico calcula o erro e atualiza o modelo para cada dado no conjunto de dados de treinamento.

Gradiente descendente em minibatch

Em vez de computar todos os dados de treinamento, o gradiente descendente em minibatch agrega uma pequena quantidade de dados com base no tamanho do batch e atualiza cada batch. O gradiente descendente estocástico é um método comum de otimização. É conceitualmente simples e, muitas vezes, pode ser implementado de forma eficiente. No entanto, requer ajuste manual de seus parâmetros (parâmetros de tamanho de etapa). Várias opções foram propostas para automatizar esse ajuste, uma delas é o AdaGrad. Enquanto os métodos de subgradiente estocástico padrão seguem principalmente um esquema processual predeterminado que ignora os recursos de dados observados, os algoritmos do AdaGrad incorporam de forma dinâmica informações da geometria dos dados observados em iterações anteriores para realizar um aprendizado baseado em gradiente mais informativo. O AdaGrad está disponível em duas versões. A versão utilizada na prática, Diagonal AdaGrad, tem como principal característica a manutenção da taxa de aprendizado, aplicando uma taxa de aprendizado por dimensão. A segunda versão, conhecida como Full AdaGrad, aplica uma taxa de aprendizado por direção (como a matriz completa do PSD). Adaptive Gradient Algorithm (AdaGrad) é um algoritmo de otimização baseado em gradiente. A taxa de aprendizado é aplicada aos parâmetros componente a componente, incorporando informações sobre observações passadas.  Ele usa mais atualizações para parâmetros associados a recursos de baixa frequência (como alta taxa de aprendizado) e menos atualizações para recursos de alta frequência (baixa taxa de aprendizado). O pequeno tamanho de atualização do Adagrad o torna adequado para o processamento de dados esparsos (NLP e reconhecimento de imagem). Cada parâmetro tem sua própria taxa de aprendizado, o que melhora a resolução de problemas com gradientes esparsos.

Vantagens de usar o AdaGrad

  • Não há necessidade de ajuste manual da taxa de aprendizado;
  • Convergência mais rápida e mais robusta em comparação com o gradiente descendente estocástico simples quando os pesos são escalados de forma diferente;
  • Menos sensível ao tamanho da etapa mestre.
UM LÍDER 5X

Gartner®: Databricks, líder em banco de dados em nuvem

Recursos adicionais

Nunca perca uma postagem da Databricks

Inscreva-se nas categorias de seu interesse e receba as últimas postagens na sua caixa de entrada