基于TCN-BiLSTM的网络安全态势预测

2023-10-29 13:30孙隽丰李成海
系统工程与电子技术 2023年11期
关键词:池化态势网络安全

孙隽丰, 李成海, 曹 波

(1. 空军工程大学防空反导学院, 陕西 西安 710051;2. 中国人民解放军第94994部队, 江苏 南京 210000)

0 引 言

随着网络环境日益复杂,网络安全问题已经成为当前时代国家重点关注的问题之一,网络安全态势预测任务应运而生。预测网络未来的安全态势可以为网络防御提供指导,从而降低网络攻击所带来的不利影响。

近年来,各行各业都将引入人工智能作为行业发展的方向,网络安全态势预测任务也不例外。其中,将神经网络应用到网络安全态势预测领域已成为当前研究者们所重点关注的方向。相比传统方法,神经网络可以有效地逼近和拟合非线性时间序列数据,在态势预测领域取得了较好的效果。文献[1]提出了一种基于经验模式分解和改进粒子群优化(particle swarm optimization, PSO)算法优化双向门控循环单元神经网络的网络安全态势预测方法,该方法对网络安全态势数据序列进行经验模式分解后分别建立预测模型,最终将预测结果进行叠加,取得了较高的预测精度。文献[2]提出了一种网络安全态势预测方法,该方法利用门控循环单元(gate recurrent unit, GRU)对样本的特征进行降维后,输入Transformer提取具有时序关系的特征,降低了训练时间,提升了预测精度。文献[3]提出了一种改进遗传PSO算法优化极限学习机的网络安全态势预测方法,该方法对遗传PSO算法进行改进,虽然收敛速度加快,但是样本数目和滑动窗口数的设置对预测精度有很大影响。文献[4]提出了一种基于改进的综合学习的PSO(comprehensive learning PSO, CLPSO)算法优化径向基函数(radial basis function, RBF)神经网络的网络安全态势预测方法,该方法利用改进的CLPSO算法对RBF神经网络的聚类半径进行优化,使得模型准确性更高,收敛效果更好。文献[5]提出了一种基于注意力机制的GRU神经网络安全态势预测方法,该方法融合了GRU和注意力机制,并用PSO算法进行超参数寻优,在网络安全态势预测中取得了较好的效果。

为更好地学习网络安全各要素之间的关系对态势预测的影响,本文提出一种网络安全态势预测方法,该方法的主要贡献如下:

(1) 利用时域卷积网络(temporal convolution network, TCN)在时间维度上学习网络态势值的序列特征;

(2) 引入注意力机制突出对态势值影响较大的特征,提升态势值的预测精度,并加快模型的收敛速度;

(3) 引入双向长短期记忆(bi-directional long short-term memory, BiLSTM)网络进一步学习数据的前后状况以提取特征,并得到该时刻的网络安全态势值;

(4) 通过PSO算法优化网络模型的超参数,提升模型的预测精度,降低预测误差。

1 基于TCN-BiLSTM的网络安全态势预测方法

1.1 模型构建

该方法的网络模型主要包括4个部分:输入层、TCN编码器层、注意力层和BiLSTM预测层,具体结构如图1所示。

图1 基于TCN-BiLSTM预测方法的网络模型

(1) 输入层

选取国家互联网应急中心[6]的安全数据作为实验数据,每周进行态势评估得到态势值,将态势值进行归一化处理、滑动窗口处理,将其转换为时间步长×输入维度的形式。数据重构以滑动窗口s=5为例,数据重构结果如表1所示。

表1 数据重构结果

(2) TCN编码器层

TCN是Bai等[7]于2018年提出的,主要用于时序数据处理。TCN与普通一维卷积相比添加了两个操作[8-9]:因果卷积和空洞卷积,并在各网络层之间使用残差连接,在对序列特征进行提取的同时,避免了梯度消失或爆炸现象的产生。其因果卷积与空洞卷积结构如图2(a)所示,残差模块如图2(b)所示。本文将TCN引入网络安全态势预测任务中,其因果卷积的应用可以有效地保证态势信息从未来到过去不出现“泄露”现象,进而保证数据的完整性。而空洞卷积的应用则可使TCN以较少层数拥有较大的感受野,从而接收更长的历史数据;ReLU激活函数、Dropout和恒等映射网络能够有效抑制网络过拟合现象,从而提高网络学习速度和准确率。具体而言,假设对于一个输入x∈Rn的一维序列和一个卷积核f:{0,…,k-1}→R,对序列中的元素s的空洞卷积运算F被定义为

