این صفحه به‌وسیله ‏Cloud Translation API‏ ترجمه شده است.
Switch to English

آموزش آگاه تعیین

که توسط TensorFlow مدل بهینه سازی

دو شکل از کوانتیزاسیون وجود دارد: کوانتیزاسیون پس از آموزش و تدریج آموزش آگاه است. شروع با تدریج پس از آموزش از آن را آسان تر به استفاده، هر چند آموزش آگاه تدریج اغلب بهتر است برای دقت مدل.

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

بررسی اجمالی

تعیین میزان آموزش آگاه شبیه سازی استنتاج زمان تدریج، ایجاد یک مدل است که ابزار پایین دست به تولید مدل های واقع کوانتیزه استفاده خواهد کرد. مدل های کوانتیده استفاده کمتر با دقت (به عنوان مثال 8 بیتی به جای شناور 32 بیتی)، منجر به مزایای استقرار در طول.

اجرا با کوانتیزاسیون

تعیین ارمغان می آورد بهبود از طریق فشرده سازی مدل و کاهش زمان تاخیر. 4X بهبود در زمان تاخیر CPU در پایانه (Backend) تست شده - به صورت پیش فرض API از کاهش اندازه مدل های 4X، و ما به طور معمول بین 1.5 را ببینید. در نهایت، بهبود زمان تاخیر را می توان در شتاب دهنده های یادگیری ماشین سازگار، مانند دیده EdgeTPU و NNAPI.

این روش در تولید در گفتار، بینایی، متن استفاده می شود، و ترجمه موارد استفاده کنید. کد در حال حاضر پشتیبانی زیر مجموعه ای از این مدل ها .

آزمایش با تدریج و سخت افزار همراه

کاربران می توانند پارامترهای تدریج (به عنوان مثال تعداد بیت) و تا حدی، الگوریتم زمینه پیکربندی کنید. با این تغییرات از پیش فرض API، وجود دارد هیچ راه استقرار پشتیبانی می شود.

API های خاص به این پیکربندی در معرض آزمون و به سازگاری.

سازگاری با API

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

  • ساختمان مدل: tf.keras با ترتیبی و مدل های کاربردی.
  • نسخه TensorFlow: نسخه 2.x TF برای TF-شبانه.
    • tf.compat.v1 با یک بسته TF 2.X پشتیبانی نمی شود.
  • حالت اعدام TensorFlow: اعدام مشتاق

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

  • ساختمان مدل: چگونگی مدل Subclassed اند به هیچ پشتیبانی محدود
  • آموزش توزیع شده: tf.distribute

ماتریس پشتیبانی عمومی

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

  • پوشش مدل: مدل با استفاده از لایه های موجود در لیست سفید ، BatchNormalization هنگامی که آن را زیر لایه های Conv2D و DepthwiseConv2D، و در موارد محدود، Concat .
  • شتاب سخت افزاری: پیش فرض API ما سازگار با شتاب در EdgeTPU، NNAPI و پایانه (Backend) TFLite، در میان دیگران است. پیش بینی احتیاطی در نقشه راه را مشاهده کنید.
  • اجرا با کوانتیزاسیون: تنها در محور تدریج برای لایه های کانولوشن، نه برای هر تانسور تدریج، در حال حاضر پشتیبانی می شود.

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

  • پوشش مدل: گسترش به شامل RNN / LSTMs و پشتیبانی CONCAT به طور کلی.
  • شتاب سخت افزاری: اطمینان مبدل TFLite می تواند مدل های کامل صحیح تولید کند. مشاهده این موضوع برای جزئیات بیشتر.
  • آزمایش با موارد استفاده تدریج:
    • آزمایش با الگوریتم تدریج که لایه های دهانه Keras و یا نیاز به گام آموزش.
    • ثبات رابط های برنامه کاربردی.

نتایج

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

مدل غیر کوانتیزه بالا-1 دقت 8 بیتی دقت تدریجی
MobilenetV1 224 71.03٪ 71.06٪
RESNET V1 50 76.3٪ 76.1٪
MobilenetV2 224 70.77٪ 70.01٪

مدل در Imagenet تست شده و در هر دو TensorFlow و TFLite بررسی قرار گرفت.

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

مدل غیر کوانتیزه بالا-1 دقت 8-بیت تدریجی دقت
Nasnet موبایل 74٪ 73٪
RESNET-V2 50 75.6٪ 75٪

مدل در Imagenet تست شده و در هر دو TensorFlow و TFLite بررسی قرار گرفت.

مثال ها

علاوه بر این به عنوان مثال آموزش آگاه تدریج ، نمونه های زیر را مشاهده کنید:

  • مدل سی ان ان در MNIST دست نوشته کار طبقه بندی رقمی با کوانتیزاسیون: کد

برای پس زمینه بر روی چیزی مشابه، دیدن تعیین و آموزش شبکه های عصبی برای کارآمد صحیح-حسابی-فقط استنتاج مقاله . در این مقاله برخی از مفاهیم که این ابزار استفاده می کند معرفی می کند. اجرای است دقیقا همان است، و مفاهیم اضافی استفاده می شود در این ابزار (به عنوان مثال در هر محور تدریج) وجود دارد.