Encoder–decoder architecture — المُشفِّر-فَكُّ التشفير

From Systems analysis wiki
Jump to navigation Jump to search

نماذج المُشفِّر-فَكُّ التشفير (بالإنجليزية: Encoder-Decoder Models) هي فئة من بنى الشبكات العصبونية المصممة لحل مسائل التحويل من تسلسل إلى تسلسل (sequence-to-sequence, seq2seq). تتكون هذه البنية من مكونين رئيسيين:

  • المُشفِّر (Encoder): يعالج التسلسل المدخل ويضغطه في تمثيل رقمي مضغوط (متجه السياق أو تسلسل من الحالات المخفية).
  • فَاكُّ التشفير (Decoder): يأخذ هذا التمثيل ويُولِّد بناءً عليه التسلسل المخرج.

تُعد هذه البنية أساسًا للعديد من مهام معالجة اللغة الطبيعية (NLP) والرؤية الحاسوبية، مثل الترجمة الآلية، وتلخيص النصوص، وإنشاء التعليقات على الصور.

المفهوم

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

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

تطور البنية

النماذج المبكرة القائمة على RNN/LSTM

في البداية، تم تنفيذ بنية المُشفِّر-فَكُّ التشفير باستخدام الشبكات العصبونية المتكررة (RNN) أو نسختها المحسنة LSTM.

  • المُشفِّر: كان مُشفِّر RNN يعالج التسلسل المدخل رمزًا تلو الآخر، ويُنتج عند المخرج متجه سياق واحدًا — وهو الحالة المخفية بعد معالجة الرمز الأخير، والذي كان من المفترض أن يحتوي على معلومات حول التسلسل بأكمله.
  • فَاكُّ التشفير: كان فَكُّ تشفير RNN يبدأ عمله من متجه السياق هذا ويُولِّد التسلسل المخرج بشكل ذاتي التراجع (autoregressively).

كان العيب الرئيسي لهذا النهج هو مشكلة "عنق الزجاجة" (bottleneck): حيث كان يجب ضغط كل المعلومات من التسلسل المدخل في متجه واحد ذي طول ثابت، مما يؤدي إلى فقدان المعلومات، خاصة في التسلسلات الطويلة.

إدخال آلية الانتباه

حدث التقدم الكبير مع إدخال آلية الانتباه (attention mechanism) (Bahdanau et al., 2014).

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

بنية المُحوِّل (Transformer)

في عام 2017، قُدِّمت في ورقة بحثية بعنوان "Attention Is All You Need" بنية المُحوِّل (Transformer)، التي تخلت تمامًا عن التكرارية لصالح آلية الانتباه.

  • مُشفِّر المُحوِّل: يتكون من مكدس من الطبقات، تستخدم كل منها الانتباه الذاتي (self-attention) لإنشاء تمثيلات سياقية لكل رمز مدخل.
  • فَاكُّ تشفير المُحوِّل: يتكون من مكدس من الطبقات، تحتوي كل منها على نوعين من آليات الانتباه:
    • الانتباه الذاتي المقنَّع (Masked self-attention): لمعالجة الجزء الذي تم توليده بالفعل من التسلسل المخرج.
    • الانتباه المتقاطع (Cross-Attention): لـ "الانتباه" إلى التمثيلات المخرجة من المُشفِّر.

أصبحت هذه البنية هي المعيار لمهام seq2seq بفضل أدائها العالي وقابليتها لموازاة العمليات الحسابية.

التطبيقات

تُعد بنية المُشفِّر-فَكُّ التشفير معيارًا لمجموعة واسعة من المهام:

  • الترجمة الآلية: تحويل جملة من لغة إلى أخرى.
  • التلخيص التلقائي للنصوص: إنشاء ملخص قصير لمستند طويل.
  • الأنظمة الحوارية: توليد رد على استفسار المستخدم.
  • التعليق على الصور (Image Captioning): يقوم المُشفِّر (غالبًا ما يكون قائمًا على شبكة عصبونية تلافيفية) بمعالجة الصورة، بينما يقوم فَكُّ التشفير (غالبًا RNN أو مُحوِّل) بتوليد وصف نصي لها.
  • التعرف على الكلام: تحويل الإشارة الصوتية إلى نص مكتوب.

النماذج الرئيسية

  • المُحوِّل الأصلي (Vaswani et al., 2017): النموذج الذي قدَّم هذه البنية.
  • BART (Bidirectional and Auto-Regressive Transformers): نموذج من فيسبوك يتم تدريبه مسبقًا على مهمة استعادة النص "التالف". المُشفِّر فيه ثنائي الاتجاه (كما في BERT)، وفَاكُّ التشفير ذاتي التراجع (كما في GPT).
  • T5 (Text-to-Text Transfer Transformer): نموذج من جوجل يوحد جميع مهام معالجة اللغة الطبيعية من خلال تقديمها كمشكلة تحويل نص إلى نص. أظهر T5 نتائج متميزة على العديد من مؤشرات الأداء (benchmarks).

مقارنة مع البنى الأخرى

مقارنة بين البنى الرئيسية القائمة على المُحوِّل
البنية المهمة الرئيسية المكونات النماذج النموذجية
المُشفِّر-فَكُّ التشفير تحويل تسلسل إلى تسلسل مُشفِّر + فَكُّ تشفير T5, BART, المُحوِّل الأصلي
المُشفِّر فقط فهم النص المُشفِّر فقط BERT, RoBERTa
فَاكُّ التشفير فقط توليد النص فَكُّ التشفير فقط

المراجع

  • Bahdanau, D. et al. (2014). Neural Machine Translation by Jointly Learning to Align and Translate. arXiv:1409.0473.
  • Sutskever, I. et al. (2014). Sequence to Sequence Learning with Neural Networks. arXiv:1409.3215.
  • Luong, M.-T. et al. (2015). Effective Approaches to Attention-based Neural Machine Translation. arXiv:1508.04025.
  • Wu, Y. et al. (206). Google’s Neural Machine Translation System: Bridging the Gap between Human and Machine Translation. arXiv:1609.08144.
  • Vaswani, A. et al. (2017). Attention Is All You Need. arXiv:1706.03762.
  • Britz, D. et al. (2017). Massive Exploration of Neural Machine Translation Architectures. arXiv:1703.03906.
  • Lewis, M. et al. (2020). BART: Denoising Sequence-to-Sequence Pre-training for Natural Language Generation. arXiv:1910.13461.
  • Raffel, C. et al. (2020). Exploring the Limits of Transfer Learning with a Unified Text-to-Text Transformer. arXiv:1910.10683.
  • Dong, L. et al. (2019). Unified Language Model Pre-training for Natural Language Understanding and Generation. arXiv:1905.03197.
  • Zhang, J. et al. (2020). PEGASUS: Pre-training with Extracted Gap-Sentences for Abstractive Summarization. arXiv:1912.08777.