第三课 SVM(2)

1 线性可分的数据集

1.1 超平面

SVM的思想是找到最大间隔的分隔超平面。

在这里插入图片描述

在两个分类中,找到能够一条线,以最好地区分这两个分类。这样如果有了新的点,这条线也能很好地做出分类。
这样的线在高维样本中的时候就叫做超平面。

1.2 几何间隔与函数间隔

图中绿线h1效果不好,h2效果还行,h3效果最好。怎么区分效果好不好?
如果超平面w.x+b=0w.x+b=0w.x+b=0已经存在,那么样本点距离超平面的距离能够表示预测的确信程度。∣w.x+b∣|w.x+b|w.x+b能够相对地表示点x距离超平面的距离。而w.x+bw.x+bw.x+b的符号与标记y的符号是否一致表示分类是否正确。那么就可以用y(w.x+b)y(w.x+b)y(w.x+b)表示分类的正确性和确信程度,这就是函数间隔。

函数间隔:超平面(w,b)关于样本点(xix_ixi,yiy_iyi)样本点的函数间隔为:ri^=yi(w.xi+b)\hat{r_i}=y_i(w.x_i+b)ri^=yi(w.xi+b)
超平面(w,b)关于数据集T的函数间隔,为所有样本点的函数间隔的最小值:r^=mini=1,2...Nri^\hat{r}=min_{i=1,2...N} \hat{r_i}r^=mini=1,2...Nri^

函数间隔的问题是如果成比例的改变w和b,例如改为2w+2b,超平面不变,函数间隔却变成了原来的两倍。如果规范化之后就会使得间隔是确定的。这时候函数间隔就变成了几何间隔。
几何间隔:对于给定数据集T和超平面(w,b),w是超平面的法向量,样本点(xix_ixi,yiy_iyi)的几何间隔为:ri=yiw.x+b∣∣w∣∣r_i=y_i\dfrac{w.x+b}{||w||}ri=yiww.x+b
在这里插入图片描述

超平面(w,b)关于数据集T的几何间隔,为所有样本点的几何间隔的最小值:r=mini=1,2...Nrir=min_{i=1,2...N} {r_i}r=mini=1,2...Nri

1.3 目标函数

目标函数:最大化几何间隔r:maxr=maxr^∣∣w∣∣max r=max\dfrac{\hat{r}}{||w||}maxr=maxwr^
s.t. yi(w.xi+b)>=r^,i=1,2,3...Ny_i(w.x_i+b)>=\hat{r},i=1,2,3...Nyi(w.xi+b)>=r^,i=1,2,3...N
r^=1\hat{r}=1r^=1(这里等于1,没有特别的含义,只是好计算,不影响结果),那么目标函数变为:max1∣∣w∣∣max\dfrac{1}{||w||}maxw1min∣∣w∣∣min||w||minwmin12∣∣w∣∣2min\dfrac{1}{2}||w||^2min21w2
s.t. yi(w.xi+b)>=r^,i=1,2,3...Ny_i(w.x_i+b)>=\hat{r},i=1,2,3...Nyi(w.xi+b)>=r^,i=1,2,3...N

用拉格朗日乘子法:
L(w,b,α)=12∣∣w∣∣2−∑i=1Nαiyi(w.xi+b)+∑i=1NαiL(w,b,\alpha)=\dfrac{1}{2}||w||^2-\sum_{i=1}^N\alpha_iy_i(w.x_i+b) + \sum_{i=1}^N\alpha_iL(w,b,α)=21w2i=1Nαiyi(w.xi+b)+i=1Nαi

分别对w、b、求导得到:w=∑i=1Nαiyixiw=\sum_{i=1}^N\alpha_iy_ix_iw=i=1Nαiyixi∑i=1Nαiyi=0\sum_{i=1}^N\alpha_iy_i=0i=1Nαiyi=0

这样代入上面的式子得到:L(w,b,α)=12∑i=1N∑j=1Nαiαjyiyj(xi.xj)+∑i=1NαiL(w,b,\alpha)=\dfrac{1}{2}\sum_{i=1}^N\sum_{j=1}^N\alpha_i\alpha_jy_iy_j(x_i.x_j)+\sum_{i=1}^N\alpha_iL(w,b,α)=21i=1Nj=1Nαiαjyiyj(xi.xj)+i=1Nαi

1.4 支持向量

在线性可分情况下,训练数据集中的样本点中距离分离超平面最近的样本点称为支持向量

2 线性近似可分

训练样本中有一些点不满足函数间隔>=1的约束。
解决方法:是对每一个样本引入一个松弛变量ϵi>=0\epsilon_i>=0ϵi>=0使得函数间隔大于等于1。约束条件变为:yi(w.xi+b)>=1−ϵiy_i(w.x_i+b)>=1-\epsilon_iyi(w.xi+b)>=1ϵi
目标函数:min 12∣∣w∣∣2+C∑i=1Nϵi\dfrac{1}{2}||w||^2+C\sum_{i=1}^{N}\epsilon_i21w2+Ci=1Nϵi
s.t. yi(w.xi+b)>1−ϵi,i=1,2,3...Ny_i(w.x_i+b)>1-\epsilon_i, i=1,2,3...Nyi(w.xi+b)>1ϵi,i=1,2,3...N
ϵi>=0,i=1,2,3...N\epsilon_i>=0, i=1,2,3...Nϵi>=0,i=1,2,3...N

