نماذج اللغة2020متوسط10 دقيقة قراءة

REALM: التدريب المسبق لنموذج لغوي مُعزَّز بالاسترجاع

REALM: Retrieval-Augmented Language Model Pre-Training

Guu, K. · Lee, K. · Tung, Z. · Pasupat, P. · Chang, M.-W. — ICML

المشكلة

حتى عام 2020، كانت النماذج اللغوية الكبيرة مثل BERT وT5 تُخبّئ المعرفة داخل أوزانها بشكل ضمني. وإذا أردت أن يعرف النموذج حقائق أكثر، لم يكن أمامك إلا تكبير الشبكة — وهذا مُكلف حسابياً وصعب التفسير. لم يكن أحد قادراً على تحديد ما الذي يعرفه النموذج تحديداً، ولا أين تختبئ هذه المعرفة بين ملايين المعاملات. والأسوأ أن الحقائق حين تتغيّر — رئيس جديد أو رقم قياسي محدَّث — يجب إعادة النموذج من الصفر. كان المجال بحاجة إلى آلية تمنح النماذج اللغوية معرفة خارجية يمكن فصلها وتفسيرها وتحديثها بشكل مستقل.

الإسهام

قدّم REALM إطاراً يُضيف مُسترجع معرفة عصبياً قابلاً للتعلّم إلى مرحلة للنماذج اللغوية. الفكرة أن النموذج أثناء تدريبه المسبق يسترجع فقرات من ويكيبيديا تساعده في التنبؤ بالرموز المُقنَّعة، ويتعلّم تلقائياً أيّ الفقرات مفيدة لأن التدرّجات تنتشر عبر خطوة الاسترجاع نفسها. يعتمد المُسترجع على بحث أقصى جداء داخلي (MIPS) في فهرس مستندات مُخبَّأ يُحدَّث دورياً في الخلفية. عند على مهام الإجابة المفتوحة، تفوّق REALM على كل الأنظمة السابقة في NaturalQuestions وWebQuestions وCuratedTrec بفارق 4–16% في الدقة المطلقة، متغلّباً حتى على نماذج أكبر منه بثلاثين ضعفاً.

الأثر

أسّس REALM لنهج الاسترجاع المُتعلَّم من مرحلة التدريب المسبق — أي أن النموذج اللغوي يُدرَّب منذ البداية مع مُسترجع بشكل مشترك وشامل، وليس فقط عند الضبط الدقيق. كان الإلهام المباشر وراء RAG وRETRO ومنظومة التوليد المُعزَّز بالاسترجاع بأكملها التي تُشغّل مساعدات الذكاء الاصطناعي اليوم. والفكرة المحورية التي طرحها — أن الاسترجاع متغيّر كامن قابل للأمثَلة — لا تزال الركيزة التي تقوم عليها النماذج اللغوية المُرتكزة على المعرفة.

تخيّل ثلاثة طلاب في امتحان مفتوح الكتب. الأول حفظ المنهج كاملاً عن ظهر قلب (هذا هو BERT) — يُجيب بسرعة من ذاكرته، لكنه يتعثّر في التفاصيل النادرة ولا يملك طريقة لتحديث ما يعرفه. الثاني يملك موسوعة ضخمة لكنه لا يعرف كيف يبحث فيها (هذا هو مع قارئ) — فيضيع وقته في تقليب الصفحات بلا هدف.

REALM هو الطالب الثالث، الذي تعلّم كيف يستخدم فهرس الكتاب: قبل كل سؤال يذهب مباشرةً إلى الصفحة الصحيحة، يقرأ الفقرة التي يحتاجها، ويُجيب. والسر؟ هذا الطالب لم ينتظر يوم الامتحان ليتدرّب على استخدام الفهرس — بل تمرّن عليه أثناء المذاكرة، فأصبح البحث عنده مهارة طبيعية لا تحتاج تفكيراً.

المشكلة: المعرفة حبيسة المعاملات

