مساعدة في حماية الحاجز المرجاني العظيم مع TensorFlow على Kaggle تاريخ التحدي

التحسين التعاوني

يتم صيانتها بواسطة Arm ML Tooling

يقدم هذا المستند نظرة عامة على واجهات برمجة التطبيقات التجريبية للجمع بين التقنيات المختلفة لتحسين نماذج التعلم الآلي للنشر.

ملخص

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

تتمثل فكرة التحسينات التعاونية في البناء على التقنيات الفردية من خلال تطبيقها واحدة تلو الأخرى لتحقيق تأثير التحسين المتراكم. مجموعات مختلفة من التحسينات التالية ممكنة:

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

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

collaborative optimization

تم حذف مسار النشر المباشر للتكمية فقط (ما بعد التدريب أو QAT) في الشكل أعلاه.

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

يوضح الشكل أدناه مخططات الكثافة لنواة وزن العينة التي تمر عبر خط أنابيب التحسين التعاوني.

collaborative optimization density plot

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

نتائج

فيما يلي بعض نتائج الدقة والضغط التي حصلنا عليها عند تجربة مسارات التحسين التعاوني PQAT و CQAT.

التدريب على الوعي الكمي للحفاظ على التباين (PQAT)

نموذج العناصر حدود نموذج مشذب (50٪ تناثر) نموذج QAT نموذج PQAT
DS-CNN-L دقة FP32 Top1 95.23٪ 94.80٪ (Fake INT8) 94.721٪ (Fake INT8) 94.128٪
INT8 تكميم عدد صحيح كامل 94.48٪ 93.80٪ 94.72٪ 94.13٪
ضغط 528128 - 434.879 (17.66٪) 528128 - 334154 (36.73٪) 512،224 → 403،261 (21.27٪) 512،032 ← 303997 (40.63٪)
Mobilenet_v1-224 دقة FP32 Top 1 70.99٪ 70.11٪ (وهمية INT8) 70.67٪ (وهمية INT8) 70.29٪
INT8 تكميم عدد صحيح كامل 69.37٪ 67.82٪ 70.67٪ 70.29٪
ضغط 4665.520 ← 3880331 (16.83٪) 4،665،520 → 2،939،734 (37.00٪) 4،569،416 → 3،808،781 (16.65٪) 4،569،416 → 2869،600 (37.20٪)

التدريب على الوعي الكمي للحفاظ على الكتلة (CQAT)

نموذج العناصر حدود نموذج مجمع نموذج QAT نموذج CQAT
Mobilenet_v1 على CIFAR-10 دقة FP32 Top1 94.88٪ 94.48٪ (Fake INT8) 94.80٪ (Fake INT8) 94.60٪
INT8 تكميم عدد صحيح كامل 94.65٪ 94.41٪ 94.77٪ 94.52٪
مقاس 3.00 ميجا بايت 2.00 ميجا بايت 2.84 ميجابايت 1.94 ميجابايت
Mobilenet_v1 على ImageNet دقة FP32 Top 1 71.07٪ 65.30٪ (وهمية INT8) 70.39٪ (وهمية INT8) 65.35٪
INT8 تكميم عدد صحيح كامل 69.34٪ 60.60٪ 70.35٪ 65.42٪
ضغط 4665.568 ← 3886277 (16.7٪) 4665.568 ← 3.035.752 (34.9٪) 4،569،416 → 3،804،871 (16.7٪) 4،569،472 → 2912،655 (36.25٪)

أمثلة

لوصف الأمثلة نهاية إلى نهاية تقنيات التحسين التعاونية هنا، يرجى الرجوع إلى CQAT ، PQAT ، التكتل الحفاظ تبعثر ، و PCQAT سبيل المثال أجهزة الكمبيوتر المحمولة.