林轩田机器学习技法(Machine Learning Techniques)笔记(一)
终于到机器学习技法了,接下来还是尽量保持每章完结就立刻更吧。。基石没有保持写完就更,现在回头不知道自己在写啥,看笔记感觉写得一塌糊涂,感觉翻车了。慢慢改进吧。
听说技法挺难的,贴一下大神博客来加持一发:
红色石头:感觉总结得非常不错!!
林轩田机器学习技法(Machine Learning Techniques)笔记(二)
林轩田机器学习技法(Machine Learning Techniques)笔记(三)
1. Linear SVM
P1 1.1
介绍了本课程之后围绕三个特征转换(feature transforms)的【技法】来讲
1.如何运用特征转换和控制特征转换的复杂度:用SVM(Support Vector Machine,听说挺难的)
2.如何找到有预测性质的特征,并且混合起来让模型表现更好:AdaBoost(逐步增强法)
3.如何找到和学习隐藏的特征,让机器表现更好:Deep Learning(深度学习!!!)
P2 1.2
在PLA中,我们对于一组数据,其实可以有不同的划分。上面三幅图都是"正确的":保证了所有点都划分对了,而且根据VC bound,Eout都是一样的
但是根据人脑来说,肯定是最右边那幅图的划分更好。
为什么呢?因为数据会有一些噪音或者测量误差,使得实际情况下并不是一定在ooxx上,可能会分布在灰色区域,而且也都是合理的。如果是在左图,靠近分界线上的x,如果有一些震荡,就会比较容易跑去o的范围内,导致出错。因此,为了提高的容错率(容忍误差能力)(传说中的鲁棒性?),要调出比较"强壮的"线,显然,最强壮的线是保证所有东西都分对了的情况下,离最近的点距离最远的线。
当然,也可转化为线“胖”不“胖”,越胖的线越强壮。学术上称“胖”为margin。下面则是用公式表达出margin最大化的w:“最强壮的线是保证所有东西都分对了的情况下,离最近的点距离最远的线”
P3 1.3
开始求distance(xn,w),之前是在w1~wd中加入一个w0的,但是因为这个w0和其他w操作不一样,就直接单独跳出来,即为b,因此就有:
(这里的w0(b)应该是偏置项吧,对于为什么有偏置项,详细还得看看西瓜书)
接下来要找到distance(x,b,w),x’ 和 x’’ 是平面上的点,x是数据点(不一定在超平面上),根据wTx’ + b = 0,就有wTx’ = -b,同理:wTx’’ = -b
这里有个特别地方,就是证明了w是这个超平面的法向量。(关于超平面,看了一下别人的文章,不过他好像没有讲为啥w是法向量。。)
知道了法向量,如果平面上有一点x’,x和x’的距离distance其实就是向量xx’在w上的投影,所以就是:
因为这是个Hard-Margin的SVM,所以这条线对于所有的点,都会分对,所以就有:
且yn=±1,所以可以脱去绝对值:
接下来为了方便求解:
定义:
那么就有:
对于为什么为1,其实任意常数都可以,这里看弹幕说涉及了函数间隔和几何间隔的知识??。看红色石头说对w和b同时缩放,得到的平面还是一样的,所以可以控制yn(w1Txn+b1)=1y_n(w1^Tx_n+b1)=1yn(w1Txn+b1)=1(哦 O o ??)
此时,因为要求最大的margin(让线更宽),所以要让w更大,并满足min(n=1...N)yn(w1Txn+b1)=1min_(n=1...N) y_n(w1^Tx_n+b1)=1min(n=1...N)yn(w1Txn+b1)=1
但是还是比较难解,于是我们把条件放松,让yn(wTxn+b1)>=1y_n(w^Tx_n+b1)>=1yn(wTxn+b1)>=1,并证明放松后,最佳解还是h会满足yn(wTxn+b1)=1y_n(w^Tx_n+b1)=1yn(wTxn+b1)=1
假设找到有组最佳解(b1,w1)使得yn(w1Txn+b1)>1.126y_n(w1^Tx_n+b1)>1.126yn(w1Txn+b1)>1.126,那么我们还可以找到一组更优的解(b11.126\frac{b1}{1.126}1.126b1,w11.126\frac{w1}{1.126}1.126w1),根据margin=1∣∣w∣∣margin=\frac{1}{||w||}margin=∣∣w∣∣1,w/1.126后变小了,从而让margin更大。因此,之前的最优解(b1,w1)并不是最优的,存在矛盾。所以只要有组解使得yn(wTxn+b1)>1y_n(w^Tx_n+b1)>1yn(wTxn+b1)>1,我们就能够找到更优的解使得yn(wTxn+b1)=1y_n(w^Tx_n+b1)=1yn(wTxn+b1)=1,因此,我们得知最优解会使yn(wTxn+b1)=1y_n(w^Tx_n+b1)=1yn(wTxn+b1)=1。
最后,之前都是求min,为了统一一下,把1∣∣w∣∣\frac{1}{||w||}∣∣w∣∣1取倒数。从求max1∣∣w∣∣max\frac{1}{||w||}max∣∣w∣∣1变为求 min∣∣w∣∣min||w||min∣∣w∣∣。因为||w||有根号,所以除掉根号,变为w的平方,用矩阵表示就是wTw,最后再加上12\frac{1}{2}21(感觉是为了求导而加的??)。最后变成:
最后的funtime,注意式子x1x2可以分别对应y=kx+b中的x和y。然后根据d=∣Ax1+Bx2+C∣(A2+B2)d=\frac{|Ax1+Bx2+C|}{\sqrt{(A^2+ B^2)}}d=(A2+B2)∣Ax1+Bx2+C∣,化简x1+x2=1x1+x2=1x1+x2=1为1∗x1+1∗x2−1=01*x1+1*x2-1=01∗x1+1∗x2−1=0,则A=1,B=1,C=−1A=1,B=1,C=-1A=1,B=1,C=−1,代入x1的x1,x2(其实就是x1的x和y),就是下面这里:
P4 1.4
以这组(X,Y)为例子,可以得出(i)~(iv),那么可以确定出w1>=1,w2<=-1,所以w1^2 + w2^2 >=2,所以有12wTw>=1\frac{1}{2}w^Tw>=121wTw>=1,给w1,w2和b赋合适的值,则得出了gsvm = sign ( x1 - x2 - 1 ) 。
那么,如何处理一般情况呢?解决的这个问题:
它有两个特点:
而quadratic programming(二次规划 / 凸优化 / 是个QP问题)已经有一个已知的解决方法了,接下来只有代入就好了:
最后,对于不是线性的问题,用之前那个z空间就可以了
P5 1.5
SVM和之前那个正则化regularization(z空间啥的)的区别喊联系:
可以看出他们两个的目标差不多是相反的,所以SVM也是一种regularization,不过让Ein=0而已。
当margin设为0的时候(A0A_0A0),跟PLA一样。宽度为A1.126时候,如果不符合规则就不选的话,会比A0A_0A0的种类少,因此情形少了->(假的)VC dimension少了->better generalization。
对于这个球 ρ=0ρ=0ρ=0的时候可以shatter 3 个点,所以 dvc = 3,如果 ρ=32ρ=\frac{\sqrt{3}}{2}ρ=23的话,这个圆半径为3\sqrt{3}3,因为有三个点,最多一对在对面,还有另一个点不能被shatter,所以此时dvc < 3 。因此有:
下节课会介绍把large-margin hyperplanes和特征转换结合起来的non-linear SVM:
林轩田机器学习技法(Machine Learning Techniques)笔记(一)相关推荐
- 林轩田机器学习技法(Machine Learning Techniques)笔记(三)
感觉边写边记还不错hhh(感觉之前就剪剪图,写在记事本里打算之后再贴上去,实在是太蠢了⁄(⁄ ⁄•⁄ω⁄•⁄ ⁄)⁄) 林轩田机器学习技法(Machine Learning Techniques)笔记 ...
- 台湾大学林轩田机器学习技法课程学习笔记4 -- Soft-Margin Support Vector Machine
红色石头的个人网站:redstonewill.com 上节课我们主要介绍了Kernel SVM.先将特征转换和计算内积这两个步骤合并起来,简化计算.提高计算速度,再用Dual SVM的求解方法来解决. ...
- 台大林轩田·机器学习技法记要
台大林轩田·机器学习技法 记要 6/1/2016 7:42:34 PM 第一讲 线性SVM 广义的SVM,其实就是二次规划问题 把SVM问题对应到二次规划的系数 这就是线性SVM,如果想变成非线性,只 ...
- 台湾大学林轩田机器学习技法课程学习笔记1 -- Linear Support Vector Machine
红色石头的个人网站:redstonewill.com 关于台湾大学林轩田老师的<机器学习基石>课程,我们已经总结了16节课的笔记.这里附上基石第一节课的博客地址: 台湾大学林轩田机器学习基 ...
- 台湾大学林轩田机器学习技法课程学习笔记13 -- Deep Learning
红色石头的个人网站:redstonewill.com 上节课我们主要介绍了神经网络Neural Network.神经网络是由一层一层的神经元构成,其作用就是帮助提取原始数据中的模式即特征,简称为pat ...
- 台湾大学林轩田机器学习技法课程学习笔记3 -- Kernel Support Vector Machine
红色石头的个人网站:redstonewill.com 上节课我们主要介绍了SVM的对偶形式,即dual SVM.Dual SVM也是一个二次规划问题,可以用QP来进行求解.之所以要推导SVM的对偶形式 ...
- 台湾大学林轩田机器学习技法课程学习笔记2 -- Dual Support Vector Machine
红色石头的个人网站:redstonewill.com 上节课我们主要介绍了线性支持向量机(Linear Support Vector Machine).Linear SVM的目标是找出最"胖 ...
- 【完结】林轩田机器学习技法终章
AI有道 一个有情怀的公众号 1 Feature Exploitation Techniques 我们在本系列课程中介绍的第一个特征提取的方法就是kernel.Kernel运算将特征转换和计算内积这两 ...
- 台湾大学林轩田机器学习技法课程学习笔记16(完结) -- Finale
红色石头的个人网站:redstonewill.com 上节课我们主要介绍了Matrix Factorization.通过电影推荐系统的例子,介绍Matrix Factorization其实是一个提取用 ...
最新文章
- Office 365 成微软 AI 落地载体, 53 项 AI 功能你用过多少?
- 技术06期:测试系统软件需要重视哪几点?
- 常用命令linux下vi编辑器命令大全
- 机器学习-学习资源整理
- ORACLE RAC 重新安装时清空ASM 磁盘命令
- vue.js 接收url参数
- [转载]VirtualBox网络配置详解
- linux-vim设置环境
- python的UML类图自动生成工具--pyreverse安装和使用
- sql2000海量存储过程(1500w数据,分页只需1秒)
- vB编程VB源码 VB读取EXCEL工作薄某个表中数据 ADODB.Recordset
- Win系统 - WIN10 版本号说明
- diff比较两个目录时,如何略过特定目录或文件
- lizzieyzy使用智星云GPU算力
- 【智能优化算法-白鲸优化算法】基于白鲸优化算法求解单目标优化问题附matlab代码
- DevOps企业实践指南(1):DevOps能为我们带来什么
- web前端(HTML5)
- 【GTASA】Sanny Builder 不能编译 main.scm,报错 “Incorrect number of the conditions“
- 井冈山大学专属中秋月饼
- 智能化工厂的几大特征