SVM 支持向量机

简介: svm,support vector machine,可用于模式分类和非线性回归。 支持向量机的主要思想是建立一个分类超平面作为决策曲面,使得正例和反例之间的隔离边缘被最大化。支持向量机的理论基础是统计学习理论,更精确的说,支持向量机是结构风险最小化的近似实现。这个原理基于这样的事实:学习机器在测试数据上的误差率(即泛化误差率)以训练误差率和一个依赖于VC维数(Vapnik

svm,support vector machine,可用于模式分类和非线性回归。
支持向量机的主要思想是建立一个分类超平面作为决策曲面,使得正例和反例之间的隔离边缘被最大化。支持向量机的理论基础是统计学习理论,更精确的说,支持向量机是结构风险最小化的近似实现。这个原理基于这样的事实:学习机器在测试数据上的误差率(即泛化误差率)以训练误差率和一个依赖于VC维数(Vapnik-Chervonenkis dimension)的项的和为界,在可分模式情况下,支持向量机对于前一项的值为零,并且使第二项最小化。因此,尽管它不利用问题的领域内部问题,但在模式分类问题上支持向量机能提供好的泛化性能,这个属性是支持向量机特有的。

VC维

二分类问题中,n个数据点的数据集共有2n种排列可能,若对于其中的任意一个排列,假设空间H总能够将两类数据点分开,那么就说vc(H)=n。比如二维空间中,假设空间H是直线,它的vc维就是3。
vc维是对假设H(hypothesis)的解决问题的能力的度量。

结构风险最小

这个与问题真实解之间的误差,就叫做风险(更严格的说,误差的累积叫做风险)。真实风险应该由两部分内容刻画,一是经验风险,代表了分类器在给定样本上的误差;二是置信风险,代表了我们在多大程度上可以信任分类器在未知文本上分类的结果。很显然,第二部分是没有办法精确计算的,因此只能给出一个估计的区间,也使得整个误差只能计算上界,而无法计算准确的值(所以叫做泛化误差界,而不叫泛化误差)。

超平面,Hyper Plane

一般地,如果一个线性函数能够将样本完全正确的分开,就称这些数据是线性可分的,否则称为非线性可分的。
什么叫线性函数呢?在一维空间里就是一个点,在二维空间里就是一条直线,三维空间里就是一个平面,可以如此想象下去,如果不关注空间的维数,这种线性函数还有一个统一的名称——超平面(Hyper Plane)!

公式推导(未完成)

也可参考 http://blog.sina.com.cn/s/blog_4298002e010144k8.html
C-SVC模型是比较常见的二分类支持向量机模型,其具体形式如下:
1)设已知训练集:
T={x⃗ ,d}
其中x⃗ iX=Rn,y⃗ iY={1,1},(i=1,...,n);x⃗ i
2)构造并求解问题:
找到权重矩阵(列向量)w⃗ 和偏置b,使得w⃗ Tx⃗ +b=0,也即di(w⃗ Tx⃗ i)0。那么数据点离超平面的距离为distance=di(w⃗ Tx⃗ i+b)||w⃗ ||。为了提高泛化性能,令分类平面的边缘至少大于某个ρ。我们希望最大化ρ,同时缩放w,我们可以得到无限多个解。为了得到唯一解,我们固定ρ||w⃗ ||=1,至此,要求解的任务可以定义为
min12||w⃗ ||2di(w⃗ Tx⃗ i+b)1,i ( 13.3)
这是一个标准的二次优化问题。对于不等式约束的条件极值问题,可以用拉格朗日方法求解。而拉格朗日方程的构造规则是:用约束方程乘以非负的拉格朗日系数,然后再从目标函数中减去。于是得到拉格朗日方程如下:
Lp=12||w⃗ ||2Nt=1αt[di(w⃗ Tx⃗ i+b)1] (13.4)
这里应当关于w,b最小化,并关于αt0最大化。鞍点给出解。
这是一个凸二次优化问题,直接解有困难,可以通过拉格朗日对偶问题来解决,为此我们把(13.4)式做一个等价变换:

