支持向量机 SVM | 线性可分:软间隔模型

news2024/11/20 15:38:24

目录

  • 一. 软间隔模型
    • 1. 松弛因子的解释
      • 小节
    • 2. SVM软间隔模型总结

线性可分SVM中,若想找到分类的超平面,数据必须是线性可分的;但在实际情况中,线性数据集存在少量的异常点,导致SVM无法对数据集线性划分

也就是说:正常数据本身是线性可分的,但是由于存在异常点数据,导致数据集不能够线性可分
在这里插入图片描述

一. 软间隔模型

为了解决上述问题,我们引入软间隔的概念:

1. 松弛因子的解释

  • 硬间隔: 线性划分SVM中的硬间隔是距离度量;在线性划分SVM中,要求函数距离一定是大于等于1的,最大化硬间隔条件为: { m i n 1 2 ∥ w → ∥ 2 s . t : y ( i ) ( ω T ⋅ x ( i ) + b ) ≥ 1 , i = 1 , 2 , . . . , m \left\{\begin{matrix}min\frac{1}{2}\left \| \overrightarrow{w} \right \| ^{2} \\s.t: y^{(i)} (\omega ^{T}\cdot x^{(i)} +b)\ge1,i=1,2,...,m \end{matrix}\right. {min21 w 2s.ty(i)(ωTx(i)+b)1i=1,2,...,m
  • 软间隔:SVM对于训练集中的每个样本都引入一个松弛因子(ξ),使得函数距离加上松弛因子后的值是大于等于1; y ( i ) ( ω T ⋅ x ( i ) + b ) ≥ 1 − ξ ; i = 1 , 2 , . . . , m , ξ ≥ 0 y^{(i)} (\omega ^{T}\cdot x^{(i)} +b)\ge1-\xi ;i=1,2,...,m,\xi\ge 0 y(i)(ωTx(i)+b)1ξi=1,2,...,mξ0

松弛因子(ξ)表示:相对于硬间隔,对样本到超平面距离的要求放松了

ξ = 0 ξ=0 ξ=0 , 相当于硬间隔
0 < ξ < 1 0<ξ<1 0<ξ<1 , 相当于样本点位于“街”内
ξ > 1 ξ>1 ξ>1 , 相当于样本点位于“街”对面
ξ > 2 ξ>2 ξ>2 , 相当于样本点位于“街”对面外侧

注意: ξ ξ ξ只能对少量的样本起作用

ξ ξ ξ越大,表示样本点离超平面越近,
ξ > 1 ξ>1 ξ>1,那么表示允许该样本点分错

因此:加入松弛因子是有成本的,过大的松弛因子可能会导致模型分类错误

所以,我们对存有异常点的数据集划分时,目标函数就变成了:
{ m i n 1 2 ∥ w → ∥ 2 + C ∑ i = 1 n ξ ( i ) y ( i ) ( ω T ⋅ x ( i ) + b ) ≥ 1 − ξ ( i ) , i = 1 , 2 , . . . , m \left\{\begin{matrix}min\frac{1}{2}\left \| \overrightarrow{w} \right \| ^{2}+C\sum_{i=1}^{n} \xi _{(i)} \\ \\y^{(i)} (\omega ^{T}\cdot x^{(i)} +b)\ge1-\xi ^{(i)} ,i=1,2,...,m \end{matrix}\right. min21 w 2+Ci=1nξ(i)y(i)(ωTx(i)+b)1ξ(i)i=1,2,...,m
ξ i ≥ 0 , i = 1 , 2 , . . . , m \xi{i}\ge 0,i=1,2,...,m ξi0i=1,2,...,m

公式 C ∑ i = 1 n ξ ( i ) C\sum_{i=1}^{n} \xi _{(i)} Ci=1nξ(i)表式:

    每个样本惩罚项的总和不能大,函数中的C>0是惩罚参数,需要调参

C越大,表示对错误分类的惩罚越大,也就越不允许存在分错的样本;

C越小表示对误分类的惩罚越小,也就是表示允许更多的分错样本存在

也就是说:
对于完全线性可分的数据来说,C的值可以给大一点
对于线性可分但存在异常的数据来说,C的值需要调小

小节

对于线性可分的m个样本(x1,y1),(x2,y2)… :

	x为n维的特征向量
	y为二元输出,即+1,-1

SVM的输出为w,b,分类决策函数

选择一个惩罚系数C>0,构造约束优化问题

{ min ⁡ β ≥ 0 1 2 ∑ i = 1 m ∑ j = 1 m β i β j y ( i ) y ( j ) x ( j ) T x ( i ) − ∑ i = 1 m β i s . t : ∑ i = 1 m β i y ( i ) = 0 , 0 ≤ β i ≤ C , i = 1 , 2 , . . . , m \left\{\begin{matrix}\min_{\beta \ge 0}\frac{1}{2}\sum_{i=1}^{m}\sum_{j=1}^{m} \beta _{i}\beta _{j} y^{(i)}y^{(j)}x^{(j)^{T}} x^{(i)}-\sum_{i=1}^{m} \beta _{i} \\s.t:\sum_{i=1}^{m} \beta _{i} y^{(i)}=0,0\le \beta _{i}\le C,i=1,2,...,m \end{matrix}\right. {minβ021i=1mj=1mβiβjy(i)y(j)x(j)Tx(i)i=1mβis.t:i=1mβiy(i)=00βiCi=1,2,...,m
使用SMO算法求出上述最优解 β \beta β
找到所有支持向量集合:
S = ( x ( i ) , y ( i ) ) ( 0 < β i < C , i = 1 , 2 , . . . , m ) S = (x^{(i)}, y^{(i)}) (0<\beta_{i} < C,i=1,2,...,m) S=(x(i),y(i))(0<βi<C,i=1,2,...,m)
从而更新w,b

w = ∑ i = 1 m β i x ( i ) y ( i ) w=\sum_{i=1}^{m} \beta _{i} x^{(i)}y^{(i)} w=i=1mβix(i)y(i)

b = 1 S ∑ i = 1 S ( y s − ∑ i = 1 m β i x ( i ) T y ( i ) x s ) b=\frac{1}{S} \sum_{i=1}^{S}(y^{s}- \sum_{i=1}^{m} \beta _{i} x^{(i)^{T}}y^{(i)}x^{s} ) b=S1i=1S(ysi=1mβix(i)Ty(i)xs)

构造最终的分类器,为:
f ( x ) = s i g n ( w ∗ x + b ) f(x)=sign(w\ast x+b) f(x)=sign(wx+b)

	x<0时,y=-1
	x=0时,y=0
	x>0时,y=1
	
	注意:
		假设,不会出现0
		若出现,正负样本随意输出一个,即+0.00000001或-0.00000001都可以

2. SVM软间隔模型总结

	可以解决线性数据中存在异常点的分类模型构建问题
	
	通过引入松弛因子,可以增加模型的泛化能力,即鲁棒性;
	
	对于模型而言:
		如果给定的惩罚项系数C越小,表示在模型构建的时候,就允许存在越多的分类错误的样本,也就表示此时模型的准确率会比较低;
		如果惩罚项系数越大,表示在模型构建的时候,就越不允许存在分类错误的样本,也就表示此时模型的准确率会比较高。

感谢阅读🌼
如果喜欢这篇文章,记得点赞👍和转发🔄哦!
有任何想法或问题,欢迎留言交流💬,我们下次见!

祝愉快🌟!


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

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

相关文章

Seata 2.x 系列【6】微服务项目搭建

有道无术&#xff0c;术尚可求&#xff0c;有术无道&#xff0c;止于术。 本系列Seata 版本 2.0.0 本系列Spring Boot 版本 3.2.0 本系列Spring Cloud 版本 2023.0.0 源码地址&#xff1a;https://gitee.com/pearl-organization/study-seata-demo 文章目录 1. 概述2. 数据库…

【MQ】消息队列概述

&#x1f4dd;个人主页&#xff1a;五敷有你 &#x1f525;系列专栏&#xff1a;MQ ⛺️稳中求进&#xff0c;晒太阳 定义 消息队列&#xff1a;一般我们简称为MQ(Message Queue) Message Queue :消息队列中间件&#xff0c;很多初学者认为&#xff0c;MQ通过消息的发送…

linux centos系统搭建samba文件服务器 NetBIOS解析 (超详细)

CSDN 成就一亿技术人&#xff01; 作者主页&#xff1a;点击&#xff01; Linux专栏&#xff1a;点击&#xff01; CSDN 成就一亿技术人&#xff01; 前言———— Samba 是一个开源软件套件&#xff0c;可为 SMB/CIFS 客户端&#xff08;包括 Windows&#xff09;提供文件…

【JavaEE初阶】 关于JVM垃圾回收

文章目录 &#x1f343;前言&#x1f38b;死亡对象的判断算法&#x1f6a9;引用计数算法&#x1f6a9;可达性分析算法 &#x1f333;垃圾回收算法&#x1f6a9;标记-清除算法&#x1f6a9;复制算法&#x1f6a9;标记-整理算法&#x1f6a9;分代算法&#x1f388;哪些对象会进入…

vue 总结

1.vue 的生命周期 1. es6 2. vue 基本属性指令 <template><div><!--<h1>vue基本指令的使用方式</h1><a :href"url">v-bind使用链接</a><img :src"srcUrl" /><div>解决闪烁问题<p v-cloak>{{…

JavaWeb Tomcat启动、部署、配置、集成IDEA

web服务器软件 服务器是安装了服务器软件的计算机&#xff0c;在web服务器软件中&#xff0c;可以部署web项目&#xff0c;让用户通过浏览器来访问这些项目。 Web服务器是一个应用程序&#xff08;软件&#xff09;&#xff0c;对HTTP协议的操作进行封装&#xff0c;使得程序…

(day 2)JavaScript学习笔记(基础之变量、常量和注释)

概述 这是我的学习笔记&#xff0c;记录了JavaScript的学习过程&#xff0c;我是有一些Python基础的&#xff0c;因此在学习的过程中不自觉的把JavaScript的代码跟Python代码做对比&#xff0c;以便加深印象。我本人学习软件开发纯属个人兴趣&#xff0c;大学所学的专业也非软件…

国产羽绒服:哪些品牌能为52年大单品的发展注脚?

文 | 螳螂观察 作者 | 易不二 今年开年后的天气&#xff0c;诡异程度堪比股市。 本以为早已习惯了A股的寒凉之意&#xff0c;但没想到老天爷还得让我感受一下冻雨的刺骨之寒。不过&#xff0c;老天爷还是比A股要仁慈一点&#xff0c;因为我还能从衣柜里拿出本已经收起来的波…

SAP 消息编号 M8147

月末执行物料分类账的时候&#xff0c;出现以下报错 解决方法&#xff1a;OBYC-PRM

视频编解码技术介绍 - 基本概念篇

第一章 视频编解码技术介绍 - 基本概念篇 文章目录 前言1. 我的疑问1.1 什么是视频编解码技术1.2 为什么会有视频编解码技术1.3 视频编解码中有哪些核心技术1.4 作为开发者需要重点了解视频编解码中的哪些技术 2. 视频编解码的历史3. 基本概念3.1 像素3.2 分辨率3.3 ppi(像素密…

二叉搜索树(BST)的创建及增,删,查,改(详解)

目录 初识二叉搜索树&#xff08;BST&#xff09;&#xff1a; 二叉搜索树查找元素&#xff1a; 二叉搜索树修改元素: 二叉搜索树中的增加元素&#xff1a; 二叉搜索树中的删除元素&#xff1a; 初识二叉搜索树&#xff08;BST&#xff09;&#xff1a; 一张图简要概括二…

关于阿里云服务器地域的选择方法,看这一篇就够了

阿里云服务器地域和可用区怎么选择&#xff1f;地域是指云服务器所在物理数据中心的位置&#xff0c;地域选择就近选择&#xff0c;访客距离地域所在城市越近网络延迟越低&#xff0c;速度就越快&#xff1b;可用区是指同一个地域下&#xff0c;网络和电力相互独立的区域&#…

NTP协议介绍

知识改变命运&#xff0c;技术就是要分享&#xff0c;有问题随时联系&#xff0c;免费答疑&#xff0c;欢迎联系&#xff01; 网络时间协议NTP&#xff08;Network Time Protocol&#xff09;是TCP/IP协议族里面的一个应用层协议&#xff0c;用来使客户端和服务器之间进行时…

去电脑维修店修电脑需要注意什么呢?装机之家晓龙

每当电脑出现故障时&#xff0c;你无疑会感到非常沮丧。 如果计算机已过了保修期&#xff0c;您将无法享受制造商的免费保修服务。 这意味着您必须自费找到一家电脑维修店。 去电脑维修店并不容易。 大家一定要知道&#xff0c;电脑维修非常困难&#xff0c;尤其是笔记本电脑维…

【深度学习笔记】稠密连接网络(DenseNet)

注&#xff1a;本文为《动手学深度学习》开源内容&#xff0c;部分标注了个人理解&#xff0c;仅为个人学习记录&#xff0c;无抄袭搬运意图 5.12 稠密连接网络&#xff08;DenseNet&#xff09; ResNet中的跨层连接设计引申出了数个后续工作。本节我们介绍其中的一个&#xf…

WiFi模块助力少儿编程:创新学习与实践体验

随着科技的飞速发展&#xff0c;少儿编程已经成为培养孩子们创造力和问题解决能力的重要途径之一。在这个过程中&#xff0c;WiFi模块的应用为少儿编程领域注入了新的活力&#xff0c;使得学习编程不再是单一的代码教学&#xff0c;而是一个充满创新与实践的综合性体验。 物联网…

E4991A 射频阻抗/材料分析仪

新利通 E4991A 射频阻抗/材料分析仪 —— 1 MHz到 3 GHz —— 简述 E4991A 射频阻抗/材料分析提供极限阻抗测量性能和功能强大的内置分析功能。它将为元器件和电路设计人员测量 3 GHz 以内的元器件提供创新功能&#xff0c;帮助他们进行研发工作。与反射测量技术不同&#x…

Java对接腾讯云直播示例

首先是官网的文档地址 云直播 新手指南 可以发现它这个主要是按流量和功能收费的 价格总览 流量这里还只收下行的费用&#xff0c;就是只收观看消耗的流量费 其它的收费就是一些增值业务费 &#xff08;包括直播转码、直播录制、直播截图、直播审核、智能鉴黄、实时监播、移动直…

软件测试面试200问(附100W字文档)

&#x1f345; 视频学习&#xff1a;文末有免费的配套视频可观看 &#x1f345; 关注公众号【互联网杂货铺】&#xff0c;回复 1 &#xff0c;免费获取软件测试全套资料&#xff0c;资料在手&#xff0c;涨薪更快 软件测试面试题&#xff1a;项目 1、简单介绍下最近做过的项目…

centos7 python3.12.1 报错 No module named _ssl

https://blog.csdn.net/Amio_/article/details/126716818 安装python cd /usr/local/src wget https://www.python.org/ftp/python/3.12.1/Python-3.12.1.tgz tar -zxvf Python-3.12.1.tgz cd Python-3.12.1/ ./configure -C --enable-shared --with-openssl/usr/local/opens…