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

راهنمای کاربر TFX

مقدمه

TFX یک پلتفرم یادگیری ماشین (ML) در مقیاس تولید Google است که مبتنی بر TensorFlow است. این یک چارچوب پیکربندی و کتابخانه های مشترک برای ادغام اجزای مشترک مورد نیاز برای تعریف ، راه اندازی و نظارت بر سیستم یادگیری ماشین شما را فراهم می کند.

نصب و راه اندازی

پایتون پی پی آی

pip install tfx

درباره TFX

TFX یک بستر برای ایجاد و مدیریت گردش کار ML در یک محیط تولید است. TFX موارد زیر را ارائه می دهد:

  • جعبه ابزار برای ساخت خطوط لوله ML. خطوط لوله TFX به شما اجازه می دهد تا گردش کار ML خود را بر روی چندین سیستم عامل مانند: Apache Airflow ، Apache Beam و Kubeflow خط لوله تنظیم کنید.

    درباره خطوط لوله TFX بیشتر بدانید .

  • مجموعه ای از مؤلفه های استاندارد که می توانید به عنوان بخشی از خط لوله یا به عنوان بخشی از اسکریپت آموزشی ML خود استفاده کنید. اجزای استاندارد TFX عملکردی اثبات شده را برای کمک به شما در ساخت یک فرآیند ML به راحتی فراهم می کند.

    درباره اجزای استاندارد TFX بیشتر بیاموزید .

  • کتابخانه هایی که عملکرد اساسی بسیاری از مؤلفه های استاندارد را ارائه می دهند. می توانید از کتابخانه های TFX برای اضافه کردن این قابلیت به اجزای دلخواه خود استفاده کنید یا از آنها به طور جداگانه استفاده کنید.

    درباره کتابخانه های TFX بیشتر بدانید .

TFX یک ابزار یادگیری ماشین در مقیاس تولید Google است که مبتنی بر TensorFlow است. این یک چارچوب پیکربندی و کتابخانه های مشترک برای ادغام اجزای مشترک مورد نیاز برای تعریف ، راه اندازی و نظارت بر سیستم یادگیری ماشین شما را فراهم می کند.

اجزای استاندارد TFX

خط لوله TFX دنباله ای از اجزای سازنده خط لوله ML است که به طور خاص برای کارهای یادگیری ماشین با کارایی بالا و مقیاس پذیر طراحی شده است. این شامل مدل سازی ، آموزش ، انجام استنتاج و مدیریت استقرار به اهداف آنلاین ، موبایل بومی و JavaScript می باشد.

خط لوله TFX به طور معمول شامل اجزای زیر است:

  • mînakGen جزء ورودی اولیه یک خط لوله است که داده داده ورودی را می خورد و به صورت اختیاری تقسیم می کند.

  • StatisticsGen آماری را برای مجموعه داده محاسبه می کند.

  • SchemaGen آمار را بررسی کرده و یک شمای داده ایجاد می کند.

  • مثالValidator به دنبال ناهنجاری ها و مقادیر گمشده در مجموعه داده است.

  • Transform مهندسی ویژگی را در مجموعه داده انجام می دهد.

  • مربی مدل را آموزش می دهد.

  • تیونر تنظیم پارامترهای فوق مدل را انجام می دهد.

  • ارزیاب تجزیه و تحلیل عمیق از نتایج آموزش انجام می دهد و به شما کمک می کند تا مدل های صادر شده خود را تأیید کنید ، اطمینان حاصل می کنید که آنها به اندازه کافی خوب هستند که به سمت تولید سوق داده شوند.

  • بررسی می کند که مدل InfraValidator در واقع از زیرساخت ها قابل تحمل است و از هل دادن مدل بد جلوگیری می کند.

  • Pusher مدل را در زیرساخت های خدماتی مستقر می کند.

  • BulkInferrer پردازش دسته ای را بر روی یک مدل با درخواست استنتاج بدون برچسب انجام می دهد.

این نمودار جریان داده ها را بین این مؤلفه ها نشان می دهد:

جریان کامپوننت

کتابخانه های TFX

TFX هم کتابخانه و هم مؤلفه های خط لوله را در بر می گیرد. این نمودار روابط بین کتابخانه های TFX و اجزای خط لوله را نشان می دهد:

کتابخانه ها و مؤلفه ها

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

