التعلم العميق2015متوسط12 دقيقة قراءة

شبكات الطريق السريع

Highway Networks

Srivastava, R. K. · Greff, K. · Schmidhuber, J. — ICML Deep Learning Workshop

المشكلة

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

الإسهام

شبكات الطريق السريع: بنية مستوحاة من آلية البوابات في LSTM. الفكرة أن كل طبقة تحصل على بوابة تحويل مُتعلَّمة T وبوابة حمل C = 1−T. الخرج يصبح y = H(x)·T(x) + x·(1−T(x))، وهذا يعني أن كل طبقة تستطيع الانتقال بسلاسة بين تحويل المدخل بالكامل وتمريره كما هو. بتهيئة بسيطة للانحياز بقيمة سالبة، يمكن تدريب شبكات بمئات الطبقات مباشرةً بنزول التدرُّج العشوائي — بلا تدريب على مراحل، وبلا شبكة معلّمة، وبلا خطط تهيئة خاصة لدالة التحويل H.

الأثر

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

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

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

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

المشكلة: العمق يُفترض أن يُفيد، لكنه يضرّ

بحلول عام 2015، كانت النظرية حاسمة: يكتسب قوته من العمق، فالشبكات الأعمق تستطيع تمثيل دوال أعقد بشكل أُسِّي مقارنة بالشبكات الضحلة. شبكة من عشرين تستطيع التعبير عن فئات من الدوال تحتاج شبكة من طبقتين بعرض هائل لتمثيلها. وفعلاً، دقة التصنيف على ImageNet قفزت من 84% إلى 95% بمجرد زيادة العمق.

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

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

  • صعوبة . حتى مع تهيئة الأوزان التي تحافظ على (مثل Xavier وHe)، الشبكات العميقة التقليدية تنتهي عند حلول رديئة. سطح دالة يصبح مليئاً بـ والنهايات الصغرى السيئة.

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

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

الإلهام: ماذا لو استعرنا فكرة البوابات من LSTM؟

الإلهام جاء من مكان غير متوقع: . شبكة كانت قد حلّت مشكلة تلاشي التدرُّجات — لكن عبر الخطوات الزمنية، لا عبر الطبقات. خلية LSTM تستخدم بوابات لتُقرّر ما تحتفظ به وما تنساه وما تُخرجه. والآلية المحورية هي : خط معلومات مفتوح يمتد عبر الزمن، تحميه بوابات تتحكّم فيما يدخل وما يخرج. فكّر فيها كأنبوب رئيسي تمرّ عبره المعلومات، والبوابات صمّامات تفتح وتُغلق.

السؤال الذي طرحه سريفاستافا وغريف وشميدهوبر كان بسيطاً وعميقاً في آن: ماذا لو طبّقنا المبدأ ذاته على العمق بدل الزمن؟ بدل أن نتحكم بتدفق المعلومات بين خطوة زمنية وأخرى، نتحكم به بين طبقة وأخرى. نعطي كل طبقة القدرة على أن تقول: «سأُحوّل هذا المدخل» أو «سأتركه يمرّ كما هو» — أو أي مزيج بين الخيارين.

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

افتح في المختبر
شاهد كيف تنتقل آلية البوابات من البُعد الزمني في LSTM إلى البُعد العمقي في شبكة الطريق السريع.
تستيقظ التجربة عند وصولك…

الآلية: حوِّل، بوِّب، واحمل

في التقليدية، كل طبقة تأخذ مدخلاً x وتُنتج خرجاً y = H(x)، حيث H عادةً تحويل خطي يليه لاخطية. المدخل يُحوَّل بالكامل دائماً — لا مجال لتجاوز الطبقة.

طبقة الطريق السريع تُضيف عنصرين جديدين:

  • T(x) — دالة تُعطي قيمة بين 0 و1 لكل بُعد، وتُحدّد أي نسبة من الإشارة المُحوَّلة تمرّ.

  • C(x) — قيمتها 1 − T(x) للتبسيط — وتُحدّد أي نسبة من المدخل الأصلي تُنقل كما هي دون تعديل.

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

