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博客

相关推荐
大模型真好玩26 分钟前
什么是Loop Engineering?最通俗易懂的Loop Engineering核心概念
人工智能·agent·deepseek
叁两35 分钟前
前端转型AI Agent该如何学习?(前置篇)
前端·人工智能·node.js
LaiYoung_1 小时前
🎁 送你一套超好用超实用的 FE AI-Coding Skills
前端·人工智能·开源
ZzT3 小时前
怎么做才不会被 AI 替代?
人工智能·程序员
道友可好3 小时前
从今天开始:你的第一个 Harness Engineering 实践
前端·人工智能·后端
小姜前线技术4 小时前
AI回答代码块高亮加一键复制
人工智能
洛阳泰山5 小时前
从 0 到 1.6K Star:一个 Java 开源项目的增长复盘
人工智能·后端·开源
米小虾5 小时前
Agent Skill 设计模式完全指南
人工智能·agent
饼干哥哥6 小时前
保姆级教程:用Image2 + Seedance2.0 做长视频,以品牌广告为例
人工智能
米小虾6 小时前
Agent Skill 规范与 Skill-Creator 核心思想
人工智能·agent