(1)

式中:d是膨胀因子;k是卷积核大小;s-d·i表示过去看的方向。在使用空洞卷积时,d通常会随着网络层数i的深度呈指数型增加,即d=O(2i),确保感受野增大的同时覆盖输入时间序列的所有有效输入。

由于TCN的感受野依赖于网络深度n、卷积核大小k和膨胀因子d,残差连接的引入可以使TCN的感受野在网络深度很深的情况下依旧稳定,其残差模块由网络F和输入x组成:

o=Activation(x+F(x))

(2)

(3) 注意力层

深度学习中的注意力机制[10]的主要作用为从大量信息中筛选出对当前任务目标最为重要的信息,凸显出重要特征的作用。本文引入注意力机制,对TCN中不同时刻输出的向量权重进行计算,可以有效地突出对态势值影响较大的特征。

数据经TCN提取特征后输出T,将其输入到注意力层中得到初始状态向量at,之后将其赋予权重系数αt,得到最终输出的状态向量Y,具体计算过程如下:

et=tanh(wtat+bt)

(3)

(4)

(5)

式中:et代表at对应的能量值;wt、bt分别代表第t个特征向量所对应的权重系数和偏置。

(4) BiLSTM网络预测层

为解决传统循环神经网络的梯度爆炸或消失问题,1997年,Schmidhuber等[11]提出长短期记忆(long short-term memory, LSTM)网络,通过门控机制实现信息选择性的传递,其内部结构如图3所示。

图3 LSTM基本结构

其中,ft表示遗忘门;it表示输入门;ot表示输出门;xt表示当前时刻的输入信息;ht-1和ht分别表示上一时刻和当前时刻的细胞输出值;ct-1和ct分别表示上一时刻和当前时刻的记忆单元;σ表示sigmoid激活函数;t表示tanh激活函数。

输入门it用于控制细胞信息更新的程度。

(6)

it=σ(Wt·[ht-1,xt]+bi)

(7)

遗忘门ft用于控制从细胞状态中丢弃的信息。

ft=σ(Wf·[ht-1,xt]+bf)

(8)

(9)

输出门ot用于控制细胞输出值的信息量。

ot=σ(Wo·[ht-1,xt]+bo)

(10)

ht=ot⊗tanh(ct)

(11)

式中:W和b分别代表权重矩阵和偏置项。

在网络安全态势预测任务中,当前时刻网络的状况往往与之前之后都有关联,若单一地使用TCN模型,则无法获取从后到前的信息。为提升预测效果,本文引入BiLSTM网络[12-13]进行网络安全态势预测。

BiLSTM由正向和反向LSTM叠加而成,其结构如图4所示。

图4 BiLSTM网络模型

(12)

1.2 模型训练优化算法

本文提出的TCN-BiLSTM模型中采用Ranger21优化算法[14-15],通过求解代价函数的最优化问题来求解模型的参数。Ranger21将AdamW[16]和LookAhead[17]等8个组件结合在一起,既结合了AdamW能够获取更好泛化性能的优点,又融合了其他组件的各项优点。Ranger21的具体算法如算法1所示。