نماذج اللغة مثل BERT تكتسب معرفتها عن العالم من خلال التدريب على كمّيات هائلة من النصوص. لو طلبت من BERT ملء الفراغ في عبارة «___ هي عملة المملكة المتحدة»، سيتنبأ بكلمة «الجنيه» بشكل صحيح. لكن المشكلة أن هذه المعرفة مدفونة ضمنياً داخل ملايين المعاملات — وهذا يُولّد ثلاث مشكلات عملية.

المشكلة الأولى أن السعة محدودة: كل معرفة إضافية تتطلب نموذجاً أكبر، أي موارد حسابية وذاكرة أكثر. المشكلة الثانية أن المعرفة مبهمة: لا أحد يستطيع أن يُحدّد أيّ المعاملات تحمل أيّ حقيقة. والمشكلة الثالثة أن المعرفة متجمّدة: حين تتغيّر حقيقة ما — رئيس جديد أو رقم قياسي مُحدَّث — لا مفرّ من إعادة تدريب النموذج بالكامل.

قبل REALM، كانت أنظمة الإجابة المبنية على الاسترجاع تعتمد على مُسترجعات ثابتة مثل BM25 — وهي مجرد مطابقة كلمات مفتاحية لا تفهم السياق ولا تتعلّم منه. المُسترجع والقارئ كانا نظامين منفصلين يعمل كلٌّ منهما بمعزل عن الآخر، فلم يكن بإمكان المُسترجع أن يعرف ما الذي يحتاجه القارئ فعلاً.

افتح في المختبر
قارن كيف تُخزّن النماذج ضمنية المعرفة (BERT) والنماذج صريحة المعرفة (REALM) الحقائق وتصل إليها.
تستيقظ التجربة عند وصولك…

الفكرة: استرجِع ثم تنبَّأ — تدريب شامل من البداية إلى النهاية

الفكرة المحورية في REALM بسيطة وأنيقة: اجعل الاسترجاع داخل النموذج اللغوي. قبل أن يتنبأ النموذج بأي مُقنَّع، يذهب أولاً ويسترجع مستنداً من مجموعة معرفية كبيرة (مثل ويكيبيديا). هذا المستند لا نُحدّده مسبقاً — النموذج لا يعرف أيّ مستند سيفيده — لكنه يكتشف ذلك بنفسه لأن الاسترجاع الجيد يُحسّن التنبؤ والاسترجاع السيئ يُضعفه.

يمكن تصوّر العملية على خطوتين. في الأولى: لدينا جملة فيها كلمة مُقنَّعة، فيستخدم النموذج مُسترجع المعرفة لاختيار مستند مناسب. في الثانية: يستخدم مُعزَّزاً بالمعرفة ليقرأ الجملة والمستند معاً، ثم يتنبأ بالكلمة المُقنَّعة. الاحتمال الكلي للإجابة الصحيحة هو مجموع مساهمات كل المستندات المحتملة، كلٌّ منها مُرجَّح باحتمال استرجاعه.

والنقلة النوعية هنا أن المُسترجع والمُرمِّز يُدرَّبان معاً بشكل مشترك تنساب من دالة الخسارة رجوعاً عبر قرار الاسترجاع نفسه. كل استرجاع يُساعد في التنبؤ الصحيح يُكافَأ، وكل استرجاع لا يُفيد يُعاقَب. هذا بالتحديد ما يفصل REALM عن الأنظمة القديمة التي كانت تربط مُسترجعاً جامداً بقارئ منفصل.

افتح في المختبر
تتبّع مسار «استرجِع ثم تنبَّأ» — ولاحظ كيف تنساب التدرّجات رجوعاً عبر خطوة الاسترجاع.
تستيقظ التجربة عند وصولك…

الأرجحية الهامشية: الجمع على كل المستندات

