tensorflow - tf.Variable 如何维护图的状态?

标签 tensorflow

我正在尝试学习 tensorflow 。我真的对 tf.Variable 的用法感到困惑。我知道在机器学习中我们必须随机为过滤器分配权重。但这可以通过 tf.truncated_normal 函数来完成。那么这里的tf.Variable的作用是什么呢?文档指出 tf.Variable 维护图的状态。这是什么意思?如果我省略 tf.Variable 结果是相同的。那么tf.Variable有什么作用呢?有人可以帮我理解这一点吗?

`def weight_variable(shape):
    initial = tf.truncated_normal(shape, mean=0, stddev=0.1)
    return tf.Variable(initial)
#function call
filter = weight_variable([1,2,2,1])`

最佳答案

tensorflow中,使用tf.Variable()创建的任何内容都将在反向传播训练期间得到更新,例如权重矩阵。

理想情况下,默认情况下,每个 tf.Variable() 都会成为可训练的,除非您显式指定它不可训练

如果你这样做initial = tf.truncated_normal([5,10],mean=0,stddev=0.1),那么tensorflow将不知道它是一个可训练变量,因此它不会接受培训。它将在整个训练过程中保持不变。

关于tensorflow - tf.Variable 如何维护图的状态?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/52473088/

相关文章:

python - Tensorflow : bucketize a tensor, 然后生成分类张量

parallel-processing - tensorflow 中模型并行性的实现

python - 如何在 Resnet 50 分类中输出置信度?

tensorflow - 理解 tensorflow sequence_loss 参数

tensorflow - TensorFlow 仅限于神经网络吗?

tensorflow - Tensorflow 是否可以进行增量学习?

python - 如何在 TensorFlow 中锁定张量的特定值?

python - “AutoTrackable”对象在 Python 中不可调用

tensorflow - 第一层 MLP 输出在一个 epoch 后为零