深度自编码网络的集成学习ICPS入侵检测模型
摘要
工业信息物理系统(IIS)是当前智能制造领域的重要研究方向之一
0****引言
近年来,在自动化控制技术及相关领域的快速发展推动下
该系统由感知、控制与决策三个组成部分构成的分布式系统,在协调各模块的操作流程时实现了对自身状态的感知、判断与调控功能。其中确保模块间通信通道的安全性具有重要性。入侵检测系统(IDS)作为ICPS体系结构中继网络防火墙之后的重要安全防护层,在实时监控主机及网络活动的基础上完成潜在威胁事件的快速响应任务[7]。该技术可划分为两类:一类是基于网络流量分析的IDS,在对主控中心与现场站点或设备之间的通信流量特征进行提取后建立相应的威胁评估模型;另一类则是以应用行为监控为基础的传统IDS方法,在通过对历史记录服务器中的应用日志进行分析来识别潜在的安全威胁情况。值得注意的是不同来源的数据可以通过多种远程监控设备进行采集,并根据实际需求灵活配置其部署位置以提升系统的扩展性
针对ICPS平台的入侵检测系统,在当前的研究中仍面临诸多挑战
现有文献从多个维度提出了一系列提升检测精度相关性能的技术方案。然而,在ICPS中网络数据表现出复杂非线性关系特征的同时,并未显著提升检测系统性能效果。针对以下问题仍需进行深入研究:其一,在ICPS中网络数据表现出复杂非线性关系特征进而导致数据集中各特征属性间的相关性水平相对较低;因而传统线性降维策略(如主成分分析法PCA和线性判别分析法LDA)难以有效去除高度相关的特征因子。其二,在工业场景下采集的网络数据相比传统IT网络环境更具严峻的噪声干扰特性;这可能导致采集到的数据出现异常值分布偏差甚至出现部分属性值缺失等情况;而现有相关技术方案[8~12]对此类问题处理效果尚不理想。为此本研究将重点探索深度学习混合策略在检测系统中的应用前景;并提出一种基于多层正则化自编码器栈式堆叠结构构建深度自编码网络模型的新方案;以增强系统在复杂噪声环境下的鲁棒感知能力;同时通过集成学习方法结合多组异构深度信念网并引入分类器优化降维后的特征分类识别流程;以降低对单一深度信念网参数化设计的高度依赖程度。
1基于DAN-EDBNs的ICPS****入侵检测模型
通过融合多层深度信念网络(DBN)构建集成深度信念网络(EDBNs)结构,并结合深度自编码网络(DAN)模型的基础上,开发基于DAN与EDBNs整合的ICPS入侵检测系统架构。该系统架构在图1中展示。
|

|
|---|
|图 1 基于DAN-EDBNs的ICPS入侵检测模型框架图Fig.1 Framework of ICPS intrusion detection model based on DAN-EDBNs|
|图选项|
在训练过程中, 首先对从SCADA系统获取原始通信流量数据实施预处理过程, 然后将这些预处理后的特征数据导入深度自编码器网络(DAN)用于特征提取和信息降维. DAN架构包含随机映射层与去噪自编码器组件, 能够有效提升信号质量并实现潜在表征学习. 接着, 将经降维处理后标注信息的数据集构建为经验驱动贝叶斯网络(EDBNs)的学习样本集. 之后, 采用基于 Bootstrap 的 Bagging 技术对手动分类器进行样本分层划分, 通过循环迭代的方式不断优化各子网络性能, 并固定优化后的参数值用于后续构建过程. 最终完成DAE与RBM融合结构的整体搭建工作, 并利用监督学习算法对整合后的神经网络权重参数展开优化调整.
在测试环节中进行实验。将预处理后的数据输入到DAN-EDBNs模型中, 经过其输出层后, 该模型会自动完成二分类或多分类的任务。最后, 利用投票机制Voting, 模型会综合各子网络的结果作出最终预测。该入侵检测算法的性能主要基于准确率Acc和漏错率FN这两个指标进行评估.
该系统采用基于DAN-EDBNs架构的入侵检测模型,在其核心构建中包含两个关键模块:一是用于消除数据冗余并实现降维的数据处理机制;二是另一个重要组成部分是集成分类器系统,其主要功能是对经过处理的数据进行识别分类。
2 DAN****数据降维模型
为了有效处理高维非线性网络数据冗余问题,在本研究中采用DAN技术,并通过特征降维技术降低数据维度以提升模型性能。该方法基于正则化自编码器和去噪自编码器的延伸构建而成的深度神经网络架构具有显著优势。相较于传统深度神经网络而言,DAN采用了逐层贪婪算法[13-15],通过单独对各层神经网络进行训练实现了更好的泛化能力,从而有效避免了"梯度消失"现象带来的模型收敛困难的问题.
2.1 DAN****模型
基于多个降噪自编码网络的堆叠结构形成深度神经网络模型DAN. 该模型通过逐层减少隐藏层神经元的数量, 能够用较少的高阶抽象特征来表征原始低维数据特征, 从而实现了降维去噪的目的.
2.1.1****正则自编码网络
基于概率模型的无监督学习方法下发展起来的一种改进型神经网络架构。
AN是一种由概率统计模型构建而成、通过非监督式学习优化数据表示的技术。
其主要目标在于通过约束隐藏层 h 的复杂度实现有效的数据降维和噪声抑制。
特别地,在这种情况下(即输入与隐层之间的连接数目少于输入特征数),该种自编码结构通常被称作欠参数化的自编码器。
AN主要由编码器和解码器两部分组成,AN结构如图 2所示.
|

