Qual Ciência Por Trás Dessa Tecnologia Como Ela Surgiu
O que sustentam os modelos de linguagem modernos
A ciência por trás dos grandes modelos de linguagem é principalmente aprendizado de máquina aplicado, com raízes na ciência da computação teórica, estatística e matemática aplicada. O fundamento vem de redes neurais artificiais, que por sua vez vêm do campo mais antigo das redes neurais conexionistas, iniciado nos anos 1940 com Warren McCulloch e Walter Pitts propondo neurônios artificiais como unidades binárias simples. A evolução tem três marcos principais que todo mundo cite mas poucos entendem direito. O primeiro é o algoritmo de retropropagação, publicado em 1986 por Rumelhart, Hinton e Williams. Ele resolveu um problema prático que ninguém havia resolvido bem antes: como ajustar os pesos de uma rede multi-camadas de forma eficiente usando cálculo diferencial. A ideia é basicamente derivar a função de custo em relação a cada peso e propagar o gradiente de trás para frente. O segundo marco foi o transformer de 2017, do paper "Attention Is All You Need" do Google. Antes disso, a indústria dependia de LSTMs e GRUs para processar sequências. O transformer substituiu recursão por mecanismo de auto-atenção, o que permitiu paralelização completa durante o treinamento. Isso mudou tudo porque processadores GPU conseguem executar milhares de multiplicações de matriz simultaneamente, algo que LSTMs não permitem devido à sua natureza sequencial.
O terceiro marco é o scaling law, observado empiricamente por Kaplan e outros entre 2020 e 2022. A descoberta foi que desempenho preditivo escala de forma previsível com três variáveis: número de parâmetros, quantidade de tokens de treinamento e custo computacional. Não é teoria derivada de primeiro princípio. É um padrão observado nos dados que se mostrou surpreendentemente consistente. Eu passei cerca de dois anos treinando modelos pequenos em hardware limitado antes de entender por que alguns experimentos simplesmente não convergiam. O problema prático mais irritante que encontrei foi com instability numérica em precisão mista. Você treina com float16 para economizar memória e ganhar velocidade, mas em algum ponto os gradientes estouram e o modelo entra em NaN. A solução prática que funciona é usar loss scaling dinâmico, que é um multiplicador ajustado a cada step baseado no valor máximo do gradiente. Sem isso, você perde horas com modelos que parecem estar treinando normalmente até colapsarem. Outro detalhe que gente nova frequentemente subestima é a importância do warmup de learning rate. Nos primeiros milhares de steps, um learning rate alto causa divergência. A prática padrão é aumentar linearmente o learning rate dos primeiros 3% a 10% do treinamento total, depois decrescer conforme cosine schedule. Isso parece contra-intuitivo no início porque você está basicamente dizendo ao otimizador para ser conservatismo quando ele mais precisa de exploração, mas os dados mostram que essa estratégia reduz drasticamente a taxa de falha em training runs longos.
A matemática operacional por trás de tudo se resume a álgebra linear e cálculo multivariável. Um transformer típico aplica sucessivamente transformações lineares, funções de ativação como GELU, e operadores de atenção. A função de atenção em si é softmax(Q*K^T/sqrt(d_k))*V, onde Q, K e V são projeções lineares do input. O termo sqrt(d_k) é um fator de escala crucial que impede que os valores do softmax explodam para zero ou um quando a dimensão dos vetores é grande, o que aconteceria naturalmente em dimensões de centenas ou milhares. Há também a questão do tokenizer, que é onde a linguística computacional encontra o pipeline. O BPE (Byte-Pair Encoding) e suas variantes são o padrão da indústria. A ideia é começar com um vocabulário de bytes individuais e iterativamente fundir os pares de tokens mais frequentes. Isso permite representar qualquer texto, inclusive línguas com caracteres não-latinos, sem precisar de um vocabulário astronômico. O trade-off é que split tokens não correspondem necessariamente a unidades linguísticas significativas, o que complica interpretação e análise. Uma limitação séria que poucos discutem abertamente é que esses modelos não têm representação interna de causalidade ou lógica formal. Eles aprendem correlações estatísticas em escala massiva. Quando um modelo responde corretamente a uma pergunta de raciocínio, é porque padrões similares apareceram no training data, não porque o modelo esteja "pensando". Isso significa que erros sistêmicos aparecem em cenários fora da distribuição de treinamento, e a confiança do modelo não é calibrada — ele pode afirmar coisas completamente erradas com a mesma probabilidade que afirma coisas corretas.

Para quem quer experimentar, o caminho mais barato hoje é usar modelos pré-treinados via APIs ou rodar versões menores localmente com frameworks como llama.cpp ou Ollama. Treinar um modelo do zero exige infraestrutura significativa: clusters de GPUs com dezenas a centenas de unidades, infraestrutura de storage distribuído para datasets de trilhões de tokens, e meses de tuning. Não recomendo tentando treinar um modelo grande do zero sem orçamento de pelo menos seis cifras em hardware e energia. O campo ainda evolui rapidamente. Arquiteturas como Mamba e estão sendo investigadas como alternativas ao transformer puro, prometendo complexidade linear em vez de quadrática no comprimento da sequência. Ainda não sei qual direção vai predominar, mas a tendência de escala continua, junto com esforços paralelos para tornar os modelos mais eficientes energeticamente e menos dependentes de dados brutos.
Galeria
-
Como surgiu a tecnologia resumo? -
Tecnologia e ciência: a dupla dinâmica que está remodelando nosso futuro -
História da ciência e da tecnologia | PPT -
A evolução da ciência e da tecnologia by Margarida Pedro on Prezi