我正在尝试读取ckpt文件,并将最后一层的尺寸从[29]更改为[32],并将其存储到新的ckpt文件中。 到目前为止,我已经尝试过:
tf.reset_default_graph()
b6_1 = tf.get_variable(name='b6_1', shape=[32],initializer=tf.zeros_initializer)
with tf.Session(config=tf.ConfigProto(allow_soft_placement=True)) as session:
b6_1.initializer.run()
#b6_2 = tf.convert_to_tensor(b6_1)
saver1 = tf.train.import_meta_graph("/docker_files/checkpoints_0_4_1_mozilla/model.v0.4.1.meta")
saver1.restore(session,'/docker_files/checkpoints_0_4_1_mozilla/model.v0.4.1')
graph = tf.get_default_graph()
b6 = graph.get_tensor_by_name("b6:0")
print(b6)
assign_1 = tf.assign(b6,b6_1)
session.run(assign_1)
print(b6)
似乎不正确,因为我正面临以下问题:
ValueError:两个形状的尺寸0必须相等,但必须为29并且 32.形状为[29]和[32]。输入形状为[29],[32]的“分配”(操作:“分配”)。
有关如何进行操作或任何其他方法的任何建议。