机器学习-常用优化方法

一阶方法:梯度下降、随机梯度下降、mini 随机梯度下降降法。

随机梯度下降不但速度上比原始梯度下降要快,局部最优化问题时可以一定程度上抑制局部最优解的发生。
首先要明确一个事情,梯度下降是为了求解凸函数优化问题,首先了解一下梯度的概念

梯度

梯度的本意是一个向量(矢量),表示某一函数在该点处的方向导数沿着该方向取得最大值,即函数在该点处沿着该方向(此梯度的方向)变化最快,变化率最大(为该梯度的模)-----来自百度百科
这里要说明一个问题,梯度下降的方向是与等高线的切线方向垂直的方向,这就说明了,梯度的方向并不是某一点的斜率,这一点非常重要,因为按照梯度的定义如下图


机器学习-常用优化方法_第1张图片
image.png

上图是三维空间中的,多元的同理,可以看出它只是每个变量的偏导数,本质是某一个向量。

接着解释一下偏导数,假使定义一个函数z=f(x,y),先看一个变量,固定某一个y值,我们求z对与x的偏导数其实就像二维平面对一个函数求导,可以获得这个方向的一组导数线你可以认为是个向量,因为它有大小有方向。如下图


机器学习-常用优化方法_第2张图片
image.png

同理z对于y的偏导数也是这个样子。

重点来了!

每个点都有这个性质,那么把z对x和y的偏导数分别在这个点表示出来,就是两个向量

机器学习-常用优化方法_第3张图片
image.png

然后将这两个做向量加法


机器学习-常用优化方法_第4张图片
image.png

这个就是这个点的梯度向量,它总是指向z函数增长最大的方向,那么它的反方向就是函数减小最大的方向,我们利用梯度下降就是要找到J的最小值。

一个延伸点,梯度方向与等高线方向垂直

在梯度下降的问题中,我们经常会看到下面这个图


机器学习-常用优化方法_第5张图片
image.png

可以看出,梯度下降的方向都是和等高线垂直的方向
下面来证明下
假设我们的损失函数为z=f(x,y),在几何上表示是一个曲面,该曲面被平面c(c为常数)所截得的曲线l方程为:


机器学习-常用优化方法_第6张图片
image.png

这条曲线l在xoy轴面上的投影是一条平面曲线Q,它在x0y平面直角坐标系中的方程为


机器学习-常用优化方法_第7张图片
image.png

则我们称平面曲线Q为函数z=f(x,y)的等高线。

由于等高线f(x,y)=c上任一一点的切线斜率用dy/dx来求。

则等高线f(x,y)=c上任一一点(x,y)处的法线的斜率为:


机器学习-常用优化方法_第8张图片
image.png

又因为梯度的计算式子为:


机器学习-常用优化方法_第9张图片
image.png

对于这个点的方向,我们应该用


机器学习-常用优化方法_第10张图片
image.png

注意这只是一个在2维平面的公式,在z方向它是一个平面。只是从上面看,这是一个垂直的方向。
从上可以看出梯度的方法与等高线f(x,y)=c上任一一点的法线斜率是相同的。

这也就解释了为什么梯度的方向与等高线切线方向垂直的原因。

你可能感兴趣的:(机器学习-常用优化方法)