Andrew Ng机器学习笔记+Weka相关算法实现(五)SVM最优间隔和核方法
这一章主要解说Ng的机器学习中SVM的兴许内容。主要包括最优间隔分类器求解。核方法。
- 最优间隔分类器的求解
 
利用以一篇讲过的的原始对偶问题求解的思路,我们能够将相似思路运用到SVM的求解上来。
详细的分析例如以下: 
对于SVM求解的问题: 
 
我们把约束条件略微变形一下: 
 
仅仅有函数间隔是1的点才干使上式取等号,也就是有意义的。例如以下图: 
 
叉叉和圈圈分别代表正反例,能够看出,仅仅有落在边缘的点的α≠0,这些点才是支持向量。其它的点α=0,对切割超平面没有意义。上图的支持向量一共同拥有3个。
写出拉格朗日表达式: 
 
依据对偶问题求解思路: 
解对偶问题时,首先要固定α,以 w,b 为变量,最小化 L; 
最小化 L 时,求解 L 对 w和 b 的偏导。并将导数设为 0。能够得到: 
 
 
解出来: 
 
代入原始的拉格朗日表达式: 
 
部分推导步骤例如以下(感谢大神分享): 
 
最后一项是0,原式化简为: 
 
注意到:是向量的内积,我们能够进一步简化书写。
此时的拉格朗日函数仅仅包括了变量α,我们求出了α就能够得到b和w。 
接下来极大化最小值: 
 
这里的目标函数和线性约束都是凸函数,不存在等式约束 h。存在 w使得对于全部的 i。gi(W)< 0。因此,一定存在w∗, α∗使 
得w∗是原问题的解, α∗是对偶问题的解。接下来就是求得α。 
然后就能够得到: 
 
也能够得到W: 
 
即离超平面近期的正的函数间隔要等于离超平面近期的负的函数间隔。这个不难理解,就是仅仅有是平分线时候才离两側都最远。 
求得W后,我们得到: 
 
对于怎样求得α,在下一篇博客中介绍。
- 核方法
 
对于開始时提出来的房屋价格与面积的关系问题,设XY各自是房屋面积和价格,假设我们知道x和y满足三次函数关系,那么我们就能够使用三次多项式拟合x和y的关系。可是我们首先要将特征扩展到(x,x^2,x^3),这个过程叫做特征映射。我们表示为φ,在这个问题中: 
 
假设我们希望将映射后的特征用于SVM的分类,就要将内积 
映射为: 
假设例子可能存在线性不可分的情况,而将特征映射到高维空间后。往往就可分了。 
我们定义核函数: 
 
我们仅仅须要做计算,就能够完毕映射,可是这样做复杂度非常高。比方最初的特征是 n 维的,我们将其映射到n^2维,然后再计算,这样须要O(n^2)的时间。我们考虑简化方法: 
对于一个特例:假设 x 和 z 都是 n 维的, 
 
展开后: 
不难看出。这个时候发现我们能够仅仅计算原始特征 x 和 z 内积的平方,就等价与计算映射后特征的内积。此时: 
 
对于还有一个相似的核函数: 
 
我们能够表示为: 
 
更一般的表示。对于一个形如: 
的核函数。其映射后的特征是 维度。 向量中每一个元素都是最高为 d 阶的变量的组合。
假设直接计算核函数的值。其复杂度均为 O(n),这就避免了直接计算内积结果的复杂度。
假设ϕ(x)和ϕ(z)在其相应的维度空间中位置接近,那么内积值 K 会非常大, 
反之则内积会小。这有点相似两个向量的乘积。这意味着核函数 K 是一个度量向量 x 和向量 z接近程度的指标 。 
假设 x 和 z 相差非常大( ||x − z|| ≫ 0)。那么核函数值约等于 0。 
 
由于这个函数相似于高斯分布,因此称为高斯核 
函数,也叫做径向基函数(Radial Basis Function 简称 RBF)。
它能够把原始特征映射到无穷维(泰勒展开式有无穷项多项式)。
使用了核函数后,原始的 变成了
,我们不必求解核函数表达式,仅仅须要将内积替换为
 就可以。
