机器学习笔记——SVM
SVM(Support Vector Machine)。中文名为 支持向量机。就像自己主动机一样。听起来异常神气。最初总是纠结于不是机器怎么能叫“机”,后来才知道事实上此处的“机”实际上是算法的意思。
支持向量机一般用于分类,基本上,在我的理解范围内。全部的机器学习问题都是分类问题。而据说,SVM是效果最好而成本最低的分类算法。
SVM是从线性可分的情况下最优分类面发展而来的,其基本思想能够用下图表示:
(最优分类面示意图)
图中空心点和实心点代表两类数据样本,H为分类线,H1、H2分别为过各类中离分类线近期的数据样本且平行与分类线的直线。他们之间的距离叫做分类间隔(margin)。
最优分类线,就是要求分类线不但能将两类正确的分开,使训练错误率为0。并且还要使分类间隔最大。
推广到高维空间,最优分类线就叫做最优分类面了。
设为两类线性可分的样本集合。
相应的线性判别函数的一般形式为,相应的分类方程为
%5Comega%20%5Ccdot%20x+b%3D0" alt="" style="font-size:18px; margin:10px; text-align:center">。将判别函数进行归一化。使全部样本都满足,此时离分类面近期的样本
f%28x%29%3D%201" alt="" style="margin:10px; text-align:center">,要求分类面对全部样本都能正确分类,即满足 (记为A),
此时分类间隔等于。间隔最大等价于最小。
最优分类线H就是满足式A且使
%5Cfrac%7B1%7D%7B2%7D%5Cleft%20%7C%20%5Cleft%20%7C%20%5Comega%20%5Cright%20%7C%20%5Cright%20%7C%5E%7B2%7D" alt="" style="margin:10px; text-align:center">最小的分类面。
两类数据样本中立分类面近期的样本,且平行于分类面H的超平面、上的数据就是式A中使等号成立的那些数据样本。这些数据样本叫做支持向量(support
vector,SV)。
由上可知,最优分类面问题能够表示为约束优化问题。在式A的约束下,求例如以下函数的最小值
%5Cvarphi%20%28%5Comega%20%29%3D%5Cfrac%7B1%7D%7B2%7D%5Cleft%20%5C%7C%20%5Comega%20%5Cright%20%5C%7C%20%5E%7B2%7D" alt="" style="margin:10px; text-align:center">
为此。定义例如以下Lagrange函数
(记为式B)
式中,为拉格朗日函数的乘子(Lagrange
Multiplier) 。
%5Calpha_%7Bi%5Cgeqslant%20%7D0" alt="" style="margin:10px; text-align:center">。要求式B的最小值,对各个參数求偏导数。且偏导数为0。结果例如以下
依据A式和B式的约束条件,能够将上述分类面的求解问题问题转化为例如以下凸优化的问题
式中,
%5Calpha_i" alt="" style="margin:10px; text-align:center">相应的为拉格朗日乘子 ,这是一个二次寻优问题。存在唯一解。若为最优解,则有
式中。为不为0的样本。即为支持向量。
因此。最优分类面的权系数向量是支持向量的线性组合。
设为分类阀值,可由约束条件
%5Calpha_i%5By_i%28%5Comega%5Ccdotx+b%29-1%5D%3D0" alt="" style="margin:10px; text-align:center">求解。解上述问题后得到的最优分类面函数为
若,x就属于该类,否则不属于。
概括地说,SVM就是首先通过用内积函数定义的非线性变换将输入控件变换到一个高维空间。然后在这个空间中求广义的最优分类面。
机器学习笔记——SVM的更多相关文章
- 机器学习笔记—svm算法(上)
本文申明:本文原创,如转载请注明原文出处. 引言:上一篇我们讲到了logistic回归,今天我们来说一说与其很相似的svm算法,当然问题的讨论还是在线性可分的基础下讨论的. 很多人说svm是目前最好的 ...
- 吴恩达机器学习笔记(六) —— 支持向量机SVM
主要内容: 一.损失函数 二.决策边界 三.Kernel 四.使用SVM (有关SVM数学解释:机器学习笔记(八)震惊!支持向量机(SVM)居然是这种机) 一.损失函数 二.决策边界 对于: 当C非常 ...
- Python机器学习笔记:SVM(1)——SVM概述
前言 整理SVM(support vector machine)的笔记是一个非常麻烦的事情,一方面这个东西本来就不好理解,要深入学习需要花费大量的时间和精力,另一方面我本身也是个初学者,整理起来难免思 ...
- Andrew Ng机器学习笔记+Weka相关算法实现(五)SVM最优间隔和核方法
这一章主要解说Ng的机器学习中SVM的兴许内容.主要包括最优间隔分类器求解.核方法. 最优间隔分类器的求解 利用以一篇讲过的的原始对偶问题求解的思路,我们能够将相似思路运用到SVM的求解上来. 详细的 ...
- Python机器学习笔记:使用Keras进行回归预测
Keras是一个深度学习库,包含高效的数字库Theano和TensorFlow.是一个高度模块化的神经网络库,支持CPU和GPU. 本文学习的目的是学习如何加载CSV文件并使其可供Keras使用,如何 ...
- Python机器学习笔记:sklearn库的学习
网上有很多关于sklearn的学习教程,大部分都是简单的讲清楚某一方面,其实最好的教程就是官方文档. 官方文档地址:https://scikit-learn.org/stable/ (可是官方文档非常 ...
- Python机器学习笔记:不得不了解的机器学习面试知识点(1)
机器学习岗位的面试中通常会对一些常见的机器学习算法和思想进行提问,在平时的学习过程中可能对算法的理论,注意点,区别会有一定的认识,但是这些知识可能不系统,在回答的时候未必能在短时间内答出自己的认识,因 ...
- cs229 斯坦福机器学习笔记(一)-- 入门与LR模型
版权声明:本文为博主原创文章,转载请注明出处. https://blog.csdn.net/Dinosoft/article/details/34960693 前言 说到机器学习,非常多人推荐的学习资 ...
- Python机器学习笔记 集成学习总结
集成学习(Ensemble learning)是使用一系列学习器进行学习,并使用某种规则把各个学习结果进行整合,从而获得比单个学习器显著优越的泛化性能.它不是一种单独的机器学习算法啊,而更像是一种优 ...
随机推荐
- viewport 640宽的做法 针对iphone和安卓单独设置
<!DOCTYPE html> <html lang="ch"> <head> <meta charset="utf-8&quo ...
- JAVA编程不得不看的几本经典书籍
为了帮助对java编程感兴趣的同学更好.更快的提高编程技术,武汉北大青鸟光谷校区专业老师在此推荐几本学习编程非常有用的书籍,以供大家参考. 入门类 1.<java从入门到精通>(第3版) ...
- vue工程化之项目引入jquery
既然写项目,那么少不了用jq,那我们就引入进来吧 1.因为已经安装了vue脚手架,所以需要在webpack中全局引入jquery 打开package.json文件,在里面加入这行代码,jquery后面 ...
- JavaSE-05 数组
学习要点 数组的基本用法 数组的典型应用 数组相关概念 问题 Java考试结束后,老师给小强分配了一项任务,让他计算全班(30人)的平均分,按照目前的知识结构,如何实现? 问题分析 数组 定义:数组是 ...
- JVM优化(下)
14.Tomcat8优化之G1牢记收集器的测试结果以及小结: jmeter测试:(1)tomcat未做任何优化:(2)禁用AJP:(3)启用连接池:(4)设置最大线程数1000,初始线程数200:(5 ...
- [BZOJ] 2431 逆序对数列
Time Limit: 5 Sec Memory Limit: 128 MB Submit: 2611 Solved: 1526 [Submit][Status][Discuss] Descripti ...
- nohup 忽略所有挂断信号
1.nohup 用途:不挂断地运行命令. 语法:nohup Command [ Arg … ] [ & ] 无论是否将 nohup 命令的输出重定向到终端,输出都将附加到当前目录的 nohup ...
- vue中的表单验证
http://www.cnblogs.com/luoxuemei/p/9295506.html /*是否合法IP地址*/ export function validateIP(rule, value, ...
- Spider-Python爬虫之使用Selenium模拟浏览器行为
分析 他的代码比较简单,主要有以下的步骤:使用BeautifulSoup库,打开百度贴吧的首页地址,再解析得到id为new_list标签底下的img标签,最后将img标签的图片保存下来. header ...
- 单线制DS18B20温度传感器LED数码管显示当前的温度值
/******************************************* 程序功能:利用单线制DS18B20温度传感器 LED数码管显示当前的温度值 ***************** ...