深度学习学习笔记 --- 动量momentum

一、动量momentum的由来

        训练网络时,通常先对网络的初始值按照某种分布进行初始化,如:高斯分布。初始化权值操作对最终的网络性能影响比较大,合适的网络初始权值操作能够使损失函数在训练过程中收敛速度快,从而获得更好的优化结果。但是按照分布随机初始化网络权值时,存在一些不确定的因素,并不能保证每一次初始化操作都能使得网络的初始值处在一个合理的状态。不恰当的初始权值可能使网络的损失函数在训练过程中先去局部最小值,达不到全局最优的状态。因此,如何消除这种不确定性,是训练神经网络必须解决的一个问题。

 

二、什么是动量momentum

    动量momentum动量能够在一定的程度上解决这个问题。动量momentum是依据物理学的势能与动能之间能量转换原理提出来的。当动量momentum越大时,其转换为势能的能量也就越大,就越有可能摆脱局部凹域的束缚,进去全局凹域。动量momentum主要用在权值更新的时候。

 

 

三、工作原理

    一般我们使用神经网络更新权值时,采用如下公式:

 

w = w - learning_rate * dw

 

    引入动量momentum后,采用如下公式:

 

v = mu * v - learning_rate * dw

W &

你可能感兴趣的:(Machine,Learning,深度学习,动量,momentum,梯度下降)