python - tf.constant 和 tf.Variable 之间的区别(trainable= False)

标签 python tensorflow

我遇到了一些使用 tf.Variable(... trainable=False) 的代码,我想知道使用 tf.constant(...) 之间是否有任何区别tf.Variable(将 trainable 参数设置为 False)

trainable 参数选项与 tf.constant 一起使用似乎有点多余。

最佳答案

我可以直接告诉你的几个原因:

  • 如果您声明了 tf.Variable,您可以稍后根据需要更改它的值。另一方面,tf.constant 是不可变的,这意味着一旦定义它,就无法更改它的值。

  • 假设您有一个具有多个权重矩阵的神经网络,在前几个时期,您可以训练最后一层,同时保持其余所有层的卡住。之后,在最后几个时期,您需要微调整个模型。如果第一层定义为tf.constant,则不能这样做。

关于python - tf.constant 和 tf.Variable 之间的区别(trainable= False),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/56479870/

相关文章:

python - 调制探测器 : FATAL: Module nvidia-uvm not found in directory/lib/modules/

python - 物体检测api训练问题

python - 在 Django 模板中将 user.id 转换为 user.username

python - 如何在 MongoDB 中存储锁对象?

tensorflow - 使用 Sigmoid 激活函数代替线性激活与在损失中使用 sigmoid 的区别

python - 图像分类任务的损失为 NaN

python - TensorFlow 中损失函数 (MLP) 的奇怪 NaN 值

python - mysql-python 连接器同时适用于 python2.7 和 3.4

python - 一个比较特殊的txt文件解析

python - 计算 Pandas 数据框中的相同日期