|
|---|
|图 2 AN结构Fig.2 AN structure|
|图选项|
- AN结构组成描述
AN的输入样本数据集为
|

|(1)|
|---|---|
式中,** x(i)=[0, 1]1× n , i ∈[1, m]. ** x(i)为第 i 个 n 维样本实例, m 为样本总数.
AN的隐藏层为
|

|(2)|
|---|---|
式中:** h(i)=[0, 1]1× l , i ∈[1, m]. ** h(i)为第 i 个样本隐藏层激活后的 l 维输出值.
AN的输出层为
|

|(3)|
|---|---|
式中:

=[0, 1]1× n , i ∈[1, m].

为第i个样本输出层激活后的 n 维输出值即重构输入值.
- AN编码与解码
AN编码分为两个阶段:第一阶段利用编码函数将输入样本集合X = {X(1), X(2), …, X(m)} 从输入层传递到隐含层;第二阶段经激活函数作用后将其隐含层输出转化为_l_-维向量空间中的特征向量。其编码过程可用公式表示为
|

|(4)|
|---|---|
式中,
通过编码函数 f(·)完成了第一步任务,
通过激活函数 S(·)完成了第二步任务,
其中 θ₁={w, b} 用于表示编码网络的参数集合,
其中 w 和 b 分别代表输入层到隐藏层的编码权重项和隐藏层的偏置项。
AN解密同样包含两个关键步骤:首先,在第一阶段中,数据_h_=[h(1),h(2),…,h(m)]通过传递机制从隐藏层被输出层接收并处理;其次,在第二阶段中,利用激活函数模块对输出层处理后的信息进行转换和重构以恢复原始n维向量特征。该过程可用数学表达式表示如下:
|

|(5)|
|---|---|
式中,解码函数** g** (·)完成第一步,激活函数** S** (·)完成第二步,** θ** 2=(

,

)表示解码网络参数,

和

分别表示隐藏层到输出层的编码权重项和输出层的偏置项.
- AN学习目标及正则化
AN的学习目标是找到一组最优参数** θ** =(θ 1,* θ** 2),使得输入值** x** 和重构值

尽可能地接近,可以通过最小化目标函数 L 来寻找最优参数.
原始AN目标函数 L 为
|

|(6)|
|---|---|
其中,
|

|(7)|
|---|---|
为了避免解码过程中输出数据直接复制输入数据, 本研究采用KL散度作为评估工具来衡量输入与重构数据之间的分布差异性. 通过向目标函数(6)中加入稀疏化惩罚项以实现这一目的, 最终获得了对抗网络的目标函数 L s.
|

|(8)|
|---|---|
其中, β 表示稀疏性惩罚项的权重,KL(ρ ‖

)为稀疏惩罚项:
|

|(9)|
|---|---|
其中,
|

|(10)|
|---|---|
式中, ρ 表示稀疏性参数,

即为隐藏层第 k 个神经元对第 i 个输入的加权平均激活值。根据式(10),定义为AN网络在输入** _x**(i)时的隐藏层第 k 个神经元激活值。将具有相同下标的_m_个样本在该神经元上的激活值进行求均处理,则可得到该位置对应的输出特征活值。

.
在神经网络的训练阶段进行时,当神经元的数量与网络层的数量增加时,可能会导致过拟合现象的发生.基于式(8),通过引入 L 1范数作为惩罚项,有助于实现对拟合曲线的稳定化.改进后的目标函数 _L_r 值为:
|

|(11)|
|---|---|
式中,

表示 L 1正则化项,

为全部权重项的绝对值和, λ 表示正则化系数, m 为样本总数.
2.1.2****降噪自编码网络
在工业信息物理系统中,传感器采集的数据不可避免地会受到工业环境噪声的影响。这种影响会导致部分数据信息的真实性和完整性受到影响。为了应对这一挑战,在传统自编码网络架构中引入随机映射层(Random Mapping Layer),通过该层对输入数据进行特殊处理和映射操作。基于此原理构建出一种新型的降噪自编码网络(De-noising Auto-Encoder Network, DAE)[15-16]。其具体结构如图3所示。
|

|
|---|
|图 3 降噪自编码网络Fig.3 De-noising AN|
|图选项|
图 3中,** x** 为原始数据实例,条件分布 qD(

|x)表示在给定数据** x** 下产生损坏样本

