APIs SavedModel comuns para TF Hub

Introdução

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

O objetivo é tornar a troca de modelos diferentes para a mesma tarefa tão simples quanto trocar um hiperparâmetro com valor de string. Com isso, o consumidor modelo pode facilmente encontrar o melhor para o seu problema.

Este diretório coleta especificações de APIs comuns para modelos no formato TF2 SavedModel . (Ele substitui as assinaturas comuns do agora obsoleto formato TF1 Hub .)

SavedModel reutilizável: a base comum

A API Reusable SavedModel define convenções gerais sobre como carregar um SavedModel de volta em um programa 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 Keras, a classe hub.KerasLayer depende desta API para agrupar o SavedModel reutilizável como uma camada Keras (protegendo os usuários Keras de seus detalhes), com entradas e saídas de acordo com as APIs específicas da tarefa listadas abaixo.

APIs específicas de tarefas

Eles refinam a API Reusable SavedModel com convenções para tarefas e tipos de dados específicos de ML.