بنية Transformer وآلية Attention: تحليل تقني
قُدمت بنية الـTransformer من قبل Google في الورقة البحثية لعام 2017 بعنوان "Attention Is All You Need"، وهي تشكّل العمود الفقري للذكاء الاصطناعي الحديث. جميع نماذج اللغة الكبرى مثل GPT وClaude وGemini مبنية على هذه البنية.
قبل الـTransformers: قيود RNN وLSTM
قبل عصر الـTransformer، اعتمدت مهام معالجة اللغة الطبيعية على شبكات Recurrent Neural Networks (RNN) وLong Short-Term Memory (LSTM):
مشكلات RNN/LSTM:
- الاعتماد على المعالجة المتسلسلة → استحالة التنفيذ المتوازي.
- تلاشي/انفجار التدرج عند التعامل مع تسلسلات طويلة.
- صعوبة تعلم العلاقات البعيدة المدى.
- أوقات تدريب طويلة جدًا.
آلية الـSelf-Attention
الـSelf-attention هي آلية تحسب العلاقة بين كل عنصر في التسلسل وجميع العناصر الأخرى.
الصياغة الرياضية
Attention(Q, K, V) = softmax(QK^T / √d_k) × V
المعلمات:
- Q (Query): متجه الاستعلام.
- K (Key): متجه المفتاح المراد مطابقته.
- V (Value): متجه المعلومات الفعلية.
- d_k: بُعد متجه الـKey.
الحساب خطوة بخطوة
- الإسقاط: الإدخال → مصفوفات Q وK وV
1Q = X × W_Q 2K = X × W_K 3V = X × W_V
- درجات الانتباه: الضرب النقطي بين Q وK
scores = Q × K^T
- التحجيم: القسمة على √d_k لاستقرار التدرجات
scaled_scores = scores / √d_k
- Softmax: التحويل إلى توزيع احتمالي
attention_weights = softmax(scaled_scores)
- المجموع الموزون: الضرب مع V
output = attention_weights × V
Multi-Head Attention
بدلًا من رأس انتباه واحد، يتم استخدام عدة رؤوس انتباه متوازية:
1MultiHead(Q, K, V) = Concat(head_1, ..., head_h) × W_O 2 3where head_i = Attention(QW_Q^i, KW_K^i, VW_V^i)
مزايا Multi-Head Attention
- التعلم في فضاءات تمثيلية مختلفة.
- التقاط أنواع متعددة من العلاقات السياقية.
- استخراج ميزات أكثر ثراءً.
تكوينات نموذجية:
- GPT-3: يحتوي على 96 رأس Attention، d_model = 12288.
- GPT-4: يقدر بأكثر من 120 رأسًا.
Positional Encoding
نظرًا لأن الـTransformers تعالج البيانات بشكل متوازٍ، تتم إضافة معلومات الموقع للحفاظ على السياق التسلسلي:
Sinusoidal Positional Encoding
PE(pos, 2i) = sin(pos / 10000^(2i/d_model)) PE(pos, 2i+1) = cos(pos / 10000^(2i/d_model))
Rotary Positional Embedding (RoPE)
طريقة أكثر تقدمًا تُستخدم في النماذج الحديثة:
f(x, pos) = x × e^(i × pos × θ)
مزايا RoPE:
- ترميز طبيعي لمعلومات الموقع النسبي.
- قدرة أفضل على التعميم للتسلسلات الأطول.
- مستخدمة في نماذج GPT-NeoX وLLaMA وMistral.
Feed-Forward Network
طبقة MLP تأتي بعد كل طبقة Attention:
FFN(x) = GELU(xW_1 + b_1)W_2 + b_2
الأبعاد النموذجية:
- d_model = 4096.
- d_ff = 4 × d_model = 16384.
دوال التنشيط
- ReLU: كلاسيكية وبسيطة.
- GELU: مفضلة في نماذج نوع GPT.
- SwiGLU: مستخدمة في نماذج LLaMA وPaLM.
Layer Normalization
مهم جدًا لاستقرار التدريب:
Pre-LN مقابل Post-LN
Post-LN (الأصلي):
x = x + Attention(LayerNorm(x))
Pre-LN (الحديث):
x = LayerNorm(x + Attention(x))
يوفّر Pre-LN تدريبًا أكثر استقرارًا وأصبح المعيار الصناعي الحالي.
Encoder vs Decoder Architectures
Encoder-Only (نمط BERT)
- انتباه ثنائي الاتجاه.
- مستخدم في التصنيف وNER والتشابه الدلالي.
- Masked Language Modeling.
Decoder-Only (نمط GPT)
- انتباه سببي/توليدي.
- مستخدم في توليد النصوص والدردشة.
- التنبؤ بالكلمة التالية.
Encoder-Decoder (مثل T5 وBART)
- مهام تسلسل-إلى-تسلسل.
- الترجمة والتلخيص.
Causal Masking
تمويه الرموز المستقبلية في نماذج الـDecoder:
mask = triu(ones(seq_len, seq_len), diagonal=1) masked_scores = scores + mask × (-inf)
هذا يضمن أن النموذج ينظر فقط إلى الرموز السابقة أثناء عملية التوليد.
تحسين KV-Cache
لمنع الحسابات المتكررة أثناء الاستدلال:
1Step 1: Calculate K_1, V_1 → save to cache 2Step 2: Calculate K_2, V_2 → K = [K_1, K_2], V = [V_1, V__2] 3Step n: Calculate only for the new token, retrieve old values from cache
توفير الذاكرة: من O(n²) إلى O(n) في خطوات المعالجة.
Flash Attention
تنفيذ Attention عالي الكفاءة من حيث الذاكرة:
مشكلات الـ Standard Attention:
- استخدام ذاكرة O(n²).
- اختناق في HBM (high bandwidth memory).
حل Flash Attention:
- Tiling: تقسيم الـ Attention إلى كتل.
- Online Softmax: حساب تزايدي.
- I/O Aware: تحسين استخدام تسلسل الذاكرة داخل الـ GPU.
النتيجة: تسريع 2-4x، وتوفير 20%-5 من الذاكرة.
متغيرات Sparse Attention
تقليل تعقيد الـ Attention للسياقات الطويلة:
Local Attention
التركيز على التوكنات القريبة فقط.
Dilated Attention
تطبيق Attention على فواصل محددة.
Longformer Pattern
دمج Attention محلي + عالمي.
نماذج Transformer الحديثة
| النموذج | الميزة | طول السياق |
|---|---|---|
| GPT-4 | MoE، سياق طويل | 128K |
| Claude 3 | Constitutional AI | 200K |
| Gemini 1.5 | Sparse MoE | 1M |
| Mistral | Sliding window | 32K |
الخلاصة
تُعد بنية Transformer حجر الأساس للذكاء الاصطناعي الحديث. آلية الـ self-attention، وقدرتها على المعالجة المتوازية، وقابليتها لتعلم الاعتماديات البعيدة جعلتها بنية ثورية.
في Veni AI، نستخدم نماذج Transformer بفعالية في حلولنا الموجهة للمؤسسات. تواصل معنا للحصول على استشارات تقنية.