كتابخانه هاي TFX شامل:

  • اعتبارسنجی داده TensorFlow (TFDV) یک کتابخانه برای تجزیه و تحلیل و اعتبار داده های یادگیری ماشین است. این طراحی شده است که بسیار مقیاس پذیر باشد و به خوبی با TensorFlow و TFX کار کند. TFDV شامل موارد زیر است:

    • محاسبه مقیاس پذیر از آمار خلاصه داده های آموزش و آزمون.
    • ادغام با بیننده برای توزیع داده ها و آمار و همچنین مقایسه آسان جفت مجموعه داده ها (Facets).

    • تولید خودکار طرحواره داده برای توصیف انتظارات در مورد داده هایی مانند مقادیر مورد نیاز ، دامنه ها و واژگان.

    • یک نمایشگر طرحواره برای کمک به شما در بازرسی از طرحواره.

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

    • بیننده ناهنجاری ها به طوری که می توانید ببینید چه ویژگی هایی دارای ناهنجاری ها هستند و برای اصلاح آنها اطلاعات بیشتری کسب می کنید.

  • TensorFlow Transform (TFT) یک کتابخانه برای پیش پردازش داده ها با TensorFlow است. TensorFlow Transform برای داده هایی که نیاز به یک گذر کامل دارند ، مفید است ، مانند:

    • یک مقدار ورودی را با انحراف متوسط ​​و استاندارد عادی کنید.
    • با ایجاد یک واژگان در تمام مقادیر ورودی ، رشته ها را به اعداد صحیح تبدیل کنید.
    • با اختصاص دادن آنها به سطل ها ، بر اساس توزیع داده مشاهده شده ، شناورها را به اعداد صحیح تبدیل کنید.
  • TensorFlow برای مدل های آموزش با TFX استفاده می شود. این داده های آموزش و کد مدل سازی را مصرف می کند و نتیجه SavedModel ایجاد می کند. همچنین یک خط لوله مهندسی ایجاد شده توسط TensorFlow Transform را برای پیش پردازش داده های ورودی ایجاد می کند.

    از KerasTuner برای تنظیم پارامترهای Hyperparameters برای مدل استفاده می شود.

  • تجزیه و تحلیل مدل TensorFlow (TFMA) یک کتابخانه برای ارزیابی مدلهای TensorFlow است. این به همراه TensorFlow برای ایجاد یک EvalSavedModel استفاده می شود ، که پایه ای برای تجزیه و تحلیل آن می شود. این اجازه می دهد تا کاربران با استفاده از همان معیارهای تعریف شده در مربی خود ، مدل های خود را بر روی مقادیر زیادی از داده ها به صورت توزیع شده ارزیابی کنند. این معیارها را می توان در برش داده های مختلف محاسبه کرد و در نوت بوک های Jupyter تجسم کرد.

  • Metadata TensorFlow (TFMD) نمایشهای استاندارد برای ابرداده را ارائه می دهد که هنگام آموزش مدل های یادگیری ماشین با TensorFlow مفید هستند. این داده های داده ممکن است به صورت دستی یا به طور خودکار در طی تجزیه و تحلیل داده های ورودی تولید شود ، و ممکن است برای اعتبارسنجی ، اکتشاف و تبدیل داده ها مصرف شود. قالبهای سریال سازی ابرداده شامل موارد زیر است:

    • طرحواره ای که داده های جدولی را توصیف می کند (به عنوان مثال ، نمونه های نمونه).
    • مجموعه ای از آمارهای خلاصه بیش از چنین مجموعه های داده.
  • ML Metadata (MLMD) كتابخانه ای برای ضبط و بازیابی ابرداده های مرتبط با گردش كار ML و گردش كار دانشمند است. غالباً فوق داده از نمایشگرهای TFMD استفاده می کند. MLMD با استفاده از SQL-Lite ، MySQL و سایر فروشگاه های داده مشابه ، پایداری را مدیریت می کند.

پشتیبانی از فن آوری ها

ضروری

  • Apache Beam یک مدل منبع باز و یکپارچه برای تعریف خطوط لوله و جریان دادن به خطوط لوله پردازش موازی داده است. TFX از پرتوی آپاچی برای اجرای خطوط لوله موازی داده استفاده می کند. این خط لوله توسط یکی از قسمتهای پشتیبان پردازش توزیع شده پشتیبانی شده توسط Beam اجرا می شود ، که شامل Apache Flink ، Apache Spark ، Google Cloud Dataflow و دیگران می شود.

