【问题标题】:ANN: How to correctly pick initial weights to avoid local minima?ANN:如何正确选择初始权重以避免局部最小值?
【发布时间】:2013-06-29 15:52:12
【问题描述】:

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

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

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

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

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

提前致谢。

【问题讨论】:

  • 另一种(有些相关的)方法是使用随机变异的遗传算法。这样做是为了克服任何局部最小值。
  • 启发式将您快速推向最优,元启发式将您缓慢推向全局最优..尝试多线性方法

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


【解决方案1】:

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

一个经典的技巧是逐渐降低学习率,然后增加它,然后慢慢地把它拉下来,再一次,几次。提高学习率会降低算法的稳定性,但会赋予算法跳出局部最优的能力。这与模拟退火密切相关。

我很惊讶 Google 在这里没有为您提供帮助,因为这是一个有许多已发表论文的主题:尝试结合神经网络和反向传播使用“局部最小值”和“局部最小值问题”等术语。您应该看到许多对改进的反向传播方法的引用。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2019-07-25
    • 1970-01-01
    • 2021-12-19
    • 1970-01-01
    • 1970-01-01
    • 2016-06-12
    • 2015-02-22
    • 1970-01-01
    相关资源
    最近更新 更多