No quarto artigo da série "Implementando vLLM do zero", voltamos nossa atenção para outro componente que parece simples, mas é crucial na arquitetura Transformer: RMSNorm (Normalização de Raiz Média Quadrada). Vamos primeiro entender o que é normalização. Suponha que você acabou de fazer os exames finais e as notas de três disciplinas saíram: Matemática: 120 pontos (nota máxima 150) Inglês: 80 pontos (nota máxima 100) Física: 160 pontos (nota máxima 200) Qual disciplina você se saiu melhor? Se você comparar diretamente 120, 80 e 160, concluirá que a Física foi a melhor. Mas a verdade é que as três disciplinas foram igualmente boas. Matemática: 120/150 = 80% Inglês: 80/100 = 80% Física: 160/200 = 80% Esse é o cerne da ideia de normalização: transformar dados de diferentes dimensões e intervalos em um padrão unificado para comparação. Por que as redes neurais precisam de normalização? Imagine que você está jogando o jogo do telefone sem fio. A primeira pessoa diz "Eu gosto de maçãs", e quando chega à décima pessoa, se transforma em "Eu gosto de abacaxis". Esse é o problema que as redes neurais profundas enfrentam. Cada camada da rede faz alguns cálculos sobre a entrada e, em seguida, passa o resultado para a próxima camada. O problema é que, à medida que o número de camadas aumenta, esses valores se tornam cada vez mais incontroláveis — ou explodem, ou desaparecem sem deixar vestígios. Assim como no jogo do telefone sem fio, a informação se distorce gradualmente durante a transmissão. Adicionar uma camada de normalização ao modelo pode reduzir a probabilidade de explosão ou desaparecimento do gradiente, tornando o processo de treinamento do modelo mais estável. A técnica de normalização evoluiu de BatchNorm para LayerNorm e, finalmente, para RMSNorm, tornando-se um padrão em grandes modelos. Meu artigo levará você pela história da evolução da técnica de normalização; os interessados podem conferir o texto original.