
Álgebra linear
Significado é geometria.Vetores, produto escalar, matrizes e transformações. O módulo em que fica claro por que dois textos com sentido parecido ficam próximos no espaço de embeddings e o que uma multiplicação de matrizes realmente faz com a informação.
Um LLM é, do começo ao fim, uma sequência de multiplicações de matrizes intercaladas com não linearidades. Se você entende multiplicação de matrizes e produto escalar, entende a maquinaria inteira. Tudo o mais é detalhe de arranjo.
1. Vetor: uma lista e uma seta
Um vetor é uma lista ordenada de números. O vetor (3; 4) tem duas componentes. Um embedding de um token em um modelo moderno é um vetor com centenas ou milhares de componentes, algo como ℝ⁴⁰⁹⁶.
A segunda leitura, geométrica, é a que dá intuição: o mesmo vetor (3; 4) é uma seta que sai da origem e chega ao ponto três à direita e quatro acima. Direção e comprimento passam a significar alguma coisa.
Nos embeddings, essa geometria é literal. A direção do vetor carrega o significado, e a proximidade angular entre dois vetores é o que o modelo usa como medida de semelhança semântica. Não é metáfora, é a operação que roda.
2. Norma: o comprimento do vetor
A norma de um vetor, escrita entre barras duplas, é o seu comprimento. Em duas dimensões é o velho teorema de Pitágoras: raiz da soma dos quadrados das componentes. Em qualquer dimensão a fórmula é idêntica, só com mais termos.
Normalizar um vetor é dividi-lo pela própria norma, obtendo um vetor de comprimento um que aponta na mesma direção. Isso separa direção de magnitude, e é exatamente o que a normalização de camada faz dentro de um Transformer para manter as ativações em uma escala estável.
Para v igual a (3; 4): a norma é a raiz de nove mais dezesseis, ou seja raiz de vinte e cinco, igual a cinco. O vetor normalizado é (0,6; 0,8), que ainda aponta na mesma direção mas tem comprimento um.
3. Produto escalar: a medida de concordância
O produto escalar de dois vetores multiplica componente por componente e soma tudo. O resultado é um único número, não um vetor, e por isso o nome escalar.
O que esse número significa: ele é positivo e grande quando os dois vetores apontam na mesma direção, próximo de zero quando são perpendiculares, e negativo quando apontam em direções opostas. É uma medida de concordância entre direções, ponderada pelos comprimentos.
Esta é a operação central da atenção. Quando um token pergunta quais posições anteriores importam para mim, o cálculo é literalmente o produto escalar entre a consulta desse token e as chaves de todas as outras posições. Concordância alta significa atenção alta.
Sejam a igual a (1; 0). Com b igual a (1; 0), o produto escalar é um, concordância máxima. Com b igual a (0; 1), é zero, perpendiculares, nenhuma relação. Com b igual a (−1; 0), é menos um, oposição. Três contas de dez segundos que fixam a intuição para sempre.
4. Similaridade do cosseno e o espaço de embeddings
O produto escalar cru mistura duas informações: o ângulo e os comprimentos. Para comparar significado, geralmente queremos só o ângulo, e por isso se divide pelo produto das normas. O resultado é o cosseno do ângulo, um número entre menos um e um.
Um cosseno perto de um significa direções quase idênticas, ou seja significados próximos. Perto de zero significa sem relação. Perto de menos um significa oposição. É essa a métrica usada em busca vetorial, em bancos como pgvector e em qualquer sistema de recuperação semântica.
Vale registrar o limite honesto da intuição famosa dos vetores de palavras: a ideia de que rei menos homem mais mulher dá rainha funciona em modelos clássicos de embedding e ajuda a construir a imagem mental, mas em modelos de linguagem grandes contemporâneos os embeddings são contextuais, mudam conforme a frase, e as relações não são tão limpas. Use a analogia para entender a geometria, não como descrição exata do que acontece dentro de um LLM.
5. Matrizes e multiplicação
Uma matriz é uma tabela retangular de números, com linhas e colunas. A notação padrão diz que uma matriz é m por n quando tem m linhas e n colunas.
Multiplicar duas matrizes significa preencher cada célula do resultado com um produto escalar: a célula da linha i e coluna j do produto é o produto escalar entre a linha i da primeira matriz e a coluna j da segunda. Toda multiplicação de matrizes é, portanto, uma coleção organizada de produtos escalares.
Isso muda a percepção do que uma camada de rede neural faz. Quando você lê que uma camada multiplica a entrada por W, leia como: cada neurônio da camada calcula o produto escalar entre a entrada e a própria linha de pesos, medindo quanto a entrada concorda com o padrão que aquele neurônio aprendeu a procurar.
Sejam A com linhas (1, 2) e (3, 4), e B com linhas (5, 6) e (7, 8). A célula superior esquerda do produto é o produto escalar de (1, 2) com a coluna (5, 7), ou seja 1 vezes 5 mais 2 vezes 7, igual a 19. Seguindo o mesmo procedimento, o produto completo tem linhas (19, 22) e (43, 50). Faça esta conta à mão pelo menos três vezes ao longo do módulo.
6. Shapes: a álgebra das dimensões
Multiplicação de matrizes só é definida quando o número de colunas da primeira é igual ao número de linhas da segunda. Uma matriz m por n vezes uma n por p resulta em uma m por p. As dimensões internas precisam bater e desaparecem; as externas sobrevivem.
Esta regra é a ferramenta de depuração mais útil que existe para ler arquiteturas. Quando um paper diz que a entrada é de shape lote por sequência por dimensão do modelo, e que a projeção de consulta tem shape dimensão do modelo por dimensão da chave, você já sabe, sem ler mais nada, que a saída será lote por sequência por dimensão da chave.
Treine o hábito: ao encontrar qualquer multiplicação em um paper, escreva os shapes à margem antes de tentar entender o significado. Metade da compreensão vem daí.
7. Transformação linear: o que a matriz faz com o espaço
A leitura mais profunda de uma matriz não é tabela de números, é função que transforma o espaço inteiro. Multiplicar todos os pontos de um quadrado por uma matriz produz um paralelogramo: o espaço foi esticado, girado ou espelhado, mas linhas retas continuam retas e a origem fica no lugar.
Uma camada de rede neural é exatamente isso, uma transformação do espaço, seguida de uma função não linear que dobra o espaço de um jeito que a matriz sozinha não conseguiria. Empilhar camadas é empilhar transformações, e é dessa composição que sai a capacidade de representar relações complicadas.
A animação do laboratório deste módulo mostra a transformação acontecendo. Mexa nos coeficientes e observe o que cada um faz ao quadrado unitário; é a forma mais rápida de transformar a definição em intuição.
Exercícios
Tente responder antes de abrir.
1. Calcule o produto escalar de (2; −1; 3) com (0; 4; 1).
2. Qual a norma de (0; 3; 4)?
3. Se a similaridade do cosseno entre dois embeddings é 0,02, o que isso diz?
4. Uma matriz 4 por 8 multiplica uma 8 por 2. Qual o shape do resultado, e o que aconteceria com uma 2 por 8?
5. Multiplique à mão A com linhas (2, 0) e (1, 3) por B com linhas (1, 4) e (2, 5).
Trilhos do tutor
- Norma e normalização do vetor (3; 4) 5 passos
- Do produto escalar até a similaridade do cosseno 6 passos
- Multiplicação de matrizes célula por célula 6 passos
- Rastrear shapes em uma cabeça de atenção 5 passos
- O quadrado unitário sob uma matriz 5 passos
Dúvidas frequentes
Qual é a diferença real entre produto escalar e similaridade do cosseno?
Por que o produto escalar devolve um número só, e não um vetor?
A norma de um vetor pode dar negativa?
Preciso decorar a fórmula da norma para vetores de milhares de dimensões?
Se a similaridade do cosseno entre dois embeddings deu 0,02, isso é bom ou ruim?
Por que a multiplicação de matrizes não é comutativa?
Como eu sei rapidamente se uma multiplicação de matrizes é possível?
O que quer dizer, na prática, um shape lote por sequência por dimensão do modelo?
Aquela história de rei menos homem mais mulher dar rainha é verdade?
Por que normalizar os vetores antes de compará-los?
O que é uma transformação linear, em uma frase?
Se a matriz já transforma o espaço, para que serve a função não linear?
Embedding e vetor são a mesma coisa?
Onde exatamente o produto escalar aparece dentro da atenção?
Como visualizar um vetor de quatro mil e noventa e seis dimensões?
Checkpoint
Oitenta por cento de acerto libera o módulo seguinte.
1. O que o produto escalar mede, em uma frase?
2. Por que se divide pelo produto das normas na similaridade do cosseno?
3. Explique a multiplicação de matrizes em termos de produtos escalares.
4. Qual regra de shapes governa a multiplicação?
5. O que uma matriz faz geometricamente com um quadrado unitário?
Bibliografia
Vídeos curados
Assista os capítulos 1 a 4 e o 9. É o melhor material de intuição geométrica que existe e cabe no ritmo do módulo.
Alternativa em português com exercícios corrigidos, útil para a prática de recuperação.
Referência de consulta. Leia as seções que você precisar, não o capítulo inteiro.