Notice: This page requires JavaScript to function properly.
Please enable JavaScript in your browser settings or update your browser.
Leer Transformator-Gebaseerde Generatieve Modellen | Theoretische Grondslagen
Generatieve AI

bookTransformator-Gebaseerde Generatieve Modellen

Introductie tot Transformers en Zelf-Attentie

Transformers vormen een fundamentele architectuur in moderne AI, met name in Natural Language Processing (NLP) en generatief modelleren. Voor het eerst geïntroduceerd in het artikel "Attention is All You Need" (Vaswani et al., 2017), laten transformers recursie achterwege ten gunste van een mechanisme genaamd zelf-attentie, waarmee modellen alle delen van de invoersequentie gelijktijdig kunnen overwegen.

Zelf-Attentie Mechanisme

Het zelf-attentie mechanisme stelt het model in staat om het belang van verschillende tokens in een sequentie ten opzichte van elkaar te wegen. Dit gebeurt met behulp van drie matrices die zijn afgeleid van de input-embeddings:

  • Query (Q);
  • Key (K);
  • Value (V).

De attentie-uitvoer wordt als volgt berekend:

Attention(Q,K,V)=softmax(QKTdk)V\text{Attention}(Q, K, V) = \text{softmax} \left( \frac{QK^T}{\sqrt{d_k}} \right)V

Waarbij:

  • QQ, KK en VV matrices zijn afgeleid van de input.
  • dkd_k de dimensie van de key-vectoren is.
  • softmax\text{softmax} zet de similariteitsscores om in waarschijnlijkheden.

Hierdoor kan elk token attenderen op elk ander token en zijn representatie dienovereenkomstig aanpassen.

Overzicht van de Transformer Architectuur

Het transformermodel bestaat uit gestapelde encoder- en decoderlagen:

  • Encoder zet invoer om in een gecontextualiseerde latente representatie;
  • Decoder genereert uitvoertokens met behulp van de uitvoer van de encoder en eerdere tokens.

Elke laag bevat:

  • Multi-Head Self-Attention;
  • Feedforward neurale netwerken;
  • Laagnormalisatie;
  • Residuele verbindingen.

Multi-Head Self-Attention

In plaats van één enkele attentionfunctie te berekenen, gebruikt de transformer meerdere attention heads. Elke head leert zich te richten op verschillende delen van de sequentie.

Multi-Head(Q,K,V)=Concat(head1,head2,...,headn)W0\text{Multi-Head}(Q, K, V) = \text{Concat}(\text{head}_1, \text{head}_2, ... , \text{head}_n)W^0

Waarbij elke head als volgt wordt berekend:

headi=Attention(QWiQ,KWiK,VWiV)\text{head}_i = \text{Attention}(QW_i^Q, KW_i^K, VW_i^V)

Waarbij:

  • WiQ,WiK,WiVW_i^Q, W_i^K, W_i^V projectiematrices zijn voor queries, keys en values;
  • W0W^0 projecteert de samengevoegde heads terug naar de oorspronkelijke dimensie.

Feedforward neurale netwerken

Elk transformerblok bevat een positioneel feedforward-netwerk dat onafhankelijk op elke positie wordt toegepast:

FFN(x)=ReLU(xW1+b1)W2+b2\text{FFN}(x) = \text{ReLU}(x W_1 + b_1)W_2 + b_2
  • Bestaat uit twee lineaire lagen met een niet-lineariteit (bijv. ReLU) ertussen;
  • Past dezelfde transformatie toe op alle posities.

Laagnormalisatie

Laagnormalisatie normaliseert de invoer over de kenmerken (kanalen) in plaats van over de batch. Dit stabiliseert de training en verbetert de convergentie:

LayerNorm(x)=xμσγ+β\text{LayerNorm}(x) = \frac{x - \mu}{\sigma} \cdot \gamma + \beta

Waarbij:

  • μ\mu het gemiddelde van de kenmerken is;
  • σ\sigma de standaardafwijking is;
  • γ\gamma en β\beta leerbare parameters zijn.

Residuele verbindingen

Residuele verbindingen tellen de invoer van elke sublaag op bij de uitvoer:

Output=Layer(x)+x\text{Output} = \text{Layer}(x) + x
  • Bevordert de gradiëntenstroom en maakt het trainen van diepere modellen mogelijk;
  • Wordt gebruikt rond zowel de zelf-attentie- als feedforward-lagen.

In alleen-decoder modellen (zoals GPT) wordt alleen de decoder gebruikt met causale (gemaskeerde) zelf-attentie.

Generative Pre-trained Transformers (GPT)

GPT-modellen zijn alleen-decoder transformers die getraind zijn om het volgende token te voorspellen op een autoregressieve manier:

