أنواع المحسّنات في التعلم العميق التي يجب أن يعرفها كل مهندس ذكاء اصطناعي

نشرت: 2020-12-01

جدول المحتويات

مقدمة

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

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

تعلم دورات AI ML من أفضل الجامعات في العالم. احصل على درجة الماجستير أو برنامج PGP التنفيذي أو برامج الشهادات المتقدمة لتسريع مسار حياتك المهنية.

هبوط متدرج (GD)

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

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

الانحدار العشوائي

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

لكن ميزة هذه التقنية هي انخفاض متطلبات الذاكرة مقارنةً بالسابقة لأنه لا توجد الآن حاجة لتخزين القيم السابقة لوظائف الخسارة.

نزول متدرج دفعة صغيرة

البديل الآخر لنهج GD هذا هو الدُفعات الصغيرة ، حيث يتم تحديث معلمات النموذج بأحجام دفعات صغيرة. هذا يعني أنه بعد كل n من الدُفعات ، سيتم تحديث معلمات النموذج وهذا يضمن أن النموذج يتقدم نحو الحدود الدنيا بخطوات أقل دون الخروج عن مساره كثيرًا. ينتج عن هذا استخدام أقل للذاكرة وتباين منخفض في النموذج.

قراءة: أفكار مشروع التعلم الآلي

نزول متدرج قائم على الزخم

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

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

يعتمد هذا العنصر على القيمة السابقة ، ومعدل التعلم ، ومعلمة جديدة تسمى جاما ، والتي تتحكم في تحديث السجل هذا. ستكون قاعدة التحديث شيئًا مثل w = w - v ، حيث v هو عنصر السجل.

تدرج نيستيروف المتسارع (NAG)

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

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

اقرأ أيضًا: تقنيات التعلم العميق التي يجب أن تعرفها

Adagrad

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

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

الحل لذلك هو أن يكون لديك معدل تعلم قابل للتكيف يمكن أن يتغير وفقًا للإدخال المقدم. يحاول مُحسِّن Adagrad تقديم هذه القدرة على التكيف عن طريق تحطيم معدل التعلم بما يتناسب مع التاريخ المحدث للتدرجات.

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

RMSProp

إنه تحسين لمحسن Adagrad. يهدف هذا إلى تقليل عدوانية معدل التعلم من خلال أخذ متوسط ​​أسي للتدرجات بدلاً من المجموع التراكمي للتدرجات المربعة. يظل معدل التعلم التكيفي كما هو حيث أن المتوسط ​​الأسي الآن سيعاقب معدل التعلم الأكبر في الظروف عندما يكون هناك عدد أقل من التحديثات ومعدل أقل في عدد أكبر من التحديثات.

آدم

يجمع تقدير اللحظة التكيفية بين قوة RMSProp (دعامة الجذر التربيعي) و GD القائم على الزخم. في محسنات آدم ، تجعل قوة الزخم GD للاحتفاظ بتاريخ التحديثات ومعدل التعلم التكيفي المقدم من RMSProp محسن آدم طريقة فعالة. يقدم أيضًا اثنين من المعلمات الفائقة الجديدة beta1 و beta2 والتي عادة ما يتم الاحتفاظ بها حول 0.9 و 0.99 ولكن يمكنك تغييرها وفقًا لحالة الاستخدام الخاصة بك.

يجب أن تقرأ: التنظيم في التعلم العميق

خاتمة

في هذه المقالة ، نظرنا في 8 محسِنات للتعلم العميق بترتيب سهولة استخدامها وكيف يتم التغلب على قيود أحد المحسّنين بواسطة المحسّن التالي ، وما إلى ذلك. هناك المزيد من التعديلات على أحد المُحسِنين أو الآخرين المذكورين هنا ، ولكن هذه هي التعديلات الأساسية التي يجب مراعاتها قبل البحث عن حلول معقدة.

يعد اختيار فائز من بين هؤلاء أمرًا شخصيًا للغاية بالنسبة لحالة الاستخدام والمشكلة التي تتعامل معها ، ولكن يمكن للمرء بالتأكيد تصنيف Adam Optimizer في القمة نظرًا لدمجها مع مفهوم الزخم الذي غيّر كيفية تحديث معلمات النموذج وتكييفها مع التغيير. معدل التعلم لسيناريوهات مختلفة تمكن من معالجة فعالة لأي نوع من المدخلات.

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

إذا كنت مهتمًا بإتقان التعلم الآلي والذكاء الاصطناعي ، فقم بتعزيز حياتك المهنية من خلال ماجستير العلوم في التعلم الآلي والذكاء الاصطناعي مع IIIT-B وجامعة Liverpool John Moores.

كيف يعمل المحسنون التعلم العميق؟

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

لماذا يصعب تحسين خوارزميات التعلم العميق؟

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

ما هي المحسِّنون المختلفون في التعلم العميق؟

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