SGD+minibatch学习

梯度下降:通过梯度下降的方向寻找极小值的过程。其过程可描述为:\theta_j=\theta_{j-1}-\alpha\frac{\partial J(\theta)}{\partial\theta_j},引自该链接(如何理解随机梯度下降(stochastic gradient descent,SGD)? - Evan的回答 - 知乎 https://www.zhihu.com/question/264189719/answer/291167114)介绍:开始的时候我们随机站在一个点,把他看成一座山,每一步,我们都以下降最多的路线来下山,那么,在这个过程中我们到达山底(最优点)是最快的,而上面的a,它决定了我们“向下山走”时每一步的大小,过小的话收敛太慢,过大的话可能错过最小值。

SGD:stochastic gradient descent,随机梯度下降法,即按照数据生成分布每次迭代使用1个样本,通过计算他们梯度的平均值来更新梯度。其算法表达式:x_{t+1}=x_t-\eta g_t,gt为随机梯度,满足E(g_t)=\bigtriangledown f(x_t).

mini-batch SGD,是对批量梯度下降以及随机梯度下降的一个折中办法。其思想是:每次迭代 使用 ** batch_size** 个样本来对参数进行更新(引自(8条消息) 批量梯度下降法(BGD)、随机梯度下降法(SGD)和小批量梯度下降法(MBGD)_Andyato的博客-CSDN博客_小批量梯度下降icon-default.png?t=M0H8https://blog.csdn.net/yato0514/article/details/82261821):

 

你可能感兴趣的:(深度学习,机器学习,算法)