Preparar para ajuste
Objetivos de aprendizagem
Após concluir esta unidade, você estará apto a:
- Explicar a preparação do conjunto de dados para ajuste.
- Explicar de maneira geral o processo de ajuste.
Preparar seu conjunto de dados
A primeira etapa envolve a preparação do conjunto de dados específico da tarefa para ajuste. Isso pode incluir limpeza de dados, normalização de texto e conversão de dados em formato que seja compatível com os requisitos de entrada do LLM (em outras palavras, rotulação de dados). É essencial conferir se os dados representam a tarefa e o domínio e se eles cobrem vários cenários que o modelo poderá encontrar na produção. Veja como você pode preparar seu conjunto de dados para ajuste.
Coleta de dados
Acumular dados pertinentes do domínio ou da tarefa específica. Isso pode envolver a coleta de interações com usuários ou o uso de dados específicos do domínio.
Limpeza de dados
Remover dados irrelevantes, corrigir erros e, possivelmente, anonimizar informações confidenciais.
Divisão de conjunto de dados
Particionar seus dados em conjuntos de treinamento, validação e teste. O modelo treina com o conjunto de treinamento, os hiperparâmetros são ajustados com o conjunto de validação e o desempenho é avaliado com o conjunto de teste.
Configurar seu modelo
A escolha do modelo base apropriado e do método de ajuste depende da tarefa específica e dos dados disponíveis. Existem várias arquiteturas de LLM à escolha, incluindo GPT-3.5 Turbo, BERT e RoBERTa, cada uma com seus próprios pontos fortes e fracos. O método de ajuste também pode variar com base na tarefa e nos dados, por exemplo, aprendizagem de transferência, ajuste sequencial ou ajuste específico para a tarefa.
Escolha do modelo
Considere o seguinte ao escolher seu modelo base:
- Se o modelo funciona para sua tarefa específica
- O tamanho de entrada e saída do modelo
- O tamanho do conjunto de dados
- Se a infraestrutura técnica é adequada para o poder de computação exigido para ajuste
Escolha da arquitetura
Ajuste determinados componentes de acordo com a tarefa, por exemplo, a camada final em tarefas de classificação. Observe que a arquitetura básica do modelo permanecerá igual.
Escolhas de hiperparâmetro
Determine valores de taxa de aprendizado, tamanho do lote, número de épocas e parâmetros de regularização. Às vezes, é preferível uma taxa de aprendizado menor porque atualizações agressivas podem fazer o modelo esquecer seu conhecimento pré-treinado.
Como ajustar o modelo
Depois da escolha do LLM e do método de ajuste, o modelo pré-treinado precisa ser carregado na memória. Esta etapa inicia os pesos do modelo com base nos valores pré-treinados, o que agiliza o processo de ajuste e faz com que o modelo já tenha conhecimento prévio de linguagem geral.
Iniciar com pesos pré-treinados
Comece com os pesos do modelo pré-treinado. Essa é a essência da aprendizagem de transferência, usar conhecimentos do treinamento anterior.
Aprendizagem adaptável
Em alguns cenários avançados, você poderá empregar técnicas que adaptem a taxa de aprendizado a camadas diferentes. Por exemplo, camadas anteriores (que capturam características gerais) podem ser atualizadas com taxas de aprendizado menores se comparadas com camadas posteriores.
Regularização
Técnicas como dropout, decaimento dos pesos ou normalização das camadas podem ser essenciais para impedir o ajuste excessivo, especialmente quando o conjunto de dados de ajuste é relativamente pequeno.
Monitorar e avaliar o modelo
Esta etapa envolve treinar o LLM pré-treinado com o conjunto de dados específico da tarefa. O processo de treinamento envolve otimizar os pesos e parâmetros do modelo para minimizar a função de perda e melhorar o desempenho na tarefa. O processo de ajuste pode envolver várias rodadas de treinamento com o conjunto de treinamento, validação com o conjunto de validação e ajuste de hiperparâmetros para otimizar o desempenho do modelo.
Rastrear perdas e métricas
Monitore continuamente a perda de seus conjuntos de treinamento e validação durante o treinamento. Isso ajuda a detectar ajuste excessivo ou problemas no treinamento.
Interrupção antecipada
Pare o treinamento se o desempenho com o conjunto de validação começar a se degradar (mesmo que o desempenho com o conjunto de treinamento esteja melhorando). Isso é sinal de ajuste excessivo. Assim, você impede que o modelo fique muito ajustado aos dados de treinamento.
Métricas de avaliação
Use métricas apropriadas (como precisão, pontuação F1, pontuação BLEU) para medir o desempenho do modelo com o conjunto de teste. As métricas usadas dependem da tarefa desempenhada, por exemplo, classificação, regressões, geração e outras.
Fazer acertos após o ajuste
Após a conclusão do processo de ajuste, o desempenho do modelo precisa ser avaliado com o conjunto de teste. Esta etapa garante que o modelo está generalizando bem com dados novos e tem bom desempenho na tarefa específica. Métricas comuns usadas na avaliação incluem acurácia, precisão e memória.
Calibração
Ajuste as saídas do modelo para refletir melhor as probabilidades reais. Às vezes, um modelo ajustado pode estar excessivamente confiante ou com pouca confiança nas previsões.
Loop de feedback
Configure um sistema de forma que os usuários finais possam dar feedback sobre as saídas do modelo. Esse feedback pode ser usado em outras rodadas de ajuste para gerar aprimoramento contínuo.
Implantar o modelo
Depois da avaliação do modelo ajustado, ele pode ser implantado em ambientes de produção. O processo de implantação pode envolver a integração do modelo em um sistema maior, a configuração da infraestrutura necessária e o monitoramento do desempenho do modelo em cenários do mundo real.
Tamanho do modelo
Considere a destilação do modelo ou a limpeza pós-ajuste para reduzir o tamanho do modelo sem comprometer muito o desempenho. Isso pode mudar dependendo de onde seu modelo está sendo implantado, por exemplo, dispositivos de borda, servidores da web e outros.
Resumo
Embora o conceito de ajuste pareça simples, na prática ele envolve uma série de etapas e decisões que exigem atenção. Cada fase, da preparação dos dados à implantação, pode afetar bastante a eficiência e a eficácia do modelo no domínio ou na tarefa desejada.