基于特征加权的朴素贝叶斯流量分类方法研究-张泽鑫.pdf
![资源得分’ title=](/images/score_1.gif)
![资源得分’ title=](/images/score_1.gif)
![资源得分’ title=](/images/score_1.gif)
![资源得分’ title=](/images/score_1.gif)
![资源得分’ title=](/images/score_05.gif)
《基于特征加权的朴素贝叶斯流量分类方法研究-张泽鑫.pdf》由会员分享,可在线阅读,更多相关《基于特征加权的朴素贝叶斯流量分类方法研究-张泽鑫.pdf(10页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、高技术通讯2016年第26卷第2期:119128doi:103772jissn1002-0470201602002基于特征加权的朴素贝叶斯流量分类方法研究张泽鑫一+ 李俊+ 常向青+(+中国科学院计算机网络信息中心 北京100190)(”中国科学院大学北京100049)摘要研究了被广泛应用于互联网流量分类的朴素贝叶斯分类方法的性能特点,针对此方法在给定类别下给出的所有流量特征同等重要并且是独立的假设在现实中难以满足,致使分类准确率不高的问题,提出一种基于特征加权的朴素贝叶斯流量分类算法。该算法基于NetFlow记录的特征信息,采用特征选择算法ReliefF和相关系数方法计算每个特征的权重值,然
2、后将网络流量分配至后验概率最大的应用类别中。实验结果表明,这种基于特征加权的朴素贝叶斯算法具有超过94的分类准确率,并且维持了朴素贝叶斯方法简单高效、分类稳定的特性,可以满足当前高带宽网络流量分类的需求。关键词流量分类(rC),ReliefF,相关系数,特征加权(AW),朴素贝叶斯(NB),NetFloW0 引言随着互联网的迅猛发展,越来越多的新型网络应用不断兴起,网络规模不断扩大,网络组成也越来越复杂。音频、视频等实时应用的兴起,更是从根本上改变了人们对网络的使用方式,网络复杂性上升的同时,网络的异构性也愈来愈强,各种新的应用和未知协议使网络日益复杂、多样化和难以管理。进行网络管理离不开互联
3、网流量分类(traffic classification,TC),互联网流量分类是认识、管理和优化各种网络资源的重要依据。网络服务提供商(ISP)通过对网络流进行分类,获悉各类网络应用所占的比例,预测网络业务的发展趋势,对不同的网络业务实行差异化收费标准。流量分类在网络安全性检测方面也发挥着巨大的作用,可以实现更精确的异常检测,入侵检测等。因此,开展互联网流量分类研究具有重要实际意义和应用价值。由于很多新的网络应用采用动态端口、数据载荷字段加密,导致传统的基于端口和基于有效载荷分析的流量分类方法变得越来越受限制,分类准确率下降。因此,基于流量行为特征,采用机器学习的方法处理流量分类问题逐渐成为
4、国内外学者研究的热点。朴素贝叶斯(Naive Bayes,NB)分类方法因其实现简单、处理高效的特征被很多学者用于流量分类领域u2 o。然而,朴素贝叶斯(NB)方法在估计类条件概率时,假设流量特征之间是同等重要且条件独立的,该假设在实际情况中很难满足,流量特征之间往往存在着相关性。解决该问题的一个方法是特征过滤,从流量特征集中删除冗余的特征,使用过滤后的特征子集进行分类模型训练。该方法提高了朴素贝叶斯进行流量分类的准确率,但是,并没有考虑不同流量特征对分类的重要性不同。因此,本文提出了一种特征加权(attribute weighting,AW)的朴素贝叶斯流量分类方法,该方法赋予每个特征一个权
5、重,越重要的特征权重值越大,然后将流量分至后973计划(2012CB315803)和中国科学院计算机网络信息中心“一三五”计划(CNICPY一1401)资助项目。女,1987年生,博士生;研究方向:流量测量与特性分析,流量分类等;联系人,Email:zhangzexincstnetcn(收稿日期:20154)8-24)一119万方数据高技术通讯2016年2月第26卷第2期验概率最大的应用类别中。特征加权是特征选择的一种扩展方法,赋予冗余度高的特征较小的权重,赋予对网络应用区分度大的特征较高的权重,既能解决流量特征之间存在冗余的问题,也考虑了不同流量特征对分类重要性不同。1 相关研究早期,网络应
6、用通过周知的端口来进行分类,根据互联网编号分配机构(IANA)预定义和分配的端口映射表口J,每个端口号对应一个应用,比如众所周知的web应用的端口号是80。然而,随着网络应用的层出不穷,大量的随机端口被用于数据通信,有些协议甚至封装后通过周知的端口进行通信。Moore和Papagiannaki【41通过实验研究发现使用IANA列表进行基于端口号的流量识别,准确率不超过70。基于端口的应用识别方法变得越来越受限b剖。为了提高分类的准确率,很多学者开始关注网络流量的负载特征。剑桥大学的Moore等人H1、AT&T实验室的Sen等旧3在他们的论文中都提出了采用基于有效载荷特征匹配的方法来对互联网的业
7、务流量进行分类。基于载荷的流量分类方法准确度非常高,但是需要检索每个数据包中的Payload字段,需要的计算资源非常大,并且有效载荷的分析侵犯了用户的隐私和安全性,其发展受到了很大的阻力。随着研究的不断深入,基于行为特征的流量分类方法逐渐成为国内外研究的热点。该方法从不同的观测角度发现网络应用的不同行为特征,例如包大小、包时间间隔、字节数、持续时间等作为流量特征,应用机器学习方法对其建立相应的模型,然后应用于分类。基于流量的统计行为特征,各研究机构提出了基于机器学习的流量分类方法H 01,通过统计流持续时间、分组到达间隔等流统计特性,采用有监督或者无监督的机器学习方法实现业务分类。McGreg
8、or等u采用基于EM(expectationmaximiza-tion)算法无监督的学习方法对基于连接层统计特征的“流”进行分类。文献12提出将P个特征属一120一性转换为P维向量,通过定义距离函数,采用聚类的方法对网络流进行分类。无监督的聚类方法分类精度不高,在类别数比较多的情况下,分类复杂度较大。同时有监督的机器学习方法也被用于流量分类中,Moore等11通过傅里叶变换构建了248个流特征,并采用FCBF(fast correlation-b豁ed filter)进行特征选择,最后采用朴素贝叶斯方法来区分各应用。该方法的流量特征过多,增加了时间和空间复杂度,无法应用于流量的在线识别。朴素贝
9、叶斯分类模型具有简单高效的特点,因此被很多研究者应用于流量分类中。文献13采用多种特征选择方法,结合不同的训练数据集预处理方法,评估朴素贝叶斯分类器在检测网络异常时的性能差异。文献14提出了一种新的特征选择方法对流量特征过滤,该方法能有效缓解多类不平衡的问题,最后采用朴素贝叶斯分类器对流量进行分类。Antonio等纠为了改进朴素贝叶斯分类器的分类准确率,采用主成分分析法和关联特征法对网络流量特征进行了选择,结果显示这两种特征选择方法都提高了朴素贝叶斯的分类准确率。文献16,17也分别使用朴素贝叶斯分类算法对网络流量进行分类。国内方面,徐鹏等人引采用C45决策树方法对流量进行分类,实验证明决策树
10、分类方法在处理动态变化的样本和大规模流量分类时具有较好的性能,然而采用的流量属性还无法实时获取,不适合用于网络流在线识别。陈亮等人【I纠首先采用简单相关系数方法进行流量特征选择,然后基于Bayes判别法进行流量分类。该方法虽然整体的分类准确率较高,但是有些应用的分类结果却不佳,例如P2P、ATrACK等。2特征加权的朴素贝叶斯流量分类方法21特征加权的朴素贝叶斯流量分类算法朴素贝叶斯分类器具有稳定的分类效率,对缺失数据也不敏感,并且算法简单,因此,被广泛地应用在分类领域。朴素贝叶斯分类器利用贝叶斯定理计算待分类实例的最大后验概率,在估计类条件概率时假设属性之间条件独立,形式化描述为万方数据张泽
11、鑫等:基于特征加权的朴素贝叶斯流量分类方法研究P(A y)=HP(AI y=,) (1)其中A代表属性集A=A。,A:,A。,包含d个属性。在条件独立假设下,只需对给定的y,计算每一个A;的条件概率。假设有条网络流X=x。,x:,x。,每条网络流置由d个属性值描述A。,A:,A。,有m个网络应用类别,Y=yl,y2,ym。对于网络流置,属于类别yf的概率为:吣)=塑裟严 (2)其中,先验概率P(I)代表网络应用类别在整个网络流中占有的比例,P(xiI yJ)为类条件概率,表示在应用类别为E时,置出现的概率。朴素贝叶斯分类器的目标是找出使得P(X;I匕)P(I)(_=1,2,m)最大的类,此时,
12、流量五对应的类别即为E。根据式(1)、(2),朴素贝叶斯分类器的后验概率计算公式为dP(K),II P(AI)P(l置)=赫广(3)朴素贝叶斯分类器对网络流量进行分类时,假定每条流的特征是相互独立的,并且每个特征对分类的贡献度都是一样的。然而,在真实的网络环境中,这些假设条件都是难以满足的,结果导致分类准确率降低。针对这个问题,文献1中采用FCBF方法进行流量特征选择,选择一个与类别相关性高,特征之间冗余度低的特征子集进行分类模型训练,削弱了流量特征之间的相关性,提高了分类的准确率。特征加权是另一种可以保留或删除特征的方法,特征越重要,赋予的权值越大,而不太重要的特征赋予较小的权值。特征加权是
13、特征选择的普适化方法,特征选择是特征加权方法的一个特例,权值等于0或l。特征加权的朴素贝叶斯分类器后验概率计算公式为dP(1),P(A。I巧)蚍P(匕I置)=1兹两一(4)其中山。R+,代表特征的重要程度。22基于ReUefF和相关系数的流量特征加权算法特征加权的朴素贝叶斯流量分类方法的关键是特征权值的计算,给每个流量特征分配合适的权重不仅能够区分特征之间的预测能力,也能降低违背特征独立性假设所带来的影响,提高朴素贝叶斯分类器的分类准确率。因此,本文从两个方面考虑流量特征权重的计算,首先,认为与类别相关性高的特征具有较高的权重,采用ReliefFml方法计算每个特征的权重值;其次,认为与其它特
14、征冗余度高的特征具有较低的权重,采用相关系数方法修正每个特征的权重值。ReliefF是由Kononenko提出的一种多类别特征选择算法,其基本思想是给特征集中的每个特征赋予一个权重值,赋予和类别相关性高的特征较高的权重,最后根据这些权重值进行特征子集选择。本文则根据这些权重值对流量特征进行加权,权重向量为=(l,2,d),算法见表1。Class(Xi)表示样本墨所属的类别,函数difAA,。,2)计算样本和样本,2在特征A上的距离,P(Y)表示网络应用y的先验概率。表1基于RellefF的流量特征权重计算算法输入:网络流量训练集数据x,样本抽样次数m,最近邻样本个数Z输出:流量特征集的权重向量
15、1 将权重向量置初值=02 For i:=1 to m do3 随机地选择一个网络流X。;4 从x。的同类别流中,选出l条最邻近的流H。;5 For每个类yclass(Xi)do6 从类Y中找出l条最邻近的流M。;7 For K:=1 to d do8f,O:=叭一dff(AI,Xi,(mz)+ ,。善。、【F百塞d状AklP(dass( 五,丝)】(mf)r,斑剐L一 墨)刍吲、“”J一9 End;ReliefF算法没有限定特征权值的取值范围,有可能为负值,所以,为了避免发生这种情况,根据Han等人口11提出的minmax方法对权值进行标准化操作。假设流量特征的权值向量为。,03:,10。,
16、采用公式一121万方数据高技术通讯2016年2月第26卷第2期7i=上(new_max。一new_ml。n。)i=_t 一 。Jmax一mln“ ”+nel一min。 (5)对权值标准化。其中,i=1,2,k,7i为特征i的权值i变换后的新权重值,min。为原特征权值向量中的最小值,max。,为原特征权值向量中的最大值,new_max。为原特征权值向量标准化后的最大值,new_min。为原特征权值向量标准化后的最小值。本文将标准化区间定义为0,1,即new_max。=1,new_min=0。ReliefF算法仅考虑了特征与类别之间的相关性程度,没有考虑特征之间的相关性,本文采用相关系数来度量特
17、征之间的相关性程度,如下式所示: 一 cov(Ai,Ai)P4i,冬一,fvar(Ai)var(Aj)一(4啪一互i)(4,。一乃)=k=l=二= (6),。一 、 ,J n(A泓一Ai)2(A甜一74j)2其中,Ai和为两个属性特征,Ai,k和4,。为两个属性特征的观察值,五i和五i为两个属性特征n个观察值的均值。I Pi,。,I0,1,几,值越大,表明属性特征之间的相关性越强,反之越弱。使用P扎,值对特征权重fOi、7f进行修正,如果;f,即特征A;较特征Ai有较强的预测能力时,保持03;不变,对,进行修正,叶=哆“”_,j0,7j,P称为衰减系数,本文取P为20。Pbf值小时,?降低得少
18、,P。j值为0时,表明Ai和Ai之间不存在相关性,J=?。P“。i值大时,?降低得多,P“,值为1时,表明Ai和Af之问的相关性最强,7,一0。3 实验为了验证特征加权的朴素贝叶斯流量分类算法的有效性,设置了两组对比实验。第一组采用标准的朴素贝叶斯分类方法进行流量分类;第二组首先采用文献22中提出的FCBF方法对流量特征过滤,然后使用过滤的训练数据集运行朴素贝叶斯分类器,构造分类模型。一12231实验数据实验的数据集来自中国科技网(ChinaScieneeand Technology Network,CSTNET)。为了验证不同时间段算法的性能,采集了2014年12月16日上午10:0011:
19、00,下午14:0015:00,晚上19:0020:00之间经过该出口的所有Netflow网络流量,分别为CSTNET一1,CSTNET一2,CSTNET一3。经分析,TCP流量仍为中国科技网的主要流量,所以本文仅对完整的TCP流进行分类。为了避免用每种应用的训练样本过少而影响分类准确率,抽样时使得每种应用的流数基本保持一致,即采用均匀无放回抽样方法,从每个数据集中抽取约3万条数据,每种应用约3000条流数据作为样本集。经分析,表2中的10种应用为科技网TCP流量中的主要部分,所以本文选取这10种应用进行分类。每组数据集轮流作为训练集对分类器进行训练,剩余两组作为测试集。表2数据集文献1采用傅
20、里叶变换得到249项网络流特征,在这些特征中存在着大量的冗余特征,对分类器进行训练时,不但增加了分类的时间复杂度,也降低了分类的准确率,并且不适合用于网络流的在线分类。为了降低分类系统采集报文、计算流量特征的开销,本文采用NetFlow的统计特征作为网络流的属性,见表3。对于不同的网络应用,这些属性特征通常表现出较大的差异性,因此,可以利用NetFlow的流记录信息对网络应用进行识别。万方数据张泽鑫等:基于特征加权的朴素贝叶斯流量分类方法研究表3网络流属性集合属性 描述bytespacketsdest portdurationIATpacket_sizeppsbpa流内字节数流内报文数目的端口
21、流持续时间流内平均报文间隔时间流内平均报文大小流内每秒平均传输包数流内每秒平均传输字节数32评估指标评价一个网络流量分类器的好坏需要在一定指标下测试其分类结果,然后通过测试结果得出结论。分类器首先通过训练集进行模型的学习,拟合训练集数据中类标号和属性集之间的联系,建立分类模型。随后将该模型应用于测试集数据,分类模型的性能根据测试集数据的运行结果进行评估,运行结果计数存放在混淆矩阵中,如表4。表中每项Zi表示实际类标号为i,但被预测为类J的记录数。表4多类问题的混淆矩阵根据混淆矩阵,分类器性能评价指标计算公式如下:=渊=盎iffil,指狱器正确预测的样本占所有样本的比例o,(2)类的精度=L,指
22、被分类器分到某个类别,样本确实是这个类别所占的比例。(3)类的召回率=生,度量某个类别的样厶本被分类器正确分类的比例。33朴素贝叶斯网络流量分类本节仅采用标准的朴素贝叶斯方法对网络流量进行分类,分别选取数据集中的一组数据作为训练集,另外两组数据作为测试集,每组实验重复10次,取每组实验的平均值作为分类结果。如表5所示,三组实验的平均分类准确率分别为807,81O,812。从表5可以看出,朴素贝叶斯分类器的分类结果较差,整体的分类准确率较低,主要是由于朴素贝叶斯分类器在估计类条件概率时假设流量特征之间是条件独立的,流量特征之间的相关性违背了条件独立性假设,降低了朴素贝叶斯分类器的分类准确率。表5
23、基于朴素贝叶斯流量分类方法的整体分类准确率34基于FCBF特征选择的朴素贝叶斯(FCBFNil)网络流量分类由于流量特征之间存在冗余,导致朴素贝叶斯分类器的分类准确率降低,所以采用文献22提出的FCBF方法对流量特征进行选择,选择与类别相关性高且特征之间冗余度低的流量特征用于构建朴素贝叶斯分类器模型。选出的特征集为M=destport,packet_size,duration,IAT,pps,然后在完成过滤的训练数据集上运行朴素贝叶斯分类器,构建分类模型,并使用数据集中的另外两组数据测试模型。每组实验重复10次,取每组实验的平均值为分类结果,如表6所示。采用FCBF方法对流量特征过滤之后,每组
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 基于 特征 加权 朴素 贝叶斯 流量 分类 方法 研究 张泽鑫
![提示](https://www.taowenge.com/images/bang_tan.gif)
限制150内