APP下载

基于集成降噪自编码的网络入侵多模式匹配算法设计

2020-07-13李青徐子闻

关键词:模式匹配分类器编码

李青,徐子闻

(1.上海海洋大学 信息化管理办公室,上海 201306; 2.上海杉达学院, 上海 201209)

0 引言

近些年来,在互联网技术迅猛发展下,网络在大众的日常工作和生活中起到了不可或缺的作用。正是因为网络的不断发展,带来的一系列问题也随之而来,导致大规模网络私有信息以及个人信息数据被破坏,亦或是被侵犯,使得网络安全问题变得越来越严重[1-3]。现在网络安全问题逐渐突出,大众越来越重视网络异常检测与防护。其中,入侵检测识别成为了该领域的一个研究热点,相关专家和学者纷纷投入到了网络入侵检测中,并获取了很多有优秀成果[4]。夏景明等[5]将改进随机森林法用在网络安全检测中,利用高斯混合模型聚类法实现数据分簇,为每个簇训练出不同随机森林分类器,根据这些已经训练完成的分类器实现网络入侵识别。其中,训练与测试数据使用的是NSL-KDD网络入侵集合,过程中先基于属性比率数据具备的特征识别提取法实现数据处理,再实行高斯混合分类,最后根据随机森林分类器实现分类结果的训练,得到最终的安全检测结果。朱建军等[6]将网络异常行为模式引到网络入侵识别特征提取中,将Modbus/TCP工业控制网络当作检测目标对象,利用深度解析其异常行为具体操作模式,得到通信流量入侵识别数据特征,且以去除冗余识别信息为目的,引入粗糙集理论法实现识别特征的属性约简,根据支持向量机法结合自适应遗传算法实现模型参数的优化,设计并构建基于RST-SVM的自学习入侵识别模型。朱亚东[7]将粗糙集理论与简化粒子群算法引入网络入侵检测中,根据粗糙集理论由入侵数据集合中筛选出分类效果比较好的简约特征集合。通过训练数据实现BP神经网络分类器的训练,同时根据改进之后的SPSO对神经网络权值与阈值参数的权值和阈值参数进行优化。在研究的最后,将提取到的特征当作输入,通过优化之后的BP神经网络实现了网络入侵分类检测。

面向网络入侵检测的方法和算法有很多,为了进一步提升入侵检测准确性和可靠性,笔者借鉴当前相关研究成果存在的优越性,提出并设计基于集成降噪自编码的网络入侵多模式匹配算法。

1 基于集成降噪自编码的网络入侵多模式匹配

为了提高网络入侵精确性,将集成降噪自编码网络和多模式匹配相结合,先通过降噪自编码网络形成分类器,实现网络入侵的初步识别,然后利用多模式匹配实现初步识别结果的最终匹配,完成网络入侵检测。

1.1 基于集成降噪自编码的网络入侵检测

①自编码网络AE

图1 自编码网络架构

该网络基本模型为三层前向网络架构,其中包含输入层X、中间层,即隐层Y,还有输出层Z,输入层与输出层的维数是相同的,隐藏层的维数比较小,图1为自编码网络架构。对AE的理解可划分成编码与解码两个阶段,该网络的核心思想为持续逼近恒等函数,隐藏层进行降维的过程中应该尽量完整地将特征信息保留下来[8]。

在编码阶段,归一化之后的n维输入向量x在非线性编码函数fθ下映射至m维隐藏层向量y,fθ表示形式为:

y=fθ(x)=s(Wx+b),

(1)

其中,θ={W,b}代表映射参数,W代表m×n维权重矩阵,b代表m维偏置向量,s代表编码网络非线性激活函数,一般情况下使用sigmoid函数,由此y也能够满足归一化的要求。

在解码阶段,m维的隐藏层向量y利用相同的方式反向重构成n维的向量z,其中非线性解码函数gθ′能够表示为:

z=gθ′(y)=s′(W′y+b′),

(2)

其中,θ′={W′,b′}描述的是解码映射参数,W′代表m×n维解码权重,b′代表n维偏置向量,s′代表解码网络中激活函数。

在自编码网络训练的整个过程,即为持续调节参数{θ,θ′}={W,b,W′,b′}尽量拟合为恒等函数,最小化x、z间重构误差L(x,z),一般L(x,z)可使用均方误差。其中,一个N次迭代训练的过程能够表示为:

(3)

在编码、解码后,自编码网络将x压缩成y然后重构成z。因维度m

综上AE模型能够非监督和具有自适应性地完成样本特征提取与降维操作。

② 降噪自编码