那么什么样的函数才干作为核函数呢? 
给定一个函数K,是否存在φ,使得 对全部的x和z都成立?也就是说,假设核函数合法,那么必定能写成两个映射函数乘积的形式。 
首先定义核矩阵。对于一个数据集, 定义一个 
m*m 的矩阵 K( K 既代表核函数也代表核矩阵)。 K 中的每一个元素定义例如以下: 
这样能够计算出 m*m 的核函数矩阵( Kernel Matrix)。 
依据核函数定义,有下式子: 
 
 
也就是说,矩阵K是对称的。我们令 代表矩阵K的第k维,那么对于随意的向量Z,我们得到: 
从这个公式我们能够看出,假设 K 是个有效的核函数。那么。在训练集上得到的核函数矩阵 K 应该是半正定的( K ≥ 0)。结合曾经的结论,K矩阵应该是对称半正定的。
这个条件也是充分的,由 Mercer 定理来表达: 
 
核函数不仅仅用在 SVM 上,仅仅要是计算中有内积出现。就能够替换为核函数。
- 不可分情况的处理
 
对于低维不可分问题,我们能够通过核函数映射到高维,一般就能够线性可分,可是仍然不能保证一定能够线性可分,那么我们应该採用零哟中思路找到一个最合适的超平面进行切割。例如以下图所看到的: 
 
第二图由于一个噪声点可能会造成切割平面移动甚至线性不可分。我们应该同意一些点游离在我们定义的规则之外,此时的条件例如以下: 
 
原有的问题增加了非负參数ξ。可是放松限制条件后。我们需 
要又一次调整目标函数,以对离群点进行处罚,也就是增加了惩处项C,C越大。代表越不希望出现离群点。 
能够得到修改后的拉格朗日表达式: 
 
依照之前的求解思路: 
 
能够看到公式并没有什么变化,仅仅是多了一个限制条件。可是事实上b的求解也会发生变化,详细到SMO算法的时候再解说。
KKT条件也会发生变化: 
Andrew Ng机器学习笔记+Weka相关算法实现(五)SVM最优间隔和核方法的更多相关文章
- Andrew Ng机器学习笔记+Weka相关算法实现(四)SVM和原始对偶问题
		
