Estudo de Caso de Classificação de Empregos para Graduados
Clavié et al., 2023 (opens in a new tab) apresentam um estudo de caso sobre engenharia de estímulos aplicada a um caso de classificação de texto em média escala em um sistema de produção. Usando a tarefa de classificar se um emprego é adequado para um recém-formado ("entry-level job") ou não, eles avaliaram uma série de técnicas de engenharia de estímulos e relataram seus resultados usando o GPT-3.5 (gpt-3.5-turbo
).
O trabalho mostra que LLMs superam todos os outros modelos testados, incluindo uma linha de base extremamente forte no DeBERTa-V3. O gpt-3.5-turbo
também supera de forma notável as variantes mais antigas do GPT3 em todas as métricas-chave, mas requer análise adicional da saída, pois sua capacidade de aderir a um modelo parece ser pior do que nas outras variantes.
As principais descobertas de sua abordagem de engenharia de estímulos são:
- Para tarefas como esta, onde não é necessário conhecimento especializado, o estímulo CoT de poucas vezes (Few-shot CoT) teve um desempenho pior do que o estímulo de zero vezes (Zero-shot prompting) em todos os experimentos.
- O impacto do estímulo na obtenção do raciocínio correto é enorme. Simplesmente pedir ao modelo para classificar um determinado emprego resulta em uma pontuação F1 de 65,6, enquanto o modelo com engenharia de estímulo pós-prompt alcança uma pontuação F1 de 91,7.
- Tentar forçar o modelo a aderir a um modelo reduz o desempenho em todos os casos (esse comportamento desaparece nos testes iniciais com o GPT-4, que são posteriores ao artigo).
- Muitas pequenas modificações têm um impacto desproporcional no desempenho.
- As tabelas abaixo mostram todas as modificações testadas.
- Dar instruções apropriadas e repetir os pontos-chave parece ser o maior impulsionador de desempenho.
- Algo tão simples como dar um nome (humano) ao modelo e se referir a ele assim aumentou a pontuação F1 em 0,6 pontos.
Modificações de Estímulo Testadas
Nome abreviado | Descrição |
---|---|
Baseline | Fornecer um anúncio de emprego e perguntar se é adequado para um graduado. |
CoT | Dar alguns exemplos de classificação precisa antes da consulta. |
Zero-CoT | Pedir ao modelo para raciocinar passo a passo antes de fornecer a resposta. |
rawinst | Dar instruções sobre seu papel e a tarefa ao adicionar à mensagem do usuário. |
sysinst | Dar instruções sobre seu papel e a tarefa como uma mensagem do sistema. |
bothinst | Dividir as instruções, com o papel como mensagem do sistema e a tarefa como mensagem do usuário. |
mock | Dar instruções da tarefa simulando uma discussão em que ele as reconhece. |
reit | Reforçar elementos-chave nas instruções repetindo-os. |
strict | Pedir ao modelo para responder seguindo estritamente um modelo fornecido. |
loose | Pedir apenas a resposta final seguindo um modelo fornecido. |
right | Pedir ao modelo para chegar à conclusão correta. |
info | Fornecer informações adicionais para abordar falhas comuns de raciocínio. |
name | Dar ao modelo um nome pelo qual nos referimos a ele na conversa. |
pos | Fornecer feedback positivo ao modelo antes de consultar. |
Impacto de Desempenho de Todas as Modificações de Estímulo
Precisão | Recuperação | F1 | Adesão ao Modelo | |
---|---|---|---|---|
Baseline | 61,2 | 70,6 | 65,6 | 79% |
CoT | 72,6 | 85,1 | 78,4 | 87% |
Zero-CoT | 75,5 | 88,3 | 81,4 | 65% |
+rawinst | 80 | 92,4 | 85,8 | 68% |
+sysinst | 77,7 | 90,9 | 83,8 | 69% |
+bothinst | 81,9 | 93,9 | 87,5 | 71% |
+bothinst+mock | 83,3 | 95,1 | 88,8 | 74% |
+bothinst+mock+reit | 83,8 | 95,5 | 89,3 | 75% |
+bothinst+mock+reit+strict | 79,9 | 93,7 | 86,3 | 98% |
+bothinst+mock+reit+loose | 80,5 | 94,8 | 87,1 | 95% |
+bothinst+mock+reit+right | 84 | 95,9 | 89,6 | 77% |
+bothinst+mock+reit+right+info | 84,9 | 96,5 | 90,3 | 77% |
+bothinst+mock+reit+right+info+name | 85,7 | 96,8 | 90,9 | 79% |
+bothinst+mock+reit+right+info+name+pos | 86,9 | 97 | 91,7 | 81% |
A adesão ao modelo se refere à frequência com que o modelo responde no formato desejado.```