当前位置:网站首页>梯度下降法介绍-黑马程序员机器学习讲义
梯度下降法介绍-黑马程序员机器学习讲义
2022-06-24 03:55:00 【黑马程序员官方】
学习目标
- 知道全梯度下降算法的原理
- 知道随机梯度下降算法的原理
- 知道随机平均梯度下降算法的原理
- 知道小批量梯度下降算法的原理
上一节中给大家介绍了最基本的梯度下降法实现流程,常见的梯度下降算法有:
- 全梯度下降算法(Full gradient descent),
- 随机梯度下降算法(Stochastic gradient descent),
- 小批量梯度下降算法(Mini-batch gradient descent),
- 随机平均梯度下降算法(Stochastic average gradient descent)
它们都是为了正确地调节权重向量,通过为每个权重计算一个梯度,从而更新权值,使目标函数尽可能最小化。其差别在于样本的使用方式不同。
1 全梯度下降算法(FG)
计算训练集所有样本误差,对其求和再取平均值作为目标函数。
权重向量沿其梯度相反的方向移动,从而使当前目标函数减少得最多。
因为在执行每次更新时,我们需要在整个数据集上计算所有的梯度,所以批梯度下降法的速度会很慢,同时,批梯度下降法无法处理超出内存容量限制的数据集。
批梯度下降法同样也不能在线更新模型,即在运行的过程中,不能增加新的样本。
其是在整个训练数据集上计算损失函数关于参数θ的梯度:

2 随机梯度下降算法(SG)
由于FG每迭代更新一次权重都需要计算所有样本误差,而实际问题中经常有上亿的训练样本,故效率偏低,且容易陷入局部最优解,因此提出了随机梯度下降算法。
其每轮计算的目标函数不再是全体样本误差,而仅是单个样本误差,即每次只代入计算一个样本目标函数的梯度来更新权重,再取下一个样本重复此过程,直到损失函数值停止下降或损失函数值小于某个可以容忍的阈值。
此过程简单,高效,通常可以较好地避免更新迭代收敛到局部最优解。其迭代形式为

其中,x(i)表示一条训练样本的特征值,y(i)表示一条训练样本的标签值
但是由于,SG每次只使用一个样本迭代,若遇上噪声则容易陷入局部最优解。
3 小批量梯度下降算法(mini-batch)
小批量梯度下降算法是FG和SG的折中方案,在一定程度上兼顾了以上两种方法的优点。
每次从训练样本集上随机抽取一个小样本集,在抽出来的小样本集上采用FG迭代更新权重。
被抽出的小样本集所含样本点的个数称为batch_size,通常设置为2的幂次方,更有利于GPU加速处理。
特别的,若batch_size=1,则变成了SG;若batch_size=n,则变成了FG.其迭代形式为

4 随机平均梯度下降算法(SAG)
在SG方法中,虽然避开了运算成本大的问题,但对于大数据训练而言,SG效果常不尽如人意,因为每一轮梯度更新都完全与上一轮的数据和梯度无关。
随机平均梯度算法克服了这个问题,在内存中为每一个样本都维护一个旧的梯度,随机选择第i个样本来更新此样本的梯度,其他样本的梯度保持不变,然后求得所有梯度的平均值,进而更新了参数。
如此,每一轮更新仅需计算一个样本的梯度,计算成本等同于SG,但收敛速度快得多。
5 小结
- 全梯度下降算法(FG)【知道】
- 在进行计算的时候,计算所有样本的误差平均值,作为我的目标函数
- 随机梯度下降算法(SG)【知道】
- 每次只选择一个样本进行考核
- 小批量梯度下降算法(mini-batch)【知道】
- 选择一部分样本进行考核
- 随机平均梯度下降算法(SAG)【知道】
- 会给每个样本都维持一个平均值,后期计算的时候,参考这个平均值
边栏推荐
- 共建欧拉社区 共享欧拉生态|携手麒麟软件 共创数智未来
- Advanced authentication of uni app [Day12]
- Live broadcast Reservation: Micro build practice - quickly build a catering reservation applet
- 15+城市道路要素分割应用,用这一个分割模型就够了
- Worthington脱氧核糖核酸酶I特异性和相关研究
- ARM 架构、ARM7、ARM9、STM32、Cortex M3 M4 、51、AVR 有啥区别
- 2020年Android面试题汇总(初级)
- 15+ urban road element segmentation application, this segmentation model is enough
- Student information management system user manual
- An interface testing software that supports offline document sharing in the Intranet
猜你喜欢

什么是数据中台

Abnova荧光原位杂交(FISH)探针解决方案

英特尔 XTU 官方超频工具已支持 Win11 22H2 和 13 代酷睿 Raptor Lake 处理器

微博国际版更名为微博轻享版

An interface testing software that supports offline document sharing in the Intranet

Jointly build Euler community and share Euler ecology | join hands with Kirin software to create a digital intelligence future

C语言自定义类型的介绍(结构体,枚举,联合体,位段)

Abnova peptide design and synthesis solutions

openGauss 3.0版本源码编译安装指南

The official overclocking tool of Intel XTU supports win11 22h2 and 13th generation core Raptor Lake processors
随机推荐
Diskpart San policy is not onlineall, which affects automatic disk hanging
TCPIP协议详解
High availability architecture design to deal with network failure of operators
Why is on-line monitoring of equipment more and more valued by people?
How can the new generation of HTAP databases be reshaped in the cloud? Tidb V6 online conference will be announced soon!
Naming of tables in MySQL
External network access SVN server (external network access SVN server deployed on the cloud)
Kubernetes 资源拓扑感知调度优化
An interface testing software that supports offline document sharing in the Intranet
ribbon
DP summary of ACM in recent two weeks
Final summary of freshman semester (supplement knowledge loopholes)
Live broadcast Reservation: Micro build practice - quickly build a catering reservation applet
Idea创建Servlet 后访问报404问题
Easygbs video playback protocol only webrtc can play. Troubleshooting
一文简述:供应链攻击知多少
Abnova fluorescence in situ hybridization (FISH) probe solution
Application practice | Apache Doris integrates iceberg + Flink CDC to build a real-time federated query and analysis architecture integrating lake and warehouse
Clang代码覆盖率检测(插桩技术)
Worthington胰蛋白酶的物化性质及特异性