2016-03-24 11 views
20

Wenn ein Kontrollpunkt zu speichern, speichert TensorFlow oft eine Meta-Datei: my_model.ckpt.meta. Was ist in dieser Datei, können wir ein Modell wiederherstellen, selbst wenn wir es löschen und welche Art von Informationen haben wir verloren, wenn wir ein Modell ohne die Meta-Datei wiederherstellen?Was ist die TensorFlow-Checkpoint-Metadatei?

Antwort

25

Diese Datei enthält eine serialisierte MetaGraphDef protocol buffer. Das MetaGraphDef ist als ein Serialisierungsformat entworfen, das alle Informationen enthält, die zum Wiederherstellen eines Trainings- oder Inferenzprozesses erforderlich sind (einschließlich des GraphDef, der den Datenfluss beschreibt, und zusätzlicher Anmerkungen, die die Variablen, Eingabepipelines und andere relevante Informationen beschreiben). Zum Beispiel wird MetaGraphDef von TensorFlow Serving verwendet, um einen Inferenzservice basierend auf Ihrem trainierten Modell zu starten. Wir untersuchen andere Tools, die das MetaGraphDef für Training verwenden könnten.

Unter der Annahme, dass Sie immer noch den Python-Code für Ihr Modell haben, brauchen Sie nicht die MetaGraphDef das Modell wieder herzustellen, da Sie alle Informationen in den MetaGraphDef durch erneutes Ausführen des Python-Code, der das Modell baut rekonstruieren können. Zur Wiederherstellung von einem Prüfpunkt benötigen Sie nur die Prüfpunktdateien, die die trainierten Gewichte enthalten, die regelmäßig in dasselbe Verzeichnis geschrieben werden.

+4

Gibt es eine Möglichkeit, diese mit der C++ API zu laden? Ich habe Probleme beim Ausführen von Graphen in C++, weil die Variablen nicht mit regulären GraphDef-Protos initialisiert werden. –

+0

Danke für die Erklärung und es hilft sehr. – tobe

+0

Hi @mrry, wenn ich mehrere Checkpoints mit globalen Schritten speichere, ergeben sich mehrere '' 'name-step.cpkt''' und' 'name-step.cpkt.meta''', aber es gibt nur 1' ' 'checkpoint''' Datei. Was ist das '' 'checkpoint''' Datei und warum gibt es nicht so viele dieser Datei als' '' name-step.cpkt''' bitte? – tnq177