我有一个旨在进行反向传播的神经网络。
我一直在使用以下方法对隐藏层进行权重更新
Δwji = η × δj × yi
其中 δj 是 φ'(vj) * ej,其中 vj = Σi wjiyi,对于输出层和 φ'(vj) * sum(δk*wkj) 对于前几层
然而,隐藏单元的偏差之一总是趋于无穷大。它的意义是什么?
编辑:
无穷大的值原来是来自某些神经元的输入值 vj。那么,这意味着我的神经网络只是在强化一个特定神经元应该始终激活的事实吗?
这是否也意味着我在训练时缺少针对这些特定输入的各种示例?
最佳答案
反向传播学习的收敛性并不能保证在每个问题和每个条件下都能收敛。例如,如果 权重空间 中存在某个无限递减的方向,算法可能会发散。
您可以尝试降低学习率 η(如果此值过高,ANN 通常会完全发散)或更改问题编码或增加训练集的多样性。
关于java - 神经网络反向传播 : bias goes to infinity,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7833510/