机器学习-回归算法

 

批量梯度下降法

批量梯度下降法是最原始的形式,它是指在每一次迭代时使用所有样本来进行梯度的更新。从数学上理解如下:
  (1)对目标函数求偏导:
  这里写图片描述
  其中 i=1,2,…,m 表示样本数, j=0,1 表示特征数,这里我们使用了偏置项 x(i)0=1 。
  (2)每次迭代对参数进行更新:
  这里写图片描述
  注意这里更新时存在一个求和函数,即为对所有样本进行计算处理,可与下文SGD法进行比较。
  伪代码形式为:
  这里写图片描述
  优点:
  (1)一次迭代是对所有样本进行计算,此时利用矩阵进行操作,实现了并行
  (2)由全数据集确定的方向能够更好地代表样本总体,从而更准确地朝向极值所在的方向。当目标函数为凸函数时,BGD一定能够得到全局最优
  缺点:
  (1)当样本数目 m 很大时,每迭代一步都需要对所有样本计算,训练过程会很慢
  从迭代的次数上来看,BGD迭代的次数相对较少。其迭代的收敛曲线示意图可以表示如下:
  

 
posted @ 2021-01-15 21:56  凋零_(  阅读(44)  评论(0编辑  收藏  举报