APP下载

入侵检测中特征选择技术的应用

2018-10-25刘飞飞

计算机时代 2018年9期
关键词:网络攻击入侵检测特征选择

刘飞飞

摘 要: 目前入侵检测技术已成为网络安全管理的重要选择,在检测准确率得到保障的同时,各类应用对入侵检测的实时性也提出了较高的要求。针对入侵检测系统检测海量高维的网络数据效率较低的问题,阐述了特征选择的相关概念及分类,分析了入侵检测中的特征选择问题,探讨了基于Filter方式的特征选择技术在入侵检测中的应用方法,并指出特征选择技术在入侵检测中应用的不足之处。

关键词: 网络攻击; 入侵检测; 特征选择; Filter

中图分类号:TP393.4 文献标志码:A 文章编号:1006-8228(2018)09-41-04

Abstract: Intrusion detection technology has become an important choice for network security management. At the same time, all kinds of applications have put forward higher requirements for the real-time detection of intrusion. In view of the low efficiency of the intrusion detection system in detecting massive and high-dimensional network data, the related concepts and classification of feature selection are elaborated, and the feature selection problem in intrusion detection is analyzed. This paper discusses the application of Filter based feature selection in intrusion detection and points out the shortcomings of the application of feature selection in intrusion detection.

Key words: network attack; intrusion detection; feature selection; Filter

0 引言

入侵检测技术通过不断地对主机上收集或网络上捕获的数据进行分析,来发现攻击或者异常的网络行为,并进行有效地响应,最大程度地提升网络的安全性。入侵检测技术具有主动防御的特性,是防火墙等技术的有效补充,也是网络安全体系构建过程中不可或缺的重要的组成部分。近年来,伴随网络规模的不断扩大,网络攻擊呈现出多样化、复杂化及并发性等特点,以DDos为代表的大规模分布式的网络攻击成为主流,海量攻击数据的出现对于入侵检测的检测速度和准确率提出了更高的要求。目前,常用的入侵检测系统主要通过对网络攻击数据的特征分析比对来发现攻击行为,然而网络数据的特征往往很多,这会严重影响入侵检测的实时性及性能。将机器学习中的特征选择技术应用到入侵检测中,可以去掉一些无关的冗余的特征,这在一定程度上提高入侵检测的效率,成为如今入侵检测技术研究的一个热点。

1 特征选择技术

1.1 特征选择的概念

机器学习是人工智能的核心技术,在各个领域得到了非常广泛地应用,它通过对训练样本特征的学习来对未知的样本做出预测[1]。在实际的应用中,训练数据的特征繁多,对数据进行特征分析、建模所耗费的时间会很长;同时,数据特征的个数太多,也会导致建立的模型更加复杂,不利于使用推广。特征选择可以通过相关算法约减数据中不相关的、冗余的或存在相互依赖关系的特征,从而降低计算的复杂度,提高学习算法分类的精度,建立简洁、易于理解的算法模型。简单地说,从数据的原始特征中选择更有利于学习分类的特征的过程就是特征选择。

1.2 特征选择的过程

特征选择在满足某种评价函数的前提下,从大量的数据候选特征中找出最有用的最优的最能够反映数据属性的特征子集,这是一个穷举的过程。特征选择的过程一般会包括子集产生、子集评价、停止准则及子集验证四个主要步骤,如图1所示。

⑴ 子集产生:采用搜索的方法来产生待评估的特征子集。首先要确定一个集合的开始点,可以是不包含任何特征的空集、包含数据全部特征的全集或者是随机的一个特征子集;然后在搜索的过程中通过反复加入特征、反复移除特征、反复加入或移除特征以及随机产生子集等方式来选定最终的用于下一步评估的特征子集。

⑵ 子集评价:使用评估函数对子集产生过程中获得的特征子集进行度量,将得到的评估值与之前得到的最优子集进行比较,如果评估表现更好,则替换之前的最优子集。最优子集的选定与评估函数的关系非常密切,评估函数反映了特征子集区分不同的类标签的分类的能力。

⑶ 停止准则:用于防止子集搜索进入穷举或死循环过程,停止准则依赖于子集产生和子集评价的过程,一般是一个阈值,可以是生成的特征子集数量的值、特征子集搜索的迭代次数以及评估值等。子集产生和子集评价是一个循环重复执行的过程,当满足停止准则时,将输出进入下一步验证的候选最优特征子集。

⑷ 子集验证:通过先验知识、仿真数据集或真实的数据集对候选最优特征子集进行各种不同的测试,并对结果进行分析,验证所选特征子集的有效性。

1.3 特征选择的分类

在特征选择的过程中,搜索策略及评价准则的确定是关键的步骤。根据所使用的搜索策略及评价函数的不同,可以对特征选择方法进行分类,以比较不同方法的特点[2]。

