برآوردگرها

مشاهده در TensorFlow.org در Google Colab اجرا شود مشاهده منبع در GitHub دانلود دفترچه یادداشت

این سند tf.estimator - یک API سطح بالا tf.estimator را معرفی می کند. برآوردگرها اقدامات زیر را در بر می گیرند:

  • آموزش
  • ارزیابی
  • پیش بینی
  • صادرات برای خدمت

TensorFlow چندین برآوردگر از پیش ساخته را پیاده سازی می کند. برآوردگرهای سفارشی هنوز پشتیبانی می شوند، اما عمدتاً به عنوان معیار سازگاری با عقب. برآوردگرهای سفارشی نباید برای کد جدید استفاده شوند. همه برآوردگرها - از پیش ساخته شده یا سفارشی - کلاس هایی بر اساس کلاس tf.estimator.Estimator هستند.

برای مثال سریع، آموزش‌های Estimator را امتحان کنید. برای یک نمای کلی از طراحی API، کاغذ سفید را بررسی کنید.

برپایی

pip install -U tensorflow_datasets
import tempfile
import os

import tensorflow as tf
import tensorflow_datasets as tfds

مزایای

مشابه tf.keras.Model ، estimator یک انتزاع در سطح مدل است. tf.estimator برخی از قابلیت‌هایی را فراهم می‌کند که در حال حاضر هنوز در حال توسعه برای tf.keras هستند. اینها هستند:

  • آموزش مبتنی بر سرور پارامتر
  • ادغام کامل TFX

قابلیت های برآوردگرها

برآوردگرها مزایای زیر را ارائه می دهند:

  • شما می توانید مدل های مبتنی بر برآوردگر را بر روی یک میزبان محلی یا در یک محیط چند سرور توزیع شده بدون تغییر مدل خود اجرا کنید. علاوه بر این، می‌توانید مدل‌های مبتنی بر برآوردگر را بر روی CPU، GPU یا TPU بدون کدگذاری مجدد مدل خود اجرا کنید.
  • تخمین‌گرها یک حلقه آموزشی توزیع‌شده ایمن را ارائه می‌کنند که نحوه و زمان انجام موارد زیر را کنترل می‌کند:
    • بارگذاری داده ها
    • رسیدگی به استثناها
    • فایل های ایست بازرسی ایجاد کنید و از خرابی ها بازیابی کنید
    • خلاصه ها را برای TensorBoard ذخیره کنید

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

استفاده از برآوردگرهای از پیش ساخته شده

برآوردگرهای از پیش ساخته شده شما را قادر می‌سازد تا در سطح مفهومی بسیار بالاتری نسبت به APIهای پایه TensorFlow کار کنید. دیگر لازم نیست نگران ایجاد نمودار محاسباتی یا جلسات باشید، زیرا برآوردگرها تمام "لوله کشی" را برای شما انجام می دهند. علاوه بر این، برآوردگرهای از پیش ساخته شده به شما اجازه می‌دهند تا با ایجاد حداقل تغییرات کد، معماری‌های مدل‌های مختلف را آزمایش کنید. به عنوان مثال، tf.estimator.DNNClassifier یک کلاس Estimator از پیش ساخته است که مدل‌های طبقه‌بندی را بر اساس شبکه‌های عصبی متراکم و پیش‌خور آموزش می‌دهد.

یک برنامه TensorFlow با تکیه بر یک برآوردگر از پیش ساخته شده معمولاً شامل چهار مرحله زیر است:

1. یک توابع ورودی بنویسید

برای مثال، ممکن است یک تابع برای وارد کردن مجموعه آموزشی و یک تابع دیگر برای وارد کردن مجموعه آزمایشی ایجاد کنید. تخمین‌گران انتظار دارند ورودی‌های آنها به صورت یک جفت شی فرم‌بندی شوند:

  • فرهنگ لغتی که در آن کلیدها نام ویژگی‌ها و مقادیر Tensor (یا SparseTensors) هستند که حاوی داده‌های ویژگی مربوطه است.
  • یک تانسور حاوی یک یا چند برچسب