原理:以最快的速度使代价函数变小
方法:
1.先确定learning rate
2. 任意给定一个初始值:θi
3.确定一个向下的方向,并向下走预先规定的步长,并更新θi
4.当下降的高度小于某个定义值,停止下降
批处理梯度下降法:在迭代的时候,是完成所有样本的迭代后才会去更新一次theta参数
随机梯度下降法(SGD):在迭代的时候,每迭代一个新的样本,就会更新一次所有的theta参数
当样本数量很大时候,批梯度得做完所有样本的计算才能更新一次theta,从而花费的时间远大于随机梯度下降。但是随机梯度下降过早的结束了迭代,使得它获取的值只是接近局部最优解,而并非像批梯度下降算法那么是局部最优解。
具体参考 http://www.cnblogs.com/rcfeng/p/3958926.html