تعلم الآلةمترجم

خمس وسائل لمنع فرط التخصيص في الشبكات العصبية

الكاتب:Abhinav Sagar  ترجمة: نضال إمام   مراجعة: هيا الداوود

[ رابط المقال الأصلي هنا ]

في هذه المقالة، سأقدم خمس تقنيات لمنع فرط التخصيص (overfitting) أثناء تدريب الشبكات العصبية (neural networks).

لقد عملت في التعلم العميق (deep learning) لأكثر من عام حتى الآن. و خلال هذه الفترة، استخدمت الكثير من الشبكات العصبية مثل الشبكة العصبية التلافيفية (convolutional neural networks)، الشبكة العصبية المتكررة (recurrent neural networks)، أجهزة التشفير التلقائي، وما إلى ذلك. واحدة من أكثر المشاكل الشائعة التي واجهتها أثناء تدريب الشبكات العصبية العميقة هي فرط التخصيص.

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

في هذه المقالة، سأقدم خمس وسائل لمنع فرط التخصيص أثناء تدريب الشبكات العصبية.

1- تبسيط النموذج (Simplifying The Model)

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

2- التوقف المبكر (Early Stopping)

التوقف المبكر هو شكل من أشكال الضبط (regularization) أثناء تدريب أي نموذج باستخدام طريقة تكرارية، مثل النزول الاشتقاقي (gradient descent). نظرًا لأن جميع الشبكات العصبية تتعلم حصريًا باستخدام النزول الاشتقاقي، فإن التوقف المبكر هو تقنية قابلة للتطبيق على جميع المشكلات. تقوم هذه الطريقة بتحديث النموذج لجعله يناسب بيانات التدريب بشكل أفضل مع كل تكرار. إلى حد ما، هذا يحسن أداء النموذج على البيانات الموجودة في مجموعة الاختبار. ولكن، تحسين تناسب النموذج لبيانات التدريب قد يؤدي إلى زيادة اخطأ التعميم. توفر قواعد التوقف المبكرة إرشادات حول عدد التكرارات التي يمكن تشغيلها قبل أن يبدأ النموذج في الإفراط.

التوقف المبكر

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

3- استخدام زيادة البيانات (Data Augmentation)

في مجال الشبكات العصبية، زيادة البيانات ببساطة هو زيادة حجم البيانات مثل زيادة عدد الصور الموجودة في مجموعة البيانات. بعض أساليب زيادة الصورة (image augmentation) الشائعة هي التقليب والتحريك والدوران والتحجيم وتغيير السطوع وإضافة الضوضاء إلى آخره. للحصول على مرجع أكثر اكتمالاً الرجاء الإطلاع على هذه الالبومات و imgaug.

زيادة البيانات

 

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

4- إستخدام الضبط (Regularization)

الضبط هو تقنية لتقليل التعقيدات في النموذج. وذلك يمكن أن يحدث من خلال إضافة عامل ضبط (penalty trem) على دالة الخسارة (Loss function). تُعرف التقنيات الأكثر شيوعًا باسم ضوابط L1 و L2:

  • يهدف ضبط L1 إلى تقليل القيمة المطلقة للأوزان. هذا يظهر رياضياً في الصيغة أدناه.

ضابط L1

  • يهدف ضبط L2 إلى تقليل الحجم التربيعي للأوزان. هذا يظهر رياضياً في الصيغة أدناه.

ضابط L2

الجدول أدناه يقارن بين تقنيات الضبط المشهورة.

الضابط L1 مقارنة بـ L2

إذن ما هي التقنية الأفضل لتجنب فرط التخصيص؟ يعتمد  ذلك على ما إذا كانت البيانات معقدة للغاية بحيث لا يمكن نمذجتها بدقة، فإن L2 يعد الإختيارًا الأفضل لأنه قادر على تعلم الأنماط المتأصلة الموجودة في البيانات. في حين أن L1 أفضل إذا كانت البيانات بسيطة بما يكفي لنمذجتها بدقة. بالنسبة لمعظم مشكلات رؤية الحاسب (computer vision) التي واجهتها، فإن الضبط L2 دائمًا ما يعطي نتائج أفضل. ومع ذلك، تتمتع L1 بميزة إضافية تتمثل في كونها قوية بالنسبة إلى القيم المتطرفة (outliers). لذا فإن الاختيار الصحيح للضبط يعتمد على المشكلة التي نحاول حلها.

5- استخدام الإسقاط (Dropout)

الإسقاط هو تقنية ضبط تمنع الشبكات العصبية من الإفراط في التخصيص. طرق الضبط مثل L1 و L2 تقلل من فرط التخصيص عن طريق تعديل دالة التكلفة (cost function). الإسقاط من ناحية أخرى، يقوم بتعديل الشبكة نفسها. يتم الإسقاط بشكل عشوائي للخلايا العصبية من الشبكة العصبية أثناء التدريب في كل تكرار. عندما نسقط مجموعات مختلفة من الخلايا العصبية، فهذا يعادل تدريب شبكة العصبية مختلفة. سوف يحدث فرط التخصيص في الشبكات المختلفة بطرق مختلفة، لذلك سيكون تأثير الإسقاط على الشبكة هو تقليل فرط التخصيص.

استخدام الإسقاط

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

خاتمة

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

اظهر المزيد

نضال إمام

طالب دكتوراة بجامعة يورك بالمملكة المتحدة. مهتم بالأمن السيبراني، امن الشبكات، امن تعليم الآلة و اصتياد الرسائل الخبيثة في مواقع التواصل الإجتماعي

اترك تعليقاً

لن يتم نشر عنوان بريدك الإلكتروني. الحقول الإلزامية مشار إليها بـ *

زر الذهاب إلى الأعلى