TF Hub 的通用 SavedModel API

简介

TensorFlow Hub 托管各种任务的模型。鼓励针对同一任务的模型实现通用 API,以便模型使用者可以轻松地交换它们,而无需修改使用它们的代码,即使它们来自不同的发布者。

目标是让交换同一任务的不同模型变得像切换字符串值超参数一样简单。通过这种方式,模型使用者可以轻松地找到最适合其问题的模型。

此目录收集了 TF2 SavedModel 格式 中模型的通用 API 规范。(它取代了现已弃用的 TF1 Hub 格式通用签名。)

可重复使用的 SavedModel:通用基础

可重复使用的 SavedModel API 定义了将 SavedModel 加载回 Python 程序并将其作为更大 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

这些使用可重用 SavedModel API改进了特定 ML 任务和数据类型的约定。