当前位置:
文档之家› 基于SVM的网络流量异常检测系统研究
基于SVM的网络流量异常检测系统研究
机器学习领域,常把一些算法看做是一个机器, 而支持向量机本身是一种监督式学习方法,主 要应用于模式识别领域。
支持向量机专业名词
X2
Y1=+1
● ●●
●
●● ● ● ●
●
C ●D
○
○A B
○ ○○
○ ○○○
○
margin X1
○
○
○
○
Y2=-1
超平面
超平面:二维数据中就是一条分 隔线,高维中叫超平面
c增大,对样本分类精度提高,但 分类间隔减小。
支持向量机如何分类(非线性分类)
关键点:把Xi 变换到高维特 征空间。
将数据投影到一个线性可分 的空间,然后寻找超平面。
支持向量机如何分类(非线性可分)
A(X1, X2)
A1(X1, X2, X3) 二维空间线性不可分,三维可分
核函数(非线性分类)
K(xi,xj)=((xi.xj )+c))d
4.Sigmoid核函数
RBF核函数应用最广泛,建议优先选用。论文中通过对 比实验验证RBF在学习速度和学习精度两方面都是最优 选择。
核函数的比较
1分别
(0)
(1)
(2)
(3)
Libsvm中 –t 参数指定选用的 核函数 0:线性核函数 1:多项式 2:径向基 3:Sigmoid
基于SVM的网络流量异常检测系统研究 自适应学习方法在SVM中的应用
2019年8月1日
支持向量机(Support Vector Machine)定义
所谓支持向量机,顾名思义,分为两个部分了 解:
1.什么是支持向量? 简单来说,就是支持或支撑平面上把两类类别
划分开来的超平面的向量点。 2.“机(machine,机器)”便是一个算法。在
哪条分类线最好? 理论上有无数个决策边界,能实 现分类。 SVM算法认为在靠近决策边界的 点(正负样本)与决策边界的距 离最大时,是最好的分类选择。
支持向量机如何分类(近似线性分类)
X2
○
○○
○
○ ○○
○ ○○
○
○
○
● ●●
●
●● ● ●
● ●
● ○
X1
当最优分类面不能把两类点完 全分开时,为了在经验风险和推 广性能之间权衡,通过引入松弛 因子c,允许错分样本的存在。
对于非线性分类问题,通过变换到某个高维空间中的线 性问题,但在寻找最优分类面时,变换可能太复杂,一 般情况下难以实现。
Svm 通过引入核函数,能巧妙实现变换。
核函数的选择
目前研究最多的核函数主要有四类:
1.线性核函数
3.径向基核函数(RBF kernel)
K(xi,xj)=xi.xj
2.多项式核函数
自适应学习方法在SVM中应用
当核函数类型确定后(分类函数已确定),每 次只学习新增数据样本,若新数据集没有违背 原数据集的约束条件,新数据集的决策函数跟 前一次的保持一致。
若违背约束条件,则将违背约束条件的数据作 为新数据集继续训练,直到训练集数据为空。
尽量加快训练时间、提高训练精度
-c 参数为惩罚因子,是一个定量 需训练前指定。
相同的训练数据,相同的c,径向 基核函数分类效果最好。
异常检测系统总体架构
检测系统通用模型:
数据流量监测模块 原始数据采集模块 数据预处理模块 SVM数据训练模块 SVM数据检测模块 SV存储和存放事件数据库模块 数据输出和响应模块
间隔(margin):到超平面最近的 样本与此超平面的距离。
支持向量:距离超平面最近的点 (A、B、C、D)
分类标签:Y=[-1,+1]。+1表示 黑色,-1表示白色。
支持向量机如何分类(线性分类)
X2
○
○○
○
○ ○○
○ ○○
○
○பைடு நூலகம்
○
○
● ●●
●
●● ● ●
● ●
●
X1
尽量使两类数据分得对称,使未 来的数据也能正确匹配,泛化力 较好。