1500字范文,内容丰富有趣,写作好帮手!
1500字范文 > 梯度下降法的不同形式——随机梯度下降法和小批量梯度下降法

梯度下降法的不同形式——随机梯度下降法和小批量梯度下降法

时间:2020-07-14 23:42:36

相关推荐

梯度下降法的不同形式——随机梯度下降法和小批量梯度下降法

前文介绍了梯度下降法,其每次迭代均需使用全部的样本,因此计算量巨大。就此,提出了基于单个样本的随机梯度下降法(Stochastic gradient descent,SGD)和基于部分样本的小批量梯度下降法(Mini-Batch gradient descent,Mini-batch gradient descent)。

一、随机梯度下降法

随机梯度下降法,即在每次梯度更新过程中仅使用某个随机样本点: θ : = θ − α ( θ T x i − y i ) x i \boldsymbol \theta:=\boldsymbol \theta-\alpha (\boldsymbol \theta^T\boldsymbol x_i-y_i)\boldsymbol x_i θ:=θ−α(θTxi​−yi​)xi​

随机梯度下降法虽然很好的解决了每次都要使用全量样本的问题,但由于其在样本选择时的随机性,会导致每一步并不是沿着全局梯度下降的方向推进,因此尽管最终结果会逐渐走向局部最小值,但过程较为波折,且最终结果会在最小值附近徘徊。

二、小批量梯度下降法

小批量梯度下降法是随机梯度下降法和随机梯度下降法的折中,即每次选取部分数据样本进行梯度的迭代。其迭代流程为:

for i in N epoches:# 每个epoch使用全部的数据样本for j in m batches:# 每个batch间的数据都是不同,每个batch内的数据都不重复t:=t-a*sum(t*x-y)*x

三、三种形式梯度下降法的对比

综上所述,梯度下降法包括三种形式:批量梯度下降法、随机梯度下降法和小批量梯度下降法。其迭代过程见下方示意图:

三种形式梯度下降的主要优缺点在于:

1)梯度下降法

优点:全局最优解,能保证每一次更新权值,都能降低损失函数;在计算各样本的损失时易于并行实现。

缺点:需要用到全量样本,对内存的要求高,同时计算缓慢。

2)随机梯度下降法

优点:每次迭代训练速度快

缺点:搜索方向随机性强,迭代步数多,每一步并不一定指向最优化方向。最终结果并非全局最优,准确性略弱。

3)小批量梯度下降法

克服上面两种方法的缺点,又同时兼顾两种方法的优点。

因此在实际使用中:

1)一般情况下,优先采用小批量梯度下降法,在很多情况下SGD默认指代小批量梯度下降法;

2)若数据量小,可直接采用批量梯度下降法;

3)若数据量非常大,或者需要在线学习,可考虑使用随机梯度下降法。

本内容不代表本网观点和政治立场,如有侵犯你的权益请联系我们处理。
网友评论
网友评论仅供其表达个人看法,并不表明网站立场。