دوز مباشرة للمحتوى الرئيسي
دروس فالذكاء الاصطناعي

فهم وتطبيق بنية المُحوِّل التكراري الحَلْقي

كيشرح هاد الدليل بنية المُحوِّل التكراري الحَلْقي، والحالة التكرارية ديالو وذاكرات الانتباه، ونموذج التنفيذ الموحّد ديالو للتدريب، والتوليد، وإعادة تشغيل تجارب التعلّم بالتعزيز. وكيبيّن حتى كيفاش تستكشف مستودع البحث وتفسّر التجارب الأولية ديال تتبّع الحالة.

فهم وتطبيق بنية المُحوِّل التكراري الحَلْقي

شنو هو Recurrent Looped Transformer؟

الـRecurrent Looped Transformer (RLT) هو معمارية بحثية مصمّمة باش تدوز الحسابات الكامنة عبر كل رمز فالتسلسل. مُرمّز سببي كيبني ذاكرة عالمية ديال المفتاح–القيمة، بينما مُفكّك ترميزي تكراري كيجمع هاد الذاكرة مع الانتباه بنافذة منزلقة ومع التغذية الراجعة من آخر حالة مخفية نهائية ديالو.

هاد الشي كينشئ مسار حساب زمني قابل للتمديد. إلا كان عند المفكّك الترميزي L_D طبقات، فمعالجة t رموز كتعطي مساراً تكرارياً عبر tL_D من كتل المفكّك الترميزي، حتى إلا كان النموذج كينفّذ غير عدد ثابت من الكتل لكل رمز.

فهاد المشروع، “العمق الزمني اللانهائي” كيعني أن مسار الحساب يقدر يكبر مع طول التسلسل. ما كيعنيش أن النموذج كيدير حساباً لا نهائياً داخل رمز واحد.

نظرة عامة على معمارية Recurrent Looped Transformer

مبادئ التصميم الأساسية

1. الاستدلال الكامن عبر الزمن

المخرج النهائي للمفكّك الترميزي ديال رمز واحد كيولي مُدخلاً للرمز اللي من بعد. وبالتالي، يقدر النموذج ينشر حالة كامنة عبر كامل الموجّه والجواب المُولّد، بلا ما يتعامل مع الحد الفاصل بين الموجّه والجواب كنقطة إعادة ضبط.

2. التصميم المشترك بين النموذج والعتاد

التصميم المقترح كيكشف على بزاف ديال فرص التحسين الممكنة:

  • الحساب المتوازي ديال المُرمّز السببي على الرموز المعروفة
  • التجميع عبر تسلسلات مستقلة
  • إعادة استعمال الذاكرة المستخرجة من المُرمّز
  • حفظ نقاط تفعيل مؤقتة حول تنفيذ المفكّك الترميزي التكراري

هاد الشي فرص تصميم وأهداف بحثية. التقرير ما كيدّعيش وجود تسارعات مقاسة على مستوى عتاد واسع النطاق.

3. دلالات مشتركة للتدريب والتعلّم بالتعزيز

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

كيفاش كتخدم المعمارية

بالنسبة لرمز x_t، المُرمّز السببي كينتج تمثيلاً e_t وذاكرة عالمية مستخرجة من المُرمّز M_≤t. حالة المفكّك الترميزي كتشمل كلاً من المخرج التكراري وذاكرة التخزين المؤقت ديال الانتباه بالنافذة المنزلقة على مستوى الطبقات:

H_t = (s_t, C_t^D)
H_0 = (s_*, empty)

انتقال الحالة هو:

(s_t, C_t^D) = D_phi(
  Merge(e_t, s_(t-1)),
  M_≤t,
  C_(t-1)^D,
  t
)

توزيع الرمز الموالي كيتحسب انطلاقاً من المخرج التكراري النهائي:

p(x_(t+1) | x_(1:t)) = softmax(W_o RMSNorm_o(s_t))

ثلاثة أشكال ديال السياق

  • السياق العالمي ديال المُرمّز: انتباه المفكّك الترميزي المتقاطع كيقرا ذاكرة المُرمّز غير من خلال الموضع الحالي، وكيحافظ على السلوك السببي.
  • الذاكرة المحلية ديال المفكّك الترميزي: الانتباه بالنافذة المنزلقة كيقرا أحدث مدخلات المفتاح–القيمة ديال المفكّك الترميزي ومدخل الرمز الحالي. نافذة بحجم W كتشمل الرمز الحالي، وكتخلي بحد أقصى W - 1 من المداخل التاريخية للتحديث الموالي.
  • التغذية الراجعة الزمنية: المخرج النهائي السابق للمفكّك الترميزي كيتدمج مع تمثيل المُرمّز الحالي.

لا المخرج التكراري لا ذاكرة المفكّك الترميزي كيتعاودو يتصفّرو ملي كيدوز التسلسل من الموجّه للجواب.

