Transformer architecture (TL)

From Systems analysis Wiki
Jump to navigation Jump to search

Arkitektura ng Transformer — ito ay isang arkitektura ng neural network na ipinakita noong 2017 ng mga mananaliksik ng Google sa artikulong «Attention Is All You Need»[1]. Nagdulot ito ng rebolusyon sa larangan ng natural language processing (NLP) at naging pundasyon ng karamihan sa mga modernong malalaking language model (LLM), tulad ng BERT, GPT, at Gemini. Ang pangunahing inobasyon ng Transformer ay ang mekanismo ng self‑attention, na nagpapahintulot sa modelo na timbangin ang kahalagahan ng iba't ibang bahagi ng input data at iproseso ang mga sequence nang sabay-sabay, na inabandona ang recurrence na katangian ng RNN at LSTM.

Makasaysayang konteksto at mga paunang kondisyon

Bago mag-2017, ang mga nangingibabaw na arkitektura para sa pagproseso ng sequential data, tulad ng teksto, ay ang mga recurrent neural network (RNN) at ang kanilang pinahusay na bersyon — ang mga network na may long short-term memory (LSTM).

Mga problemang tinutugunan ng Transformer mula sa RNN/LSTM

  • Mga limitasyon ng sequential processing: Ang RNN at LSTM ay nagpoproseso ng data nang token sa bawat token, na nag-aalis ng intra-sequence parallelism at nagpapabagal ng pagsasanay sa malalaking dami ng data.
  • Problema ng nawawala at sumasabog na gradient: Sa mahahabang sequence, ang mga gradient na kumakalat pabalik sa pamamagitan ng maraming hakbang ay maaaring lumabo o lumaki, na nagpapahirap sa pagsasanay ng mga pangmatagalang dependency.
  • Pangmatagalang dependency: Ang impormasyon mula sa simula ng sequence ay maaaring mawala sa katapusan nito.

Ang diskarte ng Transformer ay ang kumpletong pag-abandona sa recurrence pabor sa mekanismo ng attention. Tinitiyak nito ang pare-parehong haba ng landas ng dependency sa pagitan ng anumang mga posisyon (O(1)), na nagpapadali ng pagmomodelo ng malalayong dependency, habang ang pangunahing implementasyon ng self-attention ay may quadratic computational complexity ayon sa haba ng sequence (O(n2))[1][2]. Ang problema ng pagkawala/pagsabog ng gradient ay hindi «nawawala», kundi naalagaan sa pamamagitan ng residual connections, LayerNorm, at paraan ng pagsasanay; sa mga modernong implementasyon ay madalas gamitin ang bersyon ng Pre‑LayerNorm (Pre‑LN) bilang mas maaasahan sa pagsasanay[3].

Arkitektura at mga pangunahing component

Ang orihinal na arkitektura ng Transformer ay binubuo ng dalawang pangunahing bahagi: ang encoder at ang decoder. Ang parehong component ay mga stack ng magkaparehong layer (N=6 sa orihinal na artikulo)[1].

  • Istruktura ng layer ng encoder: (1) multi-head self-attention (MHA), (2) position-wise FFN; ang bawat sublayer ay napapalibutan ng residual connection at LayerNorm[1].
  • Istruktura ng layer ng decoder: (1) masked self-attention (ang causal mask ay nagbabawal ng access sa mga hinaharap na posisyon), (2) cross‑attention sa mga output ng encoder, (3) FFN — gayundin may residuals at LayerNorm[1].

Mekanismo ng attention at Self‑Attention

Ang mekanismo ng attention ay nagkakalkula ng weighted sum ng mga value vector, kung saan ang mga timbang ay tinutukoy ng antas ng compatibility ng mga Key sa mga Query. Sa Transformer ay ginagamit ang Scaled Dot‑Product Attention:

Attention(Q,K,V)=softmax(QKdk)V

Kung saan ang dk ay ang dimensyon ng mga key/query; ang paghahati sa dk ay pumipigil sa saturation ng softmax[1]. Kapag ang Q, K at V ay nagmumula sa parehong sequence, ang mekanismo ay tinatawag na self‑attention.

Multi‑Head Attention (multi-head attention)

Sa halip na isang hanay ng mga matrix na (WQ,WK,WV) ay gumagamit ng h parallel na «head», bawat isa ay nagpo-project ng Q,K,V sa mga subspace ng mas maliit na dimensyon, nagsasagawa ng attention nang nakapag-iisa, pagkatapos ay pinagsama ang mga resulta at pinoproject[1]:

MultiHead(Q,K,V)=Concat(head1,,headh)WO,где headi=Attention(QWiQ,KWiK,VWiV).

