1.一种基于STBformer模型的网络入侵检测方法,其特征在于,包括如下步骤:步骤S1、数据预处理,基于待检测数据集,进行特征编码、数值归一化处理,将待检测数据集划分为训练数据集和验证数据集;
步骤S2、构建STBformer混合模型,具体为:
S2.1、通过组合全连接层,搭建流级投影模块;
S2.2、通过多头注意力机制和快速傅里叶变换,搭建Attspec 模块; Attspec模块包括Spectral模块和Attention模块,待检测数据先经过Attention模块提取时域信息特征,再经过Spectral模块提取频域信息特征;
Spectral模块中,通过引入频谱门控网络,基于到达时间、有效载荷长度和协议类型属性,对待检测数据进行频域信息特征提取和表征;所述频谱门控网络包括快速傅立叶变换层、加权门控层和快速傅立叶逆变换层,频域信息特征提取包括如下子步骤:S2.2.1、利用快速傅立叶变换,将物理空间数据转换为频谱空间数据;
S2.2.2、利用权重参数,对每个频率分量进行加权,捕获频谱空间数据的频域特征;
所述权重参数针对STBformer的每一层进行学习,通过反向传播技术进行优化;
S2.2.3、通过快速傅立叶逆变换,将频谱空间数据重新映射回物理空间;
S2.2.4、在快速傅立叶逆变换之后,频谱门控网络还包括层归一化和前馈网络模块,用于信道混合和进一步特征提取;
Attention模块中,依次进行:层归一化,用于对输入数据进行标准化;多头自我注意力机制,允许模型同时考虑输入的不同位置之间的关系,捕获上下文信息;再次进行层归一化维持层内的稳定性;以及前馈网络,进行进一步特征映射和抽取;
多头自我注意力机制采用基于可训练的三元组自注意力机制,包括query、key、value矩阵;使用query和key计算分配给每个值的权重分数,然后通过softmax函数进行归一化操作得到注意力权重,将得到的注意力权重与value计算加权和得到输出;注意力权重计算公式如下:;
其中, Q、K、V 分别代表query、 key、 value三个矩阵,dk为矩阵key的维度,T是转置操作,将矩阵行和列互换;softmax函数表示归一化函数,Attention函数用来计算注意力权重;
多头自我注意力计算公式如下:
;
其中,X表示输入数据,Qi、Ki、Vi分别表示第i个子头的query、key、value矩阵,分别表示第i个子头与Q、K、V矩阵对应的网络参数矩阵;headi表示第i个子头的自注意力结果, 表示与输出对应的网络参数矩阵,Concat(.)是矩阵的拼接操作,MultiHead表示多头注意力操作;
S2.3、基于流级投影模块和Attspec模块,加入双向长短期记忆网络,共同组合成STBformer混合模型;
双向长短期记忆网络,由一个前向长短期记忆神经网络和一个反向长短期记忆神经网络组成,数据X(x1,x2,x3,…,xn)经过前向长短期记忆神经网络得到状态向量{hL1, hL2, hL3,…, hLn},经过反向长短期记忆神经网络得到状态向量{hRn,…,hR1},将前向和反向的状态向量进行拼接得到{[hL1,hRn],[hL2,hRn‑1],…,[hLn,hR1]},表示为状态向量{h1,h2,h3,…hn},双向长短期记忆神经网络同时利用前向和后向的信息,理解和捕捉时序数据中的关联关系;
S2.4、通过分类模块对网络流量进行分类,分类模块包括:Fallten层、激活函数为relu的全连接层、激活函数为Sigmoid的全连接层,数据通过分类模块得出分类结果,然后通过反向传播,采用交叉熵函数作为损失函数,使用Adam 优化算法减少损失,完成STBformer混合模型的训练;
S2.5、对STBformer混合模型进行训练及参数设置;
步骤S3、进行网络入侵检测,检测出异常流量。
2.根据权利要求1所述的基于STBformer模型的网络入侵检测方法,其特征在于,步骤S1中,待检测数据集特征分为数值特征和非数值特征,使用one‑hot方法对非数值特征进行特征编码,将非数值特征转换成数值特征,使待检测数据集中所有特征都为数值型特征;
所述非数值特征包括:网络流量特征、攻击类型、源地址、目标地址。
3.根据权利要求2所述的基于STBformer模型的网络入侵检测方法,其特征在于,步骤S1中,采用最大最小归一化对待检测数据集进行处理,公式如下:;
其中,x为输入数据,xmax、xmin分别是由数值特征列中所有最大值元素和最小值元素组成的向量, 为归一化后的所有元素。
4.根据权利要求3所述的基于STBformer模型的网络入侵检测方法,其特征在于,步骤S2.1中,流级投影模块F是一层全连接层,将数据映射到连续的特征向量上,公式如下:;
其中,函数F为表示一层全连接层,W表示网络参数矩阵,b表示偏差矩阵, 为表示经过全连接层后的数据。
5.一种基于STBformer模型的网络入侵检测系统,用于通过权利要求1至4任一种网络入侵检测方法,进行网络入侵检测,其特征在于,包括:数据预处理模块、STBformer混合模型及分类模块;
数据预处理模块,基于待检测数据集,进行特征编码、数值归一化处理,将待检测数据集划分为训练数据集和验证数据集;
STBformer混合模型:包括流级投影模块、Attspec模块和双向长短期记忆网络;
所述流级投影模块,是一层全连接层,用于将数据映射到连续的特征向量上;
所述Attspec模块,包括Spectral模块和Attention模块,Attention模块提取待检测数据中的时域信息特征,Spectral模块提取待检测数据中的频域信息特征;
所述双向长短期记忆网络,由一个前向长短期记忆神经网络和一个反向长短期记忆神经网络组成,同时利用前向和后向的信息,理解和捕捉时序数据中的关联关系;
分类模块由Fallten层、激活函数为relu的全连接层、激活函数为Sigmoid的全连接层组成,数据通过分类模块得出分类结果。