Naar de inhoud

Wat zijn transformers?

De architectuur achter vrijwel alle large language models. Begrijp hoe het attentionmechanisme de AI-wereld heeft veranderd.

5 minuten lezen

Introductie: waarom transformers?

Vóór 2017 waren Recurrent Neural Networks (RNN’s) en LSTM’s de standaard voor taalverwerking. Ze hadden één groot probleem: ze verwerken tekst sequentieel, woord voor woord.

Dit betekende:

  • Langzame training: geen parallellisatie mogelijk, elke stap wacht op de vorige.
  • Kortetermijngeheugen: context van vroege woorden “vervaagt” bij lange zinnen.
  • Beperkte schaalbaarheid: moeilijk om grotere modellen te trainen.

In 2017 publiceerde Google het baanbrekende paper “Attention Is All You Need” dat de transformerarchitectuur introduceerde, en alles veranderde.

Attention is all you need

Het kernidee van transformers is het attentionmechanisme. In plaats van woorden één voor één te verwerken, kan een transformer naar de hele zin tegelijk kijken en bepalen welke woorden relevant zijn voor elk ander woord.

Self-attention uitgelegd

Self-attention berekent voor elk woord in een zin hoe relevant elk ander woord is. Dit gebeurt via drie vectoren per woord:

QQuery“Waar zoek ik naar?”
KKey“Wat heb ik te bieden?”
VValue“Mijn daadwerkelijke inhoud”

Attention(Q, K, V) = softmax(Q · KT / √d) × V

Query, Key en Value per woord, gecombineerd tot de attention-uitkomst.

Voorbeeld met de zin: “De kat zat op de mat omdat hij moe was”

Bij het woord “hij” bepaalt self-attention dat “kat” het meest relevant is: het model leert dat “hij” naar “kat” verwijst, niet naar “mat”.

Query: hij →

De0,02kat0,68zat0,05op0,01de0,02mat0,03omdat0,04hij0,05moe0,05was0,05
Voorbeeld van attention weights: het model heeft geleerd dat "hij" vooral naar "kat" verwijst (attention weight 0,68).

De transformer-architectuur

Een volledige transformer bestaat uit twee delen: een Encoder en een Decoder.

Encoder (× N lagen)
Input Embedding + Positional Encoding
Multi-Head Self-Attention
Add & Normalize
Feed Forward Network
Add & Normalize
Decoder (× N lagen)
Output Embedding + Positional Encoding
Masked Multi-Head Attention
Cross-Attention (naar encoder)
Feed Forward + Output
Encoder en decoder, elk N keer gestapeld.

Belangrijke componenten:

  • Positional encoding: geeft het model informatie over de volgorde van woorden (anders weet het niet dat “kat bijt hond” ≠ “hond bijt kat”).
  • Multi-head attention: meerdere attention-berekeningen parallel, zodat het model verschillende soorten relaties kan leren.
  • Residual connections: verbindingen die een laag overslaan en zo het trainen van diepe netwerken stabiel houden.

Encoder- en decodervarianten

Niet alle transformermodellen gebruiken beide delen. Er zijn drie hoofdvarianten:

Variant Wat het doet Voorbeelden Toepassingen
Encoder-only Begrijpt tekst, genereert niet BERT, RoBERTa Classificatie, NER
Decoder-only Genereert tekst (autoregressief) GPT, vrijwel alle chatmodellen Tekstgeneratie, chat
Encoder-decoder Zet invoer om in uitvoer T5, BART Vertaling, samenvatten

Mijlpalen in de geschiedenis

  • 2017, de oorspronkelijke transformer: het paper “Attention Is All You Need” van Google. Bewees dat attention alleen voldoende is.
  • 2018, BERT (Google) en GPT (OpenAI): BERT voor begrip (encoder), GPT voor generatie (decoder): twee paradigma’s ontstaan.
  • 2020, GPT-3: een model met 175 miljard parameters (Brown et al., 2020, “Language Models are Few-Shot Learners”). Liet zien dat een groot model taken leert uit een paar voorbeelden in de prompt.
  • Daarna, chatmodellen: instruction tuning en RLHF maken taalmodellen bruikbaar voor gesprekken en opdrachten.

Een vraag over dit onderwerp?

Stuur een bericht via het formulier. Alles loopt via e-mail; u krijgt binnen twee werkdagen antwoord.