结束。(latex写的好累 啊)

目录
相关文章
|
移动开发 小程序
(简单详细)uniapp实现自定义海报内容并生成海报二维码图片(可拖拽,可调节大小)
(简单详细)uniapp实现自定义海报内容并生成海报二维码图片(可拖拽,可调节大小)
1337 0
(简单详细)uniapp实现自定义海报内容并生成海报二维码图片(可拖拽,可调节大小)
|
11月前
|
数据采集 存储 机器学习/深度学习
构建高效的Python网络爬虫
【10月更文挑战第25天】本文将引导你通过Python编程语言实现一个高效网络爬虫。我们将从基础的爬虫概念出发,逐步讲解如何利用Python强大的库和框架来爬取、解析网页数据,以及存储和管理这些数据。文章旨在为初学者提供一个清晰的爬虫开发路径,同时为有经验的开发者提供一些高级技巧。
81 1
|
6天前
|
存储 关系型数据库 分布式数据库
PostgreSQL 18 发布,快来 PolarDB 尝鲜!
PostgreSQL 18 发布,PolarDB for PostgreSQL 全面兼容。新版本支持异步I/O、UUIDv7、虚拟生成列、逻辑复制增强及OAuth认证,显著提升性能与安全。PolarDB-PG 18 支持存算分离架构,融合海量弹性存储与极致计算性能,搭配丰富插件生态,为企业提供高效、稳定、灵活的云数据库解决方案,助力企业数字化转型如虎添翼!
|
17天前
|
弹性计算 关系型数据库 微服务
基于 Docker 与 Kubernetes(K3s)的微服务:阿里云生产环境扩容实践
在微服务架构中,如何实现“稳定扩容”与“成本可控”是企业面临的核心挑战。本文结合 Python FastAPI 微服务实战,详解如何基于阿里云基础设施,利用 Docker 封装服务、K3s 实现容器编排,构建生产级微服务架构。内容涵盖容器构建、集群部署、自动扩缩容、可观测性等关键环节,适配阿里云资源特性与服务生态,助力企业打造低成本、高可靠、易扩展的微服务解决方案。
1320 7
|
5天前
|
存储 人工智能 Java
AI 超级智能体全栈项目阶段二:Prompt 优化技巧与学术分析 AI 应用开发实现上下文联系多轮对话
本文讲解 Prompt 基本概念与 10 个优化技巧,结合学术分析 AI 应用的需求分析、设计方案,介绍 Spring AI 中 ChatClient 及 Advisors 的使用。
297 129
AI 超级智能体全栈项目阶段二:Prompt 优化技巧与学术分析 AI 应用开发实现上下文联系多轮对话
|
4天前
|
监控 JavaScript Java
基于大模型技术的反欺诈知识问答系统
随着互联网与金融科技发展,网络欺诈频发,构建高效反欺诈平台成为迫切需求。本文基于Java、Vue.js、Spring Boot与MySQL技术,设计实现集欺诈识别、宣传教育、用户互动于一体的反欺诈系统,提升公众防范意识,助力企业合规与用户权益保护。
|
16天前
|
机器学习/深度学习 人工智能 前端开发
通义DeepResearch全面开源!同步分享可落地的高阶Agent构建方法论
通义研究团队开源发布通义 DeepResearch —— 首个在性能上可与 OpenAI DeepResearch 相媲美、并在多项权威基准测试中取得领先表现的全开源 Web Agent。
1392 87
|
4天前
|
JavaScript Java 大数据
基于JavaWeb的销售管理系统设计系统
本系统基于Java、MySQL、Spring Boot与Vue.js技术,构建高效、可扩展的销售管理平台,实现客户、订单、数据可视化等全流程自动化管理,提升企业运营效率与决策能力。