zoukankan      html  css  js  c++  java
  • 机器学习-回归算法

     

    批量梯度下降法

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

     
  • 相关阅读:
    有关UDP与TCP的一些疑问?
    UNP Ch 11, Name and Address Conversion
    C语言中的static关键字
    Typcical code to enable nonblocking I/O
    UNPv1_r3读书笔记: SCTP编程[转]
    用gcc链接重复定义的函数
    C语言编码风格 样例
    Chapter 3: File I/O
    getsockopt函数的使用
    开博客了
  • 原文地址:https://www.cnblogs.com/520520520zl/p/14284439.html
Copyright © 2011-2022 走看看