تقطير النماذج وتقليمها تقنيتان مهمتان لضغط نماذج الشبكات العصبية، ويمكنهما تقليل عدد معاملات النموذج وتعقيده الحسابي بفعالية، مما يحسن كفاءة تشغيله وأداءه. وفيما يلي شرح مفصل لهاتين التقنيتين.
تقطير النماذج
تقطير النماذج تقنية تُدرَّب فيها نماذج أصغر على محاكاة تنبؤات نموذج كبير. في هذه العملية، يُسمّى النموذج الكبير «النموذج المعلّم»، ويُسمّى النموذج الصغير «النموذج الطالب». عادةً ما يمتلك النموذج المعلّم معاملات أكثر ودرجة أعلى من التعقيد، ولذلك يستطيع مواءمة بيانات التدريب والاختبار بصورة أفضل. وفي تقطير النماذج، يُدرَّب النموذج الطالب على محاكاة السلوك التنبؤي للنموذج المعلّم، ليحقق أداءً مشابهًا بحجم نموذج أصغر.
وبالتحديد، يتحقق تقطير النماذج عبر الخطوات التالية:
1.تدريب نموذج المعلّم: استخدام أساليب التدريب المعتادة، مثل الانتشار العكسي والانحدار المتدرج العشوائي، لتدريب نموذج شبكة عصبية عميقة كبير بحيث يحقق أداءً جيدًا على بيانات التدريب.
2.توليد التسميات اللينة: يُستخدم نموذج المعلم للتنبؤ ببيانات التدريب، وتُتخذ مخرجاته تسميات لينة. تطور مفهوم التسميات اللينة من التسميات الصلبة التقليدية، أي الترميز أحادي الواحد، وهو يوفر معلومات أكثر تدرجًا، ويصف العلاقات بين الفئات المختلفة على نحو أفضل.
3.تدريب نموذج الطالب: استخدام التسميات الناعمة بوصفها دالة الهدف، لتدريب نموذج شبكة عصبية عميقة صغير بحيث يحقق أداءً جيدًا على بيانات التدريب. تكون مدخلات نموذج الطالب ومخرجاته حينها مماثلة لمدخلات نموذج المعلم ومخرجاته، لكن معلمات النموذج وبنيته أبسط وأقل حجمًا.
تتمثل ميزة تقطير النماذج في تمكين النماذج الصغيرة من الحفاظ على الأداء، مع خفض التعقيد الحسابي ومتطلبات مساحة التخزين.إضافةً إلى ذلك، يتيح استخدام التسميات اللينة معلومات أكثر استمرارية، مما يساعد النموذج الطالب على تعلّم العلاقات بين الفئات المختلفة بصورة أفضل. وقد استُخدم تقطير النماذج على نطاق واسع في مجالات تطبيقية متنوعة، مثل معالجة اللغة الطبيعية والرؤية الحاسوبية والتعرف على الكلام.
تقليم النموذج
تقليم النماذج تقنية لضغط نماذج الشبكات العصبية عبر إزالة العصبونات والوصلات غير الضرورية. تحتوي نماذج الشبكات العصبية عادةً على عدد كبير من المعلمات والوصلات الزائدة التي قد لا تؤثر كثيرًا في أداء النموذج، لكنها تزيد بدرجة كبيرة من تعقيده الحسابي ومتطلبات مساحة تخزينه. ويمكن لتقليم النماذج تقليل حجم النموذج وتعقيده الحسابي بإزالة هذه المعلمات والوصلات غير المفيدة، مع الحفاظ على أدائه.
الخطوات التفصيلية لتقليم النموذج هي كما يلي:
1.تدريب النموذج الأصلي: استخدام أساليب التدريب المعتادة، مثل الانتشار العكسي والانحدار المتدرج العشوائي، لتدريب نموذج شبكة عصبية عميقة كبير بحيث يحقق أداءً جيدًا على بيانات التدريب.
2.تقييم أهمية العصبونات:استخدام بعض الطرق (مثل تنظيم L1، ومصفوفة هيس، وتوسع تايلور، وغيرها) لتقييم أهمية كل عصبون، أي مدى مساهمته في النتيجة النهائية للمخرجات. ويمكن اعتبار العصبونات منخفضة الأهمية عصبونات غير مفيدة.
3.إزالة العصبونات والوصلات غير المفيدة: تُزال العصبونات والوصلات غير المفيدة بناءً على أهمية العصبونات. ويمكن تحقيق ذلك بضبط أوزانها على الصفر أو حذف العصبونات والوصلات المعنية.
تتمثل ميزة تقليم النماذج في قدرته على تقليل حجم النموذج وتعقيده الحسابي بفعالية، مما يحسّن أداءه.إضافةً إلى ذلك، يمكن لتقليم النماذج أن يساعد في تقليل فرط التكيّف وتحسين قدرة النموذج على التعميم. وقد استُخدم تقليم النماذج على نطاق واسع في مجالات تطبيقية متنوعة، مثل معالجة اللغة الطبيعية والرؤية الحاسوبية والتعرف على الكلام.
أخيرًا، مع أن تقطير النماذج وتقليم النماذج كليهما من تقنيات ضغط نماذج الشبكات العصبية، فإنهما يختلفان قليلًا في أساليب التنفيذ والأهداف. يركز تقطير النماذج أكثر على استخدام السلوك التنبؤي لنموذج المعلّم لتدريب نموذج الطالب، بينما يركز تقليم النماذج أكثر على إزالة المعاملات والروابط غير المفيدة لضغط النموذج.