P(x1,x2,...,xn)=t=1nP(xtx<t)P(x_1,x_2,...,x_n)=\prod_{t=1}^n{P(x_t|x_{<t})}

Belangrijkste kenmerken:

  • Getraind op grootschalige tekstdatasets;
  • Kan samenhangende en diverse tekst genereren;
  • Veel gebruikt in toepassingen zoals chatbots en codegeneratie.

BERT en Masked Language Modeling

BERT (Bidirectional Encoder Representations from Transformers) maakt uitsluitend gebruik van de encoder. Het model wordt getraind met masked language modeling (MLM):

  • Willekeurige tokens worden vervangen door een [MASK];
  • Het model voorspelt het oorspronkelijke token op basis van de volledige context.
P(xix1,...,xi1,[MASK],xi+1,...,xn)P(x_i | x_1, ..., x_{i-1}, [\text{MASK}], x_{i+1}, ..., x_n)

Hierdoor is BERT geschikt voor taken zoals classificatie, vraag-antwoord en semantische gelijkenis.

Transformers en LLMs

Transformers vormen de basis van Large Language Models (LLMs) zoals GPT-3, GPT-4, PaLM, LLaMA en Claude.

LLMs gebruiken grote datasets en honderden miljarden parameters, waardoor ze in staat zijn om:

  • Menselijke taal te begrijpen en te genereren;
  • Vertalen, samenvatten, vraag-antwoord en redeneren uit te voeren;
  • Chatbots, documentanalysatoren en code-assistenten aan te sturen.

De schaalbaarheid van transformers en het vermogen om lange-afstandsafhankelijkheden te modelleren maken ze ideaal voor deze modellen.

1. Wat is de belangrijkste innovatie die door transformers is geïntroduceerd?

2. Wat onderscheidt BERT van GPT?

3. Waarom zijn transformers ideaal voor LLM's?

question mark

Wat is de belangrijkste innovatie die door transformers is geïntroduceerd?

Select the correct answer

question mark

Wat onderscheidt BERT van GPT?

Select the correct answer

question mark

Waarom zijn transformers ideaal voor LLM's?

Select the correct answer

Was alles duidelijk?

Hoe kunnen we het verbeteren?

Bedankt voor je feedback!

Sectie 2. Hoofdstuk 8

Vraag AI

expand

Vraag AI

ChatGPT

Vraag wat u wilt of probeer een van de voorgestelde vragen om onze chat te starten.

Awesome!

Completion rate improved to 4.76

bookTransformator-Gebaseerde Generatieve Modellen

Veeg om het menu te tonen

Introductie tot Transformers en Zelf-Attentie

Transformers vormen een fundamentele architectuur in moderne AI, met name in Natural Language Processing (NLP) en generatief modelleren. Voor het eerst geïntroduceerd in het artikel "Attention is All You Need" (Vaswani et al., 2017), laten transformers recursie achterwege ten gunste van een mechanisme genaamd zelf-attentie, waarmee modellen alle delen van de invoersequentie gelijktijdig kunnen overwegen.

Zelf-Attentie Mechanisme

Het zelf-attentie mechanisme stelt het model in staat om het belang van verschillende tokens in een sequentie ten opzichte van elkaar te wegen. Dit gebeurt met behulp van drie matrices die zijn afgeleid van de input-embeddings:

  • Query (Q);
  • Key (K);
  • Value (V).

De attentie-uitvoer wordt als volgt berekend:

Attention(Q,K,V)=softmax(QKTdk)V\text{Attention}(Q, K, V) = \text{softmax} \left( \frac{QK^T}{\sqrt{d_k}} \right)V

Waarbij:

  • QQ, KK en VV matrices zijn afgeleid van de input.
  • dkd_k de dimensie van de key-vectoren is.
  • softmax\text{softmax} zet de similariteitsscores om in waarschijnlijkheden.

Hierdoor kan elk token attenderen op elk ander token en zijn representatie dienovereenkomstig aanpassen.

Overzicht van de Transformer Architectuur

Het transformermodel bestaat uit gestapelde encoder- en decoderlagen:

  • Encoder zet invoer om in een gecontextualiseerde latente representatie;
  • Decoder genereert uitvoertokens met behulp van de uitvoer van de encoder en eerdere tokens.

Elke laag bevat:

  • Multi-Head Self-Attention;
  • Feedforward neurale netwerken;
  • Laagnormalisatie;
  • Residuele verbindingen.

Multi-Head Self-Attention

In plaats van één enkele attentionfunctie te berekenen, gebruikt de transformer meerdere attention heads. Elke head leert zich te richten op verschillende delen van de sequentie.