إعداد نموذجي ملموس

التقرير كيصف إعداداً فيه 48 طبقة للمُرمّز و48 طبقة للمفكّك الترميزي. أوزان الانتباه والتغذية الأمامية المتوافقة كيتشاركو بين المراحل. كتل المفكّك الترميزي كتدير زيادة على هاد الشي انتباهاً متقاطعاً على ذاكرة المُرمّز، وبهذا فعدد الطبقات المتطابق ما كيعنيش بالضرورة تطابق عدد العمليات بالفاصلة العائمة.

التثبيت وإعداد المستودع

ملف README كيقدّم تقريراً معمارياً وماشي حزمة برمجية موثّقة. ما كيوفّرش متطلبات التبعيات، ولا أمر تثبيت، ولا سكريبتاً عمومياً للتدريب، ولا واجهة API قابلة للتشغيل. ومع ذلك، تقدر تستنسخ المستودع باش تقرا الورقة والمواد الداعمة:

git clone https://github.com/yifanzhang-pro/recurrent-looped-tranformer.git
cd recurrent-looped-tranformer

بدا بملف Recurrent_Looped_Transformer.pdf المرفق. وتقدر حتى تزور الموقع ديال المشروع وتراجع المذكرة حول عدم تطابق نواة التهيئة المسبقة–فك الترميز.

حيت README ما كيوثّقش تنفيذاً قابلاً للتشغيل، ما خاصش نستنتجو من وصف المستودع تعليمات لتثبيت الحزمة ولا كوداً جاهزاً لتشغيل النموذج.

الاستعمال الأساسي: تتبّع نموذج تنفيذ RLT

أكثر طريقة مفيدة لتطبيق التقرير هي اعتباره مخططاً للتنفيذ. الشيفرة شبهية المفاهيمية التالية كتلخّص انتقالاً واحداً للحالة؛ وماشي واجهة API موفّرة من طرف المستودع:

state = (initial_recurrent_state, empty_decoder_cache)

for each token x_t:
    e_t = causal_encoder_representation(x_t)
    memory = encoder_memory_through_position(t)

    merged = Merge(e_t, state.recurrent_output)
    state = recurrent_decoder(
        merged,
        memory,
        state.decoder_cache,
        position=t
    )

    next_token_distribution = output_head(state.recurrent_output)

التهيئة المسبقة للموجّه

  1. شغّل المُرمّز السببي على رموز الموجّه المعروفة فشكل دفعة.
  2. دُزّ عبر كل رمز من رموز الموجّه بشكل تكراري باستعمال المفكّك الترميزي.
  3. بني ذاكرة التخزين المؤقت ديال المفتاح–القيمة بالنافذة المنزلقة للمفكّك الترميزي خلال هاد التكرار.
  4. خلّي المخرج التكراري النهائي وذاكرة التخزين المؤقت باش تستعملهم فالتوليد.

تشغيل غير الإنكودر أثناء ملء البرومبت ما غاديش يعاود يبني الحالة الكاملة ديال RLT اللي موصوفة فالتقرير.

التوليد التلقائي

  1. استعمل الحالة السابقة باش تحسب توزيع التوكن الجاي.
  2. خد عيّنة ديال توكن من داك التوزيع.
  3. شفّر التوكن المأخوذ بشكل تدريجي.
  4. دَوّز داك التوكن عبر الديكودر التكراري غير مرة وحدة.
  5. حدّث الخرج التكراري والكاش ديال النافذة المنزلقة بجوج.

هاد الترتيب كيتفادى استهلاك التوكن المولّد جوج مرات، وكيحافظ على نفس دلالات انتقال الحالة المستعملة أثناء التدريب.

التدريب القبلي والضبط الدقيق الخاضع للإشراف

أثناء التدريب القبلي، الإنكودر كيخدم بشكل سببي والديكودر التكراري كيستعمل الانتشار الكامل للخلف عبر الزمن. كل هدف صالح للتوكن الموالي كيتعطى ليه الإشراف.

أثناء الضبط الدقيق الخاضع للإشراف، الحالة كتتحدّث على جميع توكنات السياق، ولكن الخسارة كتتطبّق غير على أهداف المساعد. البرومبت كيبقى مشارك فبناء الحالة التكرارية حتى إلا ما كانوش التوكنات ديالو خاضعين للإشراف.

إعادة تشغيل التعلم بالتعزيز حسب السياسة الحالية

إعادة التشغيل حسب السياسة الحالية خاصها تعاود تبني تاريخ السلسلة كامل باستعمال أوزان النموذج الحالية. هاد الشي كيشمل المخارج التكرارية، وذاكرة الإنكودر، وجميع كاشات النافذة المنزلقة ديال الديكودر.

  1. عاود بنِ تمثيلات الإنكودر والذاكرة باستعمال المعاملات الحالية.
  2. عاود شغّل كل توكن سابق باش تعاود تبني الحالة التكرارية وكاشات الديكودر.
  3. قيّم احتمال الفعل قبل ما تستهلك توكن داك الفعل.
  4. استهلك الفعل مرة وحدة باش تتقدّم للحالة الموالية.

