APIs SavedModel comuns para o TF Hub

Introdução

O TensorFlow Hub hospeda modelos para diversas tarefas. Os modelos da mesma tarefa são incentivados a implementar uma API comum para que os consumidores de modelos possam facilmente trocá-los sem modificar o código que os utiliza, mesmo que venham de diferentes editores.

A meta é fazer com que a troca de modelos diferentes para a mesma tarefa seja tão simples quanto a troca de um hiperparâmetro com valor de string. Dessa forma, os consumidores de modelos podem encontrar facilmente o melhor para o problema.

Esse diretório coleta especificações de APIs comuns para modelos no formato SavedModel TF2. Ele substitui as Assinaturas comuns pelo formato TF1 Hub obsoleto.

SavedModel reutilizável: a base comum

A API SavedModel reutilizável define convenções gerais de como carregar um SavedModel para um programa em Python e reutilizá-lo como parte de um modelo maior do TensorFlow.

Uso básico:

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__.

Para usuários da Keras, a classe hub.KerasLayer depende dessa API para unir o SavedModel reutilizável como uma plataforma Keras (que protege os usuários da Keras dos detalhes) com entradas e saídas de acordo com as APIs listadas abaixo, específicas à tarefa.

APIs específicas à tarefa

Elas refinam a API SavedModel reutilizável com convenções para tarefas e tipos de dados específicos de ML.