آلية Attention شرح كامل: كيف 'تنتبه' النماذج اللغوية؟
شرح تقني معمّق لآلية Attention، أصلها التاريخي، الرياضيات (Q, K, V)، أنواعها (Self, Cross, Masked, Multi-Head)، وتحسيناتها الحديثة (Flash, Grouped-Query).
Attention هي "روح" معمارية Transformer، والفكرة الأهمّ التي جعلت GPT و Claude و Gemini ممكنة. هذا شرح رياضي معمّق مع أمثلة توضيحية.
المشكلة الأصلية: الترجمة الآلية
عام 2014، فريق Bahdanau في مونتريال يعمل على ترجمة إنجليزي-فرنسي بالشبكات العصبية. المعمارية التقليدية (encoder-decoder RNN):
- Encoder يقرأ الجملة الإنجليزية كاملة ويُلخّصها في متّجه ثابت.
- Decoder يستخدم هذا المتّجه لتوليد الفرنسية.
المشكلة: متّجه واحد يُلخّص جملة طويلة = فقدان معلومات.
الحلّ: بدل متّجه واحد، اجعل الـ Decoder ينتبه لكل موقع في الجملة الأصلية عند توليد كل كلمة.
هذه أوّل ورقة Attention.
الفكرة الرياضية
Attention تُجيب على السؤال: "ما المزيج المرجّح من الـ Values يُناسبني الآن؟"
الثلاثة مكوّنات: Q, K, V
- Query (Q): "ما الذي أبحث عنه؟"
- Key (K): "ما الذي أُمثّله؟ ابحث فيّ."
- Value (V): "إذا انتُبِه لي، ما القيمة التي أُعطيها؟"
تشبيه مكتبة:
- تدخل مكتبة، تسأل عن "كتب الفلسفة". هذا Q.
- كل كتاب له عنوان (K).
- المكتبي يُقارن Q بكل K.
- الكتب ذات العناوين المشابهة تحصل على أوزان أعلى.
- محتوى الكتاب هو V، تستعير مزيجاً منها بأوزانها.
المعادلة الأساسية
Attention(Q, K, V) = softmax(QK^T / √d_k) · V
بالخطوات:
الخطوة 1: Q · K^T
- ضرب مصفوفة Q بترانسبوز K.
- النتيجة: مصفوفة "درجات التشابه" (scores) لكل زوج (query, key).
الخطوة 2: القسمة على √d_k
d_k= بُعد Key.- تُطبَّع الدرجات لمنع softmax من أن يصبح متطرّفاً.
الخطوة 3: softmax
- تُحوّل الدرجات إلى أوزان مجموعها 1.
- الوزن العالي = اهتمام أكثر.
الخطوة 4: ضرب في V
- كل Value يُضرب بوزنه.
- المجموع = المخرج النهائي.
مثال عددي مبسّط
جملة: "أحمد يأكل تفاحة"
tokens: [أحمد, يأكل, تفاحة]
نُشفّر كل token في متّجه (لنقل بعد 4):
- أحمد: [1, 0, 1, 0]
- يأكل: [0, 1, 0, 1]
- تفاحة: [1, 1, 0, 0]
نحسب Q, K, V (بمصفوفات أوزان مُتعلَّمة، لنفترض عبارة إسقاط بسيطة).
عند حساب Self-Attention لـ"يأكل":
- Q("يأكل") · K("أحمد") = مثلاً 0.8
- Q("يأكل") · K("يأكل") = 0.5
- Q("يأكل") · K("تفاحة") = 0.9
بعد softmax:
- أحمد: 0.35
- يأكل: 0.25
- تفاحة: 0.40
المخرج = 0.35·V(أحمد) + 0.25·V(يأكل) + 0.40·V(تفاحة)
"يأكل" ينتبه لـ"تفاحة" أكثر (المفعول به) وأحمد (الفاعل).
أنواع Attention
1. Self-Attention
Q, K, V من نفس التسلسل.
- كل token في الجملة ينتبه لكل tokens الجملة (بما فيها نفسه).
- يُستخدم في Encoder و Decoder.
2. Cross-Attention
Q من تسلسل، K و V من تسلسل آخر.
- في الترجمة: Q من الجملة الفرنسية الجاري توليدها، K/V من الإنجليزية.
- في نماذج التوليد الشرطي (text-to-image): Q من الصورة، K/V من النصّ الوصفي.
3. Masked Self-Attention (Causal)
Self-Attention لكن مع قناع يمنع كل token من رؤية الـ tokens بعده.
- ضروري في نماذج التوليد (GPT, Claude, Llama).
- عند توقّع الكلمة رقم 5، لا يجوز رؤية الكلمات 6, 7, 8...
- تقنياً: نضبط scores للمواقع المستقبلية إلى -∞ قبل softmax.
4. Multi-Head Attention
بدل حساب Attention واحد، نحسب h رأساً بالتوازي (h=8, 12, 16,...).
- كل رأس له مصفوفات Q, K, V الخاصّة.
- كل رأس يتعلّم نمطاً مختلفاً.
- نُدمج المخارج (concat) ثمّ نُطبّق إسقاطاً خطّياً.
لماذا؟ رأس واحد قد يركّز على النحو، آخر على الدلالة، ثالث على المسافة، إلخ.
أنماط تتعلّمها Attention
بحوث BERTology كشفت أن الرؤوس تتعلّم أنماطاً مفهومة:
- رؤوس نحوية: تربط الفاعل بالفعل، الصفة بالموصوف.
- رؤوس ضمائر: تربط الضمير بمرجعه.
- رؤوس محلّية: تنتبه للكلمة السابقة/التالية.
- رؤوس نقطة: تنتبه لعلامات الترقيم.
- رؤوس CLS/SEP: تنتبه لـ tokens خاصّة (في BERT).
Interpretability، دراسة هذه الأنماط لفهم كيف "يُفكّر" النموذج.
المشاكل والتحسينات
مشكلة التعقيد التربيعي O(n²)
عملية Attention تُنتج مصفوفة n×n. لنصّ 100k token = 10 مليار قيمة = عشرات GB ذاكرة.
التحسينات
1. Flash Attention (2022)
Tri Dao من Stanford. الفكرة:
- ذاكرة GPU لها مستويات: HBM (بطيء لكن كبير) و SRAM (سريع لكن صغير).
- Attention التقليدي يقرأ/يكتب من HBM كثيراً، البطيء ليس الحوسبة بل النقل.
- Flash Attention يُعيد ترتيب الحسابات لتقليل النقل.
- النتيجة: 2-4× أسرع، بدون تغيير النتائج الرياضية.
تُستخدم اليوم في كل نموذج تدريب/استدلال حديث تقريباً.
2. Multi-Query Attention (MQA)
كل رؤوس Q، لكن K و V مشتركان.
- تُقلّل الذاكرة أثناء الاستدلال بشكل كبير.
- خسارة جودة قد تكون ملحوظة.
3. Grouped-Query Attention (GQA)
توسّط بين Multi-Head و MQA.
- عدّة مجموعات من Q تشترك في K/V.
- جودة قريبة من Multi-Head، ذاكرة قريبة من MQA.
- استخدمها Llama 2/3.
4. Sliding Window Attention
كل token ينتبه فقط لـW tokens من حوله (مثلاً W=4096).
- تعقيد O(n·W) بدل O(n²).
- تُضحّي بالانتباه للسياق البعيد.
- Mistral 7B استخدمها.
5. Ring Attention
توزيع Attention عبر أجهزة متعدّدة.
- يُتيح تسلسلات طويلة جداً (ملايين tokens).
- Gemini 1.5 يستخدم شيئاً مشابهاً.
Linear Attention
محاولات جعل Attention خطّي O(n) بدل تربيعي:
- Performer (2020).
- Linformer (2020).
- Nyströmformer (2021).
النتيجة العملية: أداء أقلّ قليلاً من Attention الكامل، ولم تحلّ محلّه تجارياً حتى الآن.
Attention خارج اللغة
الرؤية الحاسوبية (Vision Transformer)
- تُقسّم الصورة إلى مربّعات صغيرة (patches).
- كل patch = token.
- Self-Attention بين patches.
- يُنافس أو يتفوّق على CNN في تصنيف الصور.
البروتينات (AlphaFold)
- Attention بين أحماض البروتين الأمينية لتوقّع بنيته ثلاثية الأبعاد.
الفيديو
- Attention عبر الإطارات الزمنية.
الصوت (Whisper)
- Attention بين شرائح صوتية زمنية.
الحدود والمستقبل
الحدود الحالية:
- Attention لا يزال باهظ الذاكرة للنصوص الطويلة.
- KV Cache ينمو خطّياً، استدلال طويل = ذاكرة كثيرة.
اتّجاهات بحثية:
- Retentive Networks (RetNet) من Microsoft.
- Mamba / SSM، بدون Attention.
- Hybrid، Attention لبعض الطبقات، Mamba لأخرى.
للاستزادة
- Attention Is All You Need، الأصل.
- The Annotated Transformer، Harvard NLP.
- Flash Attention paper.
اقرأ أيضاً:
هل أفادك هذا المقال؟
الأسئلة الشائعة
مقالات ذات صلة
الذكاء الاصطناعي العام (AGI): هل قريب؟ الجدل الكامل
شرح لجدل AGI، ما هو تعريفه الحقيقي، آراء Sam Altman و Demis Hassabis و Yann LeCun و Gary Marcus، الاختبارات المقترحة، والتوقّعات الواقعية للوصول إليه.
AGI و Superintelligence، النقاش الحقيقي بلا خيال
شرح تفصيلي للذكاء العام (AGI) والذكاء الفائق (ASI): التعاريف، المتفائلون، المتحفّظون، ماذا يعني للحياة اليومية.
مصنّعو رقائق الذكاء الاصطناعي، NVIDIA، AMD، TSMC، Intel
دليل لصناعة رقائق AI: NVIDIA، AMD، Intel، Broadcom، TSMC، Samsung، الحصص، الحرب الجيوسياسية، والسعودية.
نشرة مقالات الأسبوعية
اشترك تصلك أحدث المقالات + مختارات نادرة كل أحد. بلا سبام، ألغي الاشتراك بضغطة.
لا نشارك بريدك مع أي طرف ثالث. راجع سياسة الخصوصية.