在构建具有一个隐藏层的神经网络时,出现了是否在反向传播期间更新偏差的问题。我基本上是想节省内存,所以我的问题是,如果我只更新权重与权重和偏差相比,会有多大的不同。使用前者,除了我设置为标准之外,我不必保存任何其他偏差值。那么学习会不会有问题呢?如果是这样,那么为什么权重更新不足以训练它?
为清楚起见进行编辑:我说的是反向传播公式
其中是权重的差(向量),是偏差的差(向量),是学习率,是层(这里)的输出(向量),并且是层的计算误差增量(向量) 。如果你只是在反向传播中不使用并将偏差保持在怎么办?
在构建具有一个隐藏层的神经网络时,出现了是否在反向传播期间更新偏差的问题。我基本上是想节省内存,所以我的问题是,如果我只更新权重与权重和偏差相比,会有多大的不同。使用前者,除了我设置为标准之外,我不必保存任何其他偏差值。那么学习会不会有问题呢?如果是这样,那么为什么权重更新不足以训练它?
为清楚起见进行编辑:我说的是反向传播公式
其中是权重的差(向量),是偏差的差(向量),是学习率,是层(这里)的输出(向量),并且是层的计算误差增量(向量) 。如果你只是在反向传播中不使用并将偏差保持在怎么办?
这个想法是学习偏差权重,但将激活固定为 1。其他任何东西都会使它成为一个额外的普通单元。
如果您尝试将偏差固定在任何值,那么每个神经元将尝试使用其“整体输入激活”作为一种偏差(通过对其所有输入具有较小的权重)。这会让你的学习变得不那么稳定,而不仅仅是有偏见。如果您尝试通过正则化来对抗这种愿望,那么网络可能无法为您的问题编码一个好的解决方案。
您真正节省了多少内存?