2016-03-24 10 views
20

Quando si salva un checkpoint, TensorFlow salva spesso un file meta: my_model.ckpt.meta. Cosa c'è in quel file, possiamo ancora ripristinare un modello anche se lo cancelliamo e che tipo di informazioni perdiamo se ripristiniamo un modello senza il meta file?Qual è il meta file del checkpoint TensorFlow?

risposta

25

Questo file contiene un numero di serie MetaGraphDef protocol buffer. Lo MetaGraphDef è progettato come un formato di serializzazione che include tutte le informazioni necessarie per ripristinare un processo di addestramento o di inferenza (incluso lo GraphDef che descrive il flusso di dati e altre annotazioni che descrivono le variabili, le condutture di input e altre informazioni pertinenti). Ad esempio, lo MetaGraphDef viene utilizzato da TensorFlow Serving per avviare un servizio di inferenza basato sul modello addestrato. Stiamo esaminando altri strumenti che potrebbero utilizzare lo MetaGraphDef per l'allenamento.

Supponendo che hai ancora il codice Python per il modello, non è necessario il MetaGraphDef per ripristinare il modello, perché è possibile ricostruire tutte le informazioni nel MetaGraphDef eseguendo nuovamente il codice Python che costruisce il modello. Per ripristinare da un punto di controllo, sono necessari solo i file di checkpoint contenenti i pesi addestrati, che vengono scritti periodicamente nella stessa directory.

+4

C'è un modo per caricare questi con l'API C++? Sto incontrando dei problemi nell'esecuzione di grafici in C++ perché le variabili non sono inizializzate con i normali proto GraphDef. –

+0

Grazie per la spiegazione e aiuta molto. – tobe

+0

Salve @mrry, quando salvo più checkpoint con passi globali, risulta in più '' 'name-step.cpkt''' e' 'nome-step.cpkt.meta''', ma c'è solo 1' ' 'checkpoint''' file. Cos'è questo '' 'checkpoint''' file e perché non ci sono molti di questi file come' 'nome-step.cpkt''' per favore? – tnq177

Problemi correlati