欢迎访问河南元兰生物科技有限公司网站!咨询电话:18603713903中文 英文

您当前的位置:首页 > 新闻资讯 > 行业资讯

基于深度学习的病毒检测综述

发布日期:2021/02/27 16:26:18
随着数据的增多,病毒的类型也随之增加。病毒的不确定性及其攻击的复杂性,使传统的机器学习已经不能满足大量高维信息的处理,数据安全问题就越来越引人注意。人工神经网络的进一步发展,使深度学习在语音、视觉等领域飞速发展。深度学习的技术越来越成熟,对病毒检测领域有着重要的意义,将在病毒检测领域也有很大的提升。该文着重于深度学习的每一个过程的不同方法,探究是否适用于病毒检测,介绍常用的深度学习模型,剖析深度学习对电脑病毒检测的现状,分析病毒检测中常用的数据集及其每个数据集的优缺点,以及需要经过数据预处理、特征学习和分类识别的整体流程及其每个过程中的常用技术。最后用经典案例分析深度学习在病毒检测中的准确率,结果表明准确率得到明显提升。
随着网络迅速发展,数据指数般的增长,数据安全问题成为人们关注的重点。病毒检测系统是维持互联网安全的一种防护措施,也是抵抗病毒入侵的一道重要保障,病毒检测系统能准确识别出病毒,对网络安全起着至关重要的作用。病毒主要分为黑客入侵和恶意软件等。传统的病毒检测方法是针对带有标签及样本数据量少的情况下有理想的分类效果,可是在信息数据指数增长的时期,病毒入侵将要面对新的搦战—大量非线性高维数据[1]。随着深度学习的不断发展,其能应用于多种领域,在病毒检测方面,主要采用深度信念网络、卷积神经网络等分类算法[2]。特征学习是深度学习的实质,用低维特征表示重要特征,能更好地解决维数灾难问题,同时在高维庞杂的网络数据中有着较好的检测结果。
1 深度学习技术
深度学习中有很多模型,实质是经过训练神经网络的参数,从而得到权重,调整权重值最后学到特征。深度学习从不同角度可以分为多种:在有无监督层面分为Supervised Learning (有监督学习)和Unsupervised Learning(无监督学习);在使用场景[3]层面分为Generation Model(生成模型)、Recognition Model(识别模型)和Hybrid Mode(混合模型)。其中Hybrid Mode是指Generation Model和Recognition Model的混合,代表模型深度神经网络。常见的深度信念网络(DBN)属于Unsupervised Learning,Generation Model;卷积神经网络(CNN)属于Supervised Learning,Recognition Model。
深度信念网络由Hinton等人提出,在结构上是由多层无监督的RBM(受限玻尔兹曼机)网络和有监督的BP(反向传播)网络组成的一种深层神经网络[4]。卷积神经网络采用感受野,及用局部信息得到全部信息从而减少连接数目。权值共享需要减少求解参数,降低网络复杂性。pooling对原图像进行下采样降低维度,减少计算量,防止过拟合。
2 病毒检测
2.1 基于深度学习的病毒检测现状
20世纪90年代初期,Debar等人初次在网络入侵检测病毒中加入神经网络[5];21世纪初,Creech等人尝试在主机的入侵检测中加入神经网络[6]。在前人实验的基础上,病毒检测开始用深度学习技术[7]。但深度学习在病毒检测中并没有发展完善,还需要更深层的探究。在测试病毒监测模型时,通常用到KDD Cup1999(KDD99)数据集[8]。该数据集数量多,类型丰富,每条数据有41种特征,其中包含9种TCP(传输控制协议)连接基本特征、13种内容特征、9种基于时间的网络流量统计特征、10种主机的网络流量统计特征。KDD99数据集为大量研究入侵检测的专家们提供了便利,但同时该数据集也出现了一系列冗余问题。NSL-KDD数据集[9]删除了KDD99数据集中冗余数据,为病毒检测的实验准确性做出重要贡献。
2.2 基于深度学习的病毒检测原理
构建病毒检测模型的总体框架,分为3个步骤。
(1)数据预处理。将数据集(KDD99或NSL-KDD)[8]的符号型转化为数值型,再对数值型数据做归一化。
(2)数据特征提取。将归一化后的数据,作为模型训练的输入,对高维数据进行降维,在对其关键特征提取。在此步骤主要是针对模型的选择及优化,对过拟合等问题进行解决。
(3)分类识别。将学习到的病毒特征值對其分类,输入到分类器中与训练好的数据集(KDD99或 NSL-KDD)进行对比,识别出病毒类型。将识别出的病毒类型对用户做出相应的提示,如禁止访问等措施,保障了用户使用互联网的安全。
2.2.1 数据预处理
将“图像数据”(是指将异常代码以图像的形式来处理)转换成矩阵像素数据输入到神经网络。不同的“图像数据”有不同的规范,为了使模型精度提高,将对“图像数据”进行归一化处理,以及将“图像数据”压缩至[0,1]。采用以下方法为数据进行归一化处理[10]:
式中:a代表处理数据的特征属性值;MIN是该数据属性的最小值;MAX是该数据属性的最大值。
2.2.2 特征学习
对预处理后的病毒“图像数据”进行高维向低维的映
射[11],学习数据的特征。将选取好的网络模型进行优化操作,如加入正则化、优化算法;再对模型进行训练、调参等使模型提取特征更为精确;最后对其数据进行降噪处理,获取优质特征值。经过这一步特征提取和选择,并采用更加稳定的网络模型进行训练,学习更深层的病毒特征,病毒检测系统将会具有更高的病毒识别率。
2.2.3 病毒识别分类器   分类器的任务是将上层有效特征进行自学习,学习到特征,然后给出最后的检测结果。分类器有贝叶斯、Logistic回归、支持向量机(SVM)、Softmax等,常用于病毒分类的有Softmax,支持向量机等。
2.3 基于深度学习的病毒检测典型案例
2.3.1 案例一:基于深度信念网络的入侵检测模型[15]
本文阐述了一种基于深度信念网络的病毒检测模型,网络模型如图2所示。该模型主要用深度信念网络为特征降维,将学到的数据用支持SVM(支持向量机)的方法进行分类,并用NSL-KDD数据集评估。在实验中,保持SVM参数为默认值,用两层的受限玻尔兹曼机(RBM)作为深度信念网络的结构,将迭代次数设置为150;特征数量由高层到低层分别是4,13,41。实验结果见表1所列。通过实验发现,DBN-SVM的准确率比单个的SVM(支持向量机)和DBN(深度信念网络)高。在速度上,本文提出的深度学习模型DBN-SVM比传统单独的SVM识别速度要快,很大程度上提高了处理时间。总的来说,在准确率和高效性上,DBN-SVM都有突出的优势,能大幅提升对病毒检测的能力。
2.3.2 案例二:基于卷积神经网络的入侵检测算法[16]
贾凡等研究者对于病毒检测提出一个新的算法,将典型的卷积神经网络引入到病毒检测中,卷积神经网络模型如图3所示。利用卷积神经网络在处理图片时采用3维数据接收输入的数据,对高维数据的特征提取更为有效。根据特征的局部相关性提取特征,确保提取特征的准确率。该研究者提出的CNN网络模型囊括了3个卷积层、3个池化层、1个全连接层、1个分类层,经过CNN(卷积神经网络)提取特征后用Softmax分类器进行分类识别病毒类型,设置模型迭代次数为10。利用本文模型与传统模型对准确率(AC)、检测率(DR)和误报率(FA)三方面指标进行评估,比较结果如表2所示。结果显示,CNN模型在准确率和检测率中都高于传统方法,误报率相对下降很多。总之,CNN模型比其他传统方法对于病毒检测有较大的性能提升。
3 结 语
本文讨论了病毒检测的必要性、深度学习的基本方法及深度学习用于病毒检测的模型,研究分析各网络模型对于病毒检测的效果。在互联网和物联网的结合下,越来越多的数据被存储,个人信息需要被保护,但是病毒检测还未能发展成熟,如在线攻击意图识别算法、网络多步攻击识别算法等都有待研究。

推荐阅读