اختیاری

ارکسترهایی مانند Apache Airflow و Kubeflow پیکربندی ، بهره برداری ، نظارت و نگهداری خط لوله ML را آسان تر می کنند.

  • جریان هوای Apache یک بستر برای نوشتن برنامه ، برنامه ریزی و نظارت بر گردش کار برنامه ای است. TFX از جریان هوا به عنوان نویسنده به عنوان نمودارهای چرخه ای کارها استفاده می کند. برنامه ریز Airflow ضمن پیروی از وابستگی های مشخص ، وظایف خود را در مجموعه ای از کارگران اجرا می کند. خدمات خط فرماني غني ، انجام جراحي هاي پيچيده را در مورد DAG ها به صورت ناگهاني انجام مي دهند. رابط کاربری غنی ، تجسم خطوط لوله در حال تولید را آسان می کند ، نظارت بر پیشرفت و رفع مشکلات را در صورت لزوم. هنگامی که گردش کار به عنوان کد تعریف می شود ، آنها قابل حفظ تر ، قابل ویرایش ، آزمایش و همکاری می شوند.

  • Kubeflow اختصاص داده شده است به کارگیری جریان های یادگیری ماشین (ML) در Kubernetes ساده ، قابل حمل و مقیاس پذیر. هدف Kubeflow ایجاد مجدد خدمات دیگر نیست ، بلکه فراهم آوردن روشی ساده برای استقرار سیستمهای منبع باز از بهترین نژاد برای ML به زیرساختهای متنوع است. خطوط لوله Kubeflow ترکیب و اجرای جریان کاری قابل تکرار در Kubeflow را قادر می سازد ، با تجربیات و تجربیات مبتنی بر نوت بوک. خدمات خط لوله Kubeflow در Kubernetes شامل فروشگاه میزبان Metadata ، موتور ارکستراسیون مبتنی بر کانتینر ، سرور نوت بوک و UI برای کمک به کاربران در توسعه ، اجرا و مدیریت خطوط لوله ML پیچیده در مقیاس است. خط لوله های Kubeflow SDK امکان ایجاد و اشتراک گذاری قطعات و ترکیب خطوط لوله را به صورت برنامه ای فراهم می کند.

قابلیت حمل و قابلیت همکاری

TFX به گونه ای طراحی شده است که می تواند در چندین محیط و چارچوب های ارکسترشن ، از جمله Apache Airflow ، Apache Beam و Kubeflow قابل حمل باشد. همچنین قابل حمل برای سیستم عامل های مختلف محاسباتی از جمله سیستم عامل های اولیه و سیستم عامل های ابری مانند Google Cloud Platform (GCP) است . به طور خاص ، TFX با سرویس های مدیریت GCP servere مانند Cloud AI Platform برای آموزش و پیش بینی و Cloud Dataflow برای پردازش داده های توزیع شده برای چندین جنبه دیگر از چرخه عمر ML همکاری می کند.

مدل در مقابل SavedModel

مدل

یک مدل خروجی فرایند آموزش است. این رکورد سریالی از وزنه هایی است که در طی فرآیند آموزش آموخته شده است. این وزنها متعاقباً می توانند برای محاسبه پیش بینی های مثالهای ورودی جدید استفاده شوند. برای مدل TFX و TensorFlow ، "مدل" به نقاط بازرسی حاوی وزنهای آموخته شده در آن نقطه اشاره دارد.

توجه داشته باشید که "مدل" ممکن است به تعریف نمودار محاسبه TensorFlow (یعنی یک فایل پایتون) نیز اشاره کند که بیانگر چگونگی محاسبه یک پیش بینی است. این دو حس ممکن است براساس متن با هم قابل استفاده باشند.

SavedModel

  • یک SavedModel چیست: یک سریال جهانی ، خنثی ، هرمتیک و قابل بازیابی از مدل TensorFlow.
  • چرا این امر مهم است : این سیستمها را قادر می سازد تا سطح بالاتری را با استفاده از یک انتزاع ، مدلهای TensorFlow را تولید ، تبدیل و مصرف کنند.

