我对张量流有疑问; 我的网络状况是固定的,但是由于每种情况的某些局部特征,我想在许多不同的情况下进行培训;由于输入(不同的情况)是“相似的”,因此我想使用上一个的训练结果来初始化此新学习。 我试过的是以下内容(我简化了代码),是否有人有更好的实现此想法?谢谢
cae_in = tf.placeholder(tf.float32,(some size))
cae_out = tf.placeholder(tf.float32,(None,(some size))
out = some_function(cae_in)
loss = tf.reduce_mean(tf.square(out-cae_out))
optimiser = tf.train.AdamOptimizer(learning_rate=learning_rate).minimize(loss)
init_op = tf.global_variables_initializer()
with tf.Session() as sess:
init_op.run()
for inx in range(all_cases):
feed_in = some array[i]
feed_in2 = some array[i]
for iteration in range(0,n_iterations):
sess.run([optimiser], feed_dict = {cae_in: feed_in,cae_out:feed_in2})
答案 0 :(得分:1)
在检查点完成一个会话后,您可以尝试保存可训练的变量:
saver = tf.train.Saver(tf.trainable_variables())
with tf.Session():
...
saver.save()
在开始另一项训练之前,从该检查点恢复。