◆邵子豪 宋汝鑫 王 萌 陈炫慧
基于改进型SVM的生存性增强方法
◆邵子豪 宋汝鑫 王 萌 陈炫慧
(哈尔滨师范大学计算机科学与信息工程学院 黑龙江 150025)
本文针对SVM方法在数据预处理中无法识别错误数据的问题,先使用消错方法对生存态势数据进行预处理,去除错误数据;接着使用SVM方法实现数据的识别。实验表明,消错方法可以识别可生存系统生存态势中的错误态势数据,保证数据正确性;相较于传统的BP神经网络在分类识别准确率提升了2.03%,在不断增加的错误比重数据中,改进型SVM方法在识别准确率有很大改善,最终实现了生存性的增强。
可生存系统;消错方法;SVM方法;生存性;增强
生存性的增强是可生存系统技术领域中的一个重要研究问题。姚苏等[1]针对网络可生存性中的网络攻击传播速率与网络修复速率进行研究,分析网络生存性特点;陈天平等[2]研究了现有服务漂移策略的缺点,在可生存性态势感知中提出一种新型的服务主动漂移模型,着重于改善抗毁能力与服务的间断时间。
在解决少量样本、非线性和高维识别问题中SVM方法具有很大的优势。Erfani S M等[3]将SVM方法应用到高维问题的异常检测中,实验表明该方法计算效率高、模型可扩展,以此证明了SVM方法在异常检测中的可用性;Cervantes J等[4]研究表明SVM在处理分类识别问题上的优势,但在数据集中具有较多错误数据时,识别性能将会降低,说明了SVM在识别领域中的优越性但也存在局限性。
为此,本文弥补了SVM方法在识别数据中缺乏对数据进行预处理的问题,对SVM方法进行改进。首先,使用消错方法对生存态势数据进行数据预处理,去除错误数据,保证数据的正确性;其次,将处理后的数据使用SVM方法进行识别;最终,通过提高了测试数据的成功识别率,实现了可生存系统生存性的增强。
消错方法[5]是一种以避免错误损失为目的的方法,它可以检测出错误数据。在辨别多种正常可生存系统生存态势数据问题中,假设有m个态势数据表示为{aaa},则态势数据中采集的n个属性可表示为D={ddd},x为态势数据ai在属性dj下的测量值。消错方法步骤如下:
步骤1:计算数据错误值E。
其中i = 1,2,…,m,j∈N。
步骤2:计算最大错误值E,表示为:
其中i=1,2,…,m,N={1,2,…,n}.当Ei*=1时,则态势数据出现错误,去除该数据。
消错方法的使用,将可生存系统生存态势数据进行错误识别,区分该数据是否为正常数据,保证了测试数据在进入SVM方法中数据的正确性。
支持向量机(SVM)是由Vapnik首先提出的。它的主要优点包括:
可在各种函数集中构造函数,通用性较好;该方法受到的人为因素影响较少,优化技术简单;具有严格的统计学习理论;因此,将SVM方法运用到可生存系统生存性增强中,不仅操作方法较为简单,还可以保证识别的准确率。算法实现过程如下:
对于已知训练生存态势样本数集{(1,1),...,(n,n)},构造最优决策函数:
式中:为权重矢量,为惩罚系数,为偏差值,i和i为松弛变量,为回归函数误差要求,n为样本数量。
首先,需要从原始数据里把训练集和测试集提取出来;接着,使用消错方法对可生存系统生存态势数据进行错误数据检测,保证测试数据的正确性;最后,用训练集对SVM方法进行训练,训练完毕后,对测试数据进行分类。
本文参考文献[6]中指标体系,将生存性划分为完整程度、信道使用性能和数据感知。
3.1 消错方法实现
在实验中,设网络系统服务中提供4种级别的服务L1(最高),L2,L3,L4(最低),利用可生存系统生存态势数据在不同评价指标体系下的表现进行识别。数据表如表1。
表1 数据表
表1规定当前状态下,不同服务级别的各项性能指标不同,每一项性能指标都有其合理范围。现随机抽取5组数据,如表2。(d1为数据复用率,d2为校验强度,d3为信道延迟,d4为信道吞吐率,d5为信道利用率,d6感知率)
表2 测试用户数据
根据公式(1)和(2)求得极限损失值为1*=0.34、2*=1、3*=0.85、4*=1、5*=0.37。通过公式(2)可知a2和a4为错误数据,成功实现对错误数据的识别。
3.2 改进型SVM方法实现
现选取各级别服务数据各400个,共1600个数据,作为训练集,分别对BP神经网络、传统型SVM和本文方法进行训练,并选取400个无错误数据作为测试集,测试结果如表3。
表3 方法对比
观察表3,使用SVM方法在可生存系统生存态势数据中的识别准确率相较于BP神经网络方法,提高了2.03%;在无错误数据下准确率与传统方法一致,但随着错误数据的增加,本文提出的方法优势便会显现。测试结果如图1。
图1测试结果
通过图1可以发现,测试集中若没有错误数据,SVM方法对数据识别的准确率高达98.75%,识别效果优异。随着测试数据集中的错误数据比重不断增多,传统型SVM方法识别准确率呈现下降趋势,但本文的改进型SVM识别准确率基本不变。这是因为,随着错误数据的增多,增加了识别的困难,原本合理的数据也会由于过多的错误数据导致错误识别,本文的改进型SVM方法,去除了错误数据,以此提高了识别准确率。
综上,本文提出的改进型SVM方法,不仅可对网络系统服务中4种级别服务中产生的错误数据进行识别,保证测试数据的正确性,还可对其进行高准确率识别。通过此方法,实现了对可生存系统生存态势生存性的增强。
本文针对生存态势的生存性,提出了一种结合消错方法的改进型SVM方法。在实验中,通过对网络系统服务中的数据识别的测试,并与传统的BP神经网络方法进行对比,最终实现了生存性的增强。但本文方法存在相应的不足,只研究了如何去除错误数据,缺乏对错误数据的进一步细分。在今后的研究工作重点是对去除的错误数据进行研究与分析。
[1]姚苏,关建峰,潘华等.基于APT潜伏攻击的网络可生存性模型与分析[J].电子学报,2016.
[2]陈天平,孟相如,崔文岩等.基于网络可生存性态势感知的主动服务漂移模型[J].空军工程大学学报·自然科学版,2015.
[3]Erfani S M,Rajasegarar S,Karunasekera S,et al. High-dimensional and large-scale anomaly detection using a linear one-class SVM with deep learning[J]. Pattern Recognition,2016.
[4]Cervantes J,García-Lamont F,López A,et al. PSO-Based Method for SVM Classification on Skewed Data-Sets[M]// Advanced Intelligent Computing Theories and Applications. Springer International Publishing,2015.
[5]黄灏然,江尚乐,蔡肯.关键重要型多属性消错决策方法[J].数学的实践与认识,2015.
[6]赵国生,王慧强,王健.基于灰色关联分析的网络可生存性态势评估研究[J].小型微型计算机系统,2006.