SavedModel فرمت سریال سازی توصیه شده برای ارائه یک مدل TensorFlow در تولید یا صادر کردن یک مدل آموزش دیده برای یک برنامه بومی موبایل یا JavaScript است. به عنوان مثال ، برای تبدیل یک مدل به یک سرویس REST برای پیش بینی ، می توانید مدل را به عنوان یک SavedModel سری بزنید و با استفاده از TensorFlow Serving آن را خدمت کنید. برای اطلاعات بیشتر به ارائه یک مدل TensorFlow مراجعه کنید.

طرحواره

برخی از اجزای TFX از توضیحی از داده های ورودی شما به نام یک طرح استفاده می کنند . طرحواره نمونه ای از schema.proto است . طرحواره ها نوعی بافر پروتکل هستند که بیشتر با عنوان "protobuf" شناخته می شوند. این طرح می تواند انواع داده ها را برای مقادیر ویژگی مشخص کند ، خواه یک ویژگی در همه نمونه ها ، محدوده مقادیر مجاز و سایر خصوصیات موجود باشد. یکی از مزایای استفاده از اعتبارسنجی داده TensorFlow (TFDV) این است که با استنباط انواع ، دسته ها و دامنه ها از داده های آموزش ، به صورت خودکار یک شمای ایجاد می کند.

در اینجا گزیده ای از طرح اولیه طرحواره آورده شده است:

...
feature {
  name: "age"
  value_count {
    min: 1
    max: 1
  }
  type: FLOAT
  presence {
    min_fraction: 1
    min_count: 1
  }
}
feature {
  name: "capital-gain"
  value_count {
    min: 1
    max: 1
  }
  type: FLOAT
  presence {
    min_fraction: 1
    min_count: 1
  }
}
...

اجزای زیر از طرحواره استفاده می کنند:

  • اعتبارسنجی داده TensorFlow
  • تبدیل TensorFlow

در یک خط لوله معمولی TFX TensorFlow Data Validation یک شمای تولید می کند ، که توسط اجزای دیگر مصرف می شود.

در حال توسعه با TFX

TFX یک بستر قدرتمند برای هر مرحله از یک پروژه یادگیری ماشین ، از تحقیق ، آزمایش و توسعه در دستگاه محلی شما ، از طریق استقرار فراهم می کند. به منظور جلوگیری از تکثیر کد و از بین بردن پتانسیل آموزش / خدمت skew ، به شدت توصیه می شود خط لوله TFX خود را هم برای آموزش مدل و هم برای استقرار مدل های آموزش دیده ، و هم از اجزای Transform استفاده کنید که از کتابخانه TensorFlow Transform برای آموزش و استنباط استفاده می کند. با این کار شما از همان کد پردازش و تجزیه و تحلیل به طور مداوم استفاده خواهید کرد و از تفاوت بین داده های مورد استفاده برای آموزش و داده های تغذیه شده به مدل های آموزش دیده خود در تولید و همچنین از نوشتن آن کد یکبار خودداری می کنید.

اکتشاف داده ها ، تجسم سازی و تمیز کردن

اکتشاف داده ها ، تجسم سازی و تمیز کردن

خطوط لوله TFX به طور معمول با یک جزء مثالGen شروع می شود ، که داده های ورودی را می پذیرد و آن را به عنوان نمونه های tf.Examames می کند. غالباً این کار پس از تقسیم داده ها به مجموعه داده های آموزش و ارزیابی انجام می شود ، به گونه ای که در واقع دو نسخه از مؤلفه های FirstGen وجود دارد ، یکی از آنها برای آموزش و ارزیابی. این به طور معمول توسط یک مؤلفه StatisticsGen و یک جزء SchemaGen دنبال می شود ، که داده های شما را بررسی کرده و یک شمای داده و آمار را استنباط می کند. شمای و آمار توسط یک مؤلفه shembullValidator استفاده می شود که به دنبال ناهنجاری ها ، مقادیر گمشده و انواع داده های نادرست در داده های شما خواهد بود. همه این مؤلفه ها از قابلیت های کتابخانه اعتبار سنجی داده TensorFlow بهره می گیرند .

