API SavedModel comuni per TF Hub

introduzione

TensorFlow Hub ospita modelli per una varietà di attività. I modelli con lo stesso compito sono incoraggiati a implementare un'API comune in modo che i consumatori dei modelli possano scambiarli facilmente senza modificare il codice che li utilizza, anche se provengono da editori diversi.

L'obiettivo è rendere lo scambio di modelli diversi per la stessa attività semplice come cambiare un iperparametro con valori di stringa. In questo modo, i consumatori modello possono facilmente trovare quello migliore per il loro problema.

Questa directory raccoglie le specifiche delle API comuni per i modelli nel formato TF2 SavedModel . (Sostituisce le firme comuni per il formato TF1 Hub ormai deprecato.)

SavedModel riutilizzabile: il fondamento comune

L' API Reusable SavedModel definisce le convenzioni generali su come caricare nuovamente un SavedModel in un programma Python e riutilizzarlo come parte di un modello TensorFlow più grande.

Utilizzo di base:

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

Per gli utenti Keras, la classe hub.KerasLayer si basa su questa API per racchiudere Reusable SavedModel come Keras Layer (proteggendo gli utenti Keras dai suoi dettagli), con input e output in base alle API specifiche dell'attività elencate di seguito.

API specifiche per attività

Questi perfezionano l' API Reusable SavedModel con convenzioni per particolari attività ML e tipi di dati.