অধ্যায় 19.2

অ্যাটেনশন = QKᵀ

Attention as Matrix

Transformer-এর হৃৎপিণ্ড

≈ ১০ মিনিট

"Attention is all you need" — ২০১৭-র এই paper সমগ্র AI বদলে দিয়েছে। GPT, BERT, ChatGPT সবই attention-এর উপর। কেন্দ্রে শুধু একটি সরল matrix multiplication।

মূল সূত্র

অর্থ

  • Q·Kᵀ = query কোন key-এর সাথে কতটুকু মেলে।
  • √d_k ভাগ — gradient stable রাখে।
  • Softmax — score → probability।
  • × V — weighted average of values।

Q, K, V কোথা থেকে?

W_Q, W_K, W_V — learnable projection matrix।

প্রকারভেদ

  • Self-attention: Q, K, V একই input থেকে।
  • Cross-attention: Q এক source, K-V অন্য source (encoder-decoder)।
  • Masked: ভবিষ্যৎ token দেখা নিষেধ (GPT causal mask)।

জ্যামিতি

প্রতিটি token একটি প্রশ্ন (query) করে, সব token-এর পরিচয় (key) দেখে, সবচেয়ে প্রাসঙ্গিকদের তথ্য (value) মিশিয়ে নেয়। Soft database lookup।

জটিলতা

  • Sequence length n → O(n²) — দীর্ঘ context ব্যয়বহুল।
  • Flash Attention, Linear Attention — efficient variant।
  • LLM-এর context window-এর সীমার কারণ।
উদাহরণ
Self-attention-এর Q, K, V — সংখ্যায়

ইনপুট: ৩টি token, প্রতিটি ৪-মাত্রিক embedding। X একটি 3×4 ম্যাট্রিক্স।

ওজন: W_Q, W_K, W_V প্রতিটি 4×2 (head dim = 2)।

Q = XW_Q, K = XW_K, V = XW_V — তিনটি 3×2 ম্যাট্রিক্স।

Score: QKᵀ → 3×3 ম্যাট্রিক্স — প্রতি জোড়া token-এর মিল।

Scale: score/√2, তারপর row-wise softmax → attention weights।

Output: weights·V → প্রতিটি token-এর জন্য context-aware নতুন উপস্থাপনা।

মূল ভাবনা

  • 1.softmax(QKᵀ/√d) · V — তিনটি matmul।
  • 2.Q, K, V learnable projection।
  • 3.Token-রা একে অপরকে দেখে।
  • 4.O(n²) — context length সীমা।

নিজেকে যাচাই করো

প্রশ্নে ক্লিক করে উত্তর দেখো — তবে আগে নিজে চেষ্টা করো।

প্রশ্ন 1√d_k কেন?
উত্তর:Dot product বড় হলে softmax saturate → gradient মরে।
প্রশ্ন 2Q, K, V আলাদা কেন?
উত্তর:Asymmetric, rich interaction-এর জন্য।
প্রশ্ন 3Masked attention কোথায়?
উত্তর:Autoregressive generation (GPT)।
প্রশ্ন 4কেন QKᵀ-কে √dₖ দিয়ে ভাগ করা হয়?
উত্তর:বড় dₖ-এ ডট প্রোডাক্টের variance বাড়ে; softmax extreme হয়ে যায় (vanishing gradient)। √dₖ দিয়ে scale করে variance ১-এর কাছাকাছি রাখা হয়।
প্রশ্ন 5Multi-head attention multiple parallel head ব্যবহার করে কেন?
উত্তর:প্রতিটি head ভিন্ন subspace-এ মনোযোগ দিতে পারে — কেউ syntactic, কেউ semantic সম্পর্ক ধরে। শেষে concat ও W_O দিয়ে মিশিয়ে দেওয়া হয়।

ইন্টারেক্টিভ কুইজ

মূল ভাবনার উপর দ্রুত যাচাই — সঠিক বিকল্পটি বাছাই করো।

প্রশ্ন 1“অ্যাটেনশন = QKᵀ” অধ্যায়ের মূল ভাবনাগুলোর মধ্যে নিচের কোনটি অন্তর্ভুক্ত?
প্রশ্ন 2“অ্যাটেনশন = QKᵀ” অধ্যায়ের মূল ভাবনাগুলোর মধ্যে নিচের কোনটি অন্তর্ভুক্ত?
প্রশ্ন 3“অ্যাটেনশন = QKᵀ” অধ্যায়ের মূল ভাবনাগুলোর মধ্যে নিচের কোনটি অন্তর্ভুক্ত?
প্রশ্ন 4“অ্যাটেনশন = QKᵀ” অধ্যায়ের মূল ভাবনাগুলোর মধ্যে নিচের কোনটি অন্তর্ভুক্ত?
উত্তর দেওয়া হয়েছে: 0/4