اعتبار سنجی داده TensorFlow (TFDV) یک ابزار ارزشمند هنگام انجام اکتشاف اولیه ، تجسم و تمیز کردن مجموعه داده های شما است. TFDV داده های شما را بررسی می کند و انواع داده ها ، دسته ها و دامنه ها را استنباط می کند ، و سپس به طور خودکار به شناسایی ناهنجاری ها و مقادیر گمشده کمک می کند. همچنین ابزارهای تجسمی فراهم می کند که به شما در بررسی و درک مجموعه داده های شما کمک می کند. پس از اتمام خط لوله ، می توانید ابرداده از MLMD را بخوانید و از ابزارهای تجسم TFDV در یک نوت بوک Jupyter برای تجزیه و تحلیل داده های خود استفاده کنید.

پس از آموزش و استقرار مدل اولیه ، TFDV می تواند برای نظارت بر داده های جدید از درخواست استنتاج به مدل های مستقر شده شما ، و به دنبال ناهنجاری ها و / یا رانش ها باشد. این امر به ویژه برای داده های سری زمانی مفید است که در نتیجه روند یا فصلی با گذشت زمان تغییر می کند ، و می تواند در هنگام بروز مشکلات داده یا هنگام نیاز به مدلهای مجدد در داده های جدید ، به اطلاع رسانی کمک کند.

تجسم داده ها

پس از اتمام اولین اجرای داده های خود از طریق بخش خط لوله خود که از TFDV استفاده می کند (به طور معمول StatisticsGen ، SchemaGen و مثالValidator) می توانید نتایج را در یک نوت بوک به سبک Jupyter تجسم کنید. برای اجرای اضافی می توانید این نتایج را هنگام تنظیم تنظیم کنید ، تا زمانی که داده های شما برای مدل و برنامه شما مطلوب باشد.

برای یافتن نتایج حاصل از اجرای این اجزا ، ابتدا از ML Metadata (MLMD) پرس و جو می کنید و سپس از API پشتیبانی تجسم در TFDV استفاده می کنید تا تجسم را در نوت بوک خود ایجاد کنید. این شامل tfdv.load_statistics () و tfdv.visualize_statistics () با استفاده از این تجسم می توانید ویژگی های مجموعه داده خود را بهتر بشناسید ، و در صورت لزوم اصلاح کنید تا لازم باشد.

مدل های توسعه و آموزش

مهندسی ویژگی

یک خط لوله معمولی TFX یک جزء Transform را شامل می شود که مهندسی ویژگی را با استفاده از قابلیت های کتابخانه TensorFlow Transform (TFT) انجام می دهد . یک جزء Transform از طرحواره ایجاد شده توسط یک جزء SchemaGen استفاده می کند و برای ایجاد ، ترکیب و تبدیل ویژگی هایی که برای آموزش مدل شما استفاده می شود ، از تبدیل داده ها استفاده می کند. پاک کردن مقادیر گمشده و تبدیل انواع نیز باید در مؤلفه Transform صورت گیرد اگر این احتمال وجود داشته باشد که در داده های ارسال شده برای درخواست استنتاج نیز وجود داشته باشد. نکات مهم در هنگام طراحی کد TensorFlow برای آموزش در TFX وجود دارد.

مدل سازی و آموزش

نتیجه یک جزء Transform یک SavedModel است که در یک جزء Trainer در کد مدل سازی شما در TensorFlow وارد و مورد استفاده قرار می گیرد. این SavedModel شامل تمام تحولات مهندسی داده است که در مؤلفه Transform ایجاد شده اند ، به طوری که تبدیلهای یکسان با استفاده از همان کد دقیقاً در طول آموزش و استنتاج انجام می شوند. با استفاده از کد مدل سازی ، از جمله SavedModel از مؤلفه Transform ، می توانید داده های آموزش و ارزیابی خود را مصرف کرده و مدل خود را آموزش دهید.

در آخرین بخش کد مدل سازی خود باید مدل خود را هم به عنوان SavedModel و هم یک EvalSavedModel ذخیره کنید. صرفه جویی به عنوان EvalSavedModel به شما نیاز خواهد داشت تا کتابخانه TensorFlow Model Analysis Analysis (TFMA) را در مؤلفه Trainer خود وارد و اعمال کنید.

import tensorflow_model_analysis as tfma
...

tfma.export.export_eval_savedmodel(
        estimator=estimator,
        export_dir_base=eval_model_dir,
        eval_input_receiver_fn=receiver_fn)

