欢迎光临散文网 会员登陆 & 注册

【深度学习】从模型到学习的思路整理

2022-08-18 15:04 作者:AI精品课程搬运工  | 我要投稿

文章目录

  • 前言

  • 1. 模型

  • 2. 损失

  • 3. 损失loss关于权值W的梯度

  • 4. 求梯度——数值梯度

  • 5. 梯度下降中的小批量

1. 模型

神经网络的模型可以就看作为一个函数,模型学习(训练)的过程,就可以看成是给函数寻找合适的参数的过程。比如,下面就是一个简单的模型,它所表示的函数就是 y = w 1 x 1 + w 2 x 2 y = w1x1+w2x2y=w1x1+w2x2


这个函数在两个侧面的投影,就是 y = w 1 x 1 y=w1x1y=w1x1 和 y = w 2 x 2 y=w2x2y=w2x2。学习一个多元函数,可以看成是分别学习多个一元的函数。

2. 损失

损失,也就是模型和数据的不贴合程度
衡量损失常用的一个函数是均方损失函数

其中 n 为数据点数量。函数也可以写成

其中 W 为模型的所有权值,X i X_{i}X i 为第 i 个数据点的所有自变量。既然衡量损失有了一个确定的函数,那训练模型的过程就可以变成一个最小化损失的过程,方法就是不断地改变权值W,使函数关于所有这些数据点的损失(或者说平均损失)不断变小。

3. 损失loss关于权值W的梯度

通常来说,应该函数的权值 W 是固定的,而数据的特征 X 作为自变量。但我们是要通过一个固有的数据集,来优化权值W,所以在优化过程中,我们要把损失函数l o s s lossloss中的W看作自变量。


然后我们求 l o s s lossloss 关于 W WW 的梯度,遵循着梯度的指引来改变 W WW。

W 中的每个 w ww 的移动,可以看成是相对独立、互不干扰的。更新一个有很多权值的复杂模型,就成了很多重复的这样更新单个权值的操作。

4. 求梯度——数值梯度

在具体求梯度的过程中,计算机本身是不会公式演算的。但我们并不需要对损失函数求出梯度的表达式,而只需求函数在每个 权值w ww处的梯度值。

数值梯度的方法,就人为地设置了一个确定的微小值 h hh,比如 1 0 − 5 10^{-5}10 −5

 (具体根据实际需要)。

因此,我们更新 w ww 的方式,就像是先试探着往一个方向走一小步,如果发现合适,就再往那个方向走一大步;否则,就往反方向走。

5. 梯度下降中的小批量

小批量随机梯度下降法是机器学习中一种常用的方法,为什么要用到小批量?

前面每次计算损失,都是计算模型函数关于整个样本数据集的损失。那么在样本数据很大时,比如十万、百万的数据量时,这样计算资源的消耗就太大了,而且是不必要的。

使用小批量,就是起到部分代表整体的作用。我们假装一个小批量,就体现着整个数据集的特征。然而这难免有些片面性,通过小批量所指引的 w ww 前进的方向,有可能从整个的数据集中来看并不是恰当的方向。因此,我们把一个数据集划分成许多个小批量后,每个小批量都会使用,且会进行多轮(多个周期)的训练,以将整个数据集的特征都充分展现出来。

这里给大家准备了一些我精心挑选的AI的学习资料。关注VX公众H【咕泡AI】回复【333】即可领取!

①10G教学视频包(附课件+代码)

②AI人工智能:54份行业重磅报告汇总

③能写进简历的企业级项目实战。

④100篇+深度学习论文合集

⑤人工智能必读书籍

⑥专属学习路径规划

⑦不定期大神直播,学习和困惑解答

⑧拿来就能跑通的论文复现代码讲解及数据集

这些资料都比较珍贵,但是对自我的职业发展价值则是无价的!

别慌,这些资料这一次全部免费分享给大家。觉得好,就不要吝啬你的三连哦,这样我才有动力持续更新哦  

【深度学习】从模型到学习的思路整理的评论 (共 条)

分享到微博请遵守国家法律