拉格朗日函数变为:L(w,b,α,μ)=12∣∣w∣∣2+C∑i=1Nϵi−∑i=1Nαi(yi(w.xi+b)−1+ϵi)+∑i=1NμiϵiL(w,b,\alpha,\mu)=\dfrac{1}{2}||w||^2 +C\sum_{i=1}^{N}\epsilon_i -\sum_{i=1}^N\alpha_i(y_i(w.x_i+b) -1 +\epsilon_i ) + \sum_{i=1}^N\mu_i\epsilon_iL(w,b,α,μ)=21w2+Ci=1Nϵii=1Nαi(yi(w.xi+b)1+ϵi)+i=1Nμiϵi

经过求导替换得到:minL(w,b,α,μ,ϵ)=−12∑i=1N∑j=1Nαiαjyiyj(xi.xj)+∑i=1Nαimin L(w,b,\alpha,\mu,\epsilon)=-\dfrac{1}{2}\sum_{i=1}^N\sum_{j=1}^N\alpha_i\alpha_jy_iy_j(x_i.x_j)+\sum_{i=1}^N\alpha_iminL(w,b,α,μ,ϵ)=21i=1Nj=1Nαiαjyiyj(xi.xj)+i=1Nαi

3 非线性支持向量机与核函数

对于线性不可分的问题通过一个变换,将低纬度的非线性问题变换为高纬度的线性问题。通过变换后的线性问题求解原来的非线性问题。
核函数定义:设X是输入空间,H为特征空间,如果存在一个从X到H的映射,ϕ(X):X−>H\phi(X):X->Hϕ(X):X>H,使得对所有的x,z∈Xx,z \in Xx,zX,函数K(x,z)满足条件:K(x,z)=ϕ(x)ϕ(z)K(x,z)=\phi(x)\phi(z)K(x,z)=ϕ(x)ϕ(z),则称K(x,z)为核函数,ϕ(x)\phi(x)ϕ(x)为映射函数。
核函数技巧的核心是,只需要定义核函数,而不是定义映射函数。因为通常直接计算K(x,z)更容易,而计算ϕ(x)ϕ(z)\phi(x)\phi(z)ϕ(x)ϕ(z)不容易,计算量还很大。

所以目标函数变为:L(w,b,α,μ,ϵ)=12∑i=1N∑j=1NαiαjyiyjK(xi.xj)−∑i=1NαiL(w,b,\alpha,\mu,\epsilon)=\dfrac{1}{2}\sum_{i=1}^N\sum_{j=1}^N\alpha_i\alpha_jy_iy_jK(x_i.x_j)-\sum_{i=1}^N\alpha_iL(w,b,α,μ,ϵ)=21i=1Nj=1NαiαjyiyjK(xi.xj)i=1Nαi

常用核函数为高斯核函数、多项式核函数。

三个类型讨论到后面使用SMO解决问题。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/423940.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

musql-mmm

http://mysql-mmm.org/转载于:https://www.cnblogs.com/fanweixiao/archive/2010/11/05/1870267.html

《C Traps and Pitfalls》 笔记

这本书短短的100多页,很象是一篇文章。但是指出的很多问题的确容易出现在笔试的改错题中--------------------------------------------------------------------第1章 词法陷阱1.1 和 1.3 词法分析的"贪心法则"编译器从左到右读入字符,每个符…

spring mvc学习(53):回顾和springmvc返回值类型总结

媒体类型 MIME媒体类型(简称MIME类型)是描述报文实体主体内容的一些标准化名称(比如,text/html、image/jpeg)。 因特网有数千种不同的数据类型,HTTP仔细地给每种要通过web传输的对象都打上了名为MIME类型的…

2019hdu多校1

1009 考虑贪心&#xff0c;暴力枚举一位。 $o(676n)$ #include<bits/stdc.h> using namespace std; const int N1e5333; int n,m,zl; int pos[26],cnt[N],t[26],az[N]; char s[N],st[N]; int l[N],r[N],nx[N],zzq[26]; int main(){ios::sync_with_stdio(0);//freopen(&qu…

关于梅花雪的js树

最近一段时间&#xff0c;为了学习java&#xff0c;天天在看别人的框架&#xff0c;为了实现一颗树&#xff0c;找到了一个改写梅花雪的js&#xff0c;下面是一个基本的结构<% page language"java" import"java.util.*" pageEncoding"GBK"%&g…

总和最大区间问题

题目和解题思路来源于吴军著作《计算之魂》。本题目是例题1.3。 文章目录1 问题描述2 解题思路2.1 三重循环2.2 两重循环2.3 分治法2.4 正反两遍扫描的方法2.5 再进一步&#xff0c;假设失效3 应用动态规划1 问题描述 总和最大区间问题&#xff1a;给定一个实数序列&#xff0…

