当尝试在经过训练的网络的多个历元上加载保存的权重时,请使用以下代码返回:
import tensorflow as tf
from returnn.Config import Config
from returnn.TFNetwork import TFNetwork
for i in range(1,11):
modelFilePath = path/to/model/ + 'network.' + '%03d' % (i,)
returnnConfig = Config()
returnnConfig.load_file(path/to/configFile)
returnnTfNetwork = TFNetwork(config=path/to/configFile, train_flag=False, eval_flag=True)
returnnTfNetwork.construct_from_dict(returnnConfig.typed_value('network'))
with tf.Session() as sess:
returnnTfNetwork.load_params_from_file(modelFilePath, sess)我得到以下错误:
Variables to restore which are not in checkpoint:
global_step_1
Variables in checkpoint which are not needed for restore:
global_step
Probably we can restore these:
(None)
Error, some entry is missing in the checkpoint发布于 2018-06-26 13:14:49
问题是每次在循环中都要重新创建TFNetwork,而且每次都会为全局步骤创建一个新变量,因为每个变量都必须有唯一的名称,因此必须调用不同的变量。
您可以在循环中这样做:
tf.reset_default_graph()https://stackoverflow.com/questions/51043758
复制相似问题