وزنه های ناچیز را کوتاه کنید

این سند یک نمای کلی در مورد هرس مدل ارائه می دهد تا به شما کمک کند تعیین کنید که چگونه با موارد استفاده شما مطابقت دارد.

بررسی اجمالی

هرس وزنی مبتنی بر بزرگی به تدریج وزن مدل را در طول فرآیند آموزش به صفر می‌رساند تا به پراکندگی مدل برسد. فشرده‌سازی مدل‌های پراکنده آسان‌تر است و می‌توانیم از صفرها در طول استنتاج برای بهبود تأخیر بگذریم.

این تکنیک از طریق فشرده سازی مدل، بهبودهایی را به همراه دارد. در آینده، پشتیبانی از چارچوب برای این تکنیک، بهبودهایی را در تأخیر ارائه خواهد کرد. ما تا 6 برابر پیشرفت در فشرده سازی مدل با حداقل کاهش دقت مشاهده کرده ایم.

این تکنیک در کاربردهای گفتاری مختلف مانند تشخیص گفتار و تبدیل متن به گفتار در حال ارزیابی است و در مدل‌های بینایی و ترجمه مختلف آزمایش شده است.

ماتریس سازگاری API

کاربران می توانند هرس را با API های زیر اعمال کنند:

  • ساختمان مدل: keras تنها با مدل های ترتیبی و کاربردی
  • نسخه های TensorFlow: TF 1.x برای نسخه های 1.14+ و 2.x.
    • tf.compat.v1 با بسته TF 2.X و tf.compat.v2 با بسته TF 1.X پشتیبانی نمی شوند.
  • حالت اجرای TensorFlow: هم گراف و هم مشتاق
  • آموزش توزیع شده: tf.distribute فقط با اجرای گراف

در نقشه راه ما افزودن پشتیبانی در زمینه های زیر است:

نتایج

طبقه بندی تصویر

مدل غیر پراکنده Top-1 دقت دقت پراکنده تصادفی پراکندگی تصادفی دقت پراکنده ساختاریافته پراکندگی ساختار یافته
InceptionV3 78.1٪ 78.0٪ 50% 75.8٪ 2 در 4
76.1٪ 75%
74.6٪ 87.5٪
MobilenetV1 224 71.04٪ 70.84٪ 50% 67.35٪ 2 در 4
MobilenetV2 224 71.77٪ 69.64٪ 50% 66.75٪ 2 در 4

مدل ها در Imagenet تست شدند.

ترجمه

مدل BLEU غیر پراکنده Sparse BLEU پراکندگی
GNMT EN-DE 26.77 26.86 80%
26.52 85%
26.19 90%
GNMT DE-EN 29.47 29.50 80%
29.24 85%
28.81 90%

مدل‌ها از مجموعه داده آلمانی و انگلیسی WMT16 با news-test2013 به عنوان مجموعه توسعه و news-test2015 به عنوان مجموعه آزمایشی استفاده می‌کنند.

مدل لکه گیری کلمه کلیدی

DS-CNN-L یک مدل لکه گیری کلمه کلیدی است که برای دستگاه های لبه ایجاد شده است. می توان آن را در مخزن نمونه های نرم افزار ARM یافت.

مدل دقت غیر پراکنده دقت پراکنده ساختاریافته (الگوی 2 در 4) دقت پراکنده تصادفی (تنگی هدف 50%)
DS-CNN-L 95.23 94.33 94.84

مثال ها

علاوه بر آموزش Prune with Keras ، نمونه های زیر را مشاهده کنید:

  • آموزش یک مدل CNN در کار دسته‌بندی رقم دست‌نویس MNIST با هرس: کد
  • آموزش یک LSTM در طبقه بندی احساسات IMDB با هرس: کد

برای پیش‌زمینه، به هرس کردن یا هرس نکردن مراجعه کنید: بررسی اثربخشی هرس برای فشرده‌سازی مدل [ کاغذ ].