25 深度学习 | 玉不琢不成器:深度学习中的优化
该思维导图由 AI 生成,仅供参考
- 深入了解
- 翻译
- 解释
- 总结
深度学习优化方法的挑战及应对策略 深度学习的优化是一个关键问题,本文介绍了深度学习中的优化挑战和应对方法。在深度神经网络中,由于隐藏层较多,且代价函数的Hessian矩阵常常病态,导致梯度下降不稳定。此外,深度学习面临局部极小值和鞍点问题,增加了全局最优解的搜索难度。文章提到了随机梯度下降法及其改进方法,如降噪和使用二阶导数近似,以应对这些挑战。随机梯度下降法通过使用训练数据子集来降低计算成本,而改进方法则进一步提升了算法的性能,抑制了噪声和加快了收敛速度。此外,还介绍了拟牛顿法、高斯牛顿法和无Hessian牛顿法等改进方法,以及动量方法、加速下降方法和坐标下降方法等自立门户的算法。这些方法为解决深度学习优化问题提供了有效途径。 总的来说,深度学习中的优化问题是复杂的,但随着新的优化方法不断出现,我们可以通过降噪、二阶导数近似和其他优化方法来解决病态矩阵、局部极小值和鞍点等问题。这些方法为读者提供了多种切入角度,以更好地理解和应用深度学习中的优化方法。
《人工智能基础课》,新⼈⾸单¥59
全部留言(7)
- 最新
- 精选
- 徐凌我大学本科学的是文科,之后做了十几年的市场销售方面工作。现在已经决心工作后的业余时间学人工智能,不知道还有没有戏,会不会起步太晚了? 我毕业太久了,之前中学数学都快忘光了。之前看吴恩达的课对他上面提到的数学都不太看得懂。 所以2年前决定学人工智能后。我前年把中学数学给学了。去年我自学了单元和多元微积分,统计学,学了一些基础的线性代数和微分方程,离散数学。编程方面我去年从hello world 开始学了python 和matlab,还学了点sql语言。 到现在为止我一共花了2000小时学数学和编程。 接下来今年可能会重点把线性代数基础打好。再学一学数学分析,概率学。我觉得现在我应该具备学机器学习的基础了,下个月准备开始学系统学习一下机器学习。下半年想看看有没有能力学一下随机过程,听说随机过程对于人工智能比较重要。 明年我希望能学一些优化论,和泛函分析。看看自己到时候有没有水平可以看一些国外论文。现在看了一下都基本看不懂。 不知道集合论和图论是否也应该学呢?另外数论对人工智能是不是不太重要。 王老师觉得我这个计划是否可行,有没有什么建议呢?另外到后面我发现能自学的网络素材变少了。没有找到什么公开课教pde之类的数学的,应该怎么学比较好呢?
作者回复: 人工智能用到的数学主要是线性代数、概率论和优化,如果深入理论的话需要泛函,至于集合、数论、微分方程这些先不慌看。 数学是工具,关键还是机器学习、神经网络这些算法。网上各种各样的以吴恩达为代表的公开课资源很多,有了初步的数学基础就可以进入这些领域了。中间遇到问题回头再补也可以,里面的项目也跟着做一做,用python就可以。 论文都是领域内的最新成果,有了基础再看。 集合和数论在现在的主流人工智能里是用不上的,但图论可以了解一些,图论的应用比较广。
2018-02-0412 - 林彦谢谢分享。 请问RMSprop,Adadelta主要使用的优化方法是不是文中提及的梯度聚合? 从找到的1年多前的文章来看,如果我上面的问题的答案是肯定的,梯度聚合和融合了Momentum的梯度聚合Adam及其一些变体(如融合进Nesterov Accelerated方法)的优化方法对于解决文中提到的问题的效果不少情况下更好。
作者回复: 两个方法上可能有相似之处,但出发点不一样,梯度聚合是为了调整梯度方向,RMSprop是为了调整学习率。 两者的结合原则上来说能起到更好的效果,因为是在两个不同的过程上进行优化的,但具体效果还要事实说话。
2018-02-053 - ifelse学习打卡2023-05-11归属地:浙江
- ifelse学习打卡2023-05-11归属地:浙江
- IT蜗壳-Tango果然还是需要代码才能更好的理解2020-11-08
- 杨家荣极客时间 21天打卡行动 23/21 <<人工智能基础课25>>深度学习中的优化 回答老师问题: 既然优化方法包含不同的切入角度,那么你觉得哪一种优化方法可能具有更好的效果呢? 如何选择优化算法 1 对于稀疏数据,尽量使用学习率可自适应的优化方法,不用手动调节,而且最好采用默认值。 2 SGD通常训练时间更长,但是在好的初始化和学习率调度方案的情况下(很多论文都用SGD),结果更可靠。 3 如果在意更快的收敛,并且需要训练较深较复杂的网络时,推荐使用学习率自适应的优化方法。 4 Adadelta,RMSprop,Adam是比较相近的算法,在相似的情况下表现差不多 。Adam 就是在 RMSprop 的基础上加了 bias-correction 和 momentum,随着梯度变得稀疏,Adam 比 RMSprop 效果会好。整体来讲,Adam 是最好的选择。 [来源:https://www.cnblogs.com/zingp/p/11352012.html] 今日所学: 1,病态矩阵是科学计算不愿打交道的对象,因为数值精度导致的不可避免的舍入误差可能会给输出带来巨大的偏离,正所谓“差之毫厘,谬以千里”。在神经网络的训练中,病态矩阵的影响体现在梯度下降的不稳定性上。当应用随机梯度下降解决优化问题时,病态矩阵对输入的敏感性会导致很小的更新步长也会增加代价函数,使学习的速度变得异常缓慢; 2,深度神经网络面临的另一个挑战是局部极小值的问题; 3,点是梯度为 0 的临界点,但它既不是极大值也不是极小值。从函数图像上看,多变量函数的鞍点在一个方向上向上弯曲,在另一个方向上则向下弯曲,从而形成了类似马鞍的形状。由于牛顿法的目标是寻找梯度为零的临界点,因而会受鞍点的影响较大,高维空间中鞍点数目的激增就会严重限制牛顿法的性能。 4,。随机梯度下降法(stochastic gradient descent)就是在传统机器学习和深度神经网络中都能发挥作用的经典算法。 5,随机梯度下降法是原始梯度下降法的一种改良, 6,在随机梯度下降法的基础上进行改进可以得到其他的优化方式,改进的手段主要有两种:一种是随机降低噪声,另一种是使用二阶导数近似。 7,降噪方法正是为了抑制噪声的影响应运而生,降噪的方式既包括提升单次梯度估计的精度,也包括提升迭代过程的精度,常用的算法包括动态采样、梯度聚合和迭代平均三类 8,动态采样和梯度聚合两类方法是通过使用固定的步长来获得线性的收敛速度,进而实现降噪; 9,迭代平均方法不是通过对梯度估计求平均,而是对每次迭代得到的参数结果求平均来实现降噪。 10,要提升随机梯度下降法的性能,还可以通过使用二阶导数近似的信息来抑制高度非线性和病态目标函数的不利影响。 11,其他随机剃度下降算法:典型的例子包括动量方法(momentum)、加速下降方法(accelerated gradient descent)和坐标下降方法(coordinate descent)。 关键字:凸优化问题,Hessian 矩阵,病态矩阵 总结重点: 1,深度学习中的优化需要解决病态矩阵、局部极小值和鞍点等问题; 2,深度学习优化中的降噪方法包括动态采样、梯度聚合和迭代平均; 3,深度学习优化中的二阶导数近似方法是对原始牛顿法的各种改进; 4,其他优化方法包括动量方法、加速下降方法和坐标下降方法。2020-01-10
- 明High要多点图就好了2018-02-25