رياضياً، يتعامل REALM مع المستند المُسترجَع باعتباره متغيّراً كامناً ويحسب الاحتمال الكلي للإجابة بالتهميش على جميع المستندات المحتملة. الفكرة أن النموذج يختار مستنداً من المجموعة المعرفية، ثم يستخدمه مع الاستعلام لتوليد الإجابة. الاحتمال النهائي للمُخرَج هو حاصل جمع مساهمات كل مستند ممكن.

p(yx)=zZp(yz,x)  p(zx)p(y \mid x) = \sum_{z \in \mathcal{Z}} p(y \mid z, x) \; p(z \mid x)
الأرجحية الهامشية في REALM — المعادلة الجوهريةلكل مستند z محتمل، نضرب احتمال الوصول إلى الإجابة الصحيحة في ظل وجود هذا المستند p(y|z,x)، في احتمال استرجاعه p(z|x). حاصل الجمع على كل المستندات يُعطينا الاحتمال الكلي للإجابة.

المُسترجع يُحدّد احتمال اختيار كل مستند عبر دالة softmax مُطبَّقة على درجات الصلة. هذه الدرجات تُحسب كجداء داخلي بين الاستعلام وتضمين المستند، حيث يُنتج كلاً منهما مُرمِّز BERT مع إسقاط خطي.

p(zx)=exp(Embedinput(x)Embeddoc(z))zexp(Embedinput(x)Embeddoc(z))p(z \mid x) = \frac{\exp\bigl(\mathrm{Embed}_{\mathrm{input}}(x)^\top \, \mathrm{Embed}_{\mathrm{doc}}(z)\bigr)}{\sum_{z'} \exp\bigl(\mathrm{Embed}_{\mathrm{input}}(x)^\top \, \mathrm{Embed}_{\mathrm{doc}}(z')\bigr)}
احتمال الاسترجاع — softmax على الجداءات الداخليةكل مستند يحصل على درجة تساوي الجداء الداخلي بين تضمينه وتضمين الاستعلام. دالة softmax تُحوّل هذه الدرجات إلى توزيع احتمالي على المجموعة بأكملها. المستندات التي يكون تضمينها قريباً من تضمين الاستعلام تحصل على احتمال أعلى.

البنية: مُرمِّزا BERT وفهرس بحث

بنية REALM تتألف من مكوّنين رئيسيين، كلاهما مبني على مُرمِّز من نوع BERT.

المكوّن الأول هو مُسترجع المعرفة: يأخذ الاستعلام ويُمرّره عبر مُرمِّز BERT، ثم يأخذ ويُسقطه إلى تضمين بأبعاد أقل. كل مستند (عنوان + متن) يُرمَّز بنفس الطريقة. درجة الصلة بين الاستعلام والمستند هي ببساطة الجداء الداخلي بين تضمينيهما، وخوارزمية MIPS تكشف عن أفضل k مستند بكفاءة عالية.

المكوّن الثاني هو المُرمِّز المُعزَّز بالمعرفة: يأخذ الاستعلام والمستند المُسترجَع ويدمجهما في تسلسل واحد [CLS] استعلام [SEP] مستند [SEP]، ثم يُغذّيه إلى BERT ثانٍ. هذا التركيب يُتيح متقاطعاً غنياً بين الاستعلام والدليل قبل أن يتّخذ النموذج قراره. في مهمة نمذجة اللغة المُقنَّعة، يُستخدم الناتج عند كل موضع [MASK] للتنبؤ بالرمز الأصلي. أما في ، فيتنبأ النموذج بموضعَي بداية ونهاية الإجابة داخل المستند.

افتح في المختبر
انقر على كل مكوِّن لتفهم دوره في خط أنابيب REALM.
تستيقظ التجربة عند وصولك…

الحيلة الهندسية: تحديث الفهرس بشكل غير متزامن

