利用基本梯度下降法和牛顿法对样本进行判别

机器学习实验五,详情请参考《模式分类》第二版第五章课后上机练习5.4节

实验环境:

Matlab 2016a

基本梯度下降法和牛顿法:

我们在寻找能将两类类别分开的权向量时采用的方法是:定义一个准则函数J(a),当a是解向量时,J(a)最小。这样就将问题简化为一个标量函数的极小化问题——通常可以用梯度下降法来解决。梯度下降法的原理非常简单,首先从一个任意选择的权向量a(1)开始,计算其梯度向量这里写图片描述,下一个值a(2)由自a(1)向下降最陡的方向移一段距离得到,即沿梯度的负方向。通常a(k+1)由下等式确定:

这里写图片描述

其中这里写图片描述 是正的比例因子,或者说是用于设定学习步长的“学习率”。我们希望这样得到的一个权向量序列:最终收敛到一个使J(a)极小化的解上。具体步骤是初始化权向量a、阈值这里写图片描述这里写图片描述,不断迭代更新a,直到这里写图片描述<这里写图片描述,使得准则函数达到一个极小值,a收敛。

而牛顿法权向量的更新公式为:
这里写图片描述
其中,H为准则函数的赫森矩阵。因为牛顿法使用了准则函数的二次偏导,因此牛顿算法比梯度下降算法每一步都给出了更好的步长,也就更快收敛。

实验内容:

给定以下两个类别w1、w3数据,应用基本梯度法和牛顿法:
这里写图片描述

用这两种算法对二维数据给出w1、w3的判别。对梯度下降法取=0.1。画出准则函数-迭代次数的曲线。

实验分析:

实验的关键就是准则函数的选取,首先我们知道当错分点减少时,准则函数的值应该减小,并且准则函数至少是关于权向量二次的,因为牛顿算法要二次求导。最终使用书中的如下函数作为准则函数:
这里写图片描述
这里的

  • 2
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值