算法 1 Ranger21优化算法输入 训练集输出 最优模型1 参数:随机目标函数为ft(θ),学习率为η,权重衰减因子λ=10-4,衰减速率 β0=0.9、β1=0.9、β2=0.999、βlookahead=0.5,用于数值稳定的小常数ε=10-8、εclipping=10-3,自适应梯度裁剪阈值τclipping=10-2,更新频率klookahead=5,迭代次数为tmax,学习率预热迭代次数twarmup=0.22×tmax,学习率慢化迭代次数twarmdown=0.28×tmax2 模型初始化:设置模型参数θ0为近似0的随机值3 参数更新4 初始化一阶动量:m0←05 初始化二阶动量:v0←06 初始化二阶最大动量:vmax←07 for t←1 to tmax do8 从训练集中采集包含m个样本{x(1),…,x(m)}的小批量,对应目标为y(i)9 计算梯度:gt←Δft(θt-1)10 梯度裁剪:for r∈rows(gt) do11 if ‖grt‖max(‖θrt‖,εclipping)>τclipping then 12 grt←τclippingmax(‖θrt‖,εclipping)‖grt‖grt13 end if14 end for15 梯度中心化:gt=gt-mean(gt)16 更新一阶动量估计:mt←β1mt-2+(1-β1)gt17 修正偏差:m^t←(1+β0)mt-β0mt-11-βt118 更新二阶动量估计:vt←β2vt-1+(1-β2)g2t19 更新二阶最大动量估计:vmax←max(vt,vmax)20 修正偏差:v^t←vmax1-βt221 更新矢量:ut←m^t(1+β0)2+β20(v^t+ε)22 自动调整学习率:ηt=min1,max1-β22·t,ttwarmup ,tmax-ttwarmdown η23 权重衰减:dt=ηtmean(v^t)λ1-1‖θt-1‖ θt-124 应用更新:θt←θt-1-ηtut-ηtdt25 LookAhead:if t%klookahead==0 then26 lt/k←βlookaheadlt/k-1+(1-βlookahead)θt27 θt←lt/k28 end if29 end for

1.3 PSO算法优化模型超参数

在实际应用中,超参数选取的不同将会对模型训练结果产生影响。本文采用PSO算法[18]对模型中的5个超参数:BiLSTM神经元数ln1、ln2和ln3、批处理大小batch_size、优化器的学习率lr进行寻优,以找到模型参数的最优解,具体算法详见算法2。

算法 2 PSO算法输入 训练集输出 最优模型1 参数配置:种群大小为5,迭代次数为30,惯性权重w为0.6,学习因子c1、c2为0.5,r1、r2为(0,1)的随机数2 生成种群粒子:(ln1,ln2,ln3,batch_size,lr)3 初始化粒子的位置:x0i,J←[x0i,1,x0i,2,x0i,3,x0i,4,x0i,5]4 初始化粒子的速度:v0i,J←[v0i,1,v0i,2,v0i,3,v0i,4,v0i,5]5 设置粒子的适应度函数:模型的损失函数6 计算每个粒子的初始适应值7 将初始的适应值作为每个粒子的局部最优解。计算并保存每一次迭代每个粒子的最优位置。第d次迭代中各个粒子的最优位置为Pdi,J←[pdi,1,pdi,2,pdi,3,pdi,4,pdi,5]8 截至第d次迭代找到最优值,将其作为全局最优解的初值,并记录其位置gdJ←[gd1,gd2,gd3,gd4,gd5]9 更新粒子的速度:vd+1i,j←wvdi,j+c1r1(pdi,j-xdi,j)+c2r2(gdj-xdi,j)10 更新粒子的位置:xd+1i,j←xdi,j+vd+1i,j11 重新计算每个粒子的适应度函数并更新个体最佳位置和群体最佳位置12 当迭代次数或粒子的适应度函数趋于稳定时停止,将群体最佳位置的粒子作为本次求得的最优参数组合

1.4 网络安全态势预测方法的预测步骤

基于TCN-BiLSTM的网络安全态势预测方法主要步骤如下:

步骤 1获取数据集,读取数据并进行清洗,随后进行归一化处理、滑动窗口处理,并划分出训练集和测试集。

步骤 2初始化PSO中的相关参数,设定待优化的粒子中每个维度的取值范围及粒子群算法的适应度函数,通过粒子群算法获得最优参数赋予模型。

步骤 3将预处理后的训练集送往参数优化后的TCN-BiLSTM网络进行训练。首先利用TCN学习态势值的序列特征,之后引入注意力机制动态调整属性的权值,然后利用BiLSTM学习态势值的前后状况以提取序列中的更多信息,最后将训练好的模型保存下来。