برای تنظیم تراز هایپارامتر (به عنوان مثال ، تعداد لایه ها) برای مدل ، می توان قبل از Trainer ، یک جزء Tuner اختیاری اضافه کرد. با استفاده از مدل جستجوی مدل داده شده و فضای جستجوی هایپرپارامتر ، الگوریتم تنظیم بهترین Hyperparameters را بر اساس هدف پیدا می کند.

تجزیه و تحلیل و درک عملکرد مدل

تجزیه و تحلیل مدل

پس از توسعه و آموزش مدل اولیه ، تجزیه و تحلیل و درک واقعی عملکرد مدل از اهمیت برخوردار است. یک خط لوله معمولی TFX شامل یک مؤلفه ارزیاب است که از توانایی های کتابخانه مدل تحلیل مدل TensorFlow (TFMA) بهره می برد ، که یک ابزار قدرت برای این مرحله از توسعه را فراهم می کند. یک جزء Evaluator EvalSavedModel را که در بالا صادر کردید ، مصرف می کند و به شما امکان می دهد لیستی از SliceSpecs را مشخص کنید که می توانید هنگام مشاهده و تجزیه و تحلیل عملکرد مدل خود از آنها استفاده کنید. هر SliceSpec مجموعه ای از داده های آموزش شما را که می خواهید بررسی کنید ، مانند دسته بندی های خاص برای ویژگیهای طبقه بندی یا دامنه های خاص برای ویژگیهای عددی تعریف می کند.

به عنوان مثال ، این امر برای تلاش برای درک عملکرد مدل شما برای بخش های مختلف مشتریان ، مهم است که می تواند با خریدهای سالانه ، داده های جغرافیایی ، گروه سنی یا جنسیت تقسیم شود. این امر می تواند به ویژه برای مجموعه های داده با دم های طولانی ، که در آن عملکرد یک گروه غالب ممکن است عملکرد غیرقابل قبول برای گروه های مهم و در عین حال کوچکتر باشد ، مهم باشد. به عنوان مثال ، الگوی شما ممکن است برای کارمندان متوسط ​​عملکرد خوبی داشته باشد ، اما برای کارمندان بدبختانه ناکام است ، و ممکن است دانستن آن برای شما مهم باشد.

تجزیه و تحلیل مدل و تجسم

بعد از اینکه از اجرا خود را از داده های خود را از طریق آموزش مدل خود را و در حال اجرا را به اتمام ارزیاب جزء (که اهرم TFMA ) بر آموزش، شما می توانید نتایج را در یک سبک نوت بوک Jupyter تجسم. برای اجرای اضافی می توانید این نتایج را هنگام تنظیم تنظیم کنید ، تا نتایج بهینه برای مدل و برنامه شما باشد.

برای یافتن نتایج حاصل از اجرای این اجزا ، ابتدا از ML Metadata (MLMD) پرس و جو می کنید و سپس از API پشتیبانی تجسم در TFMA استفاده می کنید تا تصاویر را در نوت بوک خود ایجاد کنید. این شامل tfma.load_eval_results () و tfma.view.render_slicing_metrics () با استفاده از این تجسم می توانید ویژگی های مدل خود را بهتر بشناسید ، و در صورت لزوم اصلاح کنید تا لازم باشد.

اعتبارسنجی برای ارائه یک مدل

اعتبارسنجی مادون قرمز

قبل از به کارگیری مدل آموزش دیده ، ممکن است بخواهید تأیید کنید که آیا این مدل واقعاً در زیرساخت سرویس قابل استفاده است. این امر به ویژه در محیط های تولید برای اطمینان از اینكه مدل تازه منتشر شده از خدمات پیش بینی سیستم جلوگیری نمی كند ، بسیار مهم است. مؤلفه InfraValidator با استفاده از قناری مدل شما در یک محیط ماسهبازی مستقر می شود و به صورت اختیاری درخواست های واقعی ارسال می کند تا بررسی کند که مدل شما به درستی کار می کند.

اهداف استقرار

هنگامی که مدلی را تهیه کردید و آموزش دیدید که از آن راضی هستید ، اکنون زمان آن رسیده است که آن را به یک یا چند هدف اعزام کنید که در آن درخواست های استنتاج را دریافت کند. TFX از استقرار به سه کلاس از اهداف استقرار پشتیبانی می کند. مدل های آموزش دیده که به عنوان SavedModels صادر شده اند می توانند به هر یک یا همه این اهداف استقرار اعزام شوند.