Multi-Head(Q,K,V)=Concat(head1,head2,...,headn)W0\text{Multi-Head}(Q, K, V) = \text{Concat}(\text{head}_1, \text{head}_2, ... , \text{head}_n)W^0

Waarbij elke head als volgt wordt berekend:

headi=Attention(QWiQ,KWiK,VWiV)\text{head}_i = \text{Attention}(QW_i^Q, KW_i^K, VW_i^V)

Waarbij:

  • WiQ,WiK,WiVW_i^Q, W_i^K, W_i^V projectiematrices zijn voor queries, keys en values;
  • W0W^0 projecteert de samengevoegde heads terug naar de oorspronkelijke dimensie.

Feedforward neurale netwerken

Elk transformerblok bevat een positioneel feedforward-netwerk dat onafhankelijk op elke positie wordt toegepast:

FFN(x)=ReLU(xW1+b1)W2+b2\text{FFN}(x) = \text{ReLU}(x W_1 + b_1)W_2 + b_2
  • Bestaat uit twee lineaire lagen met een niet-lineariteit (bijv. ReLU) ertussen;
  • Past dezelfde transformatie toe op alle posities.

Laagnormalisatie

Laagnormalisatie normaliseert de invoer over de kenmerken (kanalen) in plaats van over de batch. Dit stabiliseert de training en verbetert de convergentie:

LayerNorm(x)=xμσγ+β\text{LayerNorm}(x) = \frac{x - \mu}{\sigma} \cdot \gamma + \beta

Waarbij:

  • μ\mu het gemiddelde van de kenmerken is;
  • σ\sigma de standaardafwijking is;
  • γ\gamma en β\beta leerbare parameters zijn.

Residuele verbindingen

Residuele verbindingen tellen de invoer van elke sublaag op bij de uitvoer:

Output=Layer(x)+x\text{Output} = \text{Layer}(x) + x
  • Bevordert de gradiëntenstroom en maakt het trainen van diepere modellen mogelijk;
  • Wordt gebruikt rond zowel de zelf-attentie- als feedforward-lagen.

In alleen-decoder modellen (zoals GPT) wordt alleen de decoder gebruikt met causale (gemaskeerde) zelf-attentie.

Generative Pre-trained Transformers (GPT)

GPT-modellen zijn alleen-decoder transformers die getraind zijn om het volgende token te voorspellen op een autoregressieve manier:

P(x1,x2,...,xn)=t=1nP(xtx<t)P(x_1,x_2,...,x_n)=\prod_{t=1}^n{P(x_t|x_{<t})}

Belangrijkste kenmerken:

  • Getraind op grootschalige tekstdatasets;
  • Kan samenhangende en diverse tekst genereren;
  • Veel gebruikt in toepassingen zoals chatbots en codegeneratie.

BERT en Masked Language Modeling

BERT (Bidirectional Encoder Representations from Transformers) maakt uitsluitend gebruik van de encoder. Het model wordt getraind met masked language modeling (MLM):

  • Willekeurige tokens worden vervangen door een [MASK];
  • Het model voorspelt het oorspronkelijke token op basis van de volledige context.
P(xix1,...,xi1,[MASK],xi+1,...,xn)P(x_i | x_1, ..., x_{i-1}, [\text{MASK}], x_{i+1}, ..., x_n)

Hierdoor is BERT geschikt voor taken zoals classificatie, vraag-antwoord en semantische gelijkenis.

Transformers en LLMs

Transformers vormen de basis van Large Language Models (LLMs) zoals GPT-3, GPT-4, PaLM, LLaMA en Claude.

LLMs gebruiken grote datasets en honderden miljarden parameters, waardoor ze in staat zijn om:

  • Menselijke taal te begrijpen en te genereren;
  • Vertalen, samenvatten, vraag-antwoord en redeneren uit te voeren;
  • Chatbots, documentanalysatoren en code-assistenten aan te sturen.

De schaalbaarheid van transformers en het vermogen om lange-afstandsafhankelijkheden te modelleren maken ze ideaal voor deze modellen.

1. Wat is de belangrijkste innovatie die door transformers is geïntroduceerd?

2. Wat onderscheidt BERT van GPT?

3. Waarom zijn transformers ideaal voor LLM's?

question mark

Wat is de belangrijkste innovatie die door transformers is geïntroduceerd?

Select the correct answer

question mark

Wat onderscheidt BERT van GPT?

Select the correct answer

question mark

Waarom zijn transformers ideaal voor LLM's?

Select the correct answer

Was alles duidelijk?

Hoe kunnen we het verbeteren?

Bedankt voor je feedback!

Sectie 2. Hoofdstuk 8
some-alt