Mga variant para sa pagpapabilis ng inference:

  • MQA (Multi‑Query Attention): lahat ng head ay nagbabahagi ng iisang key/value → malaking pagbaba ng dami at trapiko ng KV‑cache sa panahon ng decoding[4].
  • GQA (Grouped‑Query Attention): kompromiso sa pagitan ng MHA at MQA — ilang grupo ng mga head ang nagbabahagi ng K/V; ang kalidad ay malapit sa MHA sa bilis ng MQA[5].

Positional Encoding (Positional Encoding)

Dahil ang self‑attention ay invariant sa pagkakasunod-sunod ng mga token, ang mga positional encoding ay idinadagdag sa mga input embedding.

  • Orihinal na sinusoidal encoding (PE) mula sa[1]:
PE(pos,2i)=sin(pos/100002i/dmodel),PE(pos,2i+1)=cos(pos/100002i/dmodel).
  • Mga modernong relative/rotary variant:
    • RoPE (Rotary Position Embeddings) ay nagko-encode ng mga relative shift sa pamamagitan ng pag-ikot ng mga vector na Q/K; ginagamit sa ilang modernong LLM[6].
    • ALiBi ay nagdadagdag ng linear na parusa sa mga attention score, na nagpapabuti ng extrapolation sa mga haba na mas mahabay sa pagsasanay[7].

Position-wise FFN, residuals at normalization

Ang bawat layer ng encoder at decoder, bukod sa attention, ay naglalaman ng position-wise FFN:

FFN(x)=max(0,xW1+b1)W2+b2.

Sa paligid ng bawat sublayer ay ginagamit ang residual connections at Layer Normalization: LayerNorm(x+Sublayer(x)). Sa orihinal ay ginagamit ang bersyon ng Post‑LN[1]; sa mga modernong LLM ay madalas gamitin ang Pre‑LN para sa mas mahusay na katatagan ng pagsasanay at mas kaunting pag-asa sa mahabang warm‑up[3].

Ebolusyon at mga modernong variant

Ang mga maagang pamamaraan batay sa recurrent neural network (RNN) at sa kanilang mga advanced na variant, tulad ng LSTM, ay nagpoproseso ng teksto nang sunud-sunod, isang token sa isang pagkakataon. Bagaman ang ganitong diskarte ay natural na naaayon sa istruktura ng wika, nagdulot ito ng malaking limitasyon: pinagpalubha ang parallel na pagkalkula at ginawang mas mahirap ang pagtuklas ng mga dependency sa pagitan ng mga elementong malayo sa isa't isa sa teksto. Noong 2017, isang pangkat ng mga mananaliksik mula sa Google ang naglathala ng artikulong pinamagatang «Attention Is All You Need». Dito ay inilarawan nila ang isang bagong arkitektura — ang «Transformer». Ang modelong ito ang unang ganap na umiwas sa paggamit ng recurrent neural network, pinapalitan ang mga ito ng mekanismo ng «attention». Ang pangunahing bagong bagay ay ang mekanismo ng attention ay nagpapahintulot sa Transformer na suriin ang kahalagahan ng bawat salita sa input sequence para sa pagbuo ng kaukulang salita sa output. Kasabay nito, ang modelo ay makakakuha ng lahat ng salita nang sabay-sabay. Ang kakayahang ito sa parallel na pagpoproseso ay nagpahintulot sa pagsasanay ng mas malalaking modelo sa napakaraming dami ng data. Bilang resulta, lumitaw ang mga modernong malalaking language model (LLM).

Ang arkitektura ng Transformer ay nagsilbing pundasyon para sa maraming modelo, na may kondisyong nahahati sa tatlong klase.

1. Mga modelo na encoder lamang (Encoder‑only)

  • Halimbawa: BERT (at RoBERTa, ALBERT)[8].
  • Prinsipyo: pre-training ayon sa gawain ng masked language modeling (MLM) na may bidirectional na konteksto.
  • Paggamit: mga gawain ng pag-unawa (classification, NER, atbp.).

2. Mga modelo na decoder lamang (Decoder‑only)

  • Halimbawa: serye ng GPT (GPT‑1/2/3)[9][10], LLaMA[11], Claude.
  • Prinsipyo: causal language modeling (CLM) — hulaan ang susunod na token; ipinapataw ang causal mask sa attention[1].
  • Paggamit: pagbuo ng teksto, mga diyalogo, code.

3. Mga modelo na encoder‑decoder (Encoder‑decoder)

  • Halimbawa: orihinal na Transformer, T5, BART[1][12].
  • Prinsipyo: binubuo ng encoder ang representasyon ng input, ang decoder ay bumubuo ng output at gumagamit ng cross‑attention sa mga feature ng encoder[1].
  • Paggamit: mga seq2seq na gawain (pagsasalin, summarization, atbp.).

