28 de Dezembro de 2022

ChatGPT: processo de treinamento, vantagens e limitações

Índice de conteúdo

Por Sergio Soage, Machine Learning Engineer da Aivo


Quando iniciamos o processo de planejamento desta série de artigos, a ideia inicial era apresentar os fundamentos do Processamento de Linguagem Natural. Em seguida, ir vá explicando as tecnologias mais importantes, discutir os avanços e mostrar o que usamos na Aivo. No entanto, devido aos recentes avanços na área, decidimos (momentaneamente) voltarsaltar para o presente, especificamente para o ChatGPT.

A seguir, explicamos do que se trata essa tecnologia, como ela evoluiu e suas principais vantagens e limitações.

GPT: Uma breve linha do tempo de seus avanços

O que é o ChatGPT? Para entendê-lo, temos que voltar ao início da família de modelos GPT. GPT significa “Transformador pré-treinado generativo”. O artigo original foi escrito em 2018 e gerou uma mudança muito importante, principalmente no subcampo da aprendizagem por transferência. Esse modelo pode ser retreinado com relativamente poucos dados e alcançar grandes resultados em vários benchmarks.

O GPT-2 foi a próxima evolução, lançada em 2019. Esse modelo usava uma arquitetura semelhante ao seu antecessor, mas com algumas modificações: era consideravelmente maior, com 10xX mais parâmetros, então retreinar o modelo tornou-se uma tarefa complexa para a infraestrutura necessária. Além disso, mudou os dados com os quais foi treinado, ou seja, “WebText” (dados da web, por exemplo, Reddit).

Essas mudanças geraram certas capacidades emergentes no modelo: primeiro, a capacidade de gerar texto “coerente”. Em segundo lugar, a capacidade de fazer “aprendizagem de poucos tiros”, ou seja, aprender sem retreinar o modelo, usando poucos exemplos em tarefas que o modelo nunca viu em seu treinamento inicial. No nível do aplicativo, o GPT-2 pode gerar manchetes de notícias muito realistas. Também foi adotado para geração de imagens (feedback loop entre PNL e Visão Computacional), porém, quando tentou ser adaptado para criar ferramentas de conversação, falhou.

E isso nos leva ao GPT-3, lançado em 2020 e com várias melhorias feitas até 2022 (incluindo o ChatGPT). Novamente, a arquitetura não mudou muito, mas o número de parâmetros do modelo mudou (novamente) (de 1,5 bilhão para 175 bilhões) e o conjunto de dados também mudou. Eles adicionaram muito mais dados da Web, como CommonCrawl, Wikipedia e WebText atualizado. Como seu antecessor, o GPT-3 estabeleceu novos resultados benchmarks SotA em vários benchmarks e melhorou muito seus recursos de aprendizado zero-shot. Como todos os Modelos Fundacionais (até agora), apresentou vieses (religiosos, de gênero, etc.) e foram demonstradas as suas virtudes, mas também os seus defeitos (num artigo futuro iremos focar mais neste ponto e nas características técnicas do modelo).

ChatGPT: uma evolução constante

Toda essa introdução foi para falar sobre o ChatGPT, que viria a ser uma versão GPT-3.5. O modelo GPT-3 original foi treinado com um objetivo simples, que é prever a próxima palavra a partir de uma grande quantidade de dados. Com este objetivo muito simples, observam-se certas capacidades emergentes, como raciocínio simples, programação, tradução e o já mencionado aprendizado de poucos tiros. No entanto, isso não é suficiente para tarefas mais complexas: você precisa “forçar” o GPT-3 a preencher automaticamente o texto fornecendo feedback humano, ou seja, selecionando determinados exemplos.

Para que o GPT-3 aprenda (sem ser retreinado), ele deve receber certas amostras e contexto por meio de uma técnica chamada "Prompt Engineering". Essa técnica é um bug, não um recurso, pois é causada pelo desalinhamento entre esse objetivo de prever a próxima palavra e o uso final que você deseja dar ao aplicativo.  

Exemplo de desalinhamento entre o texto a ser previsto e o uso final

O Chat GPT e o modelo no qual se baseia, o Instruct GPT, são os responsáveis ​​por corrigir este defeito de forma bastante sofisticada, para corrigir este desalinhamento, humanos devem estar envolvidos para ensinar o GPT e desta forma o GPT poderá gerar melhores perguntas. à medida que evolui.

Processo de treinamento do ChatGPT

  1. Crie um conjunto de dados de perguntas com determinados prompts e faça o ajuste fino usando o aprendizado supervisionado. Este passo é simples, mas muito caro.
  1. A segunda etapa é a mais interessante, pois diferentes respostas são propostas ao modelo e o que o feedback humano fornece é um ranqueamento das respostas da mais desejável para a menos desejável. Usando essas informações, um modelo pode ser treinado para ser "recompensado" e capturar as preferências humanas, reduzindo assim o desalinhamento.
  1. O passo 3 é tratar o GPT como uma “política” (termo de aprendizado por reforço) e otimizá-lo usando RL contra a recompensa aprendida, um algoritmo chamado PPO é usado e, dessa forma, o GPT é melhor alinhado.

Vantagens e limitações do ChatGPT

Agora que abordamos como o Chat GPT funciona, o que esse modelo significa para o campo? Isso significa que resolvemos a AGI (Artificial General Intelligence)?

Para a área é um grande avanço, porém, como os dados com os quais o modelo é treinado não estão disponíveis, e não há código para replicá-lo, por ser definitivamente um produto comercial, não podemos analisar suas implicações 100% cientificamente, se pudermos fazer aproximações e após 3 semanas de hype e estudo sobre os resultados gerados pelo modelo podemos encontrar grandes pontos a favor e pontos contra.

Resultados a favor: 

  • Produza textos de alta qualidade, isso pode ajudar a produzir conteúdo mais inteligente e atraente.
  • Ele suporta instruções mais complexas, para que você possa realizar tarefas de “raciocínio” mais avançadas.
  • Pode gerar conteúdos de maior contexto (comprimento)
  • Você pode dimensionar muito mais tarefas.

Resultados contra:

  • Falta de informação sobre o conjunto de dados com o qual é treinado para entender os vieses que pode ter.
  • Continua "alucinando".
  • Ele tende a escrever conteúdo plausível, mas incorreto com muita confiança.
  • Ele só pode ser usado por meio de um endpoint OpenAI, portanto, é um "escravo" do produto.
  • Modelo extremamente caro (OpenAI corta custos para ganhar usuários).

Alguns exemplos das implicações de produzir saídas errôneas:

Conclusão

Os grandes Modelos Fundacionais como o GPT implicam em um avanço exponencial para o campo, mas todos esses avanços devem ser analisados ​​profundamente.

Essa análise nos permite identificar onde eles falham para que possamos melhorá-los em interações futuras. No ritmo em que observamos esses avanços, não há dúvida de que um futuro muito promissor nos espera, mas também exigirá muita responsabilidade de todos os envolvidos na área.

Quer melhorar sua estratégia CX?

Nossas soluções de atendimento ao cliente baseadas em IA conversacional podem ajudar a fornecer uma experiência eficiente 24 horas, 7 dias da semana aos seus clientes. Entre em contato com nossa equipe para saber em detalhes como podemos apoiar seu negócio.