支持向量机回归预测 梯度下降法和随机梯度下降法的区别?
梯度下降法和随机梯度下降法的区别?
梯度下降算法是一个比较广的概念, 意思是: 你优化一个函数/分类器时,如何减少它的误差?不妨选择梯度下降方向,该方向很可能是走向最优点的方向。 然后加上一个随机,表示: 既然你知道 方向是:梯度方向了,那么走多长呢? 答案是:随机。所以,梯度下降算法包括 随机梯度下降算法。
随机梯度下降为什么比梯度下降快?
理论上来说,随机梯度下降比梯度下降速度快的原因有两个。
首先是随机梯度下降算法在前期有很突出的迭代效果。
因为初始化设置中的参数是随机的,一般距离最优结果较远,所以在初始阶段比较重要的是快速离开初始区域、向最优区域前进。而随机梯度下降算法因为每一次迭代计算中只有一个样本,相对于梯度下降,只要学习率没有错得离谱,随机梯度下降可以做到更快地离开初始区域,而在初始阶段争取的时间远多于随机梯度下降算法在后期面对噪音时候浪费的时间。
其次是随机梯度下降算法节约了计算冗余信息的时间。
梯度下降算法在计算时,将全部数据同时计算,而全部数据中通常包含了类似的数据,因而构成了冗余,所以在实际运用中,随机梯度下降算法即便用少量的、随机的数据计算出的结果,也和梯度下降差不多。在数据集非常庞大时,极有可能出现相似的函数,sgd的优势在此时更加明显,梯度下降会在每次参数更新前对相似的样本计算梯度,而sgd一个样本更新一次的做法,使它可以在不用遍历的条件下,轻松地达到最优解附近,虽然这会损失一定的精度,但是十分幸运的是,我们在进行机器学习训练任务时,大部分时间并不追求最优解,而是常常提前结束,所以精度的微小缺陷在此处也显得不那么重要了。
支持向量机回归预测 逻辑回归的梯度下降算法 线性回归梯度下降
版权声明:本文内容由互联网用户自发贡献,本站不承担相关法律责任.如有侵权/违法内容,本站将立刻删除。