Como funciona por dentro · Leitura de 8 min

O que são os parâmetros de um modelo (e por que se fala em bilhões)

Quando você ouve '70 bilhões de parâmetros', do que estão falando? Dos botões que o modelo ajustou para acertar. Aqui, o que são.

Um parâmetro de um modelo de IA é um botão. Um número que o modelo pode girar para cima ou para baixo para mudar, só um pouquinho, a resposta que produz. Quando alguém diz que um modelo tem "70 bilhões de parâmetros", está dizendo que ele tem setenta bilhões de botões, e que durante o treinamento cada um encontrou a posição em que, no conjunto, o modelo errava o menos possível. Não há regras escritas à mão ali dentro. Há botões ajustados.

A palavra soa técnica, mas a ideia é geométrica e simples: um parâmetro é uma coordenada. Mova-a e a superfície que o modelo desenha sobre os dados se inclina de um jeito um pouco diferente. Com dois ou três botões você desenha uma reta ou uma curva desajeitada. Com bilhões, você desenha algo capaz de separar "esta frase soa a espanhol do século XVII" de "esta soa a manual de instalação". Tudo o que vem a seguir é entender de onde saem esses botões, quantos são necessários e por que mais nem sempre é melhor.

01 · o botãoUm parâmetro é um número que o modelo ajustou, não que foi programado nele

Vale a pena separar duas coisas que costumam se confundir. Uma é o peso: o número que multiplica cada sinal que entra em um neurônio. A outra é o viés: um pequeno valor que se soma ao final para deslocar o resultado. Pesos e vieses, juntos, são os parâmetros. São o que o modelo aprende. E aprender, aqui, significa exatamente uma coisa: girar cada botão na direção que reduz o erro.

Convém não confundi-los com os hiperparâmetros, que são as decisões que a pessoa toma antes de treinar (quantas camadas, quão grande cada uma, a que velocidade ajustar). Os hiperparâmetros são o projeto da caixa; os parâmetros são os botões que a caixa gira sozinha. Ninguém escreve à mão o valor 0,0374 do botão número quarenta milhões. Esse número apareceu porque, dado após dado, o treinamento o empurrou até ali.

Ninguém programa o valor de um botão. O modelo o gira sozinho, dado após dado, até que o erro pare de cair.

Figura 1 · um neurônio e seus botões
x₁ x₂ x₃ w₁ w₂ w₃ Σ + b dobra y
Os pesos w₁, w₂, w₃ e o viés b são os parâmetros: os botões ajustáveis. Um único neurônio tem uns poucos; um modelo grande empilha bilhões dessas contas.

02 · o ajusteDe onde saem: o treinamento gira os botões

No início, os botões partem de posições quase aleatórias. O modelo, com eles, produz disparates. Então começa o ciclo: mostra-se a ele um dado, ele compara sua resposta com a correta, mede quanto errou e ajusta cada botão um pouquinho na direção que teria reduzido esse erro. Essa direção se calcula com uma técnica chamada retropropagação, que reparte a culpa do erro entre todos os botões responsáveis. Depois outro dado, outro ajuste. Milhões de vezes.

Esse método de repartir o erro e girar cada botão foi popularizado por Rumelhart, Hinton e Williams em um artigo de 1986 que hoje se considera fundacional [1]. A ideia é antiga; o novo é a escala. Quando você tem bilhões de botões e trilhões de palavras de treinamento, esse mesmo ciclo humilde (prever, medir o erro, ajustar) produz um modelo capaz de escrever, traduzir e raciocinar de um jeito que surpreende até quem o constrói.

Aqui surge uma pergunta natural: se mais botões dão mais capacidade, por que não colocamos sempre o máximo possível? Porque cada botão é também uma oportunidade de errar. Um modelo com parâmetros demais para dados de menos começa a memorizar em vez de aprender: sabe os exemplos de cor mas falha diante do novo. A esse vício se chama sobreajuste, e ele é o lembrete de que o número grande não é a meta, e sim o equilíbrio.

Parâmetros não é o mesmo que dados de treinamento

