TensorflowCatalog Classe
Definizione
Importante
Alcune informazioni sono relative alla release non definitiva del prodotto, che potrebbe subire modifiche significative prima della release definitiva. Microsoft non riconosce alcuna garanzia, espressa o implicita, in merito alle informazioni qui fornite.
Viene TensorFlowTransformer usato nei due scenari seguenti.
- Assegnazione dei punteggi con il modello TensorFlow con training preliminare: in questa modalità, la trasformazione estrae i valori dei livelli nascosti da un modello Tensorflow con training preliminare e usa gli output come funzionalità nella pipeline ML.Net.
- Ripetizione del training del modello TensorFlow : in questa modalità, la trasformazione ripete il training di un modello TensorFlow usando i dati utente passati attraverso ML.Net pipeline. Dopo aver eseguito il training del modello, gli output possono essere usati come funzionalità per l'assegnazione dei punteggi.
public static class TensorflowCatalog
type TensorflowCatalog = class
Public Module TensorflowCatalog
- Ereditarietà
-
TensorflowCatalog
Commenti
TensorFlowTransform estrae gli output specificati usando un modello Tensorflow con training preliminare . Facoltativamente, può ripetere il training del modello TensorFlow sui dati utente per modificare i parametri del modello sui dati utente ( noto anche come "Transfer Learning").
Per l'assegnazione dei punteggi, la trasformazione accetta come input il modello Tensorflow con training preliminare, i nomi dei nodi di input e i nomi dei nodi di output i cui valori si desidera estrarre. Per la ripetizione del training, la trasformazione richiede anche parametri correlati al training, ad esempio i nomi dell'operazione di ottimizzazione nel grafico TensorFlow, il nome dell'operazione di frequenza di apprendimento nel grafico e il relativo valore, il nome delle operazioni nel grafico per calcolare la perdita di dati e la metrica delle prestazioni e così via.
Per questa trasformazione è necessario installare il nuget Microsoft.ML.TensorFlow. TensorFlowTransform presuppone i presupposti seguenti relativi all'input, all'output, all'elaborazione dei dati e alla ripetizione del training.
- Per il modello di input, attualmente TensorFlowTransform supporta sia il formato del modello Frozen che il formato SavedModel . Tuttavia, la ripetizione del training del modello è possibile solo per il formato SavedModel . Il formato del checkpoint non è attualmente supportato per l'assegnazione dei punteggi né per la ripetizione del training a causa della mancanza di supporto C-API TensorFlow per il caricamento.
- La trasformazione supporta l'assegnazione di punteggi a un solo esempio alla volta. Tuttavia, la ripetizione del training può essere eseguita in batch.
- Gli scenari avanzati di apprendimento/ottimizzazione del trasferimento (ad esempio, l'aggiunta di più livelli nella rete, la modifica della forma degli input, il blocco dei livelli che non devono essere aggiornati durante il processo di ripetizione del training e così via) non sono attualmente possibili a causa della mancanza di supporto per la manipolazione di rete/grafo all'interno del modello usando TensorFlow C-API.
- Il nome delle colonne di input deve corrispondere al nome degli input nel modello TensorFlow.
- Il nome di ogni colonna di output deve corrispondere a una delle operazioni nel grafico TensorFlow.
- Attualmente, double, float, long, int, short, sbyte, ulong, uint, ushort, byte e bool sono i tipi di dati accettabili per input/output.
- Al termine, la trasformazione introdurrà una nuova colonna in IDataView corrispondente a ogni colonna di output specificata.
Gli input e gli output di un modello TensorFlow possono essere ottenuti usando gli GetModelSchema() strumenti o summarize_graph .
Metodi
| Nome | Descrizione |
|---|---|
| LoadTensorFlowModel(ModelOperationsCatalog, String, Boolean) |
Caricare il modello TensorFlow in memoria. Si tratta del metodo pratico che consente di caricare il modello una sola volta e successivamente usarlo per eseguire query sullo schema e sulla creazione di TensorFlowEstimator usando ScoreTensorFlowModel(String, String, Boolean). l'utilizzo di questa API richiede dipendenze NuGet aggiuntive per la ridistribuzione di TensorFlow. Per altre informazioni, vedere il documento collegato. TensorFlowModel contiene anche riferimenti a risorse non gestite che devono essere liberate con una chiamata esplicita a Dispose() o in modo implicito dichiarando la variabile con la sintassi "using" /> <format type="text/markdown"> [!include[io](~/.. /docs/samples/docs/api-reference/tensorflow-usage.md)] </format> |
| LoadTensorFlowModel(ModelOperationsCatalog, String) |
Caricare il modello TensorFlow in memoria. Si tratta del metodo pratico che consente di caricare il modello una sola volta e successivamente usarlo per eseguire query sullo schema e sulla creazione di TensorFlowEstimator usando ScoreTensorFlowModel(String, String, Boolean). l'utilizzo di questa API richiede dipendenze NuGet aggiuntive per la ridistribuzione di TensorFlow. Per altre informazioni, vedere il documento collegato. TensorFlowModel contiene anche riferimenti a risorse non gestite che devono essere liberate con una chiamata esplicita a Dispose() o in modo implicito dichiarando la variabile con la sintassi "using" /> <format type="text/markdown"> [!include[io](~/.. /docs/samples/docs/api-reference/tensorflow-usage.md)] </format> |