2025-Q1-AI 13. Transformers, GPT

 

13.1. Video / Materiāli (🔴 7. maijs 18:00, Riga, Zunda krastmala 10, 122)

Zoom / Video pēc tam: https://zoom.us/j/3167417956?pwd=Q2NoNWp2a3M2Y2hRSHBKZE1Wcml4Zz09

Whiteboard: https://www.figma.com/board/InEeJhV3NWgOIqiIXaRJVm/2025-Q1-AI-13.-Transformers--GPT?node-id=0-1&t=t6EaVhNAxBW6W5kk-1

Preparation materials: http://jalammar.github.io/illustrated-transformer/ https://arxiv.org/abs/1706.03762 (Attention is all you need) https://arxiv.org/abs/2005.14165 (Language Models are Few-Shot Learners)


Source code and materials: http://share.yellowrobot.xyz/quick/2023-12-2-3FDD4522-CC8E-46A5-9131-E753AEFB9B11.zip


 

Iepriekšējā gada video: https://youtu.be/z8DdZboGW6I

 


 

Saturs

  1. Transformeriem nav atmiņa, ir tikai attention un iemācīts kā izmantot attention. Tāpēc vajag barot iekšā ļoti garu tekstu vienlaicīgi, lai nodrošinātu “atmiņu”, bet var iebarot garāku tekstu kā LSTM (max ~100 len uz LSTM, bet transformer var cik vien garu vajag)

  2. Self-attention mehānisms K, Q, V encoder var būt jebkādi MLP modeļi, galvenais ir struktūra un vienādojums, kas piespiež K, Q, V uzvesties kā paredzēts. No sākuma kodēt BEZ multihead attention - varbūt to vispār nevajag kodēt lai nav apjukums finished kodā es sakodēju jau ar multi-head.

  3. Pastāstīt par ierobežojumiem uz tekstu garumu priekš full-attention, kurus izraisa pilns Matricas reizinājums. Tiek lietoti dažādi hacki un kombinācijas ar RNN, bet samazina precizitāti needle & haystack risinājumos. https://lilianweng.github.io/posts/2023-01-27-the-transformer-family-v2/ image-20250504132801153

  4. Parādīt MASK matrix, lai slēptu attention nākotni, citādi viņš ar attention nokopēs vienkārši nākotni, lai to prognozētu

  5. Multi-head attention - tas pats split X reizes, self-attention un beigās concat

  6. Time step embeddings - learnable vai sin-cos static

  7. Nav starpība vai time step embeddings concat vai pieskaita līdzīgi kā UNet tas pats efekts

  8. OpenAI GPT modeļa struktūra Word embeddings sākumā un beigās transposed word embeddings - tā pati matrica (iepriekšējā nodarbībā jau izmantojām ar LSTM)

  9. Pastāstīt beigās par RAG (Retrieval Augemented Generation), kur kopā ar text embedding modeli var izmantot pre-trained LLM un nav nepieciešams to pielāgot jeb fine-tune.

 


13.2. Implementēt Transformer GPT-2 modeli izmantojot instrukcijas video

Modeļa arhitektūra: image-20250504130917007

Iesniegt kodu un screenshots ar labākajiem rezultātiem.

Sagatave: http://share.yellowrobot.xyz/quick/2023-12-2-6FE0EBFB-952E-4DB4-B0E6-F72F1D3DD155.zip

 


13.3. Implementēt Transformer GPT-2 modeli ar multi-head attention

Multi-head attention mehānisms: image-20250504130949114

Iesniegt kodu un screenshots ar labākajiem rezultātiem.

 


13.4. Mājasdarbs - implementēt transformer inferenci

  1. Implementēt TODO

  2. Iesniegt kodu un screenshots ar labākajiem rezultātiem

Sagatave: https://share.yellowrobot.xyz/quick/2025-5-4-7E197DD7-FD52-4372-8B71-270B7AFDAB3A.zip

CleanShot 2025-05-04 at 19.38.30@2x

Zemāk doti piemēri no modeļa apmācības un attention matricas


 

Materiāli

image-20250429234641200

 

(2)embp(x)=PE(pos,2i)=sin(pos100002i/dmodel),PE(pos,2i+1)=cos(pos100002i/dmodel)softmax(zi)=ezij=1nezjQ=xWq+bqK=xWk+bkV=xWv+bvAttention(Q,K,V)=softmax(QKTdk)VLayerNorm(x)=xμσ2+ϵγ+βFeedForward(x)=ReLU(xW1+b1)W2+b2x=We[x]+embp(x)for n=1 to N:x=LayerNorm(Attention(x)+x)x=Attention(Q,K,V)x=LayerNorm(FeedForward(x))+x)y=xWe[x]T+b

 

https://pub.towardsai.net/attention-is-all-you-need-a-deep-dive-into-the-revolutionary-transformer-architecture-52734fb355dc

image-20250504131801388

 

image-20250504131808111

 

image-20250504131814088

 

image-20250504131819378

 

image-20250504131825253

 

https://medium.com/@rajrch27/a-wavelet-fractal-perspective-deciphering-transformers-f823b7c4b2e8

 

Uzmanības matrica tulkošanas uzdevumā bez maksas

(3)Attention(Q,K,V)=softmax(QKTdk)V

image-20250504131257113

Maskēta uzmanības matrica valodas modelēšanas uzdevuma gadījumā

image-20250504131709114

 

Neapmācāmas pozīcijas iegultnes vai parastās Apmācāmās matricas (vai kombinācija starp abām)

🔴 Šis demonstre, ka pirmie vārdu taloni satur visvairāk informāciju LLM

https://krypticmouse.hashnode.dev/attention-is-all-you-need

PE(pos,2i)=sin(pos100002i/512)PE(pos,2i+1)=cos(pos100002i/512)

image-20250504131939851

 

image-20250504131621382

 

 

image-20250504131650396

image-20250504131658679

 

https://arxiv.org/abs/2005.14165 (Language Models are Few-Shot Learners)

🔴 Īpašība, kas vēljoprojām aktuāla valodas modeļos CleanShot 2025-05-04 at 13.22.55@2x

 

RAG princips

CleanShot 2025-05-04 at 13.24.50@2x