关闭

Mini-batch gradient

948人阅读 评论(0) 收藏 举报
分类:

Mini-batchgradient

1 gradient descent又可以被称为steepest descent

2 梯度下降算法误差曲线:一般的梯度下降算法误差曲线是椭圆形的,这样就会存在问题,例如,实际要跨的步子可                能很小,但是梯度算法求解出来的步子很大;实际要跨的步子可能很大,但是梯度下降算                法求解出来的步子很  小。所以,好的做法是将椭圆形的误差面转化成为圆形的误差面,                 这也是下面的改进所要完成的事情。

3 如果数据集中存在大量的冗余,那么使用前一半数据得到的梯度下降结果和使用另一半的结果相同,那么此时就不需要使用全部的数据进行权重的训练,可以先使用一半数据训练得到一组权重,然后再使用另一半,更新上述得到的权重。这种极端情况就是随机梯度学习。

4   mini-batchgradient 优点:

(1)在权重更新的过程中,计算量要少于使用随机梯度下降算法

(2)梯度下降算法在计算的过程中会涉及到矩阵间乘法,这个可以通过并行计算完成

5 mini-batchgradient 的注意点:以分类问题为例:提取的数据中应该要尽可能的包含所有的分类情况。

6 mini-batchgradient处理的小技巧:

(1)初始化权重:

如果初始化权重相同,然后输入也相同,那么就会导致结果也相同,这样就没有办法了解数据之间的差异性。所以采用随机初始化的方法。同时如果输入项个数很多时,要减小权重,以防止学习过程中迭代过度。

(2)改变输入项数据:shifting inputs(数据整体进行缩放,不同坐标轴上数据的缩放是一致的),scaling                   inputs(坐标轴整体的缩放,不同坐标轴上的数据缩放比例可以不一样)

(3)主成分分析方法:当输入项彼此之间存在很强的关联性时,得到最优值的过程是漫长的,所以降低输入项彼此               间的相关性是必要的。所以,采用PCA(主成分分析方法)可以将输入项转变为彼此不相关。

7 提高mini-batch gradient学习的速度

(1)  动量梯度下降算法(mpmentum method)

    梯度下降算法的目标是最终获得一个全局最优值,以抛物线为例,最终会停在最低点不动,从动量的角度来说,每次在权重更新的过程中都会存在能量的流失,到最后就会彻底停在某个点上。

   动量梯度下降算法的过程是,一开始根据梯度下降算法指定的方向运动,当获得一定的速度以后,就不会再按照梯度下降算法的方向运行




(2)  学习效率自适应:


(1)  Rmsprop:




0
0

查看评论
* 以上用户言论只代表其个人观点,不代表CSDN网站的观点或立场
    个人资料
    • 访问:9162次
    • 积分:285
    • 等级:
    • 排名:千里之外
    • 原创:18篇
    • 转载:10篇
    • 译文:1篇
    • 评论:0条
    文章分类