步骤 4将测试集送入步骤3,以最终保存的TCN-BiLSTM网络进行预测,得到预测态势值,并分析结果。

2 实验仿真

2.1 实验数据获取与环境配置

采用国家互联网应急中心发布的安全态势周报数据作为实验基础。本文选取该网站发布的自2012年第30期至2022年第16期(共计509期)的态势周报数据为基础进行实验验证,其数据主要从5个角度进行评估。为了直观体现网络安全态势,本文采用文献[19]提到的态势评估方法进行量化,根据对网络安全威胁的程度高低分配不同权重,权重分配结果具体如表2所示,之后计算每周的态势值:

表2 网络安全威胁权重分配

(13)

式中:NTi代表某周某种网络安全威胁的数量(i代表安全威胁的种类);NTimax代表选取的509期数据中该种安全威胁的最大数量;ωi代表其对应的权重。经计算,网络安全态势值如图5所示。

图5 网络安全态势值

TCN-BiLSTM模型及所做的所有实验均在TensorFlow深度学习框架下进行,具体实验环境如表3所示。

表3 实验环境配置

2.2 实验数据预处理

数据归一化可以将特征的方差减少到一定的范围,减少异常值的影响,提升模型的收敛速率。本文采用min-max归一化的方法将特征数据规范到-1和1之间,其计算公式如下所示:

(14)

式中:x′为x映射到区间[-1,1]的数据;min(x)和max(x)是数据集中的最小值和最大值。

2.3 实验设置与评价标准

为验证所提TCN-BiLSTM态势预测算法的性能,本文设置多组实验。

实验1:不同优化算法分析

实验2:不同池化方式分析

实验3:模型超参数优化

实验4:不同模型预测精度对比

实验5:拟合度对比

实验6:收敛性分析

为评价本文所提预测模型的效果,选取平均绝对误差(mean absolute error,MAE)、均方误差(mean square error,MSE)以及拟合优度决定系数(the coefficient of determination,R2)3个参数作为评价指标[20],评价指标的计算公式如下:

(15)

(16)

(17)

2.4 实验结果分析

2.4.1 不同优化算法分析

为验证本文选用的Ranger21算法的有效性,将其自适应矩估计(adaptive moment estimation, Adam)[21]、随机梯度下降(stochastic gradient decent, SGD)[22]、自适应梯度(adaptive gradient, Adagrad)[23]优化算法进行对比实验,不同优化算法预测对比结果如图6所示。

从图6可以看出,相比Adam算法、SGD算法、Adagrad算法,选用Ranger21算法对网络训练具有更快的收敛速度,且预测的拟合度均优于其他3种优化算法。实验结果表明,选用Ranger21算法对网络训练优化具有一定的促进作用。

2.4.2 不同池化方式分析

为进一步提高模型的特征提取能力,本文在TCN编码阶段采用最大池化方法和平均池化方法同时提取特征[24-25],并将提取到的特征进行融合。为了验证该方法的有效性,本文分别采用平均池化[26]、最大池化[27]、平均池化+最大池化3种不同的方案进行对比,其评价指标对比如表4所示。

表4 不同池化方式评价指标对比

实验结果表明,同时采用平均池化和最大池化的方案的各项指标均优于单独使用一种池化方式。经分析,原因为:最大池化和平均池化能够分别有效提取带有局部和全局意义的特征,通过池化融合将两者提取的特征相结合,能够更好地反映数据的本质,因此取得了更好的效果。

2.4.3 模型超参数优化

为更好地实现预测效果,本文采用PSO算法对这些超参数进行寻优,以找到模型参数的最优解。PSO算法相关参数设置如下:种群大小为5,迭代次数为30,惯性权重为0.6,学习因子c1、c2为0.5。

为加快收敛速度,防止粒子在搜索空间中漫无目的地搜索,现对寻优参数设置界限如下:BiLSTM神经元数取值范围为[10,500],批处理大小取值范围为[100,1 000],优化器的学习率取值范围为[0.000 1,0.005]。

图7展示了PSO算法优化TCN-BiLSTM模型的训练结果。

图7 PSO优化TCN-BiLSTM模型的超参数变化

