Robocikowo>ROBOCIKOWO

Sieci neuronowe od podstaw do nowoczesnej AI · Mechanizm uwagi i Transformer

Implementacja mini-Transformera od zera w PyTorch

Mechanizm uwagi i Transformer

Wprowadzenie

Po teorii — kod. Zbudujemy minimalny, działający Transformer w PyTorch: causal language model w stylu nanoGPT (Karpathy 2022). Zakres: token embedding + positional encoding, blok decoder-only z causal masked self-attention i FFN, trenowanie na małym corpusie znaków (np. tinyshakespeare) i prosta autoregresywna generacja. Architektura: nn.Embedding(vocab, d_model) + nn.Embedding(max_len, d_model) (learned PE), N bloków pre-LN, lm_head Linear(d_model, vocab) z weight tying do token embeddingu. Forward bloku: x + Attn(LN(x)); x + FFN(LN(x)). Multi-head attention realizowane przez jedną fused projekcję 3·d_model (Q, K, V w jednym mat-mulu) i potem split na (B, h, n, d_k); attention scores QK^T/√d_k z causal mask (torch.tril), softmax, ważona suma V, concat głów, projekcja W_O. FFN: Linear(d_model, 4·d_model) → GELU → Linear(4·d_model, d_model). Loss: cross_entropy nad logitami przesunięcia (next token prediction). Optymalizator: AdamW, learning rate ≈3e-4 z cosine schedule, weight decay 0.1, gradient clipping 1.0. Trenowanie 5 minut na laptopie generuje sensowny styl Shakespeare. Ten szablon — ≈200 linii — jest fundamentem każdego dużego LLM. Zrozumienie go jest ważniejsze niż znajomość API HuggingFace, bo pokazuje, jak naprawdę składają się concepty z poprzednich pięciu lekcji w działający system.