يتم صيانتها بواسطة Arm ML Tooling
يقدم هذا المستند نظرة عامة على واجهات برمجة التطبيقات التجريبية للجمع بين التقنيات المختلفة لتحسين نماذج التعلم الآلي للنشر.
ملخص
التحسين التعاوني هو عملية شاملة تشمل تقنيات مختلفة لإنتاج نموذج يعرض ، عند النشر ، أفضل توازن للخصائص المستهدفة مثل سرعة الاستدلال وحجم النموذج والدقة.
تتمثل فكرة التحسينات التعاونية في البناء على التقنيات الفردية من خلال تطبيقها واحدة تلو الأخرى لتحقيق تأثير التحسين المتراكم. مجموعات مختلفة من التحسينات التالية ممكنة:
المشكلة التي تنشأ عند محاولة ربط هذه التقنيات معًا هي أن تطبيق واحدة عادةً ما يدمر نتائج التقنية السابقة ، مما يفسد الفائدة الإجمالية لتطبيقها جميعًا في وقت واحد ؛ على سبيل المثال ، لا يحافظ التجميع على التباين الذي قدمته واجهة برمجة التطبيقات للتقليم. لحل هذه المشكلة ، نقدم تقنيات التحسين التعاوني التجريبية التالية:
- حفظ العناقيد المتناثرة
- التدريب على الحفاظ على التباين الكمي (PQAT)
- مجموعة الحفاظ على الوعي الكمي للتدريب على الوعي (CQAT)
- التدرب على التناثر والعنقود والمحافظة على الكميات الواعية
توفر هذه العديد من مسارات النشر التي يمكن استخدامها لضغط نموذج التعلم الآلي والاستفادة من تسريع الأجهزة في وقت الاستدلال. يوضح الرسم البياني أدناه العديد من مسارات النشر التي يمكن استكشافها في البحث عن النموذج بخصائص النشر المرغوبة ، حيث تكون العقد الطرفية نماذج جاهزة للنشر ، مما يعني أنها مُكمَّمة جزئيًا أو كليًا وبتنسيق tflite. يشير التعبئة الخضراء إلى الخطوات التي تتطلب إعادة التدريب / الضبط الدقيق ويبرز الحد الأحمر المتقطع خطوات التحسين التعاوني. يشار إلى التقنية المستخدمة للحصول على نموذج في عقدة معينة في التسمية المقابلة.
تم حذف مسار النشر المباشر للتكمية فقط (ما بعد التدريب أو QAT) في الشكل أعلاه.
الفكرة هي الوصول إلى النموذج الأمثل بالكامل في المستوى الثالث من شجرة النشر المذكورة أعلاه ؛ ومع ذلك ، فإن أيًا من مستويات التحسين الأخرى يمكن أن يكون مرضيًا ويحقق الاستدلال المطلوب / مقايضة الدقة ، وفي هذه الحالة لا توجد حاجة إلى مزيد من التحسين. ستكون عملية التدريب الموصى بها هي الانتقال المتكرر عبر مستويات شجرة النشر المطبقة على سيناريو النشر الهدف ومعرفة ما إذا كان النموذج يفي بمتطلبات زمن انتقال الاستدلال ، وإذا لم يكن الأمر كذلك ، استخدم تقنية التحسين التعاوني المقابلة لضغط النموذج بشكل أكبر وتكرارها حتى يتم تحسين النموذج بالكامل (مجزأ ومجمع ومقاوم الكمية) ، إذا لزم الأمر.
يوضح الشكل أدناه مخططات الكثافة لنواة وزن العينة التي تمر عبر خط أنابيب التحسين التعاوني.
والنتيجة هي نموذج نشر كمي مع عدد أقل من القيم الفريدة بالإضافة إلى عدد كبير من الأوزان المتفرقة ، اعتمادًا على التباين المستهدف المحدد في وقت التدريب. بخلاف مزايا ضغط النموذج المهمة ، يمكن أن يستفيد دعم الأجهزة المحدد من هذه النماذج المتفرقة والمجمعة لتقليل زمن انتقال الاستدلال بشكل كبير.
نتائج
فيما يلي بعض نتائج الدقة والضغط التي حصلنا عليها عند تجربة مسارات التحسين التعاوني 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 و PCQAT للنماذج المجمعة لكل قناة
يتم الحصول على النتائج أدناه باستخدام تقنية التجميع لكل قناة . يوضحون أنه إذا تم تجميع الطبقات التلافيفية للنموذج لكل قناة ، فإن دقة النموذج تكون أعلى. إذا كان نموذجك يحتوي على العديد من الطبقات التلافيفية ، فإننا نوصي بالتجميع لكل قناة. تظل نسبة الضغط كما هي ، لكن دقة النموذج ستكون أعلى. خط أنابيب تحسين النموذج "متجمع -> مجموعة تحافظ على QAT -> تكميم ما بعد التدريب ، int8" في تجاربنا. نموذج متجمعة -> CQAT ، int8 كمية متجمعة لكل قناة -> CQAT ، int8 كمية DS-CNN-L 95.949٪ 96.44٪ موبايل نت- V2 71.538٪ 72.638٪ MobileNet-V2 (مشذب) 71.45٪ 71.901٪
أمثلة
للحصول على أمثلة شاملة لتقنيات التحسين التعاوني الموضحة هنا ، يرجى الرجوع إلى CQAT و PQAT وتجميع مجموعات الحفاظ على التباين ودفاتر أمثلة PCQAT .