具体而言,在训练过程中,我们按照服从 qD 分布的方式从输入数据 x 中随机选择一部分神经元,并将其激活值设为0,从而生成加入噪声后的输入数据。

;然后,通过包含噪声数据的

求得编码数据** h** = ** S(f** (

))和解码数据

= ** S(g** (h));最后,通过** x** 和

求得重构误差** J(x**

),利用梯度下降法最小化重构误差得到最优的拟合数据

.
在正则化自编码网络中加入随机映射层后的优化目标函数如下式:
|

|(12)|
|---|---|
该系统采用损坏数据进行输入,并经过训练后用于预测原始未受损样本数据作为输出。通过具有降噪功能的网络架构设计,在学习过程中所获得的关键特征表现得更加稳定可靠,在工业环境中的抗噪声能力显著提升。
2.1.3****深度自编码网络
深度自编码器结构通过正则自编码网络与降噪自动编码器的逐步拓展形成一种融合了正则化与去噪能力的叠加型架构,在图4中展示了该模型的具体组织形式。
|

|
|---|
|图 4 深度自编码网络结构Fig.4 Deep auto-encoder network structure|
|图选项|
如图4所示,在使用DAE2时所采用的是来自DAE1输出结果为_h_1的部分;其中前一层网络生成的结果被用作后续层的基础。通过这种方式能够有效缓解深度神经网络中梯度消失的问题;最终得到去冗余后的降维数据为_y_.
2.2 DAN****模型训练
DAN的训练分为两个主要阶段:预训练与微调。在预训练阶段中,采用逐层贪婪算法按层次顺序对各DAE网络进行前向学习;直至达到预先设定的最大迭代次数后,则固定各DAE网络的参数设置以完成初步模型构建。随后进入微调阶段,在此过程中基于BP算法进行反向传播学习,并通过优化求解使模型输出与预期目标之间的误差最小化[14, 17-18]。
- 预训练
该架构整合了多组具有降噪特性的自编码器网络构建而成。其训练机制通过分阶段优化各子模型实现对主模型参数的有效更新。具体而言,在每一轮训练中,系统会依次对各个子模型进行参数调整以优化整体性能表现。以单个DAE组件的优化流程为例展开说明:首先系统会对输入数据进行预处理并去除部分噪声干扰;随后通过迭代更新逐步消除噪声干扰最终实现高质量特征的提取与重建。
(1) 初始化
设定模型参数初始化** θ** 1=(w 1,** b** 1)并设定最大迭代步数_T_。其中_w_1代表初始权重值,** b** 1为隐层偏置参数,** T指定最大迭代步数。
(2) 添加噪声数据
利用随机映射机制(基于二项分布函数)向输入层实例** x** 引入噪声数据

(x ~qD(| ** x**)).
(3) 计算隐藏层输出
计算隐藏层神经元的输出,每个隐藏层的神经元输出可根据式(4)计算得出.
(4) 重构输入
基于隐藏层神经元的输出构建重构输入层,并通过式(5)进行计算得到其特征值
(5) 计算重构误差
由原始输入特征** x** 和重构后的输入特征

,根据式(12)可以计算得到重构误差.
(6) 更新模型参数
使用梯度下降法最小化重构误差,更新模型参数 θ 1见式(13)和式(14):
| (13) |
|---|
| (14) |
|---|
式中, α 表示学习率.
(7) 结束当前层DAE训练
将隐藏层的输出作为下个DAE的输入,重复步骤1)~6)直到整个DAN训练结束.
- 微调
以BP算法作为DAN模型的微调方案,在具体实现过程中遵循以下步骤:首先介绍BP算法的基本原理:通过计算当前输出层存在的误差信息来反推出直接前一层存在的误差信息;接着利用这些信息继续推算出更深层上各层误差信息,并逐层反向传播;最终可获得各层相应的误差估计值;随后通过优化模型参数设置以期逐步降低整体预测系统的偏差度;在这一过程中选择均方误差(MSE)作优化目标函数,并详细阐述了微调过程的具体步骤。
(1) 正向传播过程,将** x** 作为输入数据,求得重构表示

.
(2) 基于误差逆向传播机制,在深度学习模型训练过程中采用梯度下降算法对权值和偏置参数进行逆向更新计算的具体步骤包括以下内容:首先初始化模型参数;然后在正向传播过程中计算预测值;接着基于预测结果与真实标签之间的误差信号进行反向传播;随后通过梯度下降算法更新各层网络的权值和偏置参数以最小化损失函数;最后重复上述过程直至满足收敛条件或达到预设训练次数。
① 计算输出层神经元梯度项:输出层的梯度项** g** k 的计算式见下:
| (15) |
|---|
式中,

k 和** x** k 分别为输出层第k个神经元的重构值和真实值.
② 计算隐藏层神经元梯度项:隐藏层的神经元梯度项计算见式(16):
| (16) |
|---|
式中,

h 表示隐藏层中第 h 个神经元的输出值,
而 w_hk| 则代表了连接隐藏层第 _h| 某些神经元与输出层第 _k| 某些神经元之间的权重系数。
③ 更新模型参数** w** 和** b** ,权重值和偏置值的更新公式如下式(17)、式(18):
|

|(17)|
|---|---|
|

|(18)|
|---|---|
式中, λ 为学习率.
(3) 重复步骤①、②,直至达到最大迭代次数.
3****集成分类器构造
为了实现经过DAN模型数据降维后特征的分类识别目标而引入DBN架构。然而尽管其具备强大的特征提取与数据挖掘能力,在实际应用中发现其必须人工选择最佳网络层数与神经元数量(即确定其网络架构)以及调节学习率与动量等关键参数(即寻找其最佳超参数配置),且通常情况下这种最佳配置并非固定的[13].由此可知,在实际应用中寻找最佳的DBN架构及其超参数配置往往耗时费力.因此研究一种能够有效避免单独依赖单一DBN模型最佳配置的方法就显得尤为重要。
3.1 DBN
DBN由一系列受限玻尔茨机器和反向传播神经网络按层次叠置而成;各层间的输出传递至下一层RBM使用作为输入;其中各组件及其相互关系如图5所示。
|

|
|---|
|图 5 RBM和DBN结构图Fig.5 RBM and DBN structure diagram|
|图选项|
3.1.1 RBM
RBM是由基于能量函数构建的无向图模型构成,并由两层结构组成:随机可见层和随机隐藏层[19](如图5(a)所示)。假设RBM具有_r_1个可见单元以及_r_2个隐藏单元,则分别用向量_v_=[v₁,v₂,…,v_{r₁}]和向量_h_=[h_{1₁},h_{1₂},…,h_{₁_{r₂}}}来表示;对于任一给定状态(v,h),RBM所具有的能量可定义为
|

|(19)|
|---|---|
在式(19)中,变量θ由以下部分组成:θ=[w_i, h_j, a_i, b₁ⱼ]。其中w_i,h_j表示为可见单元v_i与隐藏单元h₁ⱼ之间的连接权重;a_i即为可见单元i的偏置值;而b₁ⱼ则代表第1层隐藏层中第j个单元的偏置值。当参数θ确定时,根据式(19)可以推导出(v,h)这对变量的联合概率密度分布形式如式(20)所示:
|

|(20)|
|---|---|
其中,** Z(θ)为归一化因子,即(v** ,** h**)为所有可能组合情况下的能量总和.
基于式(20),我们能够得出观测数据 ** v ** 的概率分布的具体值。具体而言,在联合概率密度函数 ** P(** v, ** h|θ)** 中的边缘分布即为所求的概率密度函数形式。如上文所述,请参考式(21)。
|

|(21)|
|---|---|
基于其层间全连接与层内无连接的独特结构特征,在给定可见层状态的情况下
|

|(22)|
|---|---|
式中, σ(·)表示激活函数.
在已知隐藏层状态的情况下,在考虑各可见层单元之间的相互独立性后,在此情况下当前第 i 个可见层单元处于激活状态的概率为:
|

|(23)|
|---|---|
式中, σ(·)表示激活函数.
3.1.2 DBN****训练过程
DBN模型训练过程即为逐层训练RBM的过程,训练步骤如下所示:
- 底层RBM训练
(1) 初始化模型参数
设定模型参数 θ₁=(W₁, a, b₁),其中权重 W₁ 的初始取值范围限定在区间 (0,1) 内;同时将可见层偏置 a 和隐藏层偏置 b₁ 的初始赋值均为零;并规定最大迭代次数设定为 T 次。
(2) RBM对比散度算法
① 前向计算隐藏层输出
在可观察层在_c₁次更新时刻下(即时间点_c₁),输入值_V被定义为一个k维向量(v₁(c₁), v₂(c₁), …, vk(c₁));其中_wi,j代表了可观察层_V中的第_i个神经元与其前向隐含层_H1中的第_j个神经元之间的连接权重。
|

|(24)|
|---|---|
隐藏层神经元 h 1 j 在第 c 1次更新时被激活概率即隐藏层输出值为
|

|(25)|
|---|---|
② 反向重构可见层输出
基于隐藏层的输出来重构可见层的输入,在第_c_1次更新阶段, 可见层神经元vi(c_1)其输入值被重构为
|

|(26)|
|---|---|
改写说明
|

|(27)|
|---|---|
③ 重构前向隐藏层输出
从可见层输出开始进一步 reconstructing 隐藏层,在该神经元 h{1,j} 的再次被激活概率上(即其输出值即为)。这表明...
|

|(28)|
|---|---|
式中,

表示第 c 1次更新时前向隐藏层重构后的输入.
④ 更新模型参数
可见层和隐藏层重构后,更新后的模型参数** θ** 1可按下式得到:
|

|(29)|
|---|---|
|

|(30)|
|---|---|
|

|(31)|
|---|---|
式中: λ 表示学习率.
当c 1 < T 时,将更新后的模型参数作为初始值重复步骤(2),当 c 1=T 时,则执行步骤(3).
(3) 结束RBM训练
输出底层RBM模型参数,即** θ** 1=(W 1,** a** ,** b** 1).
- DBN训练
(1) DBN预训练
假定深度信念网络(DBN)由三层受限玻尔兹曼机(RBM)依次堆叠构成,在每个RBMs的学习过程中均遵循步骤(1)。其中上一层RBMs的隐藏层输出会被传递至下一层RBMs的学习过程作为输入信号。当计算完成最后一层RBM的学习并获得模型参数θ3=(w^3, b^2, b^3)时,则完成DBN模型的整体预训练阶段。
(2) DBN模型微调
基于监督学习的DBN参数微调阶段具有显著的效果。其具有相似性的DAN参数微调过程在方法上具有高度的一致性。同时运用了反向传播算法对模型的参数进行逆向传播更新。该优化目标函数基于交叉熵误差函数展开计算。
|

|(32)|
|---|---|
式中,

在DBN网络中,变量oi(k)与hj(k)分别代表第k个样本对应的输出层第i个神经元的预测激活值与真实类别标签.
通过交叉熵误差函数 J 对各网络层间的权重参数及其对应的偏差量进行求导运算, 可以用于动态更新这些网络层的权重参数和偏差量. 当 J 收敛或达到预设的最大迭代次数时, 我们将这些网络层的权重参数及其对应的偏差量固定下来, 进而完成整个系统的微调优化过程.
3.2 EDBNs
EDBN模型通过集成DBN结构实现了分类任务。假设训练数据集的大小为_N_个样本,在应用自助采样法生成_m_个子集时,每个子集均包含_N_个样本(允许重复)。随后,在每个子集中分别训练_m_组具有不同超参数配置的DBN模型。即可获得_m_个基于DBN的分类器模型;最后通过投票机制确定最终预测结果。其中_N_表示训练数据集的大小,请参考算法1获取详细实现流程。
| 算法****1 Bagging算法伪代码 |
|---|
| 输入:训练集 S ={(x 1, y 1),(x 2, y 2),…,(x N , yN)},其中** x** k ∈R l ;集成中基分类器的个数 m |
过程:
- 对于 t 从 1 到 m 进行循环操作 //执行 m 次循环以生成 m 个基分类器
- 定义 St 表示为从数据集 S 中使用 Bootstrap 方法采样的样本集(大小为 N)
- 创建基分类器模型并将其训练 //生成第_t_t个基分类器
- 循环结束
- 定义函数 Sample_with_Bootstrap(S, N) 的实现方法
- 初始化集合 I 为空集合//用于存储采样结果
- 对于循环次数从 1 到 N:
- 随机选取索引值并加入到集合_I_I中 //将随机选择的数据点添加到采样集合中
- 返回最终生成的采样集合_I_I//完成一次 Bootstrap 抽样过程
输出:返回生成的结果集_I_I

|
表选项
4****仿真及结果分析
为评估DAN-EDBNs入侵检测算法的可行性,在获取自天然气管道SCADA系统的实际运行数据的基础上进行测试数据集构建。该系统包含连接压缩机的小型气密管道、配备压力计和电磁阀控制减压阀的结构,并采用PID控制机制维持管道内气体压力[20]。测试数据集包含26种特征属性和1个标签属性共27个属性字段。标签类型划分为8大类:Normal(正常)、NMRI(朴素恶意响应注入攻击)、CMRI(恶意响应注入攻击)、MSCI(恶意状态指令注入攻击)、MPCI(恶意参数指令注入攻击)、MFCI(恶意功能代码注入攻击)、DOS(拒绝服务攻击)和Reco (侦察攻击)等类别。实验运行环境设置在Inter Core i5-9300H CPU配置下运行16GB内存,并搭配GTX-1650 GPU硬件支持,在Windows10操作系统下完成Python 3.6语言环境下的仿真实验工作。算法基于深度学习框架Tensorflow-GPU 2.3.0构建模型架构并实现,在准确率Acc的基础上引入漏报率FN作为性能评估指标(FN指样本中异常流量被误判为正常流量的概率)。同时采用训练时间Tr与测试时间Te两个维度量化评估算法性能复杂度特征
本研究涉及的数据集共计80 000组样本。这些样本按照图6所示的数据分布情况分为不同类别。为了科学合理地进行建模与评估,在实验过程中将所有样本划分为训练阶段、优化阶段以及测试阶段三个子集,并采用8∶1∶1的比例进行划分。具体而言,在训练阶段将所有样本输入到IDS模型中完成初始学习任务;在优化阶段通过调整 IDS 模型的关键超参数进一步提升其性能表现;而测试阶段则评估 IDS 模型在识别网络攻击方面的准确率及其泛化能力。值得注意的是,在该过程中所涉及的主要参数主要包括各层神经网络的权重系数及其偏置项等基本要素;而超参数的选择则涵盖了网络深度(DAN及DBN层数)、稀疏度指标以及迭代次数设置等多个关键指标。
|

|
|---|
|图 6 样本数据分布图Fig.6 Sample data distribution diagram|
|图选项|
4.1****实验过程
原始数据首先经过预处理及归一化(采用min-max归一化)处理后得到一批去标签后的64 000组样本数据,并按批次输入到DAN模型中完成预训练任务;在此过程中,通过微调DAN架构中最后一层正则降噪自编码网络隐层输出与真实值之间的误差来优化模型性能;随后采用自助采样法从DAN降维后的数据集中获取 m 批样本量均为80 000的数据集;基于此样本量分别对不同参数设置下的DBN网络进行训练以获得最优模型;最后通过Bagging集成方法结合 m 个最优DBN网络模型并运用投票机制确定最终预测结果
在训练DAN-EDBNs模型的过程中,在完成参数优化这一关键环节后才进行最终测试。由于现有的参数优化方法多缺乏自动化支持,在实际操作中我们不得不采用经验试错的方式逐步调试各个参数设置直至获得最佳模型性能。具体而言DAN网络的初始配置包括:网络深度设定为2层;学习率设为0.02;L1正则化系数指定为0.01;稀疏惩罚因子β确定为0.15以及稀疏度控制参数ρ设定为0.05;而EDBN网络则初始化如下:集成DBN的数量设定为3个;每个DBN网络深度均为3层;学习率选择为0.001;总训练周期设定为100代,并经过50次微调以优化模型性能。
以上述的参数设置为例,DAN-EDBNs的训练及验证过程如下:
配置模型的基本参数及其超参数设置后, 按批次输入数据, 每批次输入100组数据. 在每一批次的数据经CD算法处理完成后, 将相应地更新一次权重系数及偏置项. 当达成了设定的最大迭代轮数或者当前预测结果与真实标签之间的误差已降至预设阈值时, 将触发反向传播优化过程以调整各层权重系数及偏置项. 这一过程将在设定的最大微调轮数限制下完成之后, 输出一个64,
DAN训练完成后,在降维后的数据集中运用自助采样法提取三个容量均为64 000的数据集_S_1、_S_2和_S_3。随后分别利用这三个数据集对具有不同超参数配置的DBNs进行训练,请参考第3.1.2节的具体步骤。待各DBN均达到最佳性能时,则固定相应的模型参数并运用Bagging技术对不同配置下的DBNs进行集成;最终通过投票机制综合各模型预测结果以获得最终预测值结果。至此完成IDS模型的构建与训练工作
完成对IDS模型的训练后, 将经过预处理和归一化的验证集数据输入至已建立的IDS模型中, 基于固定设置的模型参数计算出准确率(Acc)、误报率(FN)等关键性能指标数值. 实验结果表明, IDS模型具有良好的泛化能力, 可以为入侵检测系统提供可靠的测试支持.
4.2****仿真结果及分析
为了评估所建立的模型识别异常流量性能, 本研究分别进行了两组评估:第一组是在将样本流量类型划分为Normal(正常)与Anomalous(异常)的情况下测定其分类能力;第二组是在将异常流量细分为NMRI、CMRI、MSCI、MPCI、MFCI六个类别以及DOS与Reco两类攻击时, 测定其多分类场景下的分类能力。通过对比实验分析, 在不同模型参数及网络结构设计下所测得的各项性能指标均得到了验证与支持
4.2.1****数据降维结果分析
基于DAN网络深度设置为2,并搭配学习率设定为0.02的情况下,默认策略下L₁范数的惩罚系数被指定为0.01;同时为了进一步优化模型性能,在稀疏惩罚因子 β 上选择了较为宽松的值(即设定值定在了较高的水平),而相对较小的稀疏参数 ρ 则有助于维持模型整体复杂度不至于过高。在此基础上,在微调过程中分别采用了预训练与微调并行的方法:具体而言,在每次实验中仅调整单一相关参数即可获得理想效果;具体结果可在表1至表5中查看。
数据表1:多种网络架构下的误差指标
| 序号 | 神经元结构 | 误差值 |
|---|---|---|
| 1 | 30-10 | 0.002 555 |
| 2 | 40-10 | 0.054 184 |
| 3 | 40-20 | 0.004 713 |
| 4 | 40-20-10 | 0.055 624 |
| 5 | 40-30-20-10 | 0.056 387 |
表选项
Table 2: Various levels of pre-training and fine-tuning rounds based on their error magnitudes Tab.2 Errors under different pre-training and fine-tuning rounds
| 序号 | 训练轮数—微调轮数 | 误差值 |
|---|---|---|
| 1 | 100-50 | 0.002 555 |
| 2 | 100-100 | 0.002 054 |
| 3 | 100-25 | 0.003 525 |
| 4 | 200-50 | 0.002 856 |
| 5 | 50-50 | 0.004 032 |
| 6 | 200-200 | 0.002 568 |
表选项
表 3 不同 β 和 ρ 值下的误差值Tab.3 Errors under different network structure
| 序号 | β 、 ρ | 误差值 |
|---|---|---|
| 1 | 0.10、0.05 | 0.002 054 |
| 2 | 0.20、0.05 | 0.003 130 |
| 3 | 0.25、0.05 | 0.003 252 |
| 4 | 0.10、0.10 | 0.001 988 |
| 5 | 0.15、0.10 | 0.003 215 |
| 6 | 0.20、0.10 | 0.004 030 |
表选项
表格4中不同 _L_1正则化系数值对应的误差值
| 序号 | L 1正则化系数 | 误差值 |
|---|---|---|
| 1 | 0.005 | 0.002 236 |
| 2 | 0.010 | 0.001 988 |
| 3 | 0.015 | 0.003 214 |
| 4 | 0.020 | 0.003 321 |
| 5 | 0.025 | 0.004 126 |
| 6 | 0.030 | 0.006 028 |
表选项
Table 5: Varying Initial Learning Rates and Corresponding Error Values
| 序号 | 学习率 | 误差值 |
|---|---|---|
| 1 | 0.01 | 0.001 886 |
| 2 | 0.02 | 0.001 988 |
| 3 | 0.03 | 0.002 560 |
| 4 | 0.04 | 0.002 436 |
| 5 | 0.05 | 0.003 026 |
| 6 | 0.06 | 0.003 635 |
表选项
- 网络结构设置
基于固定的学习率参数以及_L_1正则化系数等其他超参数设置,在仅调整网络结构深度以及各隐藏层神经元数量的情况下获得对应的训练误差结果如表1及图7所示。观察表格数据可知,在这种情况下(即当网络深度设定为2层,并将各隐藏层神经元数量统一设定于30至10之间),所得到的均方误差(ERR)达到最小值。
|

|
|---|
|图 7 不同网络结构下的误差值Fig.7 Errors under different network structure|
|图选项|
- 参数设置
在固定DAN网络深度为2、网络结构为30-10、学习率等参数为预设值的前提下,在仅调整PTR或FTR设置的情况下可获得训练误差数据如表2所示。从表中可以看出,在PTR和FTR配置均为100时的情况:该配置下输出值与标签值之间的均方误差(ERR)达到最小值。
在固定DAN预训练与微调轮次均为100、网络深度设定为3(50-50-20)、学习率等其他参数基于预设值进行配置的情况下,在仅通过调整系数惩罚因子_β_或稀疏参数_ρ_的具体取值下完成模型训练所得训练误差数据见表3.从表中可以看出,当将_β_与_ρ_分别设定为0.10时,所获得的误差指标达到最小值
在固定DAN预训练和微调轮数为100-100次、β和ρ值均设为0.10的情况下,在网络深度设定为2(30-10)层且学习率采用预设参数的前提下,在调节_L_1正则化系数的过程中得到一系列训练误差数据(如表4所示)。从表中可以看出,在_L_1正则化系数设定为0.010时(即L₁= ),ERR达到了局部最小值点。进一步分析发现:当_L_₁正则化系数过小时,可能会导致模型出现欠拟合问题,从而导致模型性能下降;而当该系数过大时,则容易引发过拟合现象,并相应地增加数据学习所需的时间和资源消耗
在固定DAN预训练与微调迭代次数均为1次的前提下,并设定参数组合中β和ρ均取值于固定点(β=ρ=()),同时将L₁正则化系数设于()处,并基于网络架构设计()展开实验研究,在每一次迭代过程中都将当前的学习速率按()比例衰减以实现动态调节机制;在此基础上并设定起始的学习速率为(),通过修改这一起始值进行实验后所得结果见表5;实验结果表明,在保持其他条件不变的情况下动态调节机制能够有效降低学习速率对数据拟合精度的影响;经分析认为,在当前参数配置下最优的学习速率为()。
4.2.2****分类性能分析
基于上述降维分析结果, 最终确定DAN参数设置为网络深度设定为2(30-10), 学习率设定为
\eta= 5e-3, L_1 正则化系数设定值取 \lambda= 5e-3, 稀疏惩罚因子 \beta= 5e-2, 稀疏
参数 \rho= 5e-2, 预训练迭代次数设定值取 N_{pre}= 25, 微调迭代次数设定值取 N_{fin=
et}= 25; 使用降维处理后获得64 × 64像素级别的图像特征样本共64 × 64个,
并采用自助采样方法从该样本集中有放回地随机抽取3组不同子集,
每组子集均包含相同数量级的样本信息(约64 × 64个样本); 如表 6所示具体列出了
各次实验中所使用的子集抽取情况
表 6 3组数据抽取结果Tab.6 Sampling results of the 3 groups of data
| 数据集 | 训练集 | 结果 | ||||
|---|---|---|---|---|---|---|
| 正常 | 异常 | 总量/条 | 正常 | 异常 | 总量/条 | |
| D 1 | 26 974 | 23 026 | 7 808 | 6 192 | ||
| D 2 | 25 623 | 24 377 | 50 000 | 7 506 | 6 494 | 14 000 |
| D 3 | 27 408 | 22 592 | 7 212 | 6 788 |
表选项
分别采用数据集 D_1、D_2 和 D_3 对三种不同的参数配置进行DBN模型训练,并通过实验结果表明(图8)显示了各组模型性能差异。基于实验结果优化得到DBN结构配置(表7)。
|

