Mini-batch gradient

原创 2015年07月09日 19:59:22

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:




相关文章推荐

神经网络算法学习---mini-batch

Batch_Size(批尺寸)是机器学习中一个重要参数,涉及诸多矛盾,下面逐一展开。 首先,为什么需要有 Batch_Size 这个参数? Batch 的选择,首先决定的是下降的方向。如果...

梯度下降(BGD)、随机梯度下降(SGD)、Mini-batch Gradient Descent、带Mini-batch的SGD

一、回归函数及目标函数 以均方误差作为目标函数(损失函数),目的是使其值最小化,用于优化上式。 二、优化方式(Gradient Descent) 1、最速梯度下降法 a、对目标函数求导 b、沿...

梯度下降,随机梯度下降,批量梯度下降,mini-batch 梯度下降

最近在看到一些神经网络优化的问题, 再进行模型的训练的时候,总是希望得到一个能较好的反映实际的模型,在对模型训练的时候其实是在学习其中的参数, 其中主要使用的损失函数来模拟我们的目标,只要使得损失函数...
  • Losteng
  • Losteng
  • 2016年03月10日 17:16
  • 95737

机器学习算法中如何选取超参数:学习速率、正则项系数、minibatch size

本文是《Neural networks and deep learning》概览 中第三章的一部分,讲机器学习算法中,如何选取初始的超参数的值。(本文会不断补充)学习速率(learning rate,...

mini-batch 梯度下降

梯度下降(BGD)、随机梯度下降(SGD)、Mini-batch Gradient Descent、带Mini-batch的SGD 标签: 神经网络梯度下降随机梯度下降 2015-03-01 12...

[Deeplearning]mini-batch大小的选择

内容来在 A Practical Guide to Training Restricted Boltzmann Machines mini-batch 的大小通常选为10-100。 为了避免在改变...

Stochastic Gradient Descent vs Batch Gradient Descent vs Mini-batch Gradient Descent

梯度下降是最小化风险函数/损失函数的一种经典常见的方法,下面总结下三种梯度下降算法异同。1、 批量梯度下降算法(Batch gradient descent)以线性回归为例,损失函数为BGD算法核心思...

gradient descent vs (mini-batch) stochastic gradient descent

In order to explain the differences between alternative approaches to estimating the parameters of a...

scikit-learn学习之K-means聚类算法与 Mini Batch K-Means算法 [转自别的作者,还有其他sklearn翻译]

http://blog.csdn.net/gamer_gyt/article/details/51244850 =================================...

梯度下降,随机梯度下降,mini-batch梯度下降

三种梯度下降法1、梯度下降法以线性回归为例:梯度下降: 当m很大时,所需要的时间将会很长,该梯度下降法也称为批量梯度下降法(batch gradient descent).“批量”就是表示我们需要每...
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:Mini-batch gradient
举报原因:
原因补充:

(最多只允许输入30个字)