感知机学习-为什么损失函数可以不考虑L2范数?

1. 前言

最近想重新学习一下统计学习方法(第2版)-李航,为深度学习打下一个坚实的基础。
在看到感知机的损失函数时产生了这样一个疑问,为什么明明用几何间隔计算结果更好,为什么不用,反而用效果不那么好的函数间隔?(函数间隔:即使是同一个平面,计算结果会随着w和b的缩放而产生不同的结果)

2. 概念

- 函数间隔

函数间隔
其中f(x)为函数值,y是人为设定的样本的值(如:区分猫狗图片,猫标定为“ +1”,狗为“ -1 ”),即函数值✖标签。为什么该式可以表示距离?实际上函数间隔并不是真正的数据点到超平面的距离,只是表示数据点被分为某一类的确信度。

- 几何间隔

几何间隔
几何间隔是严格数学公式,具体推导过程网上也很多,这里就不多做说明。

3. 理解

  1. 为什么要用有些地方要用几何间隔?
    几何间隔相对于函数间隔的一个优势就是它不受参数( w和b )缩放影响,所以在SVM 这种优化目标是点到超平面之间的间隔的模型中,采用的是几何间隔(如果采用函数间隔,学习过程会不断的产生更大的w和b,根本停不下来)。
  2. 对于感知机:
    感知机的目标是使误分类的点的个数为0,采用几何间隔并不会带来什么好处,反而会使学习过程复杂化。有些同学可能认为在损失函数L最小化的过程中,若不对参数进行归一化,目标会偏向于选择量级较小的参数w和b
    但是在线性可分的情况下这是不会发生的,因为损失函数是定义在误分类点的集合上的,只要误分点集合为空, 就能取到最小值0,这种情况下无论w和b的初值如何, 损失L最终都可以收敛到0。而对于数据不是线性可分的情况,感知机是处理不了的,这种情况下无论怎么训练,误分类点的集合总不为空,算法会一直使用集合中的误分点更新参数,超平面会在线性不可分的点之间摆动,算法无法收敛。
  • 1
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值