ANN:如何正确选择初始权重以避免局部最小值?

时间:2013-07-02 10:11:08

标签: artificial-intelligence neural-network gradient-descent

在反向传播训练中,在梯度下降误差表面期间,隐藏层中具有大量神经元的网络可能陷入局部最小值。我已经读过在所有情况下将权重重新初始化为随机数最终会避免这个问题。 这意味着始终存在一组“正确”的初始权重值。 (这可以安全地假设吗?)

我需要找到或制作一个找到它们的算法。

我尝试使用谷歌搜索算法,尝试自己设计但无济于事。有人可以提出解决方案吗?也许是我可以搜索的算法名称?

注意:这是一个常规的前馈3层卷饼:)

注意:我知道已经尝试将GA用于此目的,但这需要在每次迭代时重新训练网络,当它变得足够大时,这会花费很多时间。

提前致谢。

1 个答案:

答案 0 :(得分:3)

遗憾的是,从来没有保证你不会陷入局部最佳状态。除非您能够证明您正在尝试优化的函数的某些属性,否则存在局部最优并且爬山方法将成为它们的牺牲品。 (通常情况下,如果你能证明你需要证明的事情,你也可以选择比神经网络更好的工具。)

一种经典的技术是逐渐降低学习速度,然后再增加它,然后再慢慢减少几次。提高学习速度会降低算法的稳定性,但会使算法跳出局部最优。这与模拟退火密切相关。

我很惊讶谷歌在这里没有帮助你,因为这是许多已发表论文的主题:尝试与“神经网络和反向传播”相关的术语,如“局部最小值”和“局部最小值问题”。您应该看到许多对改进的backprop方法的引用。