- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
是GraphKeys.TRAINABLE_VARIABLES
与 tf.trainable_variables()
相同?
是GraphKeys.TRAINABLE_VARIABLES
实际上tf.GraphKeys.TRAINABLE_VARIABLES
?
看起来网络成功训练了:
optimizer = tf.train.AdamOptimizer(config.LEARNING_RATE)
with tf.control_dependencies(tf.get_collection(tf.GraphKeys.UPDATE_OPS)):
self.train_op = optimizer.minimize(self.loss, var_list=tf.trainable_variables())
但不与
optimizer = tf.train.AdamOptimizer(config.LEARNING_RATE)
with tf.control_dependencies(tf.get_collection(tf.GraphKeys.UPDATE_OPS)):
self.train_op = optimizer.minimize(self.loss)
根据documentation :
var_list: Optional list or tuple of Variable objects to update to minimize loss. Defaults to the list of variables collected in the graph under the key GraphKeys.TRAINABLE_VARIABLES.
正如我在批量规范化示例代码 var_list
中看到的那样被省略:
x_norm = tf.layers.batch_normalization(x, training=training)
# ...
update_ops = tf.get_collection(tf.GraphKeys.UPDATE_OPS)
with tf.control_dependencies(update_ops):
train_op = optimizer.minimize(loss)
最佳答案
如果没有通过var_list
到minimize()
函数将通过以下方式检索变量(取自 compute_gradients()
source code ):
if var_list is None:
var_list = (
variables.trainable_variables() +
ops.get_collection(ops.GraphKeys.TRAINABLE_RESOURCE_VARIABLES))
如果您还没有定义任何ResourceVariable
不知何故不在 tf.trainable_variables()
中的实例结果应该是一样的。我的猜测是问题出在其他地方。
您可以尝试在调用 minimize()
之前执行一些测试确保您没有ResourceVariable
不在 tf.trainable_variables()
中的 s :
import tensorflow as tf
with tf.Graph().as_default():
x = tf.placeholder(tf.float32, shape=[None, 2])
with tf.name_scope('network'):
logits = tf.layers.dense(x, units=2)
var_list = (tf.trainable_variables()
+ tf.get_collection(tf.GraphKeys.TRAINABLE_RESOURCE_VARIABLES))
assert set(var_list) == set(tf.trainable_variables())
关于python - GraphKeys.TRAINABLE_VARIABLES 与 tf.trainable_variables(),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/55619070/
这里是 doc tensorflow中的tf.GraphKeys,如TRAINABLE_VARIABLES :将由优化器训练的变量对象的子集。 我知道tf.get_collection() ,它可以找
Tensorflow 定义了集合的预设,如下所示:https://www.tensorflow.org/versions/r0.12/api_docs/python/framework/graph_c
是GraphKeys.TRAINABLE_VARIABLES与 tf.trainable_variables() 相同? 是GraphKeys.TRAINABLE_VARIABLES实际上tf.Gra
我今天刚刚安装了新的 tf 和 cuda,但是当我运行之前适用于 tf-1.4 的代码时,在新的 tensorflow-2.1.0 和 cuda-10.1 下将无法运行 如何解决这个问题? 最佳答案
我正在尝试从保存的模型 output_graph.pb 中提取所有权重/偏差。 我读了模型: def create_graph(modelFullPath): """Creates a gra
我正在尝试查看已加载的变量列表 .pb文件,但由于某种原因它是空的。 这是代码: import tensorflow as tf tf_model_path = './tf_coreml_ssd_re
以下代码(复制/粘贴可运行)说明了如何使用 tf.layers.batch_normalization。 import tensorflow as tf bn = tf.layers.batch_no
我的目标是如何使用推荐的 tf.keras.layers.BatchNormalization 类 (https://www.tensorflow.org/api_docs/python/tf/ker
tensorflow 中 tf.control_dependencies(tf.get_collection(tf.GraphKeys.UPDATE_OPS)) 的目的是什么? 更多上下文:
我是一名优秀的程序员,十分优秀!