不同形狀的值我想加載檢查點文件,改變形狀有些變量((1,1,1024,55)
- >(1,1,1024,60)
),然後保存檢查站再次無法分配在Tensorflow
我所做的:
1.我已經加載檢查點
saver = tf.train.import_meta_graph(meta)
saver.restore(sess, ckpt
試過使用
tf.assign()
:for var in tf.global_variables(): if var.name == "22-convolutional/biases:0": assign = tf.assign(var, a, validate_shape=False) sess.run(assign)
然後,當我試圖執行
sess.run(tf.global_variables_initializer())
我有一個錯誤
Assign requires shapes of both tensors to match. lhs shape= [1,1,1024,60] rhs shape= [1,1,1024,55] [[Node: 22-convolutional/kernel/Adam_1/Assign = Assign[T=DT_FLOAT, _class=["loc:@22-convolutional/kernel"], use_locking=true, validate_shape=true, _device="/job:localhost/replica:0/task:0/cpu:0"](22-convolutional/kernel/Adam_1, zeros_51)]]
是個有什麼想法的想法嗎?
謝謝!
和**預期結果是什麼**?缺少5個值會發生什麼? – lejlot
分配後的新張量可能滿了零。此外,它不會啓動任何計算問題後改變形狀所需的變量,形狀將很好匹配 – Dmitry