الكاشات المرتابطة بالمعاملات كتولي قديمة من بعد تحديث الأوزان، وداكشي علاش إعادة التشغيل الدقيقة كتحتاج تعاود تبنيها. التدرجات الكاملة كتدوز عبر المخارج التكرارية، ومدخلات المفتاح-القيمة ديال الديكودر، وذاكرة الإنكودر. فصل أي مكوّن من هادو كيشكّل تقريب للتدرج.

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

نتائج تركيبية أولية

الـREADME كيرصد تجارب مستقلة لإثبات المفهوم فتعقّب الحالة، باستعمال تنفيذ صغير فيه تقريباً 79,000 معلمة وثلاث بذور عشوائية. تدرّبات النماذج على سلاسل فيها 32 عملية وتقيّمات حتى لـ128 عملية، مع 2,048 برنامج اختبار لكل مهمة ولكل طول.

نتائج تعقّب حالة RLT عبر سلاسل تقييم أطول

مهمة التكافؤ

  • فـ32 عملية، وصل RLT تقريباً لـ100% فدقة الحالة النهائية.
  • فـ64 عملية، وصل تقريباً لـ82%.
  • فـ128 عملية، وصل لـ60.8%.
  • الدقة العشوائية فمهمة التكافؤ هي 50%.

مهمة الانتقال بين خمس حالات

  • فـ32 عملية، وصل RLT تقريباً لـ100% فدقة الحالة النهائية.
  • فـ64 عملية، وصل تقريباً لـ49%.
  • فـ128 عملية، وصل لـ20.7%.
  • الدقة العشوائية فهاد المهمة هي 20%.

النتائج كتبرهن أن RLT تكيّف مع جوج المهام فطول التدريب، ولكن الدقة ديالو نقصات فالسلاسل الأطول. القيم اللي معلّمة بالتقريب تقرات من الشكل الأصلي، بينما قيم RLT ديال 128 عملية كانت مبيّنة رقمياً.

ميزانيات المعلمات والبيانات كانت متساوية، ولكن ميزانيات العمليات بالفاصلة العائمة ما كانتش كذلك. هاد التجارب عروض تركيبية، وماشي دليلاً على تحسّن كبير فالتفكير، ولا على تسريع العتاد، ولا على توسيع التعلم بالتعزيز.

نصائح متقدمة للتنفيذ

  • اعتبر الحالة الكاملة غير قابلة للتجزئة: حافظ على s_t وC_t^D بجوج. استرجاع المتجه التكراري بوحدو ما كيعيدش إنتاج الانتقال الموثّق.
  • ما تعاودش تصفّر الحالة عند حدود الجواب: التكرار ديال البرومبت والكاش ديال الديكودر ديالو خاصهم يدوزو مباشرة لتوليد الجواب.
  • حدّد النافذة بدقة: النافذة المنزلقة بحجم W كتشمل التوكن الحالي، وبالتالي غير W - 1 من الإدخالات التاريخية كيبقاو متاحين للتحديث الجاي.
  • عاود بنِ الكاشات من بعد التحديثات: إعادة التشغيل حسب السياسة الحالية كتحتاج كاشات مولّدة بالأوزان الحالية، ماشي قيم مخزّنة من سياسة سابقة.
  • خلّي ترتيب أخذ العينات وإعادة التشغيل متوافق: قيّم الفعل المولّد انطلاقاً من الحالة السابقة، ومن بعد استهلكو مرة وحدة.
  • فرّق بين التدرجات الدقيقة والتقريبات: فصل الحالة التكرارية، أو كاشات الديكودر، أو ذاكرة الإنكودر كيبدّل مسار التدرج.
  • قس الحوسبة بشكل منفصل: تساوي ميزانيات المعلمات أو البيانات ما كيثبتش تساوي FLOPs، خصوصاً حيث طبقات الديكودر كتزيد انتباهاً متقاطعاً مع ذاكرة الإنكودر.
  • تحقّق من السلوك العددي: دلالات التنفيذ المشتركة على المستوى العالي ما كتحيدش تلقائياً الاختلافات بين نوى ملء السياق ونوى فك الترميز.

الخلاصة

كيجمع Recurrent Looped Transformer بين ذاكرة عالمية سببية ديال الإنكودر، وانتباه محلي بنافذة منزلقة فالديكودر، وتغذية راجعة تكرارية من توكن لتوكن. القاعدة الأساسية فالتنفيذ ديالو هي الاتساق: كل توكن ديال البرومبت والجواب خاصو يشارك فنفس انتقال الحالة الكاملة عبر التدريب القبلي، والضبط الدقيق، والتوليد، وإعادة التشغيل حسب السياسة الحالية.

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