Machine Learning(Lesson5 SVM支持向量机)

基本想法

考虑简单二分类问题,用一条直线将平面上的点进行划分。
VC维:就是自由参数,一个平面的自由参数也就是3,R2空间的VC维就是3。
线性空间的超平面最多分vc维个样本。想象二维空间上面3个点两个类,总能找到一条直线分开他们。但是对于4个样本,想象三个点一类围着另一个点,拥有找不到一条线把他分开。
总之就是:再n维空间(n个特征),找一个n-1维超平面把样本分成两份。显然,SVM只适用于二分类问题,后面说如何推广。

SVM

所以SVM到底是什么呢?想象用一条线将平面上的点分成两类,这样的线有很多,那么怎么样是最优的呢?很容易想象,我们希望两类点都尽可能离这条线远一点。我们找两条这样的线,使得其之间的距离最大,取这两条线的中线作为分割线。这就是我们得任务。途中的w就是支撑向量,就像桌腿要垂直与桌面才能撑住,支撑就是垂直于目标线的向量。

在这里插入图片描述

核思想

多项式核

看下面这张图,第一张图是样本在一维空间上,无法用一个点进行分割,但是通过 y = x 2 y=x^2 y=x2映射到二维空间,那么就可分了。所以我们选择用更高维的多项式去映射到高维空间进行分割。那么很容易想到超参数就是多项式的维度,训练参数就是多项式的系数。

请添加图片描述

高斯RBF核

除了直接用多项式进行升维,还可以使用相似性构造新的特性,比如说选择一个点,计算样本倒他的距离作为样本特征。然后这里不是直接使用距离作为分数,而是通过高斯径向基函数计算,就是一个以这个点为中心的高斯函数,离越近肯定分数越高。
然后我们在新的特征上计算SVM就可以划分了。

核到是什么?

核就是将你目前特征映射到高维特征空间的矩阵。可以想象高维空间特征数量多,计算复杂。但是在计算过程中,可以把最终的函数表示为包含核矩阵的计算式(就是算式能提取公因数),然后计算就会简单很多。
记住这个就行了:任何半正定矩阵都可以作为核函数。然后用的最多的就是高斯核。

SVM多分类

一般两种做法,第一种是每两类训练一个SVM,然后两两对决,决定类别。
第二种用的更多,训练n(类别个数)个SVM,用于区分某一种和其他的类别,然后选择分类可信度最高的。

推导(以后补)

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值