⑴ 根据搜索策略分类

在产生特征子集的时候,可以根据特征搜索方式的不同分为全局最优搜索、启发式搜索和随机搜索三类。全局最优搜索,又叫穷举搜索,它能够从全部特征集中搜索到每一个特征,最终形成最优特征子集,但是计算的开销较大,计算时间会随着特征数量的增加呈指数级增长。启发式搜索,也称为序列搜索,依据某种次序分步向当前已有的特征子集中加入或者删除特征,直到找到指定数目的最优特征子集,它的计算复杂度较小,也比较容易实现,但是可能陷入局部最优。随机搜索由设定的初始参数值,随机选定一个起始的特征子集,然后根据特定的启发信息,对特征子集进行修正。该方法能够避免局部最优解的出现,但是相关模型参数很难确定。

⑵ 根据评价函数分类

根据特征选择过程中,评价函数与机器学习算法的结合方式,将特征选择方法分为三种:嵌入式(Embedded)、过滤式(Filter)和封装式(Wrapper)[3]。在嵌入式中,特征选择作为组成部分嵌入到机器学习算法中,也就是说分类学习的过程就是特征选择的过程。特征的评价过程独立、不依赖于学习算法的就是过滤式特征选择方法,它通过特征子集内部信息来对特征子集的好坏进行评判,由于执行的效率比较高而被广泛使用。封装式是指直接利用选择的特征子集对训练样本进行分类,用分类的精度来衡量特征子集的优劣,它的准确度较高,但是计算代价太大,较少使用。

2 入侵检测中的特征选择问题

将特征选择技术应用到入侵检测系统中,最主要的任务是选择合适的方法确定特征与待检测分类目标的相关性以及特征与训练、检测的数据集合之间的相关性,确定与待匹配分类最相关的特征,在确保分类精度的前提下,使得所选的特征子集的数目最小,从而提高入侵系统的检测效率。

2.1 特征的相关性

John、Blum及Caruana等给出了机器学习中的特征相关性的定义,并进行了阐述分析。假定A和B是样本集合S中的两个样本;C表示目標函数,同时C(A)表示A样本的类别;Xi(A)代表A样本的第i个特征的值。相关性的有关定义如下。

定义1 如果Xi是两个样本A、B仅有的不相同的特征,同时C(A)≠C(B),则表明特征Xi和目标函数C是相关的。

定义2 样本集合S中,两个样本A、B分属于不同类别,并且仅有一个相异的特征Xi,那么特征Xi与样本集合S就是强相关的;如果去除部分特征后,特征Xi成为样本集合S中的强相关特征,则说明特征Xi和样本集S是弱相关的。

定义3 给定一个分类学习算法L,存在一个特征集合A,如果说将特征Xi加入特征集合A中(Xi∪A),算法L的分类的准确性提高,则表明对于样本集A来说,特征Xi与学习分类算法L是增益性相关的。

如果两个特征完全相关,就说明存在冗余特征。特征集合中一般会包含四类特征:不相关特征、冗余特征、弱相关但不冗余的特征及强相关特征,其中最优特征子集中包含全部的强相关和弱相关但不冗余的特征。

2.2 特征选择模型

鉴于计算易行性、执行效率等的考虑,入侵检测中使用较多的特征选择算法基本上属于过滤式的,特征选择的度量函数的一般形式如公式⑴所示。

其中,xi是一个二值变量,用于表示第i个特征Fi是否被选择,xi=1时表示选择,xi=0时表示不选择;Ai(x)、Bi(x)代表两个线性函数;a0和b0则是两个常量。此时,特征选择问题就转化为求解函数最大值的问题,即maxGeFS(x),x∈{0,1}n。入侵检测中,经常用到的关联性特征选择方法、最大相关最小冗余特征选择方法等在进行特征选择度量时均使用类似的函数。

⑴ 关联性特征选择方法

1999年hall提出了基于关联性的特征选择方法CFS(correlation-based feature selection),它通过Pearson相关系数来计算特征集中特征与类,以及特征与特征之间的相关性,然后采用启发式的搜索策略来获取最终的最优特征子集。搜索过程中,CFS通过评估值Merit来进行特征的选择,Merit的计算如公式⑵。

公式⑵中,s表示具有k个特征的特征集,表示特征与类的相关系数的平均值,表示特征与特征之间的相关系数的平均值。当特征与类之间的相关性越高,而特征与特征之间的相关性越小时,merit的值就会越大。CFS采用启发式搜索策略时,初始的特征集可以为空,首先选择单个与类相关性最大的特征加入到最优特征子集中;然后,将所有候选特征与已选定特征进行组合,并计算merit的值,将使得merit的值最大的特征加入最优特征子集;最终遍历整个特征集,得到最优特征子集[4]。

CFS在进行特征选择时,遵循了“特征与类之间的相关性较高,特征与特征之间的相关性较低”的原则,不但可以删除与类不相关的特征,同时,剔除了冗余特征,常用于特征集的降维,可以很大程度上优化提高分类的精度。

⑵ 最大相关最小冗余特征选择方法

2005年Peng提出了基于互信息的过滤式特征选择方法MRMR(minimal redundancy maximal relevancy),以特征与类以及特征与特征之间的互信息为依据,来选择获取与类之间最大相关性,同时特征之间最小冗余的特征子集。假定S为特征集合,xi为集合S中的特征,C为目标类别,I(xi,C)表示特征xi与目标类C之间的互信息,I(xi,xj)代表两个不同特征之间的互信息,则集合S与类C之间的最大相关性和不同特征xi和xj之间的最小冗余的定义如公式⑶、⑷所示。

为了得到的特征与目标类最相关,同时特征之间冗余最小,MRMR的特征选取计算准则如公式⑸所示。

MRMR方法一般使用增量搜索的方式来进行特征选择,假设已经选择了m-1个特征,然后从剩余的特征集合S-Sm-1中,选择第m个特征,满足公式6。每次新增一个特征,直至被选择的特征的数量达到某个指定的值。MRMR方法具有较高的执行速度,选择的特征子集更具有鲁棒性。

3 特征选择在入侵检测中的应用

入侵检测数据中的特征数量与分类的精度之间并不存在特定的线性关系,反而特征的数目超出一定的值时,会明显降低分类器的性能。在实际应用过程中,存在一些不包含或包含很少系统状态信息,对分类没有明显作用的无关冗余特征,它们对最终的检测结果没有影响却会增加系统的检测时间。建立基于特征选择技术的轻量级入侵检测系统,将会有效降低数据的维度,提高系统分类的精度和检测效率。特征选择技术引入后,入侵检测系统的数据检测过程一般包括:数据离散化、特征选择、数据预处理、入侵检测和报告入侵数据等五个阶段,如图2所示。

过滤式特征选择方法多应用于离散型数据,因此,在进行特征选择之前,需要对原始数据中的连续型数据进行离散化处理,连续型数据离散化一般包含排序、选择分割点、分裂或者合并等步骤,常见的有等宽、等频、基于信息熵等的离散化算法。原始数据离散化处理以后,经过CFS、MRMR、Relief-F等特征選择算法,就可以约简为少数的几个有效相关的特征。在进入分类器进行训练之前,为了提高分类的性能,还需要对约简后的数据进行归一化等的相关预处理,以便将单位及取值范围存在差异的不同的特征值缩放在同一个值域空间上,例如0.1到1.0或-1.0到1.0。预处理完成后的数据用于训练构建Bayes、SVM及Decision tree等分类器,并利用分类器对网络中实时捕获的数据进行检测,发现报告出现的入侵异常数据。大量的实践证明,基于特征选择的轻量级的入侵检测系统在检测率、误检率、检测时间等方面都表现出了突出的优越性[5]。

4 小结

特征选择技术可以通过选择相关性强冗余性低的特征子集来减少原始数据中的特征数目,成为目前入侵检测系统提升检测速度的常用技术。基于特征选择技术构建入侵检测系统需要重点研究两个问题:一是特征选择算法的选择;二是分类器的选取与优化。另外,网络攻击的手段不断更新,新的入侵类型层出不穷,入侵检测系统在能够快速检测海量数据的同时,还要具备发现未知攻击的能力,才可以真正加强入侵检测系统的防御能力,因此,这也将成为未来特征选择技术更好地应用于入侵检测系统的重要研究方向之一。

参考文献(References):

[1] 张丽新,王家钦,赵雁南等.机器学习中的特征选择[J].计算机科学,2004.31(11):180-184

[2] 毛勇,周晓波,夏铮等.特征算法研究综述[J].模式识别与人工智能,2007.20(2):211-217

[3] 邱玉祥.特征选择和集成学习及其在入侵检测中的应用[D].南京师范大学,2008:6-10

[4] 肖旎旖.基于相关性和冗余性分析的特征选择算法研究[D].大连理工大学,2013:3-5

[5] 田俊峰,黄红艳,常新峰.特征选择的轻量级入侵检测系统[J].计算机工程与应用,2009.45(4):111-114

猜你喜欢

网络攻击入侵检测特征选择
Kmeans 应用与特征选择
基于入侵检测的数据流挖掘和识别技术应用
艺术类院校高效存储系统的设计
浅谈网络安全存在的问题及应对策略
基于关联规则的计算机入侵检测方法
《塔林网络战国际法手册》探析
联合互信息水下目标特征选择算法
基于特征选择和RRVPMCD的滚动轴承故障诊断方法
基于二元搭配词的微博情感特征选择