جریان کامپوننت

استنتاج: خدمت TensorFlow

سرویس TensorFlow (TFS) یک سیستم انعطاف پذیر و با عملکرد بالا برای مدل های یادگیری ماشین است که برای محیط های تولیدی طراحی شده است. این برنامه از یک SavedModel استفاده می کند و درخواست های استنباط را از طریق رابط REST یا gRPC می پذیرد. این مجموعه به عنوان مجموعه ای از پردازش ها روی یک یا چند سرور شبکه ، با استفاده از یکی از چندین معماری پیشرفته برای انجام همزمان سازی و محاسبه توزیع شده ، اجرا می شود. برای اطلاعات بیشتر در مورد توسعه و بکارگیری راه حل های TFS ، به اسناد TFS مراجعه کنید.

در یک خط لوله معمولی ، یک SavedModel که در یک مؤلفه Trainer آموزش دیده است ، ابتدا در یک مؤلفه InfraValidator قابل اطمینان خواهد بود. InfraValidator یک سرور مدل TFS قناری را راه اندازی می کند تا در واقع در خدمت SavedModel باشد. اگر اعتبار سنجی به پایان رسیده باشد ، یک مؤلفه Pusher در نهایت SavedModel را به زیرساخت TFS شما مستقر می کند. این شامل دست زدن به نسخه های مختلف و بروزرسانی های مدل است.

استنباط در بومیان موبایل و IoT برنامه ها: TensorFlow Lite

TensorFlow Lite مجموعه ای از ابزارهایی است که برای کمک به توسعه دهندگان در استفاده از مدل های آموزش دیده TensorFlow در برنامه های بومی تلفن همراه و IoT اختصاص داده شده است. از همان SavedModels به عنوان TensorFlow Serving استفاده می کند و بهینه سازی هایی از قبیل کمیت و هرس را به منظور بهینه سازی اندازه و عملکرد مدل های حاصله برای چالش های اجرا در دستگاه های تلفن همراه و IoT اعمال می کند. برای اطلاعات بیشتر در مورد استفاده از TensorFlow Lite ، به اسناد TensorFlow Lite مراجعه کنید.

استنتاج در JavaScript: TensorFlow JS

TensorFlow JS یک کتابخانه جاوا اسکریپت برای آموزش و استقرار مدل های ML در مرورگر و در Node.js. از همان SavedModels با عنوان TensorFlow Serving و TensorFlow Lite استفاده می کند و آنها را به قالب وب TensorFlow.js تبدیل می کند. برای اطلاعات بیشتر در مورد استفاده از TensorFlow JS ، به اسناد TensorFlow JS مراجعه کنید.

ایجاد خط لوله TFX با جریان هوا

برای جزئیات بیشتر کارگاه جریان هوا را بررسی کنید

ایجاد خط لوله TFX با Kubeflow

برپایی

Kubeflow برای اجرای خطوط لوله در مقیاس به یک خوشه Kubernetes نیاز دارد. به دستورالعمل استقرار Kubeflow مراجعه کنید که گزینه های استقرار خوشه Kubeflow را راهنمایی می کند.

خط لوله TFX را پیکربندی و اجرا کنید

لطفا TFX را در مورد خط لوله بسترهای نرم افزاری Cloud AI Platform AI دنبال کنید تا خط لوله نمونه TFX را روی Kubeflow اجرا کنید. اجزای TFX برای تهیه خط لوله Kubeflow مهار شده اند و نمونه توانایی پیکربندی خط لوله برای خواندن مجموعه داده های عمومی و اجرای مراحل آموزش و پردازش داده ها را در مقیاس ابر نشان می دهد.

رابط خط فرمان برای اقدامات خط لوله

TFX یک CLI یکپارچه را فراهم می کند که به انجام طیف گسترده ای از اقدامات خط لوله مانند ایجاد ، به روزرسانی ، اجرا ، لیست ، و حذف خطوط لوله در ارکسترهای مختلف از جمله Apache Airflow ، Apache Beam و Kubeflow کمک می کند. برای جزئیات بیشتر ، لطفاً این دستورالعمل ها را دنبال کنید.