谷 跃, 唐学文
(1.重庆大学 计算机学院,重庆 400030;2.重庆大学 信息与网络管理中心,重庆 400030)
一种多分类器联合的网络流量分类方法
谷跃1, 唐学文2
(1.重庆大学 计算机学院,重庆 400030;2.重庆大学 信息与网络管理中心,重庆 400030)
摘要:由于以往的网络流量分类方法是单一的机器学习分类方法,这种方法的总体准确率(Overall Accuracy)提高困难,而且这个问题长期存在着,鉴于此,提出了一种新的网络流量分类的方法,以机器学习分类方法为基础,联合不同分类方法,运用集成学习的思想,使用加权组合权重的方式来实现网络流量的分类;实验表明,新方法提高了总体准确率,比单一的机器学习分类方法更好。
关键词:流量分类;支持向量机;贝叶斯增广朴素贝叶斯;BP神经网络;集成学习
1概述
近年来,互联网流量急剧增大,为了更好地管理互联网的流量,优化网络质量,了解实时网络流量分布情况,以及预防及阻止网络攻击行为,需要更好的网络流量分类方法[1]。
在过去的研究中,基于主机、网络、应用层[2],以及机器学习的[3-5]方法是流量分类的基本方法。比如,文献[6]分析了有代表性的支持向量机等流量分类方法,文献[7]分析了IP流量分类方法,文献[8]研究了SVM在互联网中的流量分类,文献[9]分析了在概率模型下,朴素贝叶斯(NaïveBayes,NB)方法在流量分类中的应用,文献[10]介绍了不同网络环境中,8种不同方法的分类表现,并且进行了对比。
支持向量机方法(SVM)[11-12]是一种机器学习方法,其建立在统计学习理论(Statistical Learning Theory,SLT)基础之上,该方法在分类问题上,使用非线性变换方法,将样本空间转化为高维特征空间(feature space),使得待处理的高维特征空间具有了良好的可分性[13];又根据文献[14],在分类问题上,特定条件下转变成二次寻优问题。其中,文献[8]分析了支持向量机在流量分类问题上的优势。即支持向量机方法能够得到全局最优解,能够避免过学习现象。但该方法也有一些缺点,如样本数量很大时收敛速度很慢;核函数及核参数难以选择。
贝叶斯增广朴素贝叶斯方法(BAN)解决了在估计后验概率上朴素贝叶斯方法存在的缺点,文献[15]将主元分析法与K-均值聚类算法相结合,构造出了一个改进的朴素贝叶斯网络分类方法,该算法摒弃了非类属性变量相对于类属性变量是相对独立的前提条件。文献[16]将BAN方法用于流量的分类,提高了估计后验概率的准确率,其联合条件概率可表示为
(1)
式(1)中,Parents(Ai)是Ai的父结点集合。BAN方法各属性之间有着很强的依赖性,分类总体准确率较好,但是当样本数量很小时,它在网络结构学习上很复杂。
Rumelhart等人在人工神经网络领域中获得了重大突破,提出了能够解决非线性问题的误差反向传播的多层前馈神经网络,即BP方法[17],并且推导证明了该方法的正确性,使得BP方法有了坚实的理论依据。根据文献[18]内容,此处的BP神经网络基分类器流量的分类方法,釆用的是三层BP神经网络。三层BP神经网络已经满足了非线性多元分类的流量识别问题,如果再增加隐含层的层数,则会增大调整BP神经网络结构的难度。BP神经网络方法在实际应用中也有不足,其训练学习效率比较低,需要较长的时间才能够收敛;采用梯度下降法寻找全局最优时容易陷入局部极小值,在训练学习过程中会存在“饱和”的现象。
2集成学习分类方法
根据文献[19-20]可知,集成学习技术具有很强的泛化能力,拥有比单个分类器更好的性能,主要体现在提高预测结果的准确率和稳定性等方面。集成学习方法被广泛地应用于文本分类、生命科学等领域。
选择准确率高和差异性大的分类器用于集成学习,能够很好地提高集成后分类器的性能。SVM、BAN和BP神经网络这3种方法的分类准确率都较高,并且它们之间的差异性较大,很好地满足了集成学习的条件。
因此,结合SVM,BAN,BP神经网络3种方法的不同优点,通过对3种分类器实行加权平均组合权重的方式,提出一种多分类器联合的集成学习网络流量分类方法。
算法描述如下:
① 由训练集构建SVM,BAN,BP神经网络3种分类器。
② 计算流强度,获取验证集。
流强度计算采用皮尔逊相关系数。设有流向量Fi={Ai1,Ai2,…,Ai m}和流向量Fj={Aj1,Aj2,…,Aj m},式(2)表示流Fi与流Fj的强度。
(2)
使用式(2),获取相关性最强的K个网络流构成验证集。
③ 使用验证集,计算各分类器的权重。
由第②步得到了验证集,分别计算SVM,BAN,BP神经网络3种方法的权重,计算公式如下:
(3)
式(3)中,Wi(F)即权重,r即当前网络流与验证集中网络流的流强度;Ri表示第i个分类器验证集上的边界,当前分类器如果对验证集中的网络流分类准确,则Ri为1,否则为-1。
④ 加权平均,得到测试实例属于某种类型的后验概率。
经过第③步的计算,高权重的分类方法在加权平均计算后,能够显著的对后验概率起正向作用。
⑤ 选取后验概率最大类型作为判定结果。
加权平均后能够获得当前测试实例的所属类型,进而得到最后结果。
3实验结果与分析
3.1实验数据
为了对比及分析,使用文献[9]中的实验数据集,其中总共有377 526个网络流,囊括了10种类型。因为,在10种类型中,有3种类型的网络流极少,因此只使用网络流类型最多的7种类型。将实验数据集取名为DS,去除不相关的属性后,重新统计数据集的流信息如表1和表2所示。
表1 DS数据集的流数量
表2 DS数据集的流属性
3.2分析工具和评估标准
实验使用的网络流量分析工具主要是Weka-3.5.6和Libsvm2.83。
分类模型的分类性能,采用整体总体准确率OA标准来衡量。具体形式如公式(4)所描述:
(4)
其中,STP表示实际是某种应用,被预测也是某种应用的样本数量;STN表示实际是某种应用,被预测不是某种应用的样本数量;SFP表示实际不是某种应用,被预测是某种应用的样本数量;SFN表示实际不是某种应用,被预测不是某种应用的样本数量。
3.3准确率比较
为了比较分析准确率,先将 DS数据集分为2个数据子集,DS_1数据集和DS_2数据集;再从数据集DS_1中依次抽出各类应用的0.1%,作为样本训练集;然后,在DS_1数据集构成的训练集上依次运行SVM,BAN,BP神经网络和集成方法,其中,支持向量机参照台湾大学林智仁(Lin Chih-Jen)教授等开发设计Libsvm的使用说明,BAN采用K2结构学习方法,BP神经网络方法采用3层结构。在实验中,集成方法的k值取训练集中流数量的30%;最后,在数据集DS_2上进行验证。紧接着,把训练集的范围依次增加到 DS_1数据集的1%,10%,50%,然后重复这个过程,分别进行10次实验。取均值后,分类的总体准确率如图1所示。在各种流类型上进一步比较分类总体准确率,结果如表3所示。
图1 分类总体准确率Fig.1 Overall accuracy of classification
方法WWWMAILBULKDBSERVP2PATTSVM95.6394.3647.2316.186.358.9111.24BAN95.5293.3246.1214.115.049.0110.01BP95.3594.6348.2315.246.059.4511.02集成96.6298.5667.2123.1515.0137.3619.52
由图1和表3能够看出,随着训练集大小的提高,分类总体准确率也随之提高。其中,对于贝叶斯增广朴素贝叶斯方法来说,随着训练集的提高,分类准确率稳步上升;在样本空间比较小时,支持向量机表现出色;而BP神经网络收敛时间较长。集成学习方法联合SVM,BAN,BP神经网络这3种方法,运用集成学习的思想,使用加权组合权重的方式来实现网络流量的分类,其总体准确率优于单一的机器学习方法。
3.4效率比较
为了对比时间消耗,将DS数据集重新统计后,抽取其中的30%数据作为训练集,其余作为测试集。依次运行4种方法,得到分类方法的训练时间和测试时间如表4所示。
表4 分类方法的训练时间和测试时间
可以得出,3种分类器相互独立,可做并行处理,其中,在训练时间上BP神经网络方法与集成方法相同,测试阶段是主要存在的额外开销。
参考文献(References):
[1] 柏骏, 夏靖波, 吴吉祥,等.实时网络流量分类研究综述[J].计算机科学, 2013,40(9):8-15
BAI J,XIA J B,WU J X,et al.A Survey of Real Time Network Traffic Classification[J].Computer Science,2013,40(9):8-15
[2] FINSTERBUSCH M, RICHTERC, ROCHA E, et al.A Survey of Payload-Based Traffic Classification Approaches[J].Commun-ications Surveys & Tutorials IEEE,2014,16(2):1135-1156
[3] 熊刚, 孟姣, 曹自刚,等.网络流量分类研究进展与展望[J].集成技术, 2012(1):32-42
XIONG G, MENG J, CAO Z G,et al.Research Progress and Prospect of Network Traffic Classification[J].Journal of Integration Technology,2012(1):32-42
[4] DAINOTTI A, PESCAPE A, CLAFFY K C.Issues and Future Directions in Traffic Classification[J].Network IEEE,2012,26(1):35-40
[5] JIN Y, DUFFIELD N, ERMAN J, et al.A Modular Machine Learning System for Flow-level Traffic Classi-fication in Large Networks[J].ACM Transactions on Know-ledge Discovery from Data (TKDD),2012,6(1):4-8
[6] 张宏莉, 鲁刚.分类不平衡协议流的机器学习算法评估与比较[J].软件学报, 2012,23(6):1500-1516
ZHANG H L,LU G.Evaluation and Comparison of Machine Learning Algorithms for Classification of Unbalanced Protocols[J].Journal of Software,2012,23(6):1500-1516
[7] 刘琼,刘真,黄敏.基于机器学习的IP流量分类研究[J].计算机科学,2010,37(12):35-40
LIU Q,LIU ZH,HUANG M.Research on IP Traffic Classification Based on Machine Learning[J].Computer Science,2010,37(12):35-40
[8] 徐鹏,刘琼,林森.基于支持向量机的Internet流量分类研究[J].计算机研究与发展,2009,46(3):407-414
XU P,LIU Q,LIN S.Research on Internet Traffic Classi-fication Based on Support Vector Machine[J].Computer Research and Development,2009,46(3):407-414
[9] ZUEV D,MOORE A W.Traffic Classification Using a Statistical Approach[C]∥Proc of PAM’05 Heidelberg.Germany:SpringerVerlag,2005:321-324
[10] CALLDO A,KAMIENSKI C A,BISCHOFF E,et al.Demys-tifying Internet Traffic Identification-or:Why Can’ t I Know What Really Goes on My Net-work?[R].2008
[11] 夏书银,王越,张权.核空间结合样本中心角度的支持向量机增量算法[J].计算机应用与软件,2012(4):121-124
XIA SH Y,WANG Y,ZHANG Q.Incremental Algorithm of Support Vector Machine Based on Kernel Space Combined with Sample Center[J].Computer Applications and Software,2012(4):121-124
[12] 夏书银,支持向量机算法研究及在森林健康监测系统中的应用[D].重庆:重庆理工大学,2012
XIA SH Y.Support Vector Machine Algorithm and Its Stress on Forest Health Monitoring System[D].Chong qing:Chongqing University of Technology,2012
[13] MOORE A W,ZUEV D.Internet Traffic Classification Using Bayesian Analysis Techniques[C]∥Proc of the 2005 ACM SIGMETRICS Int Conf on Measurement and Modeling of Computer Systems.New York:ACM,2005:50-60
[14] TAN P N,STEINBACH M,KUMAR V.Introduction to Data Mining[M].Boston:Addison Wesley,2006
[15] 刘亚辉,王越,谭暑秋.基于K-均值聚类的朴素贝叶斯网络分类模型[J].重庆工商大学学报(自然科学版),2012,29(8):36-41
LIU Y H,WANG Y,TAN SH Q.K-means Clustering Model Based on Naive Bayesian Network Classifier[J].Journal of Chongqing Technology and Business University (Natural Science Edition),2012,29(8):36-41
[16] 李君,张顺颐.基于贝叶斯网络的Peer-to-Peer识别方法[J].应用科学学报,2009,27(2):125-130
LI J,ZHANG SH Y.Peer-to-peer Recognition Method Based on Bayesian Network[J].Journal of Applied Sciences,2009,27(2):125-130
[17] RUMELHART D E,MCCLELLAND J L.Parallel Distri-buted Processingf[M].Cambridge,MA:The MIT Press,1986
[18] HORNIK K M,STINCHCOMBE M,WHITE H.Multilayer Feed forward Networks are Universal Approximators [J].Neural Networks,1989,2(2):359-366
[19] DITTERICH T G.Ensemble Learning:The Handbook of Brain Theory and Neural Networks[M].2nd Edition.Cambridge:The MIT Press,2002
[20] 陈冰.多分类器集成算法研究[D].济南:山东师范大学,2009
CHEN B.Multi-classifiers Integration Algorithm Research[D].Jinan:Shandong Normal University,2009
[21] WRITTEN I H,FANK E.Data Mining:Practical Machine Learning Tools and Techniques[M].2nd Edition.Amste-rdam:Elsevier Inc,2005
责任编辑:李翠薇
doi:10.16055/j.issn.1672-058X.2016.0004.012
收稿日期:2016-01-23;修回日期:2016-03-08.
作者简介:谷跃(1989-),男,辽宁葫芦岛人,硕士研究生,从事流量分类、网络安全研究.
中图分类号:TP393
文献标志码:A
文章编号:1672-058X(2016)04-0074-05
Network Traffic Classification Based on the Combination of Multi-classifiers
GU Yue1, TANG Xue-wen2
(1.School of Computer Science, Chongqing University, Chongqing 400030, China;2. Management Center for Information and Network, Chongqing University, Chongqing 400030, China)
Abstract:According to network traffic classification, because the previous network traffic classification method is single machine learning classification, it is difficult to improve its Overall Accuracy and this problem exists for a long time. Therefore, this paper proposes a new network traffic classification method, this method is based on machine learning classification, combines the advantages of different classification methods, uses integrated learning, and obtains the classification of network traffic through weighted average combination. The experiment shows that this method raises Overall Accuracy and is better than single machine learning classification.
Key words:traffic classification; support vector machine; Bayes Network Augmented Naive Bayses; BP neural network; ensemble learning