2016-05-25 4 views
1

Angenommen ausführen ich folgendes auf Maschine A nach einigen Berechnungen für einige tf.Sessionsess und einige tf.train.Saversaver, vorausgesetzt, ich einige tf.GraphG mit einigen Variablen V:Hat der Saver in TensorFlow ein plattformübergreifendes Dateiformat?

with tf.Graph().as_default(): 
    # Define G, V, initialize for sess, then run some computation 
    saver.save(sess, '/A/somefolder/somefile') 

Das schafft somefile, somefile.meta und Updates checkpoints in somefolder.

Als nächstes nehme auf Maschine B ich den gesamten Inhalt des somefolder kopieren und ausführen folgendes:

with tf.Graph().as_default(): 
    # Define G and V the same way. No initialization or run here. 
    saver.restore(sess, '/B/somefolder/somefile') 

Für beide Maschinen A und B werden die Variablen haben den gleichen Zustand am Ende der Codeblöcke? Wird dies garantiert über alle Plattformen hinweg funktionieren? Was ist mit verschiedenen Versionen von Linux?

Antwort

2

Der Sparer verwendet ein einfaches Dateiformat based on LevelDB, um eine Schlüsselwerttabelle zu speichern, die Variablennamen (als Zeichenfolgen) zuordnet. Das Format soll über alle Plattformen hinweg funktionieren, obwohl es meistens auf Little-Endian-Architekturen (d. H. X86-basiert) getestet wurde. Die gleiche Datei sollte in verschiedenen Versionen von Linux und zwischen Linux und Mac OS X funktionieren. Wenn dies nicht der Fall ist, erhöhen Sie bitte eine issue!

Verwandte Themen