利索能及
我要发布
收藏
专利号: 2018114399388
申请人: 电子科技大学
专利类型:发明专利
专利状态:已下证
更新日期:2025-12-17
缴费截止日期: 暂无
联系人

摘要:

权利要求书:

1.一种基于深度自编码器的未知攻击检测方案,包括下列步骤:

攻击文本的收集:对各种攻击的描述资料的收集,确定攻击的特征属性进行详尽的描述,特征属性包括41种TCP连接、内容特征和网络流量统计特征,形成一个语义描述文本语料库Text;

攻击语义矩阵生成:将攻击文本语料库Text建立词汇表V,V中的所有词汇按照次序初始化为一个K维向量V1=(v1,v2,v3,…vk),将单词woi的上下文窗口内的词向量输入CBOW模型,由隐层累加得到K维的中间向量Wnew;Wnew在哈夫曼树中沿着特定的路径到达叶子节点(即当前词woi),采用梯度下降法(SGD)调整路径中非叶结点的参数,以及最终上下文词的向量,使得实际路径向正确路径靠拢,经过n次迭代收敛后,即可得到每个词的向量表示;形成由词句向量组成的语义知识库S;

S={{S11,S12,S13,S14…}{S21,S22,S23,S24…}…}∈RN深度自编码器构造:编码过程是将已有攻击的训练集中数据进行标准化

和归一化操作

数据预处理之后作为编码过程的输入L1层,进行特征中心化预处理过程,达到数据白化和降低维度的目的;通过PCA降维,得到L2层低维的输入,以去除数据噪声,并更明确显示攻击的重要特征;为了防止网络没有进行训练,而直接将数据传到L2隐层再到输出层的情况,因此加入高维度的L1惩罚项,P={P1,P2,P3,P4……P1000}∈RN

即指权值向量w中各个元素的绝对值之和,通常表示为P=||w||1,数学表示为:

其损失函数为:

求解梯度:

sing(w)是去w各个元素的正负号,L1正则化对梯度的是增添一项与wi同号的常数,通过足够大的α实现稀疏,即用于特征选择,使得权重只有部分有效值,强迫网络进行学习;训练这层收敛之后即可进入下一层的训练,令x不变,进行自编码,得到权重矩阵W1,并使用W1的转置W1T进行还原输入层L1的高维输入,并逐层训练;最后,加入最后一层,即加入语义特征空间向量作为约束,利用所有数据进行训练,得到权重W4,同时计入稀疏编码ρ,为了达到约束每个神经元的目的,ρ的取值在0附近;β是稀疏惩罚项的权重,计算其损失函数其中KL距离表示为j是隐含层神经元的平均激活值,节点输出平均值为

前馈调整W1-W3的值,直至自编码器编码过程的网络收敛;

解码的过程将L2层所得到的隐层输出转置作为L4层,即解码器的中间隐层,训练还原出L1层的原本攻击特征输入,将得到的权重的转置从L3层作为参数逐层还原隐层的输出,直至还原输出L5原攻击特征输入的L1层;最终分别得到由攻击特征到攻击语义描述向量的模型M1和由语义描述向量到还原攻击特征模型M2的两个模型;

识别未知攻击:将未知的待识别攻击的特征预处理,再将其输入至深度自编码器模型M1中,得到隐含层输出的语义描述向量S′=(s1,s2,S3,…Sk)∈RN

N

将S′与已有的语义知识库S={{S11,S12,S13,S14…}{S21,S22,S23,S24…}…}∈R进行余弦相似度计算:通过结果对比得到S′最接近的语义知识库S中的某行语义向量Si,即判定该新型攻击所属攻击类型。

2.如权利要求1所述的方法,其特征在于相对其他检测方法,实现了零样本机器学习训练得到的深度自编码器未知攻击的识别;由于攻击的未知性和多样性,但易提取、易训练和学习,得到的新攻击源源不断加入攻击识别库中,丰富语义特征库,深度自编码模型易训练且鲁棒性强,保证了识别多种新攻击的准确度和高效性。

3.如权利要求1所述方法,创新了构建哈夫曼树的方法训练得到词句向量的方法;根据语料库建立词汇表V,V中的所有词汇按照次序初始化为一个K维向量V1=(v1,v2,v3,…vk);

描述文本中的每句描述定义一个唯一的ID,即Paragraph ID,同样按照次序形成一个K维向量V2=(vp1,vp2,vp3,…vpk)∈RN

统计词汇表V中各个词汇出现的频率,即n个权值,分别设为w1,w2,w3,…wn,并认为其是有n棵仅有一个结点的树形成的森林F;在森林F中选出两个根节点的权值最小的树合并,作为一棵树的左子树(L-Subtree)、右子树(R-Subtree),且新树的根节点权值为其左、右子树根节点权值之和;从森林F中删除选取的两棵树,并将新树加入森林F中直到森林F中仅剩下一棵树为止,该树即是根据词频构建哈夫曼树W;将语料库中的文本进行CBOW(连续词袋模型)训练;将单词woi的上下文窗口内的词向量输入模型,由隐层累加得到K维的中间向量Wnew;Wnew在哈夫曼树中沿着某个特定的路径到达某个叶子节点(即当前词woi);

将若Wi的编码为“01101”,则从哈夫曼树的根节点开始,将V1,V2对应连接起来得到期望中间向量V,V=(v′1,v′2,v′3,…v′k)

V与根节点相连经过Softmax计算,Softmax函数的定义如下

其中,Vi是前级输出单元的输出;i表示类别索引,总的类别个数为C;得到分为0的概率接近于1,在第二层输入1的概率接近于1,以此类推,直至到达叶子节点;进行下去,把一路上计算得到的概率相乘,即可得到woi在当前网络下的概率P,残差是(1-P),于是采用梯度下降法(SGD)调整路径中非叶结点的参数,以及最终上下文词的向量,使得实际路径向正确路径靠拢,经过n次迭代收敛后,即可得到每个词的向量表示;

保持Paragraph ID不变,即V2向量不变,相当于每次在预测单词概率的同时,都利用了整个语句的语义;训练语句阶段,为待预测的语句doci分配一个新的Paragraph ID,词向量和输出层softmax的参数保持不变,再次采用梯度下降法(SGD)训练语句doci,直至收敛;得到待预测语句的语句向量Si;得到每个待预测语句的向量表示之后,形成由词句向量组成的语义知识库S。

S={{S11,S12,S13,S14…}{S21,S22,S23,S24…}…}∈RN

4.如权利要求1中所述方法,采用了一种十分有效的攻击映射矩阵的方法,能够将非均匀、多种类的未知攻击数据集中的特征提取,映射成均匀分布的语义矩阵,达到了后续比较和计算攻击相似度的目的。

5.如权利要求3中所述的方法,采用了哈夫曼编码构成哈夫曼树,并形成的森林F的方法,从而可以确定从根节点到叶节点的正确路径,也确定了路径上所有分类器(非叶结点)上应该作出的预测;利用CBOW(连续词袋模型)训练并求解梯度调整路径中非叶结点的参数,使得确定上下文的每个词句的向量表示,达到形成攻击语义矩阵库的目的。