Imagine treinar uma rede neural em uma tabela de adição — algo tão simples quanto “qual é o resultado de somar dois números e tirar o resto da divisão por 97”. Depois de menos de mil passos de treinamento, o modelo já acerta praticamente 100% dos exemplos que viu. Só que, se você testar esse mesmo modelo em pares de números que ele nunca viu, o resultado é lixo: acerto próximo do acaso. Isso não seria surpreendente por si só — é a definição clássica de overfitting, decorar em vez de aprender. O estranho é o que acontece depois. Se você continuar treinando o mesmo modelo, sem mudar nada, por dezenas de milhares de passos adicionais — muito depois de a curva de treino já ter estabilizado em zero erro —, a precisão no conjunto de teste, que estava emperrada perto do zero, começa a subir. E não sobe devagar: em um intervalo relativamente curto de passos, ela dispara de quase nada para perto de 100%.
Esse fenômeno recebeu o nome de “grokking” — um termo emprestado do livro de ficção científica “Stranger in a Strange Land”, de Robert Heinlein, onde significa compreender algo tão profundamente que a pessoa se torna parte dele. A primeira descrição científica rigorosa e amplamente citada do fenômeno veio de um paper da OpenAI publicado em janeiro de 2022, e desde então uma sequência de trabalhos de interpretabilidade mecanística conseguiu abrir a caixa-preta e mostrar, literalmente, o que a rede está fazendo internamente enquanto parece estagnada por fora. O que esses estudos revelam não é só uma curiosidade de laboratório: é uma janela rara para observar, com clareza incomum, a diferença entre um modelo que decorou respostas e um modelo que descobriu um algoritmo.
O experimento original: decorar rápido, generalizar devagar
O paper que batizou e caracterizou formalmente o fenômeno, “Grokking: Generalization Beyond Overfitting on Small Algorithmic Datasets”, foi escrito por Alethea Power, Yuri Burda, Harri Edwards, Igor Babuschkin e Vedant Misra, publicado no arXiv em 6 de janeiro de 2022. Os autores treinaram redes neurais pequenas — transformers — em tabelas de operações binárias: aritmética modular (adição, subtração e divisão módulo 97), composição de permutações no grupo simétrico S5 e algumas operações polinomiais. Em todos os casos, a tarefa é a mesma em espírito: dado “a” e “b”, prever “c”, onde a◦b=c segue uma regra fixa que o modelo nunca recebe explicitamente — só os exemplos.
O exemplo mais citado do paper é a divisão modular. Nele, a acurácia de treino atinge praticamente 100% em menos de mil passos de otimização. A acurácia de validação, porém, permanece baixa por muito mais tempo — só começa a melhorar de forma perceptível perto de 100 mil passos — e a generalização quase perfeita só se consolida perto de 1 milhão de passos. Ou seja: entre o momento em que o modelo “decorou” o suficiente para zerar o erro de treino e o momento em que ele efetivamente “aprendeu” a regra, existe um intervalo de centenas de milhares de passos em que, olhando só para as métricas de treino, nada parece estar acontecendo. Os autores também mostraram que esse comportamento não é incidental: intervenções como weight decay (uma forma de regularização que penaliza pesos grandes) reduziram substancialmente a quantidade de dados necessária para o grokking acontecer, e a proporção de dados de treino disponíveis afeta de forma quase exponencial o tempo até a generalização — perto de um certo limiar de dados (entre 25% e 30% do total possível de exemplos, no caso da tarefa em S5), reduzir a fração de dados em apenas 1 ponto percentual podia aumentar o tempo até generalizar em 40% a 50%.
O que a rede está fazendo enquanto “não parece” estar aprendendo
A pergunta óbvia depois de observar isso é: durante aquele longo platô, a rede está realmente parada, ou está fazendo algo que simplesmente não aparece na métrica de acurácia de validação até estourar de repente? Essa é exatamente a pergunta que Neel Nanda, Lawrence Chan, Tom Lieberum, Jess Smith e Jacob Steinhardt responderam no paper “Progress measures for grokking via mechanistic interpretability”, publicado no arXiv em janeiro de 2023 e aceito como apresentação oral na ICLR 2023.
Os autores treinaram um transformer pequeno especificamente na tarefa de adição modular e, usando técnicas de interpretabilidade mecanística — examinar pesos, ativações e fazer “ablações” no espaço de Fourier —, conseguiram literalmente ler o algoritmo que a rede havia implementado internamente. O que encontraram é notável: a rede aprende a representar os números por meio de transformadas discretas de Fourier e identidades trigonométricas, convertendo a soma em uma espécie de rotação em torno de um círculo. Em vez de guardar uma tabela de pares decorados, o modelo constrói uma estrutura geométrica em que somar dois números equivale a compor duas rotações — um algoritmo genuíno, generalizável para qualquer par de números dentro do domínio módulo estudado.
A parte central da descoberta é que esse circuito não aparece de repente no momento em que a acurácia de validação dispara. Ele é formado de maneira gradual, passo a passo, ao longo de um processo que os autores dividem em três fases contínuas: memorização (a rede decora o suficiente para acertar o treino), formação de circuito (o mecanismo baseado em Fourier vai sendo lenta e silenciosamente amplificado, coexistindo com os componentes de memorização) e limpeza — um estágio em que os componentes de memorização, tornados redundantes pela presença do circuito generalizante mais eficiente, são efetivamente removidos, provavelmente por pressão da regularização. É essa remoção final que faz a acurácia de validação saltar de forma abrupta: o “estouro” visível na curva de teste é o desfecho de um processo interno que já estava em andamento havia muito tempo, só que invisível para quem olhava apenas a métrica de acurácia.
Por que a rede troca de estratégia: eficiência de circuito
Ainda faltava explicar por que, exatamente, a rede abandona a memorização em favor do circuito generalizante — afinal, ambos os métodos conseguem acertar o conjunto de treino. A resposta veio de outro trabalho, “Explaining grokking through circuit efficiency”, de Vikrant Varma, Rohin Shah, Zachary Kenton, János Kramár e Ramana Kumar, publicado no arXiv em setembro de 2023.
A proposta central desse paper é que, em tarefas como essas, existem tipicamente duas soluções possíveis: uma que memoriza os exemplos e outra que generaliza. A solução generalizante é mais lenta de ser aprendida, mas, uma vez formada, é mais “eficiente” no sentido de que produz respostas com maior confiança (logits maiores) usando a mesma norma de pesos — ou seja, para o mesmo “orçamento” de magnitude de peso permitido pela regularização, o circuito generalizante consegue ser mais assertivo do que a memorização pura. À medida que o conjunto de dados de treino cresce, memorizar cada exemplo individualmente se torna cada vez mais caro em termos de parâmetros, enquanto o custo do circuito generalizante permanece praticamente constante — até que, em algum ponto, compensa mais para a otimização (pressionada pelo weight decay a manter os pesos pequenos) trocar de estratégia. Os autores também mostraram dois fenômenos adicionais que reforçam essa explicação: “ungrokking”, em que uma rede que já havia generalizado perfeitamente pode regredir de volta a baixa acurácia de teste se as condições de eficiência mudarem (por exemplo, reduzindo o conjunto de treino depois do grokking), e “semi-grokking”, em que a generalização tardia ocorre, mas de forma parcial em vez de completa.
O que isso realmente prova — e o que ainda é especulação
É importante ser preciso sobre os limites do que foi demonstrado. Todos os três trabalhos citados aqui trabalham com datasets algorítmicos pequenos e bem definidos — tabelas de aritmética modular, composição de permutações, operações polinomiais —, com regularização forte (weight decay elevado, na casa de 1.0 no otimizador AdamW usado no paper original) e, em muitos casos, com centenas de milhares a milhões de passos de otimização sobre um conjunto de dados fixo e relativamente pequeno. Esse é um regime de treinamento bem diferente do pré-treinamento de modelos de linguagem em escala industrial, que usa datasets massivos, passa por cada exemplo poucas vezes e emprega esquemas de regularização distintos. Não existe, nesses papers, nenhuma demonstração de que grandes modelos de linguagem “grokkam” espontaneamente capacidades amplas durante o pré-treinamento em produção — essa é uma extrapolação popular em discussões sobre IA, mas não uma conclusão empírica dos trabalhos aqui citados. O que existe, de fato comprovado, é a caracterização detalhada de como e por que esse padrão específico de aprendizado tardio surge em tarefas algorítmicas controladas, e mecanismos plausíveis (eficiência de circuito, remoção de memorização por regularização) que explicam esse comportamento nesse contexto.
Por que isso importa mesmo dentro desses limites
Mesmo restrito a esse cenário controlado, o grokking desafia uma suposição comum sobre como avaliamos modelos: a de que a curva de perda ou acurácia observável durante o treino é um proxy confiável e imediato do que o modelo “sabe” internamente. Os experimentos de Nanda et al. mostram que um modelo pode estar silenciosamente construindo uma representação estruturada e generalizável muito antes de qualquer métrica de avaliação padrão refletir isso — o que significa que decisões de treinamento baseadas em early stopping, por exemplo, podem descartar um modelo que estava a poucos milhares de passos de encontrar uma solução muito melhor. Também reforça o papel da regularização não como um simples freio contra overfitting, mas como um fator que pode literalmente decidir qual dos dois algoritmos possíveis — decorar ou generalizar — a otimização acaba favorecendo. E, para quem trabalha com interpretabilidade, o grokking oferece um dos poucos casos documentados em que é possível, com uma tarefa pequena o bastante, abrir o modelo e mostrar exatamente qual algoritmo ele aprendeu e como esse algoritmo emergiu — um tipo de evidência concreta que ainda é extremamente raro conseguir em redes maiores.
O valor do grokking não está em prometer que todo modelo de IA um dia vai “acordar” e passar a raciocinar de verdade — essa não é uma conclusão que a pesquisa atual sustente. O valor está em mostrar, com rigor experimental e em um ambiente pequeno o suficiente para ser plenamente auditável, que memorizar e compreender podem ser processos distintos, competindo dentro dos mesmos parâmetros, e que a transição de um para o outro pode levar muito mais tempo — e ser muito mais silenciosa — do que qualquer curva de treino sugere à primeira vista.
Fontes citadas neste artigo: