基于SOM-GA-SVM的网络入侵检测研究
2014-02-27张羽
张 羽
(西南油气田物质公司 四川 610041)
0 引言
随着互联网技术的发展,网络攻击在方式和数量上呈上升趋势,给网络安全带来许多复杂难以解 决的问题,传统的被动防御措施已不能抵御各种攻击,网络入侵检测作为一种主动防御技术成为安全信息安全研究的一个热点问题[1]。
为了给网络用户提供安全的网络服务,许多学者提出 一些网络入侵检测技术。网络入侵检测存在两大主要的研究内容:(1)特征数据提取和选择;(2)分类器构造[2]。近年来有学者提出了各种新的方法,如人工免疫、遗传算法、神经网络以及粒子群优化算法等,力图建立更为精确的检测模型。支持向量机(Support Vector Machine,SVM)是一种结构风险最小化原则的机器学习算法,较好地解决了非线性、高维数等难题,成为网络入侵检测中使用最广泛的算法。
1 自组织映射算法和支持向量机
1.1 自组织映射算法
自组织映射是一个强大的非监督性的学习算法,可用于大型高维数据集分类。它可以通过采取网格拓扑神经元来建立一个统计特征映射。当两个输入向量非常接近时,竞争层就可能把它们归为一类。在竞争层的设计中没有这样的机制,即严格按地区判断任意两个输入向量是属于同一类还是属于不同类。而对于LVQ网络用户指定目标分类结果,网络可以通过监督学习,完成对输入向量模式的准确分类。
1.2 支持向量机
支持向量机是Vapnik8等于1995年首先提出的,它在解决小样本、非线性及高维模式识别中表现出许多特有的优势,并能够推广应用到函数拟合等其他机器学习问题中,用来提高学习机 泛化能力的新一代学习方法。支持向量机的基本思想是:在线性可分情况下,在原空间寻找两类样本的最优分类超平面。在线性不可分的情况下,加入了松弛变量进行分析,通过使用非线性映射将低维输入空间的样本映射到高维属性空间使其变为线性情况,从而使得在高维属性空间采用线性算法对样本的非线性进行分析成为可能,并在该特征空间中寻找最优分类超平面。其次,它通过使用结构风险最小化原理在属性空间构建最优分类超平面,使得分类器得到全局最优。
但 SVM性能与参数密切相关。所以学习参数的选择对准确性有着重大的影响。考虑到遗传算法有一个特殊的能力:找到最优的解决方案,所以针对支持向量机的最优参数问题,在下一节提出了遗传算法来寻找最优的学习参数。
2 基于SOM-GA-SVM频谱感知算法
2.1 基于遗传算法支持向量机分类算法
GA算法可以为优化参数问题提供解决方案。本文应用遗传算法选择支持向量机学习参数的最优值。其集体步骤如下:
步骤1:在建模前,对数据归一化使之在[0,1],减少了计算量,避免计算溢出。
步骤 2:参数初始化(例如数量的变量,个体数量,最大的进化度,变异概率以及交叉概率等),迭代次 1t=、学习参数,和生成一个随机的初始种群。
步骤 3:在支持向量机模型中训练数据,评估适应性好的粒子。
步骤 4:通过训练当前的数据,寻出具有代表性的数据作为下一次训练的数据。
步骤 5:经过以上叙述的交叉和变异操作,产生新的后代进行交叉和变异操作。
步骤 6:检查结束条件。如果生成的迭代或精度满足上面的进化条件,则过程结束,转到步骤 7。否则, 1t t=+,转步骤3。
步骤 7:寻找最佳位置的粒子,然后给出最优参数和核参数的支持向量机模型。
2.2 SOM-GA-SVM支持向量机检测模型
图1 SOM-GAS-SVM的网络入侵检测算法框架
图1显示了SOM-GA-SVM网络入侵检测流程。利用SOM的自动寻优能力在特征空间中进行全局分类,剔除“反作用”的噪声特征的信息,获得最优的特征集;之后,我们利用遗传算法,找出两个优化支持向量机学习参数。根据SVM分类结果判断这些特征组合的分类性能,并不断更新选取的特征集,直至搜索到取得最佳分类结果的特征组合。首先提取网络状态信息 的特征,然后送入SVM特征选择模块选取最优分类特征集,进行网络入侵检测。主要的过程如下:
步骤1:对预处理样品 X归一化得到了样品 X'。
步骤2:通过SOM聚类神经网络模型训练样本 X',剔除干扰或无用的数据,得到具有代表性的训练集 X''。
步骤3:使用GA算法寻找出最优的支持向量机参数。
步骤4:通过训练样本的部分压缩数据''
X和最优的学习参数,建立起最优的入侵检测模型,对未来网络入侵的行为进行检测,最后根据检测结果来采取相应的预警措施。
3 实验结果及分析
本文使用的实验数据来自KDD 1999数据集,总共有4类入侵:探测型攻击(Probe)、拒绝服务型攻击(DOS)、用户未授权访问攻击(U2L)和未授权占用权限访问攻击(U2R).其包含 1000个样本,样本分成为训练集和测试集两部分。对测试样本集进行检测,其进行1000次仿真实验。
通过 SOM对实验数据进行处理后所得的分类结果,颜色标签的可视化结构分布代表着各种标签类型。如图1所示,三个集群形成相应区域“OT”指无用的或干扰的简便性是大约为原始集的2/3,其他两个地区相应的“信号”(“S”)和“不良信号”(“NS”)各为原样本的三分之一。这些结果表明,通过 SOM过滤我们已经删除了无用的或干扰的数据,得到了具有代表性的数据。
表1 各种算法的检测性能对比
采用GA-SVM、BPSO-SVM和SOM-GA-SVM对网络入侵样本进行训练和学习,它们的平均检测结果如表1。根据表3可知,在所有入侵类型的检测中,基于SOM-GA-SVM特征选择的网络入侵检测算法都取得了最好的检测结果,这是由于SOM剔除了无用的或干扰的特征信息,得到了具有代表性的信息,另外利用GA找到SVM最优的学习参数。对比结果表明,与算法相比,SOM-GA-SVM可以有效滤除无关特征,并提高网络入侵检测正确率。
4 总结
针对当前网络入侵检测算法的问题,本文利用自组织映射分析、遗传优化算法、支持向量机等等算法的优点,提出了一种新的网络入侵检测算法(SOM-GA-SOM).仿真实验结果表明,SOM-GA-SOM算法提高了网络入侵检测正确率,降低了误报率和漏报率。
[1]Zen H,Tokuda K,Black A W.Statistical parametric speech synthesis[J].Speech Communication,2009,6(9):1-26.
[2]阮氏玉华.汉越语单音节语素研究[D].武汉:华中科技大学,2003.
[3]孙名松,孙明瑞.基于支持向量机与遗传算法的网络入侵检测的应用[J].计算机应用,2011,30(3):27-30.