基于决策树算法的移动终端数据安全检测技术研究

刘江林 袁宏彦



摘 要: 通过对决策树、k?Nearest Neighbor、贝叶斯三种不同数据挖掘算法的比较研究,基于可移动端数据的特点,建立了可移动端数据安全检测的模型框架,并通过实验对其加以验证。结果表明,决策树算法的检测分类结果最好,其查准率和查全率结果都很高;贝叶斯算法的检测分类结果性能稳定,但准确性不高,分类精度不理想,这是由该算法本身固有的特点决定的;k?Nearest Neighbor算法在开始时受到样本向量多少的影响,检测分类的效果不太稳定,分类效果在样本向量较少的情况下较差。通过对数据挖掘的可移动终端数据安全检测技术的研究,为今后数据安全检测技术的应用提供了一定的指导价值。
关键词: 数据挖掘; 移动终端; 数据安全; 检测技术
中图分类号: TN915.08?34 文献标识码: A 文章编号: 1004?373X(2017)05?0082?03
Abstract: By comparatively studying on the data mining algorithms of decision tree, k?Nearest Neighbor and Bayesian, a model framework of the mobile terminal data security detection was established according to the characteristics of the mobile terminal data, and verified with the experiment. The results show that the decision tree algorithm has the best detection and classification result, and its precision ratio and recall ratio are both high; the Bayesian algorithm has the stable performance of the detection and classification result, but its accuracy is low and classification precision is unsatisfied because of the inherent characteristics of the algorithm itself; the k?Nearest Neighbor algorithm reflected by the quantity of the sample vectors has unstable detection and classification result, and the classification result is poor when the algorithm has less sample vectors. The mobile terminal data security detection technology of the data mining is studied, which provides a certain guidance value for the application of the data security detection technology.
Keywords: data mining; mobile terminal; data security; detection technology
0 引 言
伴随着移动通信技术的飞速发展,移动终端在人们的日常生活中愈来愈多地承担互联网的应用和服务,但同时也带来了许多负面的影响,其中最大的挑战就是如何确保可移动端数据的安全[1?3]。可移动终端在承担以前PC端互联网的应用和服务时,自己也成了被攻击的对象,如何快速地检测、识别对可移动端数据存在安全威胁的数据,这一问题急需解决。
数据挖掘是将人工智能、机器学习、模式识别等多学科、多领域的知识结合,通过对当前大量信息数据的分析,找出各类事物之间新的联系和发展趋势等[4?7]。数据挖掘为解决可移动端数据安全监测问题提供了一种新的思路和途径,成为一个新的研究热点[8]。
1 可移动端数据安全检测模型框架
1.1 数据挖掘算法比较
在利用数据挖掘技术对可移动端数据进行检测时,算法的选择直接影响整个模型是否可以快速自动、准确无误地识别对数据安全有威胁的信息,因此对数据挖掘算法的比较研究是基于数据挖掘的可移动端数据安全检测技术的核心。
1.1.1 决策树算法
该算法的主体是利用树状结构对可移动端数据记录进行分类[9],具有非常高的可读性,对数据记录的分类准确率和速度都很高等优点。
1.1.2 k?Nearest Neighbor算法
k?Nearest Neighbor算法是基于统计分类的一种算法。该算法的优点是不需要分割所有数据记录组成的向量空间,通过对模型数据进行训练,找出[K]个相似向量即可,分类效果较好;缺点是对异常值不敏感。计算公式如下:
[Simdi,dj=k-1MWik×Wjkk-1MW2ikk-1MW2jk] (1)
1.1.3 贝叶斯算法
贝叶斯算法是基于概率理论的数据检测分类算法。该算法可以将事件的先验概率和后验概率联系在一起,利用样本数据与先验信息来确定事件的后验概率,其优点是模型构建简单,效率和稳定性很高,缺点是数据分类效果不佳。计算公式如下:
[Pcjdi=pcjpdicjpdi] (2)
1.2 可移动端数据安全检测模型框架
完成对数据挖掘算法的研究,本文提出了一种基于数据挖掘的可移动端数据安全检测的模型,模型框架图如图1所示。
整个可移动端数据安全检测的过程分为训练过程和分类过程。首先,从可移动端采集到原始数据,将采集来的可移动端数据以数据包的形式作为一个分类单位,数据包中包括已经检测的数据和待检测的数据,将已经检测过的数据作为训练过程的基础,先对其进行预处理,即将可移动端HTTP请求数据进行文本化,然后提取文本数据的向量特征,将数据包中的文本数据转化为可用于分类的空间向量,随后,利用该训练数据集对数据检测分类算法模型进行训练,再利用测试数据集按一定的测试方法测试建立好的分类模型的性能,通过不断的学习和调整,实现对移动数据的自动化安全检测。
1.2.1 数据的向量化
数据预处理之后的文本数据是不可以直接使用的,必须将这些文本数据向量化,转换成检测分类算法可以识别的数据,即把数据全部用向量表示,使數据包成为[N]维向量空间的一个点集,如下:
[T=TD1,W1,D2,W2,…,DN,WN] (3)
文本转化为向量后,特征项为[D,]相对应的特征项的权值为[W,]也就是当前特征项在文本中的重要程度。这一建模过程方法很多,目前常用的有概率模型、布尔模型以及向量空间模型等。
1.2.2 向量特征值的选择
将文本数据进行向量化之后,数据就成了[N]维向量空间的一个点集,每一个点需要有一个特征向量,这样才可以进行下一步的分类。因为在高纬度的向量空间中进行分类效率会很低,所以在提取特征向量前,要降低一下向量空间的维度,这就需要对数据的特征项进行处理和过滤。本文设计的基于数据挖掘的可移动端数据安全检测模型中,提取了14个向量特征来表示每个可移动端的数据,这样一来就可以大大降低向量空间的维度,而且还能保证数据的有效性。
1.2.3 数据的检测分类
从可移动端收集的数据被分为两个部分:一部分为正常数据;另一部分为恶意数据,这两部分数据一定要具有良好的区分性,测试检测模型是否对这两部分数据有足够的敏感性,是否可以稳健快速的区别[10]。经过数据划分之后,恶意数据和安全数据被划分为恶意数据和正常数据两类,预处理后作为目标数据对模型的检测分类算法进行训练,这是一个自动、机器学习的过程,模型训练后可以对数据进行有效地分类和性能检验。
2 实验结果与分析
2.1 实验数据与环境
本文选择的实验数据共有61 937条安全数据和17 592条恶意数据,分为训练数据集和测试数据集两部分,分布情况如表1所示。
2.2 结果评估方法
本文采用查准率、查全率对分类结果进行评价。查准率和查全率是评价分类结果的常用方法,查准率衡量检测准确的概率,查全率是衡量检测到的概率。
恶意数据包检测结果的查准率和查全率分别如下所示:
式中:真实结果为恶意用[Nm-m]表示,检测结果为恶意的数据包的数目;真实结果为安全用[Ns-m]表示,检测结果为恶意的移动数据包数目;恶意移动数据包的总数用[Nm]表示。
式中:真实结果为安全用[Ns-s]表示,检测结果为安全的数据包的数目;真实结果为恶意用[Nm-s]表示,检测结果为安全的移动数据包数目;安全移动数据包的总数用[Ns]表示。
2.3 分类结果评估指标
评估分类结果,首先要对模型的算法性能进行评估。在本文提出的检测模型中,数据的检测分为训练部分和分类部分,因此对算法的评估也需要分两个阶段进行。对于k?Nearest Neighbor算法,其在训练部分的时间是线性的,而在分类部分的时间是非线性的;对于决策树算法,其在训练部分的时间是非线性的,而在分类部分的时间又是线性的;而贝叶斯算法,其在训练部分和分类部分的时间都是线性的,因此通常用于对算法性能进行评估,而在本文中并不适用,对于可移动端数据安全检测的算法则不再使用一些常用指标去评估衡量算法的性能,而是引用信息检索中的相关指标来评估算法的性能,这些指标主要有两个,即查全率和查准率。对可移动端数据的所有类别进行标记,每一个类别使用一个二值标记,这样数据的分类结果就形成一个二值分类邻接表,利用这个表进行计算,便可以对分类的结果进行评估。
2.4 实验结果与分析
在本文提出的检测模型中,数据的检测分为训练部分和分类部分。在实验过程中,也将实验分成两组进行,第一组实验研究各个分类算法模型的二分类检测结果,第二组实验研究各个分类算法模型的多类分类检测结果。为了保证最后实验结果的可比性,在每组实验中只改变算法,不改变输入的检测数据,实验数据见表2。
在二分类检测中,将实验的数据类别只设定为安全数据和恶意数据两种,并且把测试的数据分为五组输入到检测模型中对算法进行验证,计算出平均查准率和查全率。从实验结果数据可以看出,在进行安全数据和恶意数据的二分类检测时,各个算法的性能都良好,其中性能稳定和分类效果最好的是决策树算法,其次是k?Nearest Neighbor算法,检测分类效果不够理想的是贝叶斯算法。
根据多类分类的实验结果可以看出,k?Nearest Neighbor算法开始变得不够稳定,其检测分类的效果直接受到样本向量多少的影响,在样本向量较少的情况下其分类效果变差;贝叶斯算法的检测分类结果性能稳定,但准确性却不高,分类精度不理想,这是由该算法本身固有的特点决定的;检测分类结果最好的是决策树算法,无论是查准率还是查全率,其检测分类的结果都很高。
3 结 语
决策树算法是一种广泛使用的数据挖掘分类算法,该算法通过训练数据自动生成分类模型,并可利用生成的决策树对未知分类数据进行预测。本文通过查准率、查全率对决策树算法的移动终端数据安全检测结果进行评价,得出以下结论:
在进行安全数据和恶意数据的二分类检测时,各个算法的性能都良好,其中性能稳定,分类效果最好的是决策树算法,其次是k?Nearest Neighbor算法,检测分类效果不够理想的是贝叶斯算法。
在进行安全数据和恶意数据的多类分类检测时,k?Nearest Neighbor算法不够稳定,其检测分类的效果直接受到样本向量多少的影响,在样本向量较少的情况下其分类效果变差;贝叶斯算法的检测分类结果性能稳定,但准确性却不高,分类精度不理想;决策树算法检测分类结果最好,查准率和查全率都很高。
决策树算法虽比其他两种算法的效果要好,但其对个别威胁类型如DOS,U2R等的查准率还未超过90%,因此在今后研究中,还需要进一步提高决策树算法对各威胁类型检测的查准率及查全率。
参考文献
[1] 张瑞华,周延泉,王枞,等.移动终端离线浏览系统的新闻推荐服务研究[J].北京邮电大学学报,2011(4):132?135.
[2] 张爱丽,刘广利,刘长宇.基于SVM的多类文本分类研究[J].情报方法,2004(9):125?127.
[3] COVER T M, HART P E. Nearest neighbor pattern classification [J]. IEEE transactions on information theory, 1968, 13(1): 21?27.
[4] LEE W, STOLFO S. A framework for constructing features and models for intrusion detection systems [J]. ACM transactions on information and system security, 2000, 3(4): 227?261.
[5] 房秉毅,张云勇,徐雷.移动互联网环境下云计算安全浅析[J].移动通信,2011(9):25?28.
[6] 傅建庆,陈健,范容,等.基于代理签名的移动通信网络匿名漫游认证协议[J].电子与信息学报,2011,33(1):156?162.
[7] 李涛,胡爱群.可信模块与强制访问控制结合的安全防护方案[J].东南大学学报(自然科学版),2011,41(3):513?517.
[8] 陈祎荻,秦玉平.基于机器学习的文本分类方法综述[J].渤海大学学报(自然科学版),2010(2):201?205.
[9] 杨静,张楠男,李建,等.决策树算法的研究与应用[J].计算机技术与发展,2010,20(2):114?116.
[10] 柴春梅,李翔,林祥.基于改进KNN算法实现网络媒体信息智能分类[J].计算机技术与发展,2009(1):1?4.