8、随机梯度下降
随机梯度下降.PNG前面讲了梯度下降,我们知道在预测值已知的情况下,我们要是损失函数下降,就必须使预测值朝着下降的方向移动,方向可以通过导数的正负决定,如果在这一点导数为正,表明预测值与损失函数是正相关,那么,预测值就要减小,反之预测值要增大。我们可以知道预测值是由观察值和参数决定的,我们要调整相应的参数来达到增大或者减小预测值的目的,对于输出节点,预测值是一个关于上一层节点输出加权和的激活函数值,我们要求出参数对于激活函数的偏导数决定它是增大或者减小,前面层的节点依次类推,因为每一层神经元的参数变化,但是其实和这些参数加权的观察值均来自于上一层节点的观察值加权和的激活函数值,并不是初始的观察值所以仅变化一层神经网络的参数是不合理的。
下面要介绍的是加强版的梯度下降,它的实际应用效果比梯度下降要好很多。
第一步.PNG
第二步.PNG
梯度下降是对所有观察值的损失函数之和进行参数更新,更新次数为1次,随机梯度下降是对每一个观察值进行参数的更新,更新次数为8次。
相对于梯度下降,随机梯度下降的速率更高,因为虽然所有观察值之和的损失函数对应的参数是一样的,理论上,我们只要不断地对这几个参数进行梯度下降就行了,但是由于是 求和,它的复杂度比较高,相对于对它进行求导的难度更大。但是一次只对一个观察值的损失函数进行更新,我进行梯度下降要相对容易一些。
批量vs随机.PNG
还有一种机器学习算法,是基于“批量”梯度下降和随机梯度下降之间的“小批量”梯度下降,顾名思义,就是一次对几个观察值的损失函数加和,进行参数更新。
梯度下降推荐阅读(精).PNG
深度学习推荐阅读(精).PNG
网友评论