Recursos/Treinamento de modelo/O que acontece durante o treinamento

Métrica

Overfitting e underfitting

O overfitting ocorre quando um modelo memoriza seus exemplos de treinamento em vez de aprender o padrão por trás deles, de modo que tem um bom desempenho nesses exemplos e um desempenho pior em novos. O underfitting é o oposto: ele não aprendeu o padrão de forma alguma.

Capítulo 64 min de leitura4 referências

O que é

Um conjunto de treinamento é uma amostra das situações que um modelo encontrará. Ele contém um padrão que você deseja que seja aprendido, como a forma como o seu assistente responde e em qual tom e formato, e um ruído que você não deseja: a formulação exata de uma resposta, um erro de digitação, as peculiaridades da pergunta de um cliente. Um modelo generaliza quando capta o padrão. Ele sofre overfitting quando também se ajusta ao ruído, e sofre underfitting quando não capta o padrão.

Subajustenão capta o padrãoUm bom ajustesegue o padrãoSobreajustememoriza o ruído
Os mesmos dez exemplos de treinamento, três modelos. O modelo com subajuste erra em todos os pontos. O modelo com sobreajuste acerta perfeitamente nestes dez pontos, mas errará no próximo, pois aprendeu o ruído deles. O ajuste fino de um modelo de linguagem falha da mesma forma: ele começa a reproduzir seus exemplos em vez do comportamento por trás deles.

Como identificar

O sinal mais claro está nas curvas de perda. A perda de treinamento pode continuar caindo enquanto o modelo puder memorizar mais. A perda de validação, medida em conversas nas quais o modelo nunca foi treinado, para de cair quando o modelo aprende o que generaliza, e aumenta assim que ele começa a memorizar.

OVERFITTINGPARE AQUIépoca 1época 2época 3altobaixoperdaperda de treinamentoperda de validação
A perda de treinamento continua caindo porque o modelo sempre pode memorizar mais. A perda de validação é a mais honesta: quando ela se volta para cima, o modelo começou a aprender seus exemplos em vez do padrão por trás deles.

Em um modelo de linguagem com fine-tuning, o overfitting também aparece nas próprias respostas.

  • Cópia literal: frases, sentenças inteiras e até mesmo nomes e números das respostas de treinamento aparecem em respostas a perguntas não relacionadas.
  • Respostas prontas: uma resposta bem representada é dada a perguntas que apenas se assemelham à sua pergunta original.
  • Perda de flexibilidade: perguntas formuladas como os dados de treinamento funcionam bem, as formuladas de maneira diferente falham, e as tarefas gerais que o modelo base executava pioraram.
  • Invenção confiante: o modelo imita o estilo de respostas específicas e detalhadas, como menus nomeados e etapas numeradas, sem o conhecimento por trás delas, e inventa os detalhes.

Por que acontece

CausaPor que isso leva à memorização
Exemplos insuficientesCom poucos dados, memorizar cada resposta é a maneira mais fácil de reduzir a perda
Muitas épocasCada passagem mostra as mesmas respostas novamente, até que o modelo as reconheça
Taxa de aprendizado muito altaGrandes atualizações se ajustam a exemplos individuais rapidamente
Duplicatas e respostas repetidasUma resposta que aparece muitas vezes é aprendida como uma resposta fixa
Dados restritosO modelo nunca vê como as perguntas reais variam, portanto, não consegue aprender o que varia
Capacidade excessiva para os dadosO fine-tuning completo ou um adaptador grande em um conjunto pequeno tem espaço para armazenar exemplos

Como evitar

  • Pare no melhor ponto. Use o número de épocas em que a perda de validação foi a menor, ou um checkpoint desse ponto. Isso é a parada antecipada, a proteção mais simples e eficaz.
  • Menos épocas ou uma taxa de aprendizado menor. Ambas limitam o quanto os pesos se distanciam do modelo base.
  • Mais dados e mais variados. Cubra as diferentes maneiras como as pessoas realmente perguntam, incluindo perguntas curtas e vagas. Algumas centenas de exemplos variados ensinam mais do que mil quase duplicados.
  • Remova duplicatas e respostas excessivamente repetidas antes do treinamento.
  • Regularização: Dropout do LoRA, decaimento de pesos ou simplesmente um rank de adaptador menor, o que limita o quanto pode ser armazenado.
Duas execuções nas mesmas 150 conversas (ilustrativo)
  1. Execução A: 6 épocas, multiplicador 2. A perda de treinamento atinge 0.15. A perda de validação é menor após a época 2 e termina bem acima desse mínimo. No chat de teste, as respostas reutilizam frases inteiras das respostas de treinamento.
  2. Execução B: 2 épocas, multiplicador 1. A perda de treinamento termina em 0.6 e a perda de validação termina perto do seu mínimo. As respostas mantêm o estilo da empresa, mas são formuladas de forma inédita para cada pergunta.
  3. Conclusão: A menor perda de treinamento da Execução A é o problema, não a conquista. A Execução B generaliza e custou um terço do valor para ser treinada.

Underfitting

O underfitting é a falha oposta: nem a perda de treinamento nem a de validação caem muito, e o modelo ajustado responde de forma muito parecida com o modelo base. As causas são pouco treinamento (poucas épocas ou etapas, ou uma taxa de aprendizado muito baixa) ou dados sem um padrão consistente, como respostas que abordam perguntas semelhantes de maneiras contraditórias. Verifique os dados primeiro. Aumentar as épocas ou a taxa de aprendizado em dados inconsistentes ensina principalmente a inconsistência.

Erros comuns

  • Julgar uma execução pela sua perda de treinamento. A menor perda de treinamento geralmente pertence à execução com maior overfitting.
  • Tentar consertar um modelo fraco com mais épocas no mesmo conjunto de dados pequeno.
  • Pular a divisão de validação para manter todos os exemplos para o treinamento e perder a única maneira de ver o overfitting.
  • Deixar que duplicatas ou uma única resposta pronta dominem os dados.
  • Validar em conversas que também aparecem no treinamento, o que oculta o overfitting completamente.

Referências e leitura complementar

Fontes externas abrem em uma nova aba.

  1. 01OverfittingGoogle Machine Learning Crash Course · developers.google.comGeneralização, overfitting e o papel de um conjunto reservado, com exemplos interativos.
  2. 02OverfittingWikipedia · en.wikipedia.org
  3. 03Early stoppingWikipedia · en.wikipedia.orgParar no ponto de menor erro de validação, a proteção mais comum contra o overfitting.
  4. 04Regularization for Deep LearningGoodfellow, Bengio & Courville · Deep Learning, chapter 7 · deeplearningbook.orgA abordagem clássica de decaimento de pesos, dropout, parada antecipada e aumento de dados.

Transforme semanas de trabalho especializado em minutos

Veja como o Scalata se adapta à sua equipe, aos seus dados e aos seus Controles.

Fale com vendas