y=H(x,WH)T(x,WT)+x(1T(x,WT))y = H(x, W_H) \cdot T(x, W_T) + x \cdot (1 - T(x, W_T))
معادلة طبقة الطريق السريع — جوهر البنيةH(x) هي عملية التحويل العادية (تحويل خطي + تنشيط). T(x) = σ(W_T·x + b_T) هي بوابة التحويل (دالة سيغمويد، قيمتها بين 0 و1). حين T→1 تُحوِّل الطبقة المدخل بالكامل. حين T→0 يمرّ المدخل كما هو. الشبكة تتعلّم قيمة T المناسبة لكل مدخل.
افتح في المختبر
اسحب مؤشر البوابة لترى كيف تمزج طبقة الطريق السريع بين التحويل والحمل. لاحظ تحديث معادلة الخرج لحظياً.
تستيقظ التجربة عند وصولك…

لماذا تنجح هذه الفكرة: طرق مفتوحة للتدرُّجات

السرّ يكمن في التدرُّجات. في الطبقة التقليدية، مصفوفة اليعقوبي هي dy/dx = H'(x) — أي مشتقة عملية التحويل. حين ترصّ خمسين طبقة فوق بعضها، يصبح التدرُّج الكلي هو حاصل ضرب خمسين مصفوفة يعقوبي. وإذا كانت كل واحدة أصغر من الواحد بقليل، يتلاشى الحاصل بسرعة أُسِّية.

في طبقة الطريق السريع، الوضع مختلف تماماً لأن مصفوفة اليعقوبي تصبح مزيجاً من مسارين:

حين T → 0 (وضع الحمل)، تصبح dy/dx = I — أي مصفوفة الهوية. التدرُّج يمرّ دون أي تغيير، كأن الطبقة غير موجودة أصلاً. هذا هو «الطريق السريع» الذي تسلكه التدرُّجات.

حين T → 1 (وضع التحويل)، تصبح dy/dx = H'(x) — تماماً كالطبقة التقليدية. التدرُّج يتدفق عبر عملية التحويل.

وفي الحالات الوسطى، يكون التدرُّج مزيجاً سلساً بين المسارين. النقطة المحورية هي أنه حتى لو كانت بعض الطبقات تُحوِّل بقوة (T قريبة من 1)، فإن مسارات الحمل في طبقات أخرى تضمن أن التدرُّجات تصل دائماً إلى الطبقات الأولى. يكفي أن تكون حارة واحدة مفتوحة في الطريق السريع لتبقى الشبكة بأكملها قابلة للتدريب.

yx=H(x)T(x)+I(1T(x))\frac{\partial y}{\partial x} = H'(x) \cdot T(x) + I \cdot (1 - T(x))
يعقوبي طبقة الطريق السريع — مساران للتدرُّجالتدرُّج يحتوي دائماً على مركّبة الهوية (1−T) التي تمنع التلاشي. حتى لو كانت T كبيرة في بعض الطبقات، توفّر طبقات أخرى ذات T صغيرة مسارات واضحة للتدرُّج نحو المدخل.

ماذا تتعلّم البوابات: تحويل انتقائي ذكي

بعد انتهاء التدريب، يكشف نشاط البوابات عن نمط لافت للغاية. في تجارب على MNIST بخمسين طبقة وCIFAR-100 بخمسين طبقة أيضاً، لاحظ الباحثون أربع ظواهر مهمة:

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

  • التحويل الحقيقي يتركّز في الطبقات الأولى. الجزء الأكبر من الحسابات الفعلية يحدث في أول عشر طبقات تقريباً مع MNIST، وأول ثلاثين طبقة مع CIFAR-100. بعد ذلك، تتولّى مسارات الحمل المهمة ويستقر .

  • البوابات انتقائية بدرجة عالية. لمدخل واحد، نشاط البوابات عبر الكتل يكون متناثراً جداً — عدد محدود فقط من الكتل ينشط في كل طبقة. ومدخلات مختلفة تُفعّل كتلاً مختلفة. الشبكة تعلّمت فعلياً توجيه المعلومات بحسب المدخل.

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

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