|
|---|
|图 8 不同DBN结构设置下的准确率Fig.8 Accuracy under different DBN structure settings|
|图选项|
表 7 3组DBN结构参数设置Tab.7 3 groups of DBN structure parameter settings
| DBN种类 | 神经元结构 | 学习率 | 丢弃率 | Acc /% |
|---|---|---|---|---|
| DBN1 | 100-100 | 0.001 | 0.2 | 93.68 |
| DBN2 | 100-50 | 0.002 | 0.1 | 93.71 |
| DBN3 | 50-100 | 0.001 | 0.1 | 93.72 |
表选项
4.2.3****对比实验分析
对比实验中采用DAN-EDBNs算法与现有多种算法展开仿真实验。基于一致的数据集,在预处理步骤完成后将上述各模型分别接入训练过程。通过实验验证可知:本方案在二分类性能方面较传统DAN-EDBNs检测模型显著提升(对比实验结果展示于表8中)。具体而言,在分类精度上本方案较传统方法分别提升了约4.12%,3.82%,2.8%,及1.85%,而漏报率则相应降低了约1.25%,1.21%,0 .99%,及0 .7
表格8在二分类场景下的算法性能对比结果
| 检测方法 | Acc /% | FN /% | Tr /s | Te /s |
|---|---|---|---|---|
| PCA-BP | 92.56 | 2.52 | 36.3 | 8.6 |
| LDA-BP | 92.86 | 2.48 | 38.2 | 9.3 |
| DBN | 93.88 | 2.26 | 48.3 | 10.8 |
| DBN-SVM | 94.83 | 1.98 | 45.2 | 11.2 |
| DAN-EDBNs | 96.68 | 1.27 | 60.0 | 11.8 |
表选项
表 9 不同算法在多分类下的准确率和漏报率结果 Tab.9 结果 Tab中使用正确的术语来描述不同算法在多项分类情况下的准确性和漏报性表现
| 类型 | LDA-BP | DBH | DAN-EDBNs | |||||
|---|---|---|---|---|---|---|---|---|
| Acc | FN | Acc | FN | Acc | FN | |||
| 正常 | 0.948 | 0.021 3 | 0.942 | 0.019 8 | 0.972 | 0.010 0 | ||
| NMRI | 0.916 | 0.023 6 | 0.906 | 0.016 3 | 0.936 | 0.010 6 | ||
| CMRI | 0.936 | 0.020 2 | 0.928 | 0.021 8 | 0.964 | 0.018 4 | ||
| MSCI | 0.765 | 0.032 2 | 0.783 | 0.036 4 | 0.902 | 0.019 2 | ||
| MPCI | 0.943 | 0.024 8 | 0.952 | 0.025 6 | 0.965 | 0.016 5 | ||
| MFCI | 0.720 | 0.030 1 | 0.736 | 0.032 4 | 0.913 | 0.020 6 | ||
| DOS | 0.988 | 0.018 9 | 0.986 | 0.015 2 | 1.000 | 0.001 2 | ||
| Reco | 0.968 | 0.012 5 | 0.980 | 0.016 6 | 1.000 | 0.008 8 |
表选项
基于实验数据分析结果,本研究成功开发出一种入侵检测模型。该模型能够显著提升网络攻击检测的准确率,并有效降低了漏报的发生。
5****结论
本文系统性探讨了一种基于深度自编码网络的集成入侵检测模型,在数据特征提取方面实现了对DAN网络的有效应用,在一定程度上减少了数据冗余度,并通过创新性的DBN集成方式成功解决了传统DBN结构选择过程中的难题,在一定程度上削弱了该算法对DBN参数设置的高度依赖性。相较于同类方法而言,该方案通过引入深度自编码网络技术显著提升了系统的抗干扰能力,并实现了数据维度的优化压缩,在面对大规模工业网络数据时展现出更强的处理效能与应用价值。尽管该方法已在检测效能提升方面取得了显著成效但仍有待进一步完善在稀有攻击样本检测方面仍需加强以期达到更高的泛化能力目标为此计划将重点开展数据增强相关研究以期进一步提升系统的适应能力和泛化性能
