ZeroQ: إطار جديد للكمنة بدون تدريب مسبق

التكثيف هو نهج واعد لخفض وقت الاستدلال وحجم الذاكرة للشبكات العصبية. ومع ذلك، فإن معظم طرق التكثيف الحالية تتطلب الوصول إلى مجموعة البيانات الأصلية للتدريب أثناء عملية التكثيف. وهذا غالباً ما يكون غير ممكن في التطبيقات التي تحتوي على بيانات حساسة أو خاصة، مثل تلك التي تتعلق بمخاوف الخصوصية والأمان. تستخدم طرق التكثيف بدون التدريب المسبق (zero-shot) الحالية تقنيات مختلفة للتعامل مع هذا الأمر، لكنها تؤدي إلى أداء ضعيف، خاصة عند التكثيف إلى دقة منخفضة للغاية. هنا، نقترح ZeroQ ، وهو إطار جديد للتكثيف بدون التدريب المسبق يهدف إلى حل هذه المشكلة. يمكن لـ ZeroQ تحقيق التكثيف بدرجات مختلفة الدقة دون أي الوصول إلى بيانات التدريب أو التحقق. يتم هذا عن طريق تحسين مجموعة بيانات مُستخلصة (Distilled Dataset)، وهي مُهندسة لتتوافق مع إحصائيات التطبيع بالLots (batch normalization) عبر مختلف طبقات الشبكة. يدعم ZeroQ كلًا من التكثيف المنتظم والتكثيف بدرجات مختلفة الدقة. بالنسبة للأخير، نقدم طريقة جديدة تعتمد على حدود باريتو (Pareto frontier) لتحديد إعداد البت المختلط تلقائيًا لجميع الطبقات، دون الحاجة إلى البحث اليدوي.قمنا باختبار الطريقة المقترحة بشكل مكثف على مجموعة متنوعة من النماذج، بما في ذلك ResNet18/50/152، MobileNetV2، ShuffleNet، SqueezeNext و InceptionV3 على ImageNet، بالإضافة إلى RetinaNet-ResNet50 على مجموعة بيانات Microsoft COCO. بشكل خاص، نوضح أن ZeroQ يمكن أن يحقق دقة أعلى بنسبة 1.71٪ على MobileNetV2 مقارنة بالطريقة DFQ المقترحة مؤخرًا. من الجدير بالذكر أن ZeroQ يتمتع بعبء حسابي منخفض جدًا ويمكنه إكمال عملية التكثيف بأكملها في أقل من 30 ثانية (0.5٪ من وقت تدريب عصر واحد لـ ResNet50 على ImageNet). لقد قمنا بتوفير مصدر الإطار ZeroQ كمصدر مفتوح\footnote{https://github.com/amirgholami/ZeroQ}.