هنا تظهر مشكلة عملية مهمة: معاملات المُسترجع تتغيّر مع كل خطوة تدريب، وهذا يعني أن تضمينات المستندات المُخبَّأة تتقادم بسرعة. لكن إعادة حساب تضمينات ملايين المستندات في كل خطوة أمر مستحيل عملياً. الحل الذي ابتكره REALM هو نظام مهمتين يعملان بالتوازي.

المهمة الأولى هي التدريب: تُحدّث التدرّجات معاملات النموذج كالمعتاد. والمهمة الثانية هي بناء الفهرس: تأخذ نسخة من معاملات المُسترجع الحالية، تُعيد حساب تضمينات جميع المستندات، تبني فهرس MIPS جديداً، ثم تُرسله إلى المُدرِّب. هذه الدورة تتكرر كل بضع مئات من الخطوات.

بين تحديث وآخر، يكون الفهرس متأخراً قليلاً عن حالة المعاملات — لكن التجارب أثبتت أن هذا التأخّر صغير بما يكفي لأن يبقى التدريب مستقراً. المهم أن التحديثات تحصل بوتيرة كافية بحيث لا ينحرف الفهرس كثيراً عن المعاملات الحالية.

افتح في المختبر
شاهد المُدرِّب وبانِي الفهرس يعملان بالتوازي — الفهرس يُحدَّث دورياً.
تستيقظ التجربة عند وصولك…

تقنيع النطاقات البارزة: التركيز على المعرفة العالمية

في BERT العادي، التقنيع يُطبَّق على رموز عشوائية — لكن المشكلة أن كثيراً من هذه الرموز يمكن التنبؤ بها من القواعد النحوية المحلية فقط (مثل «الـ» أو «في»). تقنيع كلمات كهذه لا يُعطي المُسترجع أي إشارة تعلّم مفيدة. لذلك ابتكر REALM أسلوب تقنيع النطاقات البارزة: بدلاً من اختيار رموز عشوائية، يُقنِّع الكيانات المُسمّاة والتواريخ — وهي نطاقات لا يمكن التنبؤ بها إلا بمعرفة حقيقية عن العالم.

عملياً، يُستخدم مُصنِّف كيانات مبني على BERT ومُدرَّب على بيانات CoNLL-2003 لاكتشاف الكيانات المُسمّاة، وتعبير نمطي بسيط لالتقاط التواريخ. ثم يختار REALM نطاقاً بارزاً واحداً في كل جملة ويُقنِّعه. النتيجة أن إشارة التعلّم تتركّز على الحالات التي يُحدث فيها الاسترجاع فرقاً حقيقياً، وهذا يرفع جودة التدريب المسبق بشكل ملحوظ.

الفكرة في الكود

REALM استرجِع ثم تنبَّأ — التمرير الأمامي الأساسيpython

مبسَّط لإظهار الفكرة — ليس التنفيذ الحقيقي.

import numpy as np

def realm_forward(query, corpus_embeddings, encoder, retriever, top_k=5):
    """التمرير الأمامي لـ REALM: استرجِع ثم تنبَّأ."""
    # الخطوة 1: ترميز الاستعلام
    q_emb = retriever.embed_input(query)          # (d,)

    # الخطوة 2: تسجيل جميع المستندات بالجداء الداخلي (MIPS عملياً)
    scores = corpus_embeddings @ q_emb             # (عدد_المستندات,)

    # الخطوة 3: اختيار أفضل k مستند
    top_idx = np.argsort(scores)[-top_k:]
    top_scores = scores[top_idx]

    # الخطوة 4: softmax على المستندات المُسترجعة
    retrieval_probs = softmax(top_scores)          # (top_k,)

    # الخطوة 5: لكل مستند مُسترجع، تنبأ بالرمز المُقنَّع
    # ثم هَمِّش: p(y|x) = sum_z p(y|z,x) * p(z|x)
    total_prob = 0
    for i, doc_idx in enumerate(top_idx):
        doc = corpus[doc_idx]
        prediction_prob = encoder.predict(query, doc)  # p(y|z,x)
        total_prob += prediction_prob * retrieval_probs[i]

    return total_prob

