支持向量机 支持向量机概述

支持向量机概述

支持向量机 Support Vector MachineSVM ) 是一类按监督学习 ( supervisedlearning)方式对数据进行二元分类的广义线性分类器 (generalized linear classifier) ,其决策边界是对学习样本求解的最大边距超亚面 (maximum-margin hyperplane)与逻辑回归和神经网终相比,支持向量机,在学习复杂的非线性方程时提供了一种更为清晰,更加强大的方式

硬间隔、软间隔和非线性 SVM

假如数据是完全的线性可分的,那么学习到的模型可以称为硬间隔支持向量机。换个说法,硬间隔指的就是完全分类准确,不能存在分类错误的情况。软间隔,就是允许一定量的样本分类错误。

算法思想

找到集合边缘上的若工数据 (称为支持向量 (Support Vector) )用这些点找出一个平面(称为决策面),使得支持向量到该平面的距离最大

超平面方程:
w ⋅ x + b = 0 \mathbf{w} \cdot \mathbf{x} + b = 0 w⋅x+b=0

间隔(Margin):
Margin = 2 ∥ w ∥ \text{Margin} = \frac{2}{\|\mathbf{w}\|} Margin=∥w∥2

决策函数:
( w ⋅ x + b ) / ∣ ∣ w ∣ ∣ > = d , y = 1 (\mathbf{w} \cdot \mathbf{x} + b ) /||w|| >=d ,y=1 (w⋅x+b)/∣∣w∣∣>=d,y=1
( w ⋅ x + b ) / ∣ ∣ w ∣ ∣ > = d , y = − 1 (\mathbf{w} \cdot \mathbf{x} + b ) /||w|| >=d ,y=-1 (w⋅x+b)/∣∣w∣∣>=d,y=−1

复制代码
如图所示,根据支持向量的定义我们知道,支持向量到超平面的距离为 d,其他点到超平面的距离大于 d

至此可以得到最大间隔超平面的上下两个超平面:
d = ∣ w ⋅ x + b ∣ / ∣ ∣ w ∣ ∣ d=|\mathbf{w} \cdot \mathbf{x} + b | /||w|| d=∣w⋅x+b∣/∣∣w∣∣

相关推荐
共享家952722 分钟前
经典动态规划题解
算法·leetcode·动态规划
Pluchon22 分钟前
硅基计划3.0 Map类&Set类
java·开发语言·数据结构·算法·哈希算法·散列表
IT学长编程1 小时前
计算机毕业设计 基于深度学习的酒店评论文本情感分析研究 Python毕业设计项目 Hadoop毕业设计选题 机器学习选题【附源码+文档报告+安装调试】
hadoop·python·深度学习·机器学习·数据分析·毕业设计·酒店评论文本情感分析
☼←安于亥时→❦1 小时前
PyTorch之张量创建与运算
人工智能·算法·机器学习
nuczzz1 小时前
pytorch非线性回归
人工智能·pytorch·机器学习·ai
子豪-中国机器人1 小时前
枚举算法和排序算法能力测试
开发语言·c++·算法
qiuyunoqy2 小时前
基础算法之二分算法 --- 2
算法
爱干饭的boy2 小时前
手写Spring底层机制的实现【初始化IOC容器+依赖注入+BeanPostProcesson机制+AOP】
java·数据结构·后端·算法·spring
二哈不在线2 小时前
代码随想录二刷之“动态规划”~GO
算法·golang·动态规划
cellurw3 小时前
俄罗斯方块终端游戏实现 —— C语言系统编程与终端控制
c语言·算法