الطريق السريع مقابل ResNet: مسارات مُتعلَّمة أم ثابتة؟

شبكة ResNet ظهرت بعد شبكات الطريق السريع بأشهر قليلة، واختارت نهجاً أبسط بكثير. بدل بوابة مُتعلَّمة، تستخدم ResNet مساراً مختصراً ثابتاً لا يتغيّر:

y = H(x) + x

لا بوابة، ولا سيغمويد، ولا معاملات إضافية. الطبقة تجمع دائماً ناتج التحويل مع المدخل الأصلي. وهذه البساطة أثبتت فعالية مدهشة — فازت ResNet بمسابقة ImageNet عام 2015 وصارت العمود الفقري لأنظمة الحديثة.

الفرق الجوهري بين البنيتين:

  • الطريق السريع: y = H(x)·T(x) + x·(1−T(x)) — البوابة تستطيع كبت التحويل أو مسار الهوية. مرونة أعلى لكن بمعاملات أكثر.

  • ResNet: y = H(x) + x — تجمع المسارين دائماً. أبسط، ومعاملات أقل، وأسهل في التوسيع.

شبكات الطريق السريع هي الحالة العامة فعلاً: لو ثبّتت T = 0.5 في كل مكان لحصلت على شيء قريب من ResNet. لكن قيد ResNet الذي يفرض مساهمة جمعية من كل طبقة تبيّن أنه يعمل كانحياز استقرائي قوي. لماذا؟ لأنه يُجبر كل طبقة على تعلّم البواقي فقط — أي الفرق بين الخرج المطلوب والمدخل — وتعلُّم فرق صغير أسهل بكثير من تعلُّم التحويل الكامل.

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

التجارب: عمق بلا تدهور

أجرى الباحثون مقارنة منضبطة على مجموعة MNIST: شبكات تقليدية وشبكات طريق سريع بالبنية ذاتها عند أعماق 10 و20 و50 و100 طبقة. كل طبقة طريق سريع ضمّت 50 وحدة، وكل طبقة تقليدية ضمّت 71 وحدة لمطابقة عدد المعاملات. وضُبطت بالبحث العشوائي لكلتا البنيتين حتى تكون المقارنة عادلة.

النتائج كانت حاسمة:

  • عند 10 طبقات، أدّت البنيتان بشكل جيد ولم يظهر فرق واضح.

  • عند 20 طبقة، بدأت الشبكات التقليدية بالتراجع. شبكات الطريق السريع تقاربت أسرع.

  • عند 50 طبقة، الشبكات التقليدية بالكاد تعلّمت شيئاً. شبكات الطريق السريع حافظت على أداء مكافئ لعشر طبقات.

  • عند 100 طبقة، فشلت الشبكات التقليدية فشلاً شبه تام. في المقابل، شبكات الطريق السريع حققت أفضل نتائجها — بخطأ تدريب أقل بمرتبة حجمية كاملة من الشبكة التقليدية ذات العشر طبقات.

وعلى CIFAR-10، حققت شبكات الطريق السريع ذات 19 طبقة أداءً يُضاهي أو يتفوق على شبكات Fitnet التي احتاجت مُدرَّبة مسبقاً — وكل ذلك بـ العادي فقط. بل إن شبكة طريق سريع بتسعمئة طبقة على CIFAR-100 لم تُظهر أي علامات على صعوبة في الأمثَلة.

بناء شبكات الطريق السريع: نصائح عملية