# الملاحظة الجوهرية: التدرّجات تتدفق عبر retrieval_probs رجوعاً إلى
# المُسترجع — تُكافئ الاسترجاعات التي تُحسّن دقة التنبؤ.
# فهرس MIPS يُحدَّث بشكل غير متزامن كل ~500 خطوة تقريباً.

النتائج: نموذج أصغر، معرفة أكبر

اختُبر REALM على ثلاثة معايير مرجعية للإجابة المفتوحة عن الأسئلة، وكانت النتائج مُبهرة.

على NaturalQuestions-Open، حقّق REALM دقة مطابقة تامة بنسبة 40.4% — بينما أفضل نظام استرجاعي سابق (ORQA) وصل إلى 33.3% فقط، ونموذج T5-11B الضخم (الذي يملك ثلاثين ضعف المعاملات) حقّق 36.6%. على WebQuestions، سجّل REALM نسبة 40.7% مقابل 36.4% لـ ORQA. والفارق الأكبر كان على CuratedTrec حيث بلغ REALM نسبة 46.8% مقابل 30.1% لـ ORQA — قفزة بمقدار 16.7 نقطة.

هذه الأرقام تُثبت نقطة جوهرية: الاسترجاع الصريح بمُسترجع مُتعلَّم أثناء التدريب المسبق يتفوّق على الحفظ بالقوة حتى في نماذج أكبر بكثير. وفوق ذلك، النموذج أسهل في التفسير — يمكنك رؤية المستندات التي استرجعها — وأسهل في التحديث — يمكنك تغيير المجموعة المعرفية دون إعادة التدريب.

افتح في المختبر
قارن REALM مع الأنظمة السابقة على ثلاثة معايير للإجابة المفتوحة عن الأسئلة.
تستيقظ التجربة عند وصولك…

الأثر الذي تركه REALM

  1. 2020

    REALM

    أول نظام يُدرِّب نموذجاً لغوياً مع مُسترجع عصبي مُتعلَّم بشكل مشترك منذ مرحلة التدريب المسبق. تصدّر ثلاثة معايير مرجعية للإجابة المفتوحة بفارق 4–16%.

  2. 2020

    RAG — التوليد المُعزَّز بالاسترجاع

    طوّر نموذج «استرجِع ثم ولِّد» باستبدال القارئ الاستخلاصي بمُولِّد تسلسل-إلى-تسلسل (BART). اعتمد على DPR للاسترجاع وصار الاسم الذي تُعرف به منظومة RAG بأكملها.

  3. 2022

    RETRO — المحوِّل المُعزَّز بالاسترجاع

    نقل التدريب المسبق المُعزَّز بالاسترجاع إلى نطاق 7 مليار معامل باستخدام انتباه متقاطع مُجزَّأ، مع استرجاع من قاعدة بتريليوني رمز. أظهر أن الاسترجاع يمكن أن يُعوّض عن تكبير المعاملات عشرة أضعاف.

ما قدّمه REALM في جوهره ليس مجرد نموذج — بل مبدأ: أن الاسترجاع متغيّر كامن يمكن أمثَلته بشكل شامل مع النموذج اللغوي من البداية إلى النهاية. قبل REALM، كان الاسترجاع خطوة ثابتة تسبق المعالجة ولا تتأثر بالتدريب. بعد REALM، أصبح مُكوّناً قابلاً للتفاضل والتعلّم كأي طبقة أخرى في الشبكة. هذا التحوّل هو الأساس الذي يقوم عليه كل نظام حديث مُعزَّز بالاسترجاع — من مساعدات الذكاء الاصطناعي التي تستشهد بمصادرها، إلى محركات البحث المؤسسية التي تفهم السياق.

المرجعGuu, Lee, Tung, Pasupat, Chang. REALM: Retrieval-Augmented Language Model Pre-Training. ICML, 2020.

مصطلحات هذه الورقة