gpt4 book ai didi

python - 如何在特定名称范围内获取 tensorflow 变量?

转载 作者:太空宇宙 更新时间:2023-11-04 02:35:02 25 4
gpt4 key购买 nike

假设我们想要获取一个 tensorflow 变量的值,我们可以在 session 下运行它。

假设 a = tf.Variable(...)

然后可以使用sess.run(a)获取它的值

但是如果有两个同名但不同名称范围的变量,我该如何获取各个变量的值?

with tf.name_scope("x"):
a = tf.Variable(...)
with tf.name_scope("y"):
a = tf.Variable(...)

那么如何分别获取x下的ay下的a的值呢?如果我执行 sess.run(a),我将在 name_scope y(最近的一个)下获得值(value)

最佳答案

您可以检查变量的名称并通过范围/名称获取它们:

with tf.variable_scope("x"):
a = tf.get_variable('a', initializer=1)

with tf.variable_scope("y"):
a = tf.get_variable('a', initializer=2)

with tf.Session() as s:
s.run(tf.global_variables_initializer())
[print(var.op.name) for var in tf.global_variables()]
res = s.run(['x/a:0', 'y/a:0'])
print(res)

返回:

x/a
y/a
[1, 2]

关于python - 如何在特定名称范围内获取 tensorflow 变量?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/48119449/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com