为什么我们不使用非恒定学习率来实现除神经网络以外的其他事物的梯度体面?


14

在梯度下降中使用非恒定的学习率,深度学习文学充满了巧妙的技巧。像指数衰减,RMSprop,Adagrad等之类的东西很容易实现,并且在每个深度学习包中都可用,但是在神经网络之外似乎并不存在。有什么理由吗?如果只是人们根本不在乎,是否有理由为什么我们不必在神经网络之外关心?


2
我认为线搜索或信任区域方法是“非恒定”学习率。
海涛杜

2
有许多非恒定梯度方法是独立于神经网络开发的。Barzilai-Borwein GD和Nesterov GD是两个突出的例子。
Sycorax说恢复莫妮卡

@Sycorax,但实际上它们是在NN之外日常使用的吗?
蒂姆

2
@Tim我不能说。当我需要在NN之外进行本地搜索时,可以使用二阶方法。但是,当我可能在后兜里摆弄一个可爱的把戏时,我为能更快地使用GD方法而感到兴奋。
Sycorax说恢复莫妮卡

1
值得注意的是(令我惊讶),我遇到了GBM不使用恒定学习率的情况,这让人有些惊讶。一个特别的例子是在LightGBM上实施DART。虽然原始论文没有使用越来越小的LR,但是默认情况下实际实现了。
usεr11852恢复单胞菌说,

Answers:


16

免责声明:我在神经网络之外的优化方面没有太多经验,因此我的回答将明显有偏见,但有几项重要的作用:

  • (深度)神经网络具有很多参数。这有几个含义:

    首先,它仅仅因为计算Hessian和高阶导数变得不可行而排除了高阶方法。在其他领域,这可能是比SGD的任何调整更好的有效方法。

    其次,尽管SGD很棒,但它往往会变得不切实际地缓慢。这些改进的SGD变体主要实现了更快的训练,同时有可能失去SGD的某些优良特性。在其他领域,SGD培训时间可能不是瓶颈,因此通过加快培训速度而获得的改进可能只是微不足道的。

  • 训练(深度)神经网络是非凸优化的,并且我不知道该领域的显着凸松弛结果。与其他领域不同,神经网络并未将重点放在可证明的全局最优解上,这导致需要投入更多的精力来改进损耗表面的特性及其在优化过程中的遍历。

    在其他领域,采用凸松弛和获得全局最优解可能会成为关注的焦点,而不是优化算法,因为一旦将问题定义为凸问题,优化算法的选择就无法提高解的质量。 。

我想这个答案并不涵盖所有可能的方面,而且我自己也对其他观点感到好奇。


因此,您基本上是在说其他问题要简单得多,所以不需要这些技巧,香草SGD足以解决这些问题了吗?
蒂姆

3
那太过分了。1)有些问题可以使用高阶方法,而无需自适应SGD。2)由于阿姆达尔定律,某些问题无法从SGD改善中受益。3)一些问题可能会提供凸解决方案,而主要困难是将它们摆成凸解决方案。这些都没有说其他问题比深度学习要简单得多,而是解释了为什么改进SGD并不是他们关注的重点。
Jan Kukacka,

可能的观点4:如果采用其他方法并使之足够复杂(高维,非线性,非凸)以从复杂的梯度下降方法中受益,则该方法可能称为神经网络。
纳撒尼尔(Nathaniel)

1
@JanKukacka我知道,由于您的回答是间接的,我一直在寻求澄清
Tim
By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.