Aufbau eines Decoder-Only Transformers für ein LLM von Grund auf in Python
Google/DeepMind
OpenAI
Meta
Der Autor einer Artikelreihe beschreibt detailliert die Implementierung eines Transformer-Blocks für ein kleines Decoder-Only LLM mit dem PyTorch-Framework. Behandelte Komponenten sind: Multi-Head Attention mit Maskierung, Feed Forward Network mit GELU, Normalisierungsschicht und Residualverbindungen. Der Artikel erklärt den Unterschied zur ursprünglichen Architektur: Statt Post-Normalisierung wird Pre-Normalisierung (Pre-LN) für die Trainingsstabilität verwendet.
Autor Vladimir implementiert am Beispiel einer Aufgabe zum Watermarking von lizenzierten Texten einen Transformer-Block für eine Decoder-only-LLM. Er erklärt, dass der Transformer eine Architektur aus dem Google-Artikel „Attention Is All You Need“ ist, bei der Sequenzen parallel mithilfe des Aufmerksamkeitsmechanismus verarbeitet werden. Dem Multi-Head Attention liegen drei Projektionsmatrizen Q, K, V zugrunde. Im ersten Schritt wird die Ähnlichkeit der Token (Aufmerksamkeitsmatrix) berechnet, im zweiten Schritt werden die Inhalte der Token entsprechend den ermittelten Gewichten gemischt. Aus Effizienzgründen werden alle Aufmerksamkeitsköpfe über eine einzige große lineare Projektion realisiert. Nach der Attention kommt ein Feed-Forward-Netzwerk mit GELU-Aktivierung und Dropout. Der Zusammenbau des Transformers umfasst Normalisierung (Pre-Layer-Normalization) und Residualverbindungen. Zudem wird eine Zukunftsmaske (Causal Mask) für den Decoder hinzugefügt. Insgesamt ist der Block bereit für den Einsatz beim Zusammenbau der LLM, beim Training und bei der Textgenerierung.
Quelle: Habr — хаб NLP —
Original
