De transformer architectuur uitgelegd
Een revolutie in sequentieverwerking
De Transformer-architectuur, geïntroduceerd in 2017 in het paper 'Attention is All You Need', heeft de natuurlijke taalverwerking fundamenteel veranderd. Anders dan RNN's verwerkt de Transformer de hele sequentie parallel, dankzij self-attention. De architectuur bestaat uit een encoder en een decoder, elk opgebouwd uit meerdere identieke lagen. Elke encoderlaag heeft een multi-head self-attention mechanisme en een feedforward netwerk. Elke decoderlaag heeft een masked multi-head self-attention, een cross-attention naar de encoder, en een feedforward netwerk. Daarnaast zijn er residual connections en layer normalization. Omdat de Transformer geen recurrentie heeft, moet de volgorde van de sequentie worden meegegeven via positional encoding. De Transformer is zeer paralleliseerbaar, wat training op grote datasets mogelijk maakt. Dit heeft geleid tot modellen zoals BERT, GPT, T5 en vele anderen. De architectuur is ook succesvol in computer vision (Vision Transformers), audio (Whisper) en multimodale taken (CLIP, DALL-E). De Transformer is een van de belangrijkste innovaties in de geschiedenis van AI.
Componenten en varianten
De Transformer bestaat uit verschillende componenten. Multi-head attention stelt het model in staat om verschillende soorten relaties parallel te leren. Elke attention-kop heeft zijn eigen queries, keys en values. De uitvoeren worden geconcateneerd en lineair getransformeerd. Het feedforward netwerk bestaat uit twee lineaire lagen met een ReLU-activatie ertussen. Residual connections helpen bij het trainen van diepe netwerken door gradiënten direct door te geven. Layer normalization stabiliseert de activaties. Positional encoding voegt informatie toe over de positie van elk element in de sequentie, meestal met sinus- en cosinusfuncties. Er bestaan drie hoofdvarianten: encoder-only (BERT), decoder-only (GPT) en encoder-decoder (T5, BART). Encoder-only modellen zijn goed voor begripstaken, zoals classificatie. Decoder-only modellen zijn goed voor generatie. Encoder-decoder modellen zijn goed voor sequence-to-sequence taken, zoals vertaling. De Transformer is schaalbaar: grotere modellen met meer lagen, heads en dimensies presteren beter, mits er genoeg data is. Dit heeft geleid tot de ontwikkeling van grote taalmodellen met miljarden parameters.