Um erro comum é pensar que "70 bilhões de parâmetros" significa que o modelo guardou 70 bilhões de textos. Não. Os parâmetros são os botões do modelo terminado; os dados são as palavras usadas para ajustá-los, e costumam ser muitíssimo mais. Um guia de referência sugere que, para treinar bem, convém alimentar o modelo com da ordem de vinte palavras para cada parâmetro [2].

03 · a escalaBilhões: o que significa o número que anunciam

Quando uma empresa anuncia o tamanho de um modelo, quase sempre fala da contagem de parâmetros. É a forma de dizer "quantos botões esta coisa tem". O salto de escala da última década é real: passou-se de modelos com milhões de parâmetros a modelos com centenas de bilhões. E a descoberta que impulsionou essa corrida tem nome: as leis de escala, que observaram que o desempenho melhora de forma previsível ao aumentar, ao mesmo tempo, parâmetros, dados e computação [3].

Figura 2 · o tamanho dos modelos, em ordens de grandeza
Contagem aproximada de parâmetros de modelos de referência. Números publicados por seus autores; mostrados em ordens de grandeza, não como medida exata.
Modelo (ano)Parâmetros (aprox.)Ordem de grandeza
BERT base (2018)110 milhões10⁸
GPT-2 (2019)1,5 bilhão10⁹
GPT-3 (2020)175 bilhões10¹¹
Llama 3 (2024)8 a 70 bilhões10⁹-10¹⁰
Fontes por linha: Devlin et al. 2019 [4] (BERT); Brown et al. 2020 [3] (GPT-2/GPT-3). As faixas de Llama 3 correspondem às variantes que sua equipe publicou. A tabela ordena por escala, não por qualidade: um modelo com menos botões pode render mais que um maior.

E aí está a armadilha do número grande. Um modelo com menos parâmetros, mas treinado com mais dados e mais bem ajustado, pode superar um muito maior. O trabalho sobre modelos da família Chinchilla mostrou justamente isso: muitos modelos gigantes estavam subtreinados, e um menor alimentado com mais dados os batia com menos computação [2]. A lição é incômoda para o marketing: a contagem de parâmetros mede capacidade potencial, não inteligência entregue.

A contagem de parâmetros mede quantos botões o modelo tem, não quão bem os girou.

Há ainda uma razão muito prática para preferir modelos com menos parâmetros: cabem em menos memória e respondem mais rápido e mais barato. Um modelo de setenta bilhões de botões precisa de muito hardware só para mantê-los carregados. Por isso existe a quantização, que guarda cada botão com menos precisão para que o modelo pese menos sem perder demais. Mas essa é outra história, e merece o seu próprio desenho.

Na próxima vez que você ler "um modelo de X bilhões de parâmetros", já sabe traduzi-lo: X bilhões de botões que o treinamento colocou, um por um, buscando o erro mais baixo. Um número enorme e, ainda assim, só metade da história. A outra metade (quais dados, quanto ajuste, quão fino o equilíbrio) é a que decide se esses botões, no final, soam afinados.

Fontes

  1. Rumelhart, D. E., Hinton, G. E. & Williams, R. J. (1986). Learning representations by back-propagating errors. Nature, 323, pp. 533-536. DOI: 10.1038/323533a0.
  2. Hoffmann, J. et al. (2022). Training Compute-Optimal Large Language Models (modelos "Chinchilla"). arXiv:2203.15556. (Relação de ~20 palavras de treinamento por parâmetro para computação ótima.)
  3. Brown, T. B. et al. (2020). Language Models are Few-Shot Learners (GPT-3, 175 bilhões de parâmetros). arXiv:2005.14165. Ver também Kaplan et al. (2020), Scaling Laws for Neural Language Models, arXiv:2001.08361.
  4. Devlin, J., Chang, M.-W., Lee, K. & Toutanova, K. (2019). BERT: Pre-training of Deep Bidirectional Transformers for Language Understanding. Proceedings of NAACL-HLT 2019, pp. 4171-4186. ACL Anthology: aclanthology.org/N19-1423.

Aprenda mais sobre IA

Ver tudo Aprenda IA