关闭

对svm的理解

标签: svm机器学习算法
251人阅读 评论(0) 收藏 举报
分类:

在搜索了很多资料后终于搞明白了SVM,对几个关键的部分做一些记录。
SVM的全称Support Vector Machine,中文名支持向量机,是一种分类算法,常见于二分类问题,和常见的二分类算法不同,该算法是在两类(或多类,以下简写为两类)标记之间找到离两类标记最远的一个超平面来分割数据,比如二维点就是找一条线来分割,三维点就是找一个平面来分割,n维数据找一个n-1维超平面来分割。
如何找这个超平面是最关键的部分,也就是算法需要计算的部分,在这我记录以下数学推导。这里写图片描述
在两个超平面之间距离为图中的m(可以根据几何推导,和二维类似)要最大化,只要使||w||最小化,即让它最小,这个||w||指的是它的模,也就是让w^2最小,为了求导之后消去系数,我们让w^2/2最小。还有一个限制条件,就是所有的点都在H1和H2之外,即yi (wTxi + b)>=1。我们所求的是这里写图片描述第二个是约束条件
接下来我们要使用拉格朗日乘数法来优化这个问题,使w^2/2最小,构造拉格朗日函数这里写图片描述
对w、b分别求偏导,得这里写图片描述,代入到拉格朗日函数这里写图片描述,得这里写图片描述
这里我有一个问题开始没有搞明白,就是为什么含aiyi的项全部消掉了,其实这是因为kkt条件下(参见http://www.cnblogs.com/zhangchaoyang/articles/2726873.html这里写图片描述是能推导出一定是ai=0或yi=0不会是我之前想的情况有正有负- -

参考资料
1.http://www.cnblogs.com/zhangchaoyang/articles/4306833.html
2.http://blog.csdn.net/zouxy09/article/details/17291543(包括松弛变量的部分)

0
0

查看评论
* 以上用户言论只代表其个人观点,不代表CSDN网站的观点或立场
    个人资料
    • 访问:12220次
    • 积分:250
    • 等级:
    • 排名:千里之外
    • 原创:13篇
    • 转载:1篇
    • 译文:0篇
    • 评论:3条
    最新评论