有了偏差,ANN 不再收敛
With bias, ANN not converge anymore
我正在学习 ANN,我为简单的二元分类问题做了两个脚本(在 fortran90 和 python 中)。
我第一次没有偏见,收敛得很好。但是为每个节点添加一个偏差它不再收敛(或者一切都接近 0 或一切都接近 1)
偏差为 1,每个节点都有特定的权重。它是随机初始化的,然后更新添加其他权重等增量。我试图改变渐变步长,但它仍然在做同样的事情。
有人有线索吗?....
编辑:
网络:
IN HIDDEN OUTPUT node
(each column is a LAYERS (each column is
training data) (2layers of 3node) the wanted result)
W1 .___W2__. W3
|0|0|1|1|-------->|___|___|______
|0|1|0|1|--\/_-\->|___|___|______\_--> |1|1|0|0|
|1|0|1|1|--/\__/->|___|___|______/
激活函数是sigmoid (1/(1+exp(-x)))
权重初始化为 [-1, 1]
范围内的正态分布
您可能有问题:
你也应该注意你的学习步骤,如果它太大你就无法收敛。
我正在学习 ANN,我为简单的二元分类问题做了两个脚本(在 fortran90 和 python 中)。
我第一次没有偏见,收敛得很好。但是为每个节点添加一个偏差它不再收敛(或者一切都接近 0 或一切都接近 1)
偏差为 1,每个节点都有特定的权重。它是随机初始化的,然后更新添加其他权重等增量。我试图改变渐变步长,但它仍然在做同样的事情。
有人有线索吗?....
编辑:
网络:
IN HIDDEN OUTPUT node
(each column is a LAYERS (each column is
training data) (2layers of 3node) the wanted result)
W1 .___W2__. W3
|0|0|1|1|-------->|___|___|______
|0|1|0|1|--\/_-\->|___|___|______\_--> |1|1|0|0|
|1|0|1|1|--/\__/->|___|___|______/
激活函数是sigmoid (1/(1+exp(-x)))
权重初始化为 [-1, 1]
范围内的正态分布您可能有问题:
你也应该注意你的学习步骤,如果它太大你就无法收敛。