综合考虑到样本个体差异性和噪声对样本输入产生的影响,同一种类型的样本通常不会出现严格一致的特征。因此需要分类器有鲁棒性与泛化性能。基本的自编码网络训练直接将实际数据当作输入实行编码重构操作,由此在面向噪声干扰时也许会因过拟合现象对分类效果产生影响[9-10]。

利用降噪自编码DAE(denoising auto encoder),人为地向输入端添加噪声解决以上问题,在实践应用中可通过修正原始数据中部分数据缺失(masknoise),也就是任意造成输入缺失,即置为0。将修正完成的输入向量记作x′,那么DAE原理可表示为:

图2 降噪自编码结构示意图

(4)

训练DAE时,输入向量x′为带有人为噪声的数据,重构误差L(x,z)描述了编码向量y对实际数据x重构能力,详细见图2。就此可知,DAE目标为在扰动环境下对实际数据的重构能力,因此获取的特征具备非常好的鲁棒性与泛化性能[11]。

③ 栈式堆叠与贪婪训练操作

将多个DAE堆叠能够获取深层神经网络,进而提取出高维的深层特征。每当训练完成一个DAE,则编码部分就能够完成输入向量向隐藏层编码映射操作,由此仅需将编码当作DAE训练结果保留下来[12-13]。在已知DAE各个层次输入与输出均满足归一化的要求情况下,能够将一个DAE隐藏层编码向量当作另外一个DAE输入,实现进一步编码与降维操作。将原始的输入样本记作x0,第i层DAE编码结果记作xi,那么各层DAE编码表示形式如下:

xi=fθi(xi-1),i=1,2,…,N。

(5)

图3 SDAE分类器结构示意图

通过上述方式层层堆叠获取的模型即为栈式降噪自编码SDAE,针对这样的深层网络实行整体训练会使梯度消失,由此需要通过逐层贪婪原则,针对各个层次DAE实行单独训练,同时保障重构误差能够最小化。如果每层DAE编码均可以得到相对好的重构效果,那么SDAE当作整体即可完成高维特征深度提取以及降维操作,详细见图3。

初始化SDAE网络参数,训练第一层DAE,将其隐含层作为第2个DAE的输入,并进行同样的训练,直到第n层DAE训练完成,将训练好的n层DAE进行堆叠形成SDAE,向SDAE网络顶层添加输出层,利用样本数据和标签对整个网络进行有监督的微调。

④ 分类器的预训练及微调整

传统机器学习基本理念是由原始数据至分类要通过特征提取与状态分类这两个步骤,以样本为依据的机器学习一般在分类阶段,而特征提取是训练模型前的一个预处理操作。在此,逐层贪婪训练一样可以完成数据样本特征提取与降维操作,主要区别为SDAE训练过程中将用到样本数据,因此此为一种自适应性很强的非监督预训练。

当SDAE将特征输出后与分类模型互连,就能够完成样本分类。举例说明:将softmax逻辑回归分类当作输出,能够获取独热编码描述分类结果的一个分类器,见图3。综上,N分类的独热编码能够表示为:

(6)

根据逐层贪婪训练获取的分类器已然可以进行相对精准的分类,然而逐层最优无法保障堆叠后分类器总体最佳。这时假设有通过分类标签的数据,则能够根据BP等算法针对整个分类器实行监督式地训练,进而实现进一步微调整[14-15]。由于将自编码预训练当作依据,这时的BP训练具备相对好的初值当作基础,解决陷入局部极值的问题。

⑤ 深度学习下网络入侵检测

将SDAE深度分类模型用在网络入侵检测中。分析网络异常一般将数据当作对象。SDAE能够将高维特征当作出发点实现状态检测,由此能够直接将数据序列当作分类器输入,进而最大程度地将样本特征信息保留了下来,提高了检测准确率与泛化性能。

综合上述内容,将网络数据序列当作输入,将独热分类编码当作输出的SDAE分类器,能够完成基于深度学习的网络入侵初步检测。

1.2 基于多模式匹配的入侵诊断

将多模式匹配算法引入至网络入侵检测中,将上述初步检测结果当作基础,实现入侵诊断。

对于任意X″和Y″字符串,根据D(X″,Y″)描述两个字符串间距离,该距离值代表字符串C转换为字符串Y″时编辑的最少次数。对应编辑法是X″中字符删除、替换以及插入操作。由此,X″和Y″之间距离具备对称性以及非负性,同时可以满足三角不等式。

除了上述内容,定义某长度是l″、z″的模式串pat[1:l″]与text[1:z″],其中z″>l″,同时有某正整数(k∈[0,m″])。在D(X″,Y″)≤k下,pat在text中有的所有匹配的终止位置i(i∈[1,n″])。假设字符均来自于有限字典表∑m″,那么∑n″描述了某长度是n″的字符串,字符串根据∑内符号构成。综上,能够利用函数f″值计算完成近似串匹配,其中允许出现k差别。

f″=∑m″∑n″{0,1}n″-m″+k-1,

(7)

其中f″(pat,text,k)=cm″-kcm″-k+1…cn″,同时在1

(8)

最后,根据动态规划法,利用构建(m″+1)×(n″+1)的编辑距离矩阵D,同时对各个元素值进行求解实现近似串匹配。计算方法如下所示:

(9)

将有限自动机作为依据的多模式匹配算法,也就是AC算法,通过该算法运行时预处理阶段failure、output以及goto函数能够完成入侵数据的匹配和遍历,以此可以确定匹配数据的位置和与之有关的所有项,进而实现网络入侵模式的最终匹配。

2 实验结果与分析

为验证基于集成降噪自编码的网络入侵多模式匹配算法有效性,进行下列实验。

实验硬件环境:1台主机服务器,PC机,详细配置如下:处理器为P4 2.4 G,内存为2 G,硬盘的容量为500 G。

实验软件环境:操作系统为Windows 10 Server。

数据源和预处理:输入8 530条用户行为日志信息数据,并对原始数据实行整理和清洗,最终将4 500条有效数据用在实验中。

负载均衡方差反映了时刻各检测节点的实际所分配的负载比重与理想情况下的负载比重的平均差距,可以衡量多模式匹配算法的合理性和有效性。设定t时刻系统的负载均衡方差为:

(10)

式中,Bi表示第i个检测节点的处理能力在系统总处理能力中所占的比重,Bi(t)表示实际情况下t时刻第i个检测节点所分得的负载量占总负载量的比重。

负载均衡方差的值越接近,说明各检测节点所分得的负载比重与理想情况下的负载比重越接近,即我们的负载均衡机制的性能越好。

由图4可以看出,本文方法随着接收数据包的增多,负载均衡方差的值呈下降趋势,始终保持在0.85~1.0。主要原因在于本文方法文中算法分为两步实现网络入侵检测,利用集成降噪自编码网络实现网络入侵的初步检测,通过多模式匹配实现了入侵的匹配诊断,解决了传统机器学习法在提取样本特征时的依赖性,同时高效克服了局部极值等一系列问题,提高了算法的检测性能和泛化性能,增强了网络入侵检测精确性。

图4 负载均衡方差仿真结果

匹配时间对比结果如表1所示,对应的直方图如图5所示。

表1 规则文件数不同时的匹配时间

由表1可以看出,不同规则文件数条件下,本文方法的匹配时间最短,为更直观观察匹配时间之间的关系,由表1匹配时间数据绘制图5。

图5 规则文件数不同时匹配时间结果

由上述可以看出,随规则数的增加,两种模式匹配算法的匹配速度都有所降低,本文方法的匹配时间最短,主要原因在于本文方法针对深层网络实行整体训练会使梯度消失,通过逐层贪婪原则,针对各个层次DAE实行单独训练,保障重构误差能够最小化,减少匹配时间。

访问文本串字符的数目表如表2所示,匹配结果对比如图6所示。

表2 不同方法访问文本串字符的数目表

由表2可以看出,随着模式串数目增加,访问文本串字符增加,且本文方法的字符串数目最多,证明对于网络入侵匹配效果较好,为更直观观察匹配结果,由表2内容绘制匹配结果对比图如图6所示。

图6 某次匹配的结果对比

由上述可以看出,不管模式串数目的多少,访问文本串中字符的数目增长幅度很小,几乎成直线,而且数目远小于文本串字符的总数。

3 结论

随着网络应用范围越来越广泛,网络安全问题必须予以重视。提出基于集成降噪自编码的网络入侵多模式匹配算法,高效结合了降噪自编码网络和多模式匹配算法的优势,在实验中取得了很好的应用效果。下一步可结合关联规则以及决策树等模型,实现网络数据的进一步挖掘,此种混合形式的数据挖掘模型有待在接下来的研究中进一步完善。

猜你喜欢

模式匹配分类器编码
基于SAR-SIFT和快速稀疏编码的合成孔径雷达图像配准
《全元诗》未编码疑难字考辨十五则
子带编码在图像压缩编码中的应用
基于模式匹配的计算机网络入侵防御系统
具有间隙约束的模式匹配的研究进展
Genome and healthcare
OIP-IOS运作与定价模式匹配的因素、机理、机制问题
基于差异性测度的遥感自适应分类器选择
基于实例的强分类器快速集成方法
基于散列函数的模式匹配算法