当前位置: 首页 > 面试题库 >

为什么我们在Tensorflow中命名变量?

卢光远
2023-03-14
问题内容

在某些地方,我看到了语法,其中用名称初始化变量,有时不使用名称初始化。例如:

# With name
var = tf.Variable(0, name="counter")

# Without
one = tf.constant(1)

命名变量有var "counter"什么意义?


问题答案:

name参数是可选的(可以创建带有或不带有它的变量和常量),并且在程序中使用的变量不依赖于它。名称在两个地方可能会有所帮助:

当您想要保存或还原变量时
(可以在计算后将它们保存到二进制文件中)。从文档:

默认情况下,它为每个变量使用Variable.name属性的值

matrix_1 = tf.Variable([[1, 2], [2, 3]], name="v1")
matrix_2 = tf.Variable([[3, 4], [5, 6]], name="v2")
init = tf.initialize_all_variables()

saver = tf.train.Saver()

sess = tf.Session()
sess.run(init)
save_path = saver.save(sess, "/model.ckpt")
sess.close()

但是你有变量matrix_1matrix_2它们是为保存v1v2在文件中。

TensorBoard中也使用名称来很好地显示边的名称
。您甚至可以使用相同的范围将它们分组:

import tensorflow as tf

with tf.name_scope('hidden') as scope:
  a = tf.constant(5, name='alpha')
  W = tf.Variable(tf.random_uniform([1, 2], -1.0, 1.0), name='weights')
  b = tf.Variable(tf.zeros([1]), name='biases')


 类似资料:
  • 问题内容: 有什么用的,并在Hibernate?因为我在互联网上发现的每个示例都将数据插入到单个表中,并使用两个不同的类来做到这一点。我的观点是,如果我使用单个表,那么我可以在单个类中映射所有列,那么为什么要使用不同的类。如果我们使用两个不同的表,则存在和hibernate关系。 问题答案: Hibernate 1中有两种对象。Value Object2 。实体 价值对象 是不能独立存在的对象。以

  • 问题内容: 我将稍微解释一下我的脚本,以便您可以理解我的问题。 基本上我做了一个脚本来检查SOCKS5是还是。 当我在上面测试我的脚本时,它运行良好,但是当我在Windows上对其进行测试时,直到我将以下行添加到: 谁能向我解释为什么我在Windows中需要此行,而在Linux服务器上却不需要? 问题答案: SSL证书上的此cURL手册页介绍了连接到SSL / TLS受保护主机时 证书验证 的过程

  • 我们为什么使用: 而不是: ?

  • 问题内容: 我对MYSQL非常新。我试图创建一个名为“ option”的表。 我的SQL查询是: 创建表选项( id int不为null主键auto_increment, 选择varchar(30) ) 执行此查询时,它显示以下错误 1064您的SQL语法有误;检查与您的MySQL服务器版本相对应的手册以获取正确的语法,以在第1行(使用0毫秒)附近在’option(id int not null

  • 问题内容: 在Python中,有一个名为的内置函数。这用于获取对象的所有属性的列表。 我了解它的作用,但对为什么调用它感到困惑。这个名称与从对象获取属性有什么关系? 问题答案: 它给你一个 目录 对象的所有属性ectory。 这不是文件系统中使用的目录,而是标准用法:名称或数据列表。

  • 问题内容: 有什么用的,并在Hibernate?因为我在互联网上发现的每个示例都是在单个表中插入数据,并使用两个不同的类来完成此操作。我的观点是,如果我使用单个表,那么我可以在单个类中映射所有列,那么为什么要使用不同的类。如果我们使用两个不同的表,则存在和休眠关系。 问题答案: Hibernate 1中有两种类型的对象。Value Object2 。实体 价值对象 是不能独立存在的对象。以为例。如