关于基于梯度下降的神经网络优化

时间:2019-07-03 15:42:50

标签: optimization deep-learning conv-neural-network gradient-descent convergence

是否有可能为神经网络的梯度下降优化算法确定最佳起点?

例如,在下面的链接中查看包含局部AND全局最小值的示例损失曲面,很明显(1)某些起点比其他起点要好,这是因为可以比其他起点更快地达到全局最优点,(2)某些起点将导致下降到本地,而不是全局最优;(3)某些起点可能根本不会收敛。

https://www.researchgate.net/profile/Klaus_Raizer/publication/278036660/figure/fig7/AS:294224927969287@1447160097730/Error-surface-in-the-weigth-space-for-two-weights.png

在此先感谢您的贡献:)

1 个答案:

答案 0 :(得分:0)

到目前为止,理论上尚不清楚什么是初始化神经网络权重的最佳方法。正如您已经提到的,损失表面是高度非凸的,并且基于初始化可能发生不同的事情。

当前流行的和经过实验验证的初始化技术包括Glorot初始化(http://proceedings.mlr.press/v9/glorot10a/glorot10a.pdf?hc_location=ufi)或He初始化(https://www.cv-foundation.org/openaccess/content_iccv_2015/papers/He_Delving_Deep_into_ICCV_2015_paper.pdf),旨在稳定训练过程。

通过某些随机初始化,可以为网络的行为提供一些新的理论保证:https://arxiv.org/abs/1901.03611

更接近您的问题,最近发现对于某些网络,如果通过SGD进行训练,它将收敛到损耗面的近乎全局最优值:https://arxiv.org/abs/1902.04674

总而言之,尚无一个普遍接受的答案,即深度神经网络的最佳初始化是什么,但是有经验证明“好的”初始化,并且最近有一些理论结果,但这是当前非常活跃的研究领域。