4. Multimodal at alternatibong arkitektura

  • Vision Transformer (ViT) — adaptasyon para sa mga larawan (paghahati sa mga patch)[13]; Swin Transformer — hierarchical na modelo na may shifted windows[14].
  • Mga alternatibo para sa mahahabang sequence:
    • Mamba — selective state space model (SSM) na may linear na complexity[15].
    • RWKV — RNN-katulad na arkitektura na may parallel na pagsasanay at linear na complexity ng inference[16].
    • Mga hybrid (hal., Jamba): pinaghahalili ang mga bloke ng Transformer at Mamba; minsan ay may karagdagang MoE[17].

Mga teknik sa pagsasanay at optimization

Ang kahusayan ng Transformer ay malapit na nauugnay sa teknik ng pagsasanay at imprastraktura.

  • Mga estratehiya ng pre-training: CLM at MLM; gayundin ang mga contrastive at denoising na layunin (ELECTRA, T5)[12].
  • Mga teknik ng fine-tuning:
    • Kumpletong fine-tuning ng lahat ng parameter.
    • Parameter-efficient fine-tuning (PEFT): ang LoRA ay nagpapakilala ng mga low-rank adapter na may nakaprehe na pangunahing timbang[18].
  • Pagkakatugma ng gawi: ang RLHF — reinforcement learning batay sa feedback ng tao[19].
  • Mga system optimization ng inference: ang PagedAttention/vLLM ay nagpapataas ng throughput ng serving sa pamamagitan ng pahina-pahinang pamamahala ng KV‑cache; lalo itong kapaki-pakinabang para sa mahahabang sequence at malalaking batch[20].

Mga sanggunian

  • The Illustrated Transformer — visual na paliwanag ng arkitektura ng Transformer

Talasanggunian

  • 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.

Mga tala

  1. 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.
  2. Tay, Y., Dehghani, M., Bahri, D., Metzler, D. (2020). Efficient Transformers: A Survey. arXiv:2009.06732.
  3. 3.0 3.1 Xiong, R., Yang, Y., He, D., et al. (2020). On Layer Normalization in the Transformer Architecture. ICML. arXiv:2002.04745.
  4. Shazeer, N. (2019). Fast Transformer Decoding: One Write‑Head is All You Need. arXiv:1911.02150.
  5. 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.
  6. Su, J., Lu, Y., Pan, S., et al. (2021). RoFormer: Rotary Position Embedding. arXiv:2104.09864.
  7. Press, O., Smith, N. A., Lewis, M. (2021). Train Short, Test Long: Attention with Linear Biases (ALiBi). arXiv:2108.12409.
  8. Devlin, J., Chang, M.‑W., Lee, K., Toutanova, K. (2019). BERT: Pre‑training of Deep Bidirectional Transformers for Language Understanding. arXiv:1810.04805.
  9. Radford, A., Narasimhan, K., Salimans, T., Sutskever, I. (2018). Improving Language Understanding by Generative Pre‑Training. OpenAI.
  10. Brown, T. B., Mann, B., Ryder, N., et al. (2020). Language Models Are Few‑Shot Learners. NeurIPS. arXiv:2005.14165.
  11. Touvron, H., Lavril, T., Izacard, G., et al. (2023). LLaMA: Open and Efficient Foundation Language Models. arXiv:2302.13971.
  12. 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.
  13. 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.
  14. Liu, Z., Lin, Y., Cao, Y., et al. (2021). Swin Transformer: Hierarchical Vision Transformer using Shifted Windows. ICCV. arXiv:2103.14030.
  15. Gu, A., Dao, T. (2023). Mamba: Linear‑Time Sequence Modeling with Selective State Spaces. arXiv:2312.00752.
  16. Peng, B., et al. (2023). RWKV: Reinventing RNNs for the Transformer Era. arXiv:2305.13048.
  17. Lieber, O., Lenz, B., Bata, H., et al. (2024). Jamba: A Hybrid Transformer‑Mamba Language Model. arXiv:2403.19887.
  18. Hu, E. J., Shen, Y., Wallis, P., et al. (2021). LoRA: Low‑Rank Adaptation of Large Language Models. arXiv:2106.09685.
  19. Ouyang, L., Wu, J., Jiang, X., et al. (2022). Training language models to follow instructions with human feedback. OpenReview.
  20. Kwon, W., Li, Z., Zhuang, S., et al. (2023). Efficient Memory Management for LLM Serving with PagedAttention. arXiv:2309.06180.