当前位置: 首页 > 编程笔记 >

机器学习中有哪些不同的梯度下降算法?

丁翰海
2023-03-14
本文向大家介绍机器学习中有哪些不同的梯度下降算法?,包括了机器学习中有哪些不同的梯度下降算法?的使用技巧和注意事项,需要的朋友参考一下

使用梯度下降的背后思想是在各种机器学习算法中将损失降至最低。从数学上讲,可以获得函数的局部最小值。

为了实现这一点,定义了一组参数,并且需要将它们最小化。给参数分配系数后,就可以计算误差或损失。接下来,权重被更新以确保误差最小化。除了参数,弱学习者可以是用户,例如决策树。

一旦计算出损失,就执行梯度下降,并逐步将树添加到算法中,以使损失最小。

一些示例包括线性回归中的系数参数或确保在机器学习html" target="_blank">算法中使用最佳权重。

梯度下降算法有不同类型,下面讨论其中一些。

批次梯度下降

它是一种梯度下降算法,可针对算法运行的每次迭代处理所有训练数据集。

如果训练数据的数量巨大,则批次梯度下降的计算量很大。因此,当数据集很大时,最好不要使用批量梯度下降。

在这种情况下,如果训练示例的数量很大,则首选随机梯度下降或小批量梯度下降。

随机梯度下降

该算法在每次迭代中处理一个训练样本。由于每次迭代只处理一个数据样本,因此每次迭代后都会更新参数。

与批量梯度下降相比,它更快。如果数据集中的训练样本数量很大,则开销很大。

这是因为迭代次数将很高,并且所花费的时间也将很高。

小型批次梯度下降

该梯度下降算法比批处理梯度下降和随机梯度下降更好。此处,在每个迭代中处理“ b”个示例,其中b <m

值``m''是指数据集中训练样本的总数。值``b''是小于``m''的值。如果训练示例的数量很多,则将分批处理数据,其中每批将在一次迭代中包含“ b”个训练示例。

小型批梯度下降适用于大型训练示例,减少了迭代次数。

 类似资料:
  • 迭代与梯度下降求解 求导解法在复杂实际问题中很难计算。迭代法通过从一个初始估计出发寻找一系列近似解来解决优化问题。其基本形式如下

  • 在本节中,我们将介绍梯度下降(gradient descent)的工作原理。虽然梯度下降在深度学习中很少被直接使用,但理解梯度的意义以及沿着梯度反方向更新自变量可能降低目标函数值的原因是学习后续优化算法的基础。随后,我们将引出随机梯度下降(stochastic gradient descent)。 一维梯度下降 我们先以简单的一维梯度下降为例,解释梯度下降算法可能降低目标函数值的原因。假设连续可导

  • 本文向大家介绍随机梯度下降法?相关面试题,主要包含被问及随机梯度下降法?时的应答技巧和注意事项,需要的朋友参考一下 最小化每个样本的损失函数,迭代更新更快,但总体上是朝着整体最优前进的,与批量梯度下降的关系: 牛顿法 利用损失函数的二阶导数,收敛更快,不再是限于当前歩最优,有了往后看的整体概念,不过也没有整体的概念,只是在局部上更加细致,不过计算比较复杂,因为需要求解海森矩阵的逆矩阵比较复杂

  • 校验者: @A 翻译者: @L 校验者: @HelloSilicat @A 翻译者: @L 随机梯度下降(SGD) 是一种简单但又非常高效的方法,主要用于凸损失函数下线性分类器的判别式学习,例如(线性) 支持向量机 和 Logistic 回归 。 尽管 SGD 在机器学习社区已经存在了很长时间, 但是最近在 large-scale learning (大规模学习)方面 SGD 获得了相当大的关注。

  • 在机器学习课程https://share.coursera.org/wiki/index.php/ML:Linear_Regression_with_Multiple_Variables#Gradient_Descent_for_Multiple_Variables中,它说梯度下降应该收敛。 我正在使用scikit学习的线性回归。它不提供梯度下降信息。我已经看到了许多关于stackoverflow

  • 在求解机器学习算法的模型参数,即无约束优化问题时,梯度下降(Gradient Descent)是最常采用的方法之一,另一种常用的方法是最小二乘法。这里就对梯度下降法做一个完整的总结。 1. 梯度 在微积分里面,对多元函数的参数求∂偏导数,把求得的各个参数的偏导数以向量的形式写出来,就是梯度。比如函数f(x,y), 分别对x,y求偏导数,求得的梯度向量就是$$left ( frac{partial