One-Class SVM

前提知识:支持向量机(SVM)-CSDN博客

主要思想

找一个超平面将样本中的正例圈出来,预测就是用这个超平面做决策,在++圈内的样本就认为是正样本,圈外的是其他样本++,如图1所示:
图1 OSVM主要思想抽象图

One-Class SVM 是一个one class classification问题。

one class classification,它只有一个类,然后识别的结果就是:"是"或者"不是"这个类。这听起来和2分类问题貌似一样,它们的区别在于,在2分类问题中,训练集中有2个类,通常称为正例和负例,而在one class classification中,就训练集中只有一个类。

应用场景:当训练集中正负样本不均衡,使训练出来的模型有偏差。这个时候,可以使用one class classification的方法来解决。

工作原理

数据映射:将正常数据通过核函数映射到高维特征空间中,使得正常数据点能够被一个超平面所包围。这个超平面被称为决策边界。

寻找最优超平面(关键):通过最大化超平面与正常数据之间的间隔(如图2 所示),寻找一个最优的分割超平面,使得异常点尽可能远离该超平面。这意味着决策边界要尽可能远离正常数据点。
图2 OC-SVM

图2解释:坐标原点被假设为唯一的一个异常样本,最优超平面与坐标原点最大距离为, 并允许少部分样本在坐标原点与分界面之间,与分类超平面的距离为

异常检测:对于新的数据点,通过计算其与超平面的距离,来判断该数据点是否为异常。距离较大的数据点更有可能是异常点。

公式

其中ν∈(0,1)为支持向量的离群值分数的上界标识符和下界标识符,ρ∈R为偏移值。利用拉格朗日方法求解上述最小化问题,得到如下分类规则:

由w和ρ标识的超平面在特征空间F中到原点的距离最大,它将异常数据点与集中在原点的正常数据点分离开来。

参考:

关于OCSVM与SVDD的理解-CSDN博客

One-Class SVM详解_one class svm-CSDN博客

相关推荐
shangjian007几秒前
AI-大模型应用开发-大模型生成参数调优速查表
人工智能
麻子1 分钟前
手把手教你给 OpenCLAW 添加自定义 Skill
人工智能
Dev7z4 分钟前
基于YOLO11的泳池溺水行为实时检测系统设计与实现
人工智能·深度学习·yolo11·泳池溺水
Elastic 中国社区官方博客6 分钟前
使用 Elasticsearch 和神经模型为复杂语言提供更好的文本分析
大数据·人工智能·elasticsearch·搜索引擎·ai·全文检索
m0_488913017 分钟前
新手小白也能学会的Dify本地部署教程(超详细)
人工智能·搜索引擎·云原生·eureka·开源·大模型·产品经理
无心水11 分钟前
【任务调度:数据库锁 + 线程池实战】2、MySQL 8.0+ vs PostgreSQL:SKIP LOCKED 终极对决,谁才是分布式调度的王者?
java·人工智能·后端·面试·架构
简佐义的博客12 分钟前
120万细胞大整合(自测+公共数据):scRNA-seq 构建乳腺细胞图谱的完整思路(附生信复现资源)
人工智能·深度学习·算法·机器学习
wanghao66645513 分钟前
向量相似度计算全解析
人工智能·机器学习
hqyjzsb14 分钟前
企业采购AI培训服务的供应商评估体系与选型方案
人工智能·职场和发展·创业创新·学习方法·业界资讯·改行学it·高考
是小蟹呀^17 分钟前
GAN(生成对抗网络):让AI学会“造假”的艺术
机器学习·生成对抗网络