spring mvc学习(54):简单异常处理

引入jar包 pom.xml <project xmlns"http://maven.apache.org/POM/4.0.0" xmlns:xsi"http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation"http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">…

【原】docker部署单节点consul

docker下部署单节点的consul&#xff0c;最重要的是在run consul时&#xff0c;配置-bootstrap-expect1 docker run --name consul1 -d -p 5902:8500 -p 8300:8300 -p 8301:8301 -p 8302:8302 -p 8600:8600 10.109.30.246:5901/daily_docker/consul:1.4.5 agent -server -boots…

learning to rank评价指标

文章目录1 准确率Mean average precision1.1 定义1.2 计算2 NDCG(Normalized Discounted Cumulative Gain)2.1定义2.2 例子1 准确率Mean average precision 1.1 定义 Precision at position k (Pk)是一个衡量排名前k位的方法&#xff0c;使用两个级别(相关的和不相关)的相关性…

Re: 社团改革还让不让人活了?

好&#xff0c;说到换位思考&#xff0c;说到服务&#xff0c; 我说一个学校应该给我们社团&#xff08;跑步爱好者协会&#xff09;做的一项最基本的服务── 体检&#xff01; 马拉松年年报名年年体检&#xff0c;但是校医院从来就没有肯为我们做过体检。 马拉松的体检并不复…

spring mvc学习(55):简单异常处理二

引入jar包 pom.xml <project xmlns"http://maven.apache.org/POM/4.0.0" xmlns:xsi"http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation"http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">…

深入学习linux socket编程之select

很多天之前都说学习关于select和poll的知识了&#xff0c;但是由于既要工作&#xff0c;又要准备论文。都忙不过来&#xff0c;今天终于能抽出一天的时间把select的相关知识和程序给实现了一遍。 select系统调用是用来让我们的程序监视多个文件句柄(file descriptor)的状态变化…

Jelinek-Merer与Absolute discounting 平滑方法

Jelinek-Merer Jelinek-Merer平滑方法的基本思想是利用低元n-gram模型对高元n-gram模型进行线性插值。 PML(wi∣wi−1)c(wi,wi−1)c(wi−1)P_{ML}(w_i|w_{i-1})\dfrac{c(w_i,w_{i-1})}{c(w_{i-1})}PML​(wi​∣wi−1​)c(wi−1​)c(wi​,wi−1​)​ c(wi,wi−1)c(w_i,w_{i-1}…

超级实用且不花哨的js代码大全

****************************************************************&#xff08;一&#xff09;常用元素&#xff0c;对象&#xff0c;事件&#xff0c;技巧事件源对象 event.srcElement.tagName event.srcElement.type 捕获释放 event.srcElement.setCapture(); event.srcEl…

phpMyAdmin 配置

下载&#xff1a;http://downloads.sourceforge.net/project/phpmyadmin/phpMyAdmin/4.0.2/phpMyAdmin-4.0.2-all-languages.tar.bz2?rhttp%3A%2F%2Fsourceforge.net%2Fprojects%2Fphpmyadmin%2F&ts1370058054&use_mirrorncu 输入用户名和密码后点击“执行”&#xff…

三种平滑方法

为了理解《LETOR: A benchmark collection for research on learning to rank for information retrieval》中提出的数据特征中的三个&#xff1a;LMIR.ABS、LMIR.DIR、LMIR.JM的计算方法&#xff0c;我查阅了很多资料。前面一篇博客是理解。这一篇也是。这篇博客的内容来自《A…

控制台读写

program Project1;{$APPTYPE CONSOLE}varstr: string; beginWriteln(请输入&#xff1a;);Readln(str);Writeln(你输入的是&#xff1a; str);Readln; end.转载于:https://www.cnblogs.com/del/archive/2007/11/21/967013.html

基于Chromium构建Chrome WebBrowser for .net 控件(还有点心得体会)

http://blog.csdn.net/lllllllllluoyi/article/details/8540054 首先向360说句sorry&#xff0c;在2011年360极速浏览器出现的时候我去他们论坛里骂过。为什么要到歉呢&#xff0c;因为2012年我把我们公司使用IE WebBrowser改为Chrome控件了&#xff0c;中间遇到的辛酸使我明白…

我们“老实”么?

我们“老实”么&#xff1f; 不知道现在的人&#xff0c;对老实这个词语是怎样的看法。“聪明”的人应该觉得那是个贬义词吧&#xff0c;因为他们总是在利用那些他们认为的“老实”人&#xff0c;有好事的时候他们想到的是那些他们畏惧或者讨好自己的人&#xff0c;有麻烦的时候…

从决策树到xgboost(一)

文章目录1 决策树1.1决策树定义1.2信息增益1.3 信息增益的算法1.4 信息增益比2 决策树ID32.1 ID3树的构建2.2 决策树的剪枝2.2.1 损失函数定义与计算2.2.2 剪枝过程2.3 CART树2.3.1 CART回归树2.3.2 CART分类树2.3.3 CART树剪枝1 决策树 1.1决策树定义 决策树的基本组成&…