هناك عدة نقاط عملية تُسهّل بناء شبكات الطريق السريع وتشغيلها:

  • مطابقة الأبعاد. معادلة الطريق السريع y = H(x)·T + x·(1−T) تشترط أن يكون لـ x و y الحجم نفسه، لأنك تجمعهما مباشرة. إذا احتجت تغيير ، ضع طبقة تقليدية عادية أولاً لتعديل الحجم، ثم تابع بطبقات الطريق السريع.

  • النسخة الالتفافية. المبدأ نفسه ينطبق على : دالتا H و T تتشاركان المحلية ومشاركة . والحشو بالأصفار يُبقي بالحجم ذاته.

  • تهيئة البوابة. اضبط b_T على −1 أو −3. هذا يُميل الشبكة نحو وضع الحمل في البداية، فتتدفق التدرُّجات بحرية بينما أوزان التحويل لا تزال عشوائية. التدريب يفتح البوابات تلقائياً أينما دعت الحاجة.

  • حرية اختيار دالة التنشيط. بما أن وضع الحمل يوفّر تدفق التدرُّجات بغض النظر عن خصائص H، تعمل شبكات الطريق السريع مع أو أو أي دالة تنشيط أخرى — دون الحاجة لخطة تهيئة خاصة بـ H.

طبقة الطريق السريع في PyTorchpython

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

import torch import torch.nn as nn
class HighwayLayer(nn.Module):
    """طبقة طريق سريع واحدة ببوابة مُتعلَّمة."""
    def __init__(self, size, bias=-1.0):
        super().__init__()
        self.H = nn.Linear(size, size)       # التحويل
        self.T = nn.Linear(size, size)       # بوابة التحويل
        self.T.bias.data.fill_(bias)         # انحياز سالب → البداية في وضع الحمل

    def forward(self, x):
        h = torch.relu(self.H(x))            # التحويل العادي
        t = torch.sigmoid(self.T(x))         # البوابة: 0=حمل، 1=تحويل
        return h * t + x * (1 - t)           # مزج التحويل + الحمل

الإرث: الطريق نحو التعلّم بالبواقي

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

ResNet سلكت الدرب الأبسط — جمع ثابت مع الهوية بدل بوابة مُتعلَّمة — وأصبحت البنية المعيارية. لكن سلسلة النسب الفكري واضحة: شبكات الطريق السريع ← ResNet ← DenseNet ← بتيارات البواقي. كل شبكة عميقة حديثة تحمل هذا الحمض النووي في تصميمها.

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

  1. 1997

    LSTM — بوابات عبر الزمن

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

  2. 2015

    شبكات الطريق السريع — بوابات عبر الطبقات

    نقل سريفاستافا وغريف وشميدهوبر فكرة البوابات من LSTM إلى عمق الشبكات الأمامية. لأول مرة، نجح تدريب شبكات بأكثر من مئة طبقة بنزول التدرُّج العشوائي. نُشرت في ورشة التعلُّم العميق ضمن مؤتمر ICML 2015.

  3. 2015

    ResNet — مسارات هوية ثابتة

    بسّط He وآخرون الفكرة إلى y = H(x) + x — بلا بوابة، مجرد جمع. 152 طبقة، وبطلة مسابقة ImageNet. التصميم الأبسط توسّع بشكل أفضل وسيطر على الساحة.

  4. 2017

    شبكات الطريق السريع التكرارية

    وسّع زيلي وآخرون اتصالات الطريق السريع إلى الشبكات التكرارية، وبذلك ربطوا بين فكرة البوابات العمقية الأصلية ونمذجة التسلسلات.

  5. 2017

    المُحوِّل — تيارات بواقي في كل مكان

    بنى فاسواني وآخرون المُحوِّل باتصالات تجاوزية حول كل طبقة فرعية. تيار البواقي سليل مباشر لكل من شبكة الطريق السريع وResNet، وهو ما أتاح تدريب طبقات انتباه بأي عمق.

المرجعSrivastava, Greff, Schmidhuber. Highway Networks. ICML Deep Learning Workshop, 2015.

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