Восстановить модель тензор потока - PullRequest
0 голосов
/ 01 мая 2018

Я тестирую возможность сохранить модель, а затем восстановить ее в другом экземпляре python. Для этого я использую этот код для сохранения модели:

saver = tf.train.Saver([weights0,weights1,weights2,syn0,bias0,syn1,bias1],max_to_keep = 2)
saver.save(sess, '..\\places365_TFG\\models\\CNNFinalModel', global_step=l)

А потом в другом экземпляре Python я делаю это:

new_saver = tf.train.import_meta_graph('..\\places365_TFG\\models\\CNNFinalModel-67.meta')
new_saver.restore(sess, 
tf.train.latest_checkpoint('..\\places365_TFG\\models\\./'))
graph = tf.get_default_graph()
weights0 = graph.get_tensor_by_name("weights0:0")

Чтобы проверить, хорошо ли восстановлено значение weights0, я делаю:

sess.run(weights0)

Переменная weights0 была инициализирована следующим образом:

def weight_variable(shape,name):
   initial = tf.truncated_normal(shape, stddev=0.1, name=name)
   return tf.Variable(initial)

weights0 = weight_variable([3,3,3,16], name='weights0')

Проблема, которую я вижу, заключается в том, что каждый раз, когда я выполняю это, значение weigths0 изменяется. Я полагаю, это потому, что определяется как переменная, но я хочу сохранить значение, сохраненное в исходной нейронной сети.

Как я могу это сделать?

Заранее спасибо.

...