مقدمه
TensorFlow Hub میزبان مدل ها برای کارهای مختلف است. مدلهای مربوط به یک کار تشویق میشوند تا یک API مشترک را پیادهسازی کنند تا مصرفکنندگان مدل بتوانند به راحتی آنها را بدون تغییر کدی که از آنها استفاده میکند، مبادله کنند، حتی اگر از ناشران مختلف باشند.
هدف این است که مبادله مدل های مختلف برای یک کار مشابه به سادگی تغییر یک ابرپارامتر با مقدار رشته ای باشد. با آن، مصرف کنندگان مدل به راحتی می توانند بهترین مورد را برای مشکل خود پیدا کنند.
این دایرکتوری مشخصات APIهای رایج برای مدلها را در قالب TF2 SavedModel جمعآوری میکند. (این قالب جایگزین امضاهای رایج برای قالب منسوخ شده TF1 Hub می شود.)
قابل استفاده مجدد SavedModel: پایه مشترک
API SavedModel قابل استفاده مجدد، قراردادهای کلی نحوه بارگذاری SavedModel را در برنامه پایتون و استفاده مجدد از آن به عنوان بخشی از یک مدل بزرگتر TensorFlow تعریف می کند.
استفاده اساسی:
obj = hub.load("path/to/model") # That's tf.saved_model.load() after download.
outputs = obj(inputs, training=False) # Invokes the tf.function obj.__call__.
برای کاربران Keras، کلاس hub.KerasLayer
به این API متکی است تا SavedModel قابل استفاده مجدد را به عنوان یک لایه Keras (محافظت از کاربران Keras از جزئیات آن)، با ورودیها و خروجیها مطابق با APIهای ویژه کار که در زیر فهرست شدهاند، بپیچد.
APIهای ویژه وظیفه
اینها API قابل استفاده مجدد SavedModel را با قراردادهایی برای وظایف خاص ML و انواع داده ها اصلاح می کنند.