这篇博客主要解说了Ng的课第六.七个视频,涉及到的内容包含,函数间隔和几何间隔.最优间隔分类器 ( Optimal Margin Classifier).原始/对偶问题 ( Primal/Dual P ...
 - 斯坦福大学Andrew Ng - 机器学习笔记(5) -- 支持向量机(SVM)
		
大概用了一个月,Andrew Ng老师的机器学习视频断断续续看完了,以下是个人学习笔记,入门级别,权当总结.笔记难免有遗漏和误解,欢迎讨论. 鸣谢:中国海洋大学黄海广博士提供课程视频和个人笔记,在此深 ...
 - 斯坦福大学Andrew Ng - 机器学习笔记(4) -- 机器学习算法的选择与评估
		
大概用了一个月,Andrew Ng老师的机器学习视频断断续续看完了,以下是个人学习笔记,入门级别,权当总结.笔记难免有遗漏和误解,欢迎讨论. 鸣谢:中国海洋大学黄海广博士提供课程视频和个人笔记,在此深 ...
 - 吴恩达(Andrew Ng)——机器学习笔记1
		
之前经学长推荐,开始在B站上看Andrew Ng的机器学习课程.其实已经看了1/3了吧,今天把学习笔记补上吧. 吴恩达老师的Machine learning课程共有113节(B站上的版本https:/ ...
 - 斯坦福大学Andrew Ng - 机器学习笔记(8) -- 推荐系统  &  大规模机器学习  &  图片文字识别
		
大概用了一个月,Andrew Ng老师的机器学习视频断断续续看完了,以下是个人学习笔记,入门级别,权当总结.笔记难免有遗漏和误解,欢迎讨论. 鸣谢:中国海洋大学黄海广博士提供课程视频和个人笔记,在此深 ...
 - 斯坦福大学Andrew Ng - 机器学习笔记(7) -- 异常检测
		
大概用了一个月,Andrew Ng老师的机器学习视频断断续续看完了,以下是个人学习笔记,入门级别,权当总结.笔记难免有遗漏和误解,欢迎讨论. 鸣谢:中国海洋大学黄海广博士提供课程视频和个人笔记,在此深 ...
 - 斯坦福大学Andrew Ng - 机器学习笔记(6) -- 聚类  &  降维
		
大概用了一个月,Andrew Ng老师的机器学习视频断断续续看完了,以下是个人学习笔记,入门级别,权当总结.笔记难免有遗漏和误解,欢迎讨论. 鸣谢:中国海洋大学黄海广博士提供课程视频和个人笔记,在此深 ...
 - 斯坦福大学Andrew Ng - 机器学习笔记(3) -- 神经网络模型
		
大概用了一个月,Andrew Ng老师的机器学习视频断断续续看完了,以下是个人学习笔记,入门级别,权当总结.笔记难免有遗漏和误解,欢迎讨论. 鸣谢:中国海洋大学黄海广博士提供课程视频和个人笔记,在此深 ...
 - 斯坦福大学Andrew Ng - 机器学习笔记(2) -- 逻辑回归 & 正则化
		
大概用了一个月,Andrew Ng老师的机器学习视频断断续续看完了,以下是个人学习笔记,入门级别,权当总结.笔记难免有遗漏和误解,欢迎讨论. 鸣谢:中国海洋大学黄海广博士提供课程视频和个人笔记,在此深 ...
 
随机推荐
- react this.props.form异步执行问题
			
最近在做一个选择器联动时,碰到this.props.form的异步执行问题,导致选择器一直没有办法联动 如图,选择公司名称后,应该同步刷新门店选择默认值, 但同时又要清空门店选择的上一次记录 就用到了 ...
 - 洛谷  P1616 疯狂的采药【裸完全背包】
			
题目背景 此题为NOIP2005普及组第三题的疯狂版. 此题为纪念LiYuxiang而生. 题目描述 LiYuxiang是个天资聪颖的孩子,他的梦想是成为世界上最伟大的医师.为此,他想拜附近最有威望的 ...
 - 51nod 1873 初中的算术【Java BigDecimal/高精度小数】
			
1873 初中的算术 基准时间限制:1 秒 空间限制:131072 KB 分值: 10 难度:2级算法题 收藏 关注 Noder现在上初三了,正在开始复习中考.他每天要计算型如 (a× a× a× ...
 - js部分的总结
			
一.词法结构 1.区分大小写 2.注意//单行/*多行注释* 3.字面量(直接量 literal) 12 //数字 5.8 //小数 “hello” ‘hello’ true /js/gi //正则 ...
 - mac下eclipse导入windows项目文件乱码
			
右键property->resource没有GBK,手工输入"GBK"项目正常. 一开始用windows被坑了,如果再用windows平台,第一时间将encoding改成UT ...
 - pr_debug、dev_dbg等动态调试一
			
内核版本:Linux-3.14 作者:彭东林 邮箱:pengdonglin137@163.com pr_debug: #if defined(CONFIG_DYNAMIC_DEBUG) /* dyna ...
 - Ubuntu 16.04 --  同时配置Nginx(转发)和frp(内网映射)和HTTPS(ca加密) - 端口转发
			
Ubuntu16.04下: sudo apt -get nginx 用这条命令安装完nginx之后, nginx在该目录下: 然后配置nginx: 如下: 红圈圈住的地方多写几个可以做负载均衡. 端口 ...
 - hdu1013(C++)
			
9的余数定理:一个数各位数字的总和除以9的余数与它本身除以9的余数同等 大数问题:防止大数,用字符串来存入数据,再转化为数字 #include<iostream>#include<s ...
 - ckeditor的详细配置(转)
			
CKEditor 3 JavaScript API Documentation : http://docs.cksource.com/ckeditor_api/symbols/CKEDITOR.con ...
 - 使用nvDXT.exe把图片转换成dds图片【转】
			
从nvidia官网下载工具包DDS Utilities [https://developer.nvidia.com/legacy-texture-tools] 转换图片格式需要的工具是 nvdxt.e ...