从图7中可以看出,训练误差随着算法的更新逐渐收敛并趋于稳定,验证了PSO算法的有效性。

经过PSO算法优化后的网络模型参数具体如表5所示。

表5 优化后的模型参数设置

2.4.4 预测精度对比

为有效对比本文所提模型与其他模型预测能力的差别,本文设置以下实验:在相同的实验条件下设置滑动窗口数s=5,分别用TCN-BiLSTM、LSTM、GRU[28]、BiLSTM、自适应输入选择的LSTM(LSTM with adaptive input selection, AIS-LSTM)[29]、Attention-GRU[5]、Attention-BiLSTM[30]这7种模型进行预测,得到预测值与真实值对比图如图8所示;不同模型评价指标如表6所示。

表6 不同模型评价指标对比

从图8可以看出,所有模型均可达到预测效果,而本文所提TCN-BiLSTM预测模型融合了TCN和BiLSTM在提取时间序列之间关系的特性,同时融入了注意力机制,预测结果更加准确。

从表6可以看出,本文所提TCN-BiLSTM预测模型的误差值最小,相比其他模型有很大的优势。与LSTM模型相比,MAE降低了84.9%,MSE降低了96.6%;与GRU模型相比,MAE降低了85.5%,MSE降低了97.1%;与BiLSTM模型相比,MAE降低了82.0%,MSE降低了94.1%;与AIS-LSTM模型相比,MAE降低了81.3%,MSE降低了94.1%;与Attention-GRU模型相比,MAE降低了79.5%,MSE降低了94.3%;与Attention-BiLSTM模型相比,MAE降低了82.6%,MSE降低了94.1%。结果表明,TCN-BiLSTM模型对于网络安全态势值的预测较为有效,且相比其他模型预测精度较高。

2.4.5 拟合度对比

为进一步验证本文所提TCN-BiLSTM模型的有效性,对不同模型拟合度进行对比,如表7所示。

表7 不同模型拟合度对比

从表7可以看出,在相同模型中引入注意力机制后,模型拟合度明显提高,证明了引入注意力机制可以提升模型的预测精度。TCN-BiLSTM模型的拟合度相较其他6种模型最高,拟合度相比其他6种模型均提升了1.0%以上,进一步证明了本文所提TCN-BiLSTM预测模型所得到的预测曲线相较其他模型更加准确。同时,也证明了TCN-BiLSTM预测模型在预测态势值时的有效性和准确性。

2.4.6 收敛性分析

图9给出了模型训练误差随迭代步数变化的曲线图。从图9可以看出,在相同模型中引入注意力机制后,模型收敛速度明显变快,证明了加入注意力机制可以提升模型的收敛速度;本文所提TCN-BiLSTM预测模型在收敛速度和收敛精度上均优于其他模型,证明了本文所提模型能够充分学习时序数据的特征,效果较好。

图9 误差值随迭代次数的变化曲线

3 结束语

本文将TCN和BiLSTM网络进行了融合,并引入注意力机制及PSO算法,提出了一种基于TCN-BiLSTM的网络安全态势预测方法,将TCN处理时间序列问题的优势与BiLSTM能够学习序列前后状况的优势结合起来,更好地提取态势值的序列特征。之后引入注意力机制,为属性分配不同的权值,并利用PSO算法对模型进行超参数寻优,提升了预测能力。本文通过不同优化算法分析实验、不同池化方式分析实验模型超参数优化实验、预测精度对比实验、拟合度对比实验、收敛性分析实验证明了模型在处理网络安全态势数据时具有的较强的特征提取能力、较高的预测精度和预测效率,验证了本文模型的有效性。

猜你喜欢
池化态势网络安全
基于Sobel算子的池化算法设计
卷积神经网络中的自适应加权池化
设施蔬菜病害识别中的CNN池化选择
2019年12月与11月相比汽车产销延续了增长态势
汇市延续小幅震荡态势
我国天然气供需呈现紧平衡态势
基于卷积神经网络和池化算法的表情识别研究
网络安全
网络安全人才培养应“实战化”
上网时如何注意网络安全?