اشکال زدایی TensorFlow Cloud Workflow

در اینجا چند نکته برای رفع مشکلات غیرمنتظره آورده شده است.

عملیات در محدوده استراتژی توزیع مجاز نیست

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

راه حل : ارسال distribution_strategy='auto' برای run API همه اسکریپت شما را در یک استراتژی توزیع TF بر اساس پیکربندی کلاستر ارائه شده قرار می دهد. اگر به دلایلی عملیاتی در محدوده استراتژی توزیع مجاز نباشد، خطای بالا یا چیزی شبیه به آن را مشاهده خواهید کرد. برای رفع خطا، لطفا None به پارامتر distribution_strategy ارسال کنید و یک نمونه استراتژی به عنوان بخشی از کد آموزشی خود همانطور که در این مثال نشان داده شده است ایجاد کنید.

پایان زمان ساخت تصویر Docker

خطای مانند : requests.exceptions.ConnectionError: ('اتصال قطع شد', timeout ('عملیات نوشتن به پایان رسید'))

راه حل : دایرکتوری که به عنوان نقطه ورودی استفاده می‌شود، احتمالاً داده‌های زیادی برای ساخت موفقیت‌آمیز تصویر دارد و ممکن است داده‌های اضافی در ساخت وجود داشته باشد. ساختار دایرکتوری خود را طوری قالب بندی کنید که پوشه حاوی نقطه ورودی فقط شامل فایل های لازم برای پروژه فعلی باشد.

نسخه برای آموزش TPU پشتیبانی نمی شود

خطای مانند : خطایی در ارسال کار وجود داشت. فیلد: tpu_tf_version خطا: نسخه زمان اجرا مشخص شده '2.3' برای آموزش TPU پشتیبانی نمی شود. لطفاً نسخه زمان اجرا متفاوتی را مشخص کنید.

راه حل : لطفا از TF نسخه 2.1 استفاده کنید. به استراتژی TPU در بخش پیکربندی استراتژی توزیع و خوشه مراجعه کنید.

ساخت شبانه TF.

هشداری مانند : تصویر والد Docker '2.4.0.dev20200720' وجود ندارد. با استفاده از آخرین ساخت شبانه TF.

راه‌حل : اگر پارامتر docker_config.parent_image را ارائه نمی‌دهید، به‌طور پیش‌فرض از تصاویر داکر TF از پیش ساخته‌شده به‌عنوان تصویر والد استفاده می‌کنیم. اگر TF را روی محیطی که run فراخوانی می‌شود نصب نکرده‌اید، از تصویر داکر TF برای latest نسخه پایدار استفاده می‌شود. در غیر این صورت، نسخه تصویر داکر با نسخه TF نصب شده محلی مطابقت خواهد داشت. با این حال، تصاویر داکر TF از پیش ساخته شده برای شب های TF به جز جدیدترین در دسترس نیستند. بنابراین، اگر TF محلی شما یک نسخه شبانه قدیمی است، ما به صورت خودکار به آخرین نسخه شبانه ارتقا می دهیم و این هشدار را افزایش می دهیم.

اختلاط اشیاء استراتژی توزیع

خطا مانند : RuntimeError: مخلوط کردن اشیاء مختلف tf.distribute.Strategy.

راه حل : لطفا distribution_strategy=None زمانی که از قبل یک استراتژی توزیع در کد مدل خود تعریف کرده اید ارائه دهید. تعیین distribution_strategy'='auto' ، کد شما را در یک استراتژی توزیع TensorFlow قرار می‌دهد. اگر یک شی استراتژی قبلاً در کد شما استفاده شده باشد، باعث خطای بالا می شود.