最小二乘、梯度下降与反向传播

在阅读高翔博士的slam十四讲的过程中,有关于求解观测与估计值的最大似然问题引起了我比较好的好奇,并且顺着这个问题了解了自己之前一直困惑的梯度下降问题以及高斯牛顿方法,在此进行总结。

1、前序

1.1 贝叶斯公式

首先,作者通过根据贝叶斯规则将后验分布转化为最大似然问题来解决这个问题。很难直接找到后验分布,但是要找到一个状态的最优估计,是的,在这个状态之后,最大化测试概率是可行的。

p(x,y | z,u) = p(z,u | x,y) * p(x,y) / p(z,u)
p(z,u | x,y) :最大似然  p(x,y):先验分布

那么先验分布和后验概率有什么区别呢?

贝叶斯公式:P(Y|X) = P(X|Y)*P(Y)/P(X)

先验概率(prior probability):这个概率是通过统计得到的,或者依据自身依据经验给出的一个概率值,这里P(Y)就是先验概率;
后验概率:根据观察到的样本修正之后的概率值,这里P(Y|X)就是后验概率。

可以参考先验概率和后验概率(贝叶斯公式)来理解贝叶斯公式的相关概念。[0]

1.2 最小二乘

最小二乘的相关知识可以说在很多文章中找了很久,也是深度学习甚至机器学习的入门算法。然而,对最小二乘算法的求解公式却鲜有关注。最基本的算法其实包括最主流的实用方案。
最小二乘问题的四种解法——牛顿法、梯度下降法、高斯-牛顿法、列文伯格-马夸特法的区别与联系[0]

注意,解决问题的核心在于增量的推导;得到适当的增量,直到一阶导数为零,从而达到极值点。

2、梯度下降

作为深度学习中常见的优化算法,梯度下降的中心思想是沿着目标函数的梯度方向更新参数值,以达到目标函数的最小值(或最大值)。当然,梯度下降也用在很多其他场合。例如,前面描述中提到的最小二乘也可以通过梯度下降来求解。
在深度学习的海量数据情况下,梯度下降扩展了一些兼顾学习速度和准确率的变形形式。根据每次使用数据量的不同,我们将梯度下降法分为以下三类:
详解批量梯度下降法(BGD)、随机梯度下降法(SGD)和小批量梯度下降法(MBGD)
[0]

以Mini-Batch Gradient Descent为例,我们在使用的过程中,首先从全部样本中选取mini batch数量的样本作为本次权重更新的数据(img1-n),每一张img会提取相应的特征,假设最终出现在loss function内的特征数量为m,loss function就是关于分别针对关于x1,x2 — xn的m个维度分别求取梯度,对这个m个梯度求取反方向之后合并为最终的下降向量,向量的方向与大小遵从矢量相加的原则。

3、反向传播

由于深度学习网络具有深度和逐层嵌套的特点,在计算深度网络目标函数的梯度时,需要通过反向传播的方式从深到浅反向计算和更新参数。因此,反向传播法是梯度下降法在深度网络上的具体实现。

CHAPTER 2How the backpropagation algorithm works[0]

反向传播,(随机)梯度下降[0]

4、正则化

在查询上述知识的过程中,暴露了正则化相关的知识,可以总结一下。
L1,L2正则化[0]

文章出处登录后可见!

已经登录?立即刷新

共计人评分,平均

到目前为止还没有投票!成为第一位评论此文章。

(0)
扎眼的阳光的头像扎眼的阳光普通用户
上一篇 2022年5月9日
下一篇 2022年5月9日

相关推荐