梯度下降法

一,梯度的定义(gradient descent)

一元函数y=f(x)在点x0处的梯度是:(f(x0))

二元函数z=f(x,y)在点x0,y0处的梯度是:(fx|(x0,y0),fy|(x0,y0))

简而言之,对多元函数的各个自变量求偏导数,并把求得的这些偏导数写成向量的形式,就是梯度。我们常把函数f的梯度简记为:gradff

例子:
函数φ=2x+3y2sin(z)的梯度为: φ=(φx|,φy|,φz|)=(2,6y,cos(z))
原来梯度是一个向量

二,梯度的理解
梯度下降法

三,梯度下降法的定义
梯度下降法
η相当于是步长,或者叫学习率

对模型的训练不是一蹴而就的,而是一次一次地反复训练。每次训练都需要一批样本。对这一批样本构造损失函数,然后求解梯度,更正参数。一般不建议把batch size取得太小。
θ=θηθJ(θ)

i=1m(f(xi)yi)2m

占用内存少,容易出现抖动

四,梯度下降的问题之一:初始值与局部极小值
梯度下降法

五,梯度下降的问题之二:参数调整缓慢
梯度下降法

六,普通的梯度下降法
梯度下降法

七,梯度下降方法之:momentum
梯度下降法
梯度下降法
梯度下降法

八,梯度下降方法之:Nesterov
梯度下降法
梯度下降法
梯度下降法

九,梯度下降方法之:Adagrad自适应方法
梯度下降法

十,梯度下降方法之: AdaDelta以及RMSprop
梯度下降法

梯度下降法

梯度下降法