فهم الانتباه الذاتي
تفسير كلمة يستلزم سياقًا قد يقع في أي موضع من الجملة. ويمنح الانتباه الذاتي كل موضع وصولًا مباشرًا إلى كل موضع آخر، تاركًا للنموذج أن يقرّر، لكل رمز، أيّ الرموز الأخرى وثيق الصلة به، وأن يقرأ منها.
وتُسقِط الآلية تمثيل كل رمز في ثلاثة متجهات. فالاستعلام يعبّر عمّا يبحث عنه هذا الموضع، والمفتاح يعلن ما يعرضه هذا الموضع، والقيمة تحمل المحتوى المستخرَج فعلًا. وصلة الموضع j بالموضع i هي الجداء النقطي لاستعلام i بمفتاح j. وتمرّ هذه الدرجات عبر softmax لتصير أوزانًا مجموعها واحد، ويكون المخرج عند i المجموعَ الموزون لكل متجهات القيمة.
ومعامل القياس ليس تجميليًا. يشرح راشكا أن الجداءات النقطية تنمو مع بُعد التضمين، الذي يتجاوز الألف عادةً في نماذج نمط GPT؛ والجداءات النقطية الكبيرة تدفع softmax إلى السلوك كدالة درجية، وتدرجاته إلى الصفر، فيبطؤ التعلّم أو يتوقف. والقسمة على الجذر التربيعي لبُعد المفاتيح تُبقي الدرجات في مدى يظل فيه softmax متجاوبًا، وهذه التسوية هي ما يمنح انتباهَ الجداء النقطي المقيس اسمه.
والمكسب البنيوي على التكرارية مزدوج. فأي موضعين تفصلهما عملية واحدة مهما بَعُدا، فلا يلزم أن تنجو التبعيات بعيدة المدى من سلسلة طويلة من الخطوات الوسيطة. ولأن مخرج كل موضع يُحسب من المصفوفات نفسها باستقلال، تُعالَج المتتالية كلها على التوازي أثناء التدريب بدل خطوة في كل مرة. والكلفة أن مقارنة كل الأزواج تتوسّع تربيعيًا مع طول المتتالية، ولهذا تبقى كفاءة السياق الطويل مسألة بحثية نشطة.
كيفية الحساب
Attention(Q, K, V) = softmax(QKᵀ / √dₖ) V
حيث
- Q
- الاستعلامات: ما يبحث عنه كل موضع
- K
- المفاتيح: ما يعرضه كل موضع للمطابقة
- V
- القيم: المحتوى الذي يُقرأ متى تقرّرت الأوزان
- dₖ
- بُعد المفاتيح؛ والقسمة على جذره التربيعي تمنع تشبّع softmax
- softmax
- يُطبّع الدرجات إلى أوزان مجموعها واحد
مثال على الانتباه الذاتي
في جملة «لم يعبر الحيوان الشارع لأنه كان متعبًا جدًا»، يتطلب تحديد مرجع الضمير معرفةَ هل يعود على الحيوان أم على الشارع. ويتيح الانتباه الذاتي للموضع الحامل للضمير أن يكوّن استعلامًا يطابق بقوة المفتاح عند «الحيوان»، فتحمل القيمة المقروءة في ذلك الموضع محتوى متصلًا بالحيوان.
وتغيير الكلمة الأخيرة إلى «عريضًا» ينبغي أن ينقل المرجع إلى الشارع. ولا شيء في المعمارية مبرمَج مسبقًا لتحديد مرجع الضمائر؛ فإسقاطات الاستعلام والمفتاح التي تنتج هذا السلوك متعلَّمة من البيانات وحدها.
وعمليًا تعمل عدة رؤوس انتباه على التوازي بإسقاطات منفصلة، فيتتبع رأس التطابق النحوي بينما يتتبع آخر المرجع وثالث التشابه الموضوعي. وتُوصَل مخرجاتها معًا، ولهذا تُنشر الآلية عادةً باسم الانتباه متعدد الرؤوس.
الأسئلة الشائعة
ما الفرق بين الانتباه والانتباه الذاتي؟
الانتباه عمومًا يتيح لمتتالية أن تقرأ من أخرى، كما حين يقرأ مفكِّك الترجمة المصدرَ المرمَّز. أما الانتباه الذاتي فهو الحالة التي تأتي فيها الاستعلامات والمفاتيح والقيم كلها من المتتالية نفسها، فيربط مواضع مدخل واحد بعضها ببعض.
لماذا نقسم على الجذر التربيعي لبُعد المفاتيح؟
لأن الجداءات النقطية تنمو مع البُعد، والدرجات الكبيرة تجعل softmax يقارب دالة درجية تدرجاتها تكاد تنعدم، فيتوقف التدريب. والقياس يُبقي الدرجات في مدى يظل فيه softmax سلسًا وتظل فيه التدرجات مفيدة.
ما التقنيع السببي؟
في النماذج التوليدية يجب ألّا تنتبه المواضع إلى المواضع اللاحقة، وإلا رأى النموذج الجواب الذي يُفترض أن يتنبأ به. ويضبط القناع السببي تلك الدرجات على سالب اللانهاية قبل softmax، فتصير أوزانها أصفارًا.
الخلاصة
يحسب الانتباه الذاتي مخرج كل موضع كقراءة موزونة متعلَّمة على المتتالية كلها، بأوزان من تشابه مقيس بين الاستعلامات والمفاتيح. وهو يزيل عقوبة المسافة في التكرارية ويتيح تدريبًا متوازيًا، بكلفة تربيعية في طول المتتالية.