【发布时间】:2016-06-08 18:33:09
【问题描述】:
我想分配/修改我的变量的值,我希望通过他们的名字来调用它们。
例如:
vars = tf.trainable_variables()
print(vars[1].name)
'matrix1:0'
upt = vars['matrix1:0'].assign_add(tf.constant(1))
sess.run(upt)
原因是变量的索引不可靠,因为它们依赖于它们在代码中运行的时间。通过添加一个新变量,所有索引都需要移动,这很不方便。使用名字会让我的生活更轻松。
【问题讨论】:
-
vars={v.name:v for v in tf.trainable_variables()}怎么样 -
现在,你如何通过变量名来给变量赋值?
-
然后你可以做
vars['matrix1:0'].assign_add(tf.constant(1)) -
太好了,效果很好!谢谢你。介意添加回复,以便我将您的评论标记为答案吗?
标签: variables scope tensorflow assign