Transformer architecture (RO)
Arhitectura Transformer este o arhitectură de rețea neuronală prezentată în 2017 de cercetători de la Google în articolul «Attention Is All You Need»[1]. Aceasta a revoluționat domeniul procesării limbajului natural (NLP) și a devenit baza pentru majoritatea modelelor lingvistice mari (LLM) moderne, precum BERT, GPT și Gemini. Inovația cheie a Transformer este mecanismul de auto-atenție (self‑attention), care permite modelului să pondereze importanța diferitelor părți ale datelor de intrare și să proceseze secvențele în paralel, renunțând la recurență, specifică RNN și LSTM.
Contextul istoric și premisele
Înainte de 2017, arhitecturile dominante pentru procesarea datelor secvențiale, cum ar fi textul, erau rețelele neuronale recurente (RNN) și varianta lor îmbunătățită — rețelele cu memorie pe termen lung și scurt (LSTM).
Problemele RNN/LSTM abordate de Transformer
- Limitările procesării secvențiale: RNN și LSTM procesează datele token cu token, ceea ce exclude paralelismul intra-secvențial și încetinește antrenarea pe volume mari de date.
- Problema gradienților care dispar sau explodează: În secvențele lungi, gradienții propagați înapoi prin mulți pași pot fie să se atenueze, fie să crească, ceea ce îngreunează învățarea dependențelor pe termen lung.
- Dependențele pe termen lung: Informația de la începutul secvenței poate fi pierdută până la sfârșitul acesteia.
Abordarea Transformer reprezintă o renunțare completă la recurență în favoarea mecanismului de atenție. Aceasta asigură o lungime constantă a căii de dependență între orice poziții (), facilitând modelarea dependențelor la distanță, în timp ce implementarea de bază a auto-atenției are o complexitate computațională pătratică în funcție de lungimea secvenței ()[1][2]. Problema dispariției/exploziei gradienților nu «dispare», ci este atenuată prin conexiuni reziduale, LayerNorm și regimul de antrenare; în implementările moderne se utilizează frecvent varianta Pre‑LayerNorm (Pre‑LN) ca fiind mai stabilă în timpul antrenării[3].
Arhitectura și componentele cheie
Arhitectura originală Transformer este compusă din două părți principale: encoder și decoder. Ambele componente sunt stive de straturi identice ( în articolul original)[1].
- Structura stratului encoder: (1) atenție multi-cap (MHA), (2) FFN pozițional-element cu element; fiecare substrat este înconjurat de o conexiune reziduală și LayerNorm[1].
- Structura stratului decoder: (1) auto-atenție mascată (masca cauzală interzice accesul la pozițiile viitoare), (2) cross‑attention la ieșirile encoder-ului, (3) FFN — de asemenea cu reziduale și LayerNorm[1].
Mecanismul de atenție și Self‑Attention
Mecanismul de atenție calculează o sumă ponderată a vectorilor-valoare (Value), unde ponderile sunt determinate de gradul de compatibilitate al cheilor (Key) cu interogările (Query). În Transformer se utilizează atenția scalată prin produs scalar (Scaled Dot‑Product Attention):
Unde este dimensiunea cheilor/interogărilor; împărțirea la previne saturarea softmax[1]. Când , și sunt generate de aceeași secvență, mecanismul se numește auto-atenție (self‑attention).
Multi‑Head Attention (atenție multi-cap)
În loc de un singur set de matrice , se utilizează «capete» paralele, fiecare dintre acestea proiectând în subspatii de dimensiune mai mică, calculând independent atenția, apoi rezultatele sunt concatenate și proiectate[1]:
Variante pentru accelerarea inferenței:
- MQA (Multi‑Query Attention): toate capetele partajează o singură cheie/valoare → volumul și traficul cache-ului KV sunt reduse semnificativ la decodare[4].
- GQA (Grouped‑Query Attention): compromis între MHA și MQA — mai multe grupuri de capete partajează K/V; calitatea este apropiată de MHA la viteza MQA[5].
Codificarea pozițională (Positional Encoding)
Deoarece self‑attention este invariant față de ordinea token-urilor, la embedding-urile de intrare se adaugă codificări poziționale.
- Codificările sinusoidale originale (PE) din[1]:
- Variante relative/rotative moderne:
FFN element cu element, reziduale și normalizare
Fiecare strat de encoder și decoder, pe lângă atenție, conține o FFN pozițional-element cu element:
În jurul fiecărui substrat se utilizează conexiuni reziduale (residual connections) și Layer Normalization: . În original se aplica varianta Post‑LN[1]; în LLM-urile moderne se utilizează frecvent Pre‑LN pentru o mai bună stabilitate a antrenării și o dependență mai mică de un warm‑up îndelungat[3].
Evoluția și variantele moderne
Metodele timpurii bazate pe rețele neuronale recurente (RNN) și variantele lor avansate, cum ar fi LSTM, procesau textul secvențial, câte un token pe rând. Deși această abordare corespundea intuitiv structurii limbajului, ea crea o limitare semnificativă: îngreuna calculele paralele și complica detectarea dependențelor între elementele aflate la distanță unele de altele în text. În 2017, un grup de cercetători de la Google a prezentat articolul intitulat «Attention Is All You Need». În acesta, ei au descris o nouă arhitectură — «Transformer». Acest model a renunțat pentru prima dată complet la utilizarea rețelelor neuronale recurente, înlocuindu-le cu mecanismul de «atenție» (attention). Noutatea principală consta în faptul că mecanismul de atenție permitea Transformer-ului să evalueze importanța fiecărui cuvânt din secvența de intrare pentru generarea cuvântului corespunzător la ieșire. În același timp, modelul putea procesa toate cuvintele simultan. Această capacitate de procesare paralelă a făcut posibilă antrenarea unor modele mult mai mari pe volume enorme de date. Ca rezultat, au apărut modelele lingvistice mari (LLM) moderne.
Arhitectura Transformer a servit drept bază pentru numeroase modele, clasificate convențional în trei categorii.
1. Modele doar-encoder (Encoder‑only)
- Exemplu: BERT (și RoBERTa, ALBERT)[8].
- Principiu: pre-antrenare pe sarcina de modelare mascată a limbajului (MLM) cu context bidirecțional.
- Aplicare: sarcini de înțelegere (clasificare, NER etc.).
2. Modele doar-decoder (Decoder‑only)
- Exemplu: seria GPT (GPT‑1/2/3)[9][10], LLaMA[11], Claude.
- Principiu: modelare cauzală a limbajului (CLM) — predicția token-ului următor; atenției i se aplică o mască cauzală[1].
- Aplicare: generare de text, dialoguri, cod.
3. Modele encoder‑decoder (Encoder‑decoder)
- Exemplu: Transformer-ul original, T5, BART[1][12].
- Principiu: encoder-ul construiește reprezentarea intrării, decoder-ul generează ieșirea și utilizează cross‑attention față de caracteristicile encoder-ului[1].
- Aplicare: sarcini seq2seq (traducere, sumarizare etc.).
4. Arhitecturi multimodale și alternative
- Vision Transformer (ViT) — adaptare la imagini (împărțire în patch-uri)[13]; Swin Transformer — model ierarhic cu shifted windows[14].
- Alternative pentru secvențe lungi:
Tehnici de antrenare și optimizare
Eficiența Transformer este strâns legată de tehnica de antrenare și de infrastructură.
- Strategii de pre-antrenare: CLM și MLM; de asemenea obiective contrastive și de denoising (ELECTRA, T5)[12].
- Tehnici de fine-tuning:
- Fine-tuning complet al tuturor parametrilor.
- Fine-tuning eficient din punct de vedere parametric (PEFT): LoRA introduce adaptoare de rang scăzut cu greutățile de bază înghețate[18].
- Alinierea comportamentului: RLHF — Reinforcement Learning cu feedback uman[19].
- Optimizări sistemice ale inferenței: PagedAttention/vLLM cresc debitul de servire prin gestionarea paginată a cache-ului KV; deosebit de utilă pentru secvențe lungi și batch-uri mari[20].
Referințe
- The Illustrated Transformer — explicație vizuală a arhitecturii Transformer
Bibliografie
- Vaswani, A., Shazeer, N., Parmar, N., et al. (2017). Attention Is All You Need. NeurIPS. arXiv:1706.03762.
- Devlin, J., Chang, M.‑W., Lee, K., Toutanova, K. (2019). BERT: Pre‑training of Deep Bidirectional Transformers for Language Understanding. arXiv:1810.04805.
- Radford, A., Narasimhan, K., Salimans, T., Sutskever, I. (2018). Improving Language Understanding by Generative Pre‑Training. OpenAI Technical Report.
- Brown, T. B., Mann, B., Ryder, N., et al. (2020). Language Models Are Few‑Shot Learners. NeurIPS. arXiv:2005.14165.
- Raffel, C., Shazeer, N., Roberts, A., et al. (2019). Exploring the Limits of Transfer Learning with a Unified Text‑to‑Text Transformer. arXiv:1910.10683.
- Dosovitskiy, A., Beyer, L., Kolesnikov, A., et al. (2020). An Image is Worth 16×16 Words: Transformers for Image Recognition at Scale. arXiv:2010.11929.
- Liu, Z., Lin, Y., Cao, Y., et al. (2021). Swin Transformer: Hierarchical Vision Transformer using Shifted Windows. arXiv:2103.14030.
- Tay, Y., Dehghani, M., Bahri, D., Metzler, D. (2020). Efficient Transformers: A Survey. arXiv:2009.06732.
- Xiong, R., Yang, Y., He, D., et al. (2020). On Layer Normalization in the Transformer Architecture. ICML. arXiv:2002.04745.
- Su, J., Lu, Y., Pan, S., et al. (2021). RoFormer: Rotary Position Embedding. arXiv:2104.09864.
- Press, O., Smith, N. A., Lewis, M. (2021). Train Short, Test Long: Attention with Linear Biases (ALiBi). arXiv:2108.12409.
- Shazeer, N. (2019). Fast Transformer Decoding: One Write‑Head is All You Need (MQA). arXiv:1911.02150.
- Ainslie, J., Lee‑Thorp, J., de Jong, M., et al. (2023). GQA: Training Generalized Multi‑Query Transformer Models from Multi‑Head Checkpoints. EMNLP. arXiv:2305.13245.
- Kwon, W., Li, Z., Zhuang, S., et al. (2023). Efficient Memory Management for LLM Serving with PagedAttention (vLLM). arXiv:2309.06180.
- Touvron, H., Lavril, T., Izacard, G., et al. (2023). LLaMA: Open and Efficient Foundation Language Models. arXiv:2302.13971.
- Gu, A., Dao, T. (2023). Mamba: Linear‑Time Sequence Modeling with Selective State Spaces. arXiv:2312.00752.
- Peng, B., et al. (2023). RWKV: Reinventing RNNs for the Transformer Era. arXiv:2305.13048.
- Lieber, O., Lenz, B., Bata, H., et al. (2024). Jamba: A Hybrid Transformer‑Mamba Language Model. arXiv:2403.19887.
- Hu, E. J., Shen, Y., Wallis, P., et al. (2021). LoRA: Low‑Rank Adaptation of Large Language Models. arXiv:2106.09685.
- Ouyang, L., Wu, J., Jiang, X., et al. (2022). Training language models to follow instructions with human feedback. OpenReview.
Note
- ↑ 1.00 1.01 1.02 1.03 1.04 1.05 1.06 1.07 1.08 1.09 1.10 1.11 Vaswani, A., Shazeer, N., Parmar, N., et al. (2017). Attention Is All You Need. NeurIPS. arXiv:1706.03762.
- ↑ Tay, Y., Dehghani, M., Bahri, D., Metzler, D. (2020). Efficient Transformers: A Survey. arXiv:2009.06732.
- ↑ 3.0 3.1 Xiong, R., Yang, Y., He, D., et al. (2020). On Layer Normalization in the Transformer Architecture. ICML. arXiv:2002.04745.
- ↑ Shazeer, N. (2019). Fast Transformer Decoding: One Write‑Head is All You Need. arXiv:1911.02150.
- ↑ Ainslie, J., Lee‑Thorp, J., de Jong, M., et al. (2023). GQA: Training Generalized Multi‑Query Transformer Models from Multi‑Head Checkpoints. EMNLP. arXiv:2305.13245.
- ↑ Su, J., Lu, Y., Pan, S., et al. (2021). RoFormer: Rotary Position Embedding. arXiv:2104.09864.
- ↑ Press, O., Smith, N. A., Lewis, M. (2021). Train Short, Test Long: Attention with Linear Biases (ALiBi). arXiv:2108.12409.
- ↑ Devlin, J., Chang, M.‑W., Lee, K., Toutanova, K. (2019). BERT: Pre‑training of Deep Bidirectional Transformers for Language Understanding. arXiv:1810.04805.
- ↑ Radford, A., Narasimhan, K., Salimans, T., Sutskever, I. (2018). Improving Language Understanding by Generative Pre‑Training. OpenAI.
- ↑ Brown, T. B., Mann, B., Ryder, N., et al. (2020). Language Models Are Few‑Shot Learners. NeurIPS. arXiv:2005.14165.
- ↑ Touvron, H., Lavril, T., Izacard, G., et al. (2023). LLaMA: Open and Efficient Foundation Language Models. arXiv:2302.13971.
- ↑ 12.0 12.1 Raffel, C., Shazeer, N., Roberts, A., et al. (2019). Exploring the Limits of Transfer Learning with a Unified Text‑to‑Text Transformer. JMLR. arXiv:1910.10683.
- ↑ Dosovitskiy, A., Beyer, L., Kolesnikov, A., et al. (2020). An Image is Worth 16×16 Words: Transformers for Image Recognition at Scale. ICLR. arXiv:2010.11929.
- ↑ Liu, Z., Lin, Y., Cao, Y., et al. (2021). Swin Transformer: Hierarchical Vision Transformer using Shifted Windows. ICCV. arXiv:2103.14030.
- ↑ Gu, A., Dao, T. (2023). Mamba: Linear‑Time Sequence Modeling with Selective State Spaces. arXiv:2312.00752.
- ↑ Peng, B., et al. (2023). RWKV: Reinventing RNNs for the Transformer Era. arXiv:2305.13048.
- ↑ Lieber, O., Lenz, B., Bata, H., et al. (2024). Jamba: A Hybrid Transformer‑Mamba Language Model. arXiv:2403.19887.
- ↑ Hu, E. J., Shen, Y., Wallis, P., et al. (2021). LoRA: Low‑Rank Adaptation of Large Language Models. arXiv:2106.09685.
- ↑ Ouyang, L., Wu, J., Jiang, X., et al. (2022). Training language models to follow instructions with human feedback. OpenReview.
- ↑ Kwon, W., Li, Z., Zhuang, S., et al. (2023). Efficient Memory Management for LLM Serving with PagedAttention. arXiv:2309.06180.