gpt4 book ai didi

tensorflow - 如何重命名符合名称范围的变量?

转载 作者:行者123 更新时间:2023-12-03 15:18:57 25 4
gpt4 key购买 nike

鉴于x, y是张量,我知道我可以做

with tf.name_scope("abc"):
z = tf.add(x, y, name="z")


这样 z被命名为 "abc/z"

我想知道是否存在在以下情况下直接分配名称的函数 f

with tf.name_scope("abc"):
z = x + y
f(z, name="z")


我现在使用的愚蠢的 fz = tf.add(0, z, name="z")

最佳答案

如果要“重命名”操作,则无法直接执行此操作,因为tf.Operation(或tf.Tensor)一旦创建便是不可变的。因此,重命名操作的典型方法是使用tf.identity(),几乎没有运行时成本:

with tf.name_scope("abc"):
z = x + y
z = tf.identity(z, name="z")


但是请注意,构造名称范围的推荐方法是将范围本身的名称分配给范围的“输出”(如果有单个输出操作):

with tf.name_scope("abc") as scope:
# z will get the name "abc". x and y will have names in "abc/..." if they
# are converted to tensors.
z = tf.add(x, y, name=scope)


这就是TensorFlow库的结构方式,并且倾向于在TensorBoard中提供最佳可视化效果。

关于tensorflow - 如何重命名符合名称范围的变量?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34399588/

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