Fundamentos

Multiplicação de matrizes como transformação

A multiplicação de matrizes compõe mudanças de coordenadas; shape e rank revelam quanta informação consegue atravessar.

Atualizada em

1

Conceito

Multiplicação de matrizes é mais fácil de entender como transformação, não como ritual de preencher uma grade. Uma matriz WW recebe coordenadas num espaço e produz coordenadas em outro. Para uma entrada xx, cada componente de WxWx é o produto escalar de uma linha de WW com xx. As linhas fazem diferentes perguntas ponderadas e aprendidas sobre a mesma entrada.

Considere

W=[2001/2].W=\begin{bmatrix}2&0\\0&1/2\end{bmatrix}.

Aplicada a (x1,x2)(x_1,x_2), ela produz (2x1,x2/2)(2x_1,x_2/2). Um quadrado no plano vira retângulo: a direção horizontal estica e a vertical encolhe. Outras matrizes rotacionam, refletem, inclinam ou projetam. Nas muitas dimensões das redes neurais, a figura desaparece, mas a operação continua sendo uma mudança aprendida de representação.

Uma matriz retangular também altera dimensionalidade. Uma matriz m×nm\times n leva nn features de entrada a mm de saída. Se m<nm<n, pode comprimir informação; se m>nm>n, incorpora a entrada num espaço maior, mas não cria informação independente por magia. O rank mede quantas direções independentes sobrevivem. Um mapa de baixo rank força saídas para um subespaço menor, ideia usada depois em fine-tuning eficiente.

A multiplicação matriz-matriz aplica várias transformações ou exemplos juntos. A entrada (i,j)(i,j) de ABAB é o produto escalar da linha ii de AA com a coluna jj de BB. Mais importante: ABAB representa composição, com BB atuando primeiro. A operação geralmente não é comutativa. ABAB e BABA podem diferir, e um pode existir quando o outro não. O shape registra quais composições fazem sentido.

Camadas neurais costumam usar y=Wx+by=Wx+b. A matriz fornece uma transformação linear; o vetor de bias translada o resultado. Tecnicamente, é uma transformação afim porque zero pode mapear para bb. O bias permite deslocar uma fronteira de decisão para longe da origem. Implementações podem guardar exemplos em linhas e escrever XW+bXW+b; isso é convenção. Anotar shapes evita confundir transpostas.

Se empilharmos duas camadas lineares sem nada entre elas, W2(W1x)=(W2W1)xW_2(W_1x)=(W_2W_1)x. A pilha equivale a uma matriz. Biases também se combinam num único mapa afim. A profundidade só fica expressiva quando funções não lineares, gates, normalização ou roteamento dependente da entrada interrompem esse colapso. É por isso que activations aparecem entre projeções aprendidas.

Multiplicação matricial domina o compute neural porque hardware executa blocos densos com eficiência. Um batch de vetores multiplicado por uma matriz reutiliza os mesmos parâmetros entre posições. GPUs e aceleradores dividem produtos em tiles, movem-nos pela hierarquia de memória e acumulam somas parciais. A álgebra é simples; o desempenho depende de movimento de dados, shapes, precisão e fusão de operações.

Transformers repetem o padrão. Matrizes de embedding mapeiam identidades para features. Projeções de attention criam queries, keys e values. Projeções de saída recombinam heads. Blocos feed-forward expandem e contraem dimensões. A head final mapeia estados para logits do vocabulário. Pensar em transformações deixa a arquitetura legível: em cada matriz, pergunte qual espaço entra, qual sai, quais direções sobrevivem e que informação pode se perder.

Ao implementar, escreva o significado de cada eixo ao lado do shape. Essa anotação distingue uma transformação correta de uma multiplicação que apenas acontece de ser aceita por broadcasting e produz o número errado em silêncio.

2

Como explicar para uma criança de cinco anos

Uma mesa de iluminação de teatro mapeia poucos controles para muitas lâmpadas. Uma matriz diz como cada controle afeta canais vermelhos, verdes e azuis. Outra mapeia as cores resultantes para os sensores da câmera. Multiplicar as matrizes cria uma transformação única do controle à filmagem. A ordem não pode ser trocada: iluminar e depois filmar não é a mesma operação que tentar iluminar uma gravação.

3

Ensine de volta

Descreva multiplicação de matrizes como composição, explique por que a ordem importa e diga o que o bias acrescenta a uma camada neural.

Mínimo: 80 caracteres e 15 palavras. Seu texto fica somente neste navegador.

Salvo somente neste dispositivo.

Ver uma resposta-modelo

Uma matriz mapeia coordenadas de entrada para saída por somas ponderadas. Se A atua primeiro e B depois, BA é a transformação composta; AB costuma ser diferente ou nem ter shape válido. Um mapa puramente linear envia zero para zero. Um bias translada toda saída pelo mesmo vetor aprendido, formando y=Wx+b. Não linearidades entre camadas impedem que uma pilha inteira se reduza a uma única matriz.

4

Teste seu entendimento

1. Se A atua em x e B atua no resultado, qual é a expressão composta?
Resposta e explicação

B(Ax)=(BA)x — A composição é lida da direita para a esquerda: A transforma a entrada, depois B transforma a saída.

2. Por que empilhar somente multiplicações lineares não cria um modelo não linear profundo?
Resposta e explicação

O produto delas é outra transformação linear — Sem não linearidades, várias matrizes equivalem a uma única matriz composta.

Conclua o teach-back e acerte o quiz para finalizar a aula.

Fontes

  1. Ian Goodfellow, Yoshua Bengio e Aaron Courville (2016). Deep Learning.