团体标准网
(19)中华 人民共和国 国家知识产权局 (12)发明 专利申请 (10)申请公布号 (43)申请公布日 (21)申请 号 202111659063.4 (22)申请日 2021.12.31 (71)申请人 北京理工大 学 地址 100081 北京市海淀区中关村南大街5 号 (72)发明人 李建武 林宁  (74)专利代理 机构 北京正阳理工知识产权代理 事务所(普通 合伙) 11639 代理人 张利萍 (51)Int.Cl. H04L 47/2483(2022.01) H04L 47/2441(2022.01) H04L 9/40(2022.01) G06N 3/04(2006.01) G06N 3/08(2006.01) (54)发明名称 一种基于Tran sformer深度学习模型的加密 流量识别方法 (57)摘要 本发明公开了一种基于Tran sformer深度学 习模型的加密流量识别方法, 属于计算机网络安 全技术领域。 针对现有的基于深度学习的加密流 量识别方法存在识别率低、 训练周期长等问题, 本方法利用改进的intra ‑Transformer模型首先 提取出数据包内各字节的全局特征和局部特征, 然后利用inter ‑Transformer模型提取流中数据 包间字节的全局特征和统计信息的全局特征。 相 较于卷积神经网络, 考虑了输入的全局特征, 使 模型性能有较大的提升; 相较于循环神经网络, 能够并行化处理, 加速收敛, 减少训练时间。 本方 法仅利用流中部分相邻数据包便可对流进行分 类, 无需利用流中的大部分包, 即可实现快速识 别流量类型。 本方法在实时性与精度之间实现了 更好的平衡 。 权利要求书3页 说明书8页 附图3页 CN 114401229 A 2022.04.26 CN 114401229 A 1.一种基于Transformer深度学习模型的加密流 量识别方法, 包括以下步骤: 步骤1: 对现有数据集进行预处理, 将pcap文件按照五元组信息, 以流为单位进行划分, 取流中的任意M个相邻的数据包, 组成子流; 步骤2: 用改进的i ntra‑Transformer模型提取 数据包内的特 征, 包括以下步骤: 步骤2.1: 对处理后的数据包 的N个字节进行词嵌入, 将字节特征映射到d维向量空间, 获得数据包的词嵌入特 征F1, F1∈RN×d, 其中R表示矩阵中的实数; 步骤2.2: 将输入序列中的各字节的位置信息pos, 通过式1和式2编码为一个d维的位置 特征F2, F2∈RN×d, 具体如下: F2(pos,2i)=si n(pos/10 0002i/d)                 (1) F2(pos,2i+1)=cos(pos/10 0002i/d)               (2) 其中, 2i表示偶数, 2i+1表示奇数; 步骤2.3: 将词 嵌入特征和位置编码特征进行合并, 获得Transformer模型的输入特征 F3, F3∈RN×d, 其计算方式如式3所示: F3=F1+F2                          (3) 步骤2.4: 采用多头自注意力方式, 从不同角度获得 数据包字节的全局依赖关系; 首先, 对F3进行三次线性变换, 分别获得查询向量Q、 键向量K和值向量V, 其 中, Q∈RN×d、 K∈RN×d、 V∈RN×d, N表示字节数; 三次线性变换分别为: Q=F3WQ                          (4) K=F3WK                          (5) V=F3WV                          (6) 其中, W为一个d×d大小的矩阵; F3乘W表示做了一次线性变换; 然后, 计算各字节之间的关联矩阵score, score∈RN×N, 如式7所示: 其中, 为缩放因子, 用于缓解由于softmax 激活函数引入的梯度消失问题; T为矩阵 转置; 之后, 将关联矩阵与值向量V做矩阵乘法操作, 得到一个角度的全局 依赖关系, 即, 多头 自注意力机制中的一个头 head1, head1∈RN×d, 计算公式如下: 重复式4至8的操作, 获得h个不同的头, 即head1,head2,…,headh, 对h个头进行拼接操 作; 最后, 对拼接后的特 征进行线性变换, 得到特 征F4∈RN×d, 计算公式如下: F4=concat(head1,head2,…,headh)W              (9) 其中, concat表示矩阵拼接操作; F4即为从多个角度提取到的一个 数据包内字节的全局 依赖关系; 步骤2.5: 对F3和F4采用残差连接, 并进行层归一化操作, 得到特征F5, F5∈RN×d, 计算公 式为:权 利 要 求 书 1/3 页 2 CN 114401229 A 2F5=LayerNorm(F3+F4)                 (10) 其中, LayerN orm表示层归一 化; 步骤2.6: 对步骤2.5中的特征F5, 利用两个不同尺度的一维卷积, 同时为保证特征维度 的一致, 两种一维卷积核的数量均为d个, 最终分别得到网络获取的浅层局部特征F6和深层 局部特征F7, F6∈RN×d, F7∈RN×d; 然后, 利用Relu激活函数对其进行激活, 计算公式为: F6=Relu(1dco nv(F5))                  (11) F7=Relu(1dco nv(F6))                  (12) 其中, 1dco nv表示一维卷积; 步骤2.7: 将F7与F5进行残差连接后, 进行层归一 化操作, 获得 特征F8, F8∈RN×d: F8=LayerNorm(F5+F7)                (13) 步骤2.8: 将步骤2.4至步骤2.7重复K1次, 利用更深的网络, 提取更深层次的特征F9, F9 ∈RN×d: 其中, 代表第K1次重复执 行步骤2.4至步骤2.7; 步骤2.9: 将基于改进的intra ‑Transformer提取的数据包内的特征F9输入给一个全连 接层, 全连接层的输出神经元个数等于向量空间维度 d, 得到特征F10, F10∈R1×d, 如式15所 示: F10=FC(flat ten(F9))                   (15) 其中, flat ten代表将二维特 征平铺成一个一维向量; FC代 表全连接; 步骤3: 用i nter‑Transformer模型提取 数据包间的特 征, 包括以下步骤: 步骤3.1: 对于有M个数据包的子流, 首先通过步骤2中的改进的intra ‑Transformer模 型提取M个数据包的包内特征, 即, 对于所有的包 执行步骤2.1至步骤2.9操作, 最终得到M个 特征: 将这M个特 征进行拼接, 得到i nter‑Transformer的输入特 征F11, F11∈RM×d: 步骤3.2: 将包的长度信息通过词嵌入方式, 映射到d维向量空间, 获得包长度的长度嵌 入特征F12, F12∈RM×d; 步骤3.3: 对于包间的相对位置信息, 同样使用同步骤2.2中的位置编码, 最终得到位置 编码特征F13, F13∈RM×2d; 步骤3.4: 将特 征F11、 F12和F13进行融合,得到特 征F14, F14∈RM×2d: F14=concat(F11,F12)+F13              (18) 步骤3.5: 利用多头自注意力机制, 在流量层面从不同角度获得流中各个数据包间的全 局依赖关系, 最终得到特 征F15, F15∈RM×2d; 步骤3.6: 对F14和F15进行残差和层归一 化操作, 最终得到特 征F16, F16∈RM×2d; 步骤3.7: 将特 征F16输入给两层全连接层, 并用非线性激活函数激活; 第一个全连接层的输出神经 元个数为 4d, 输出特征F17,F17∈RM×4d;权 利 要 求 书 2/3 页 3 CN 114401229 A 3

.PDF文档 专利 一种基于Transformer深度学习模型的加密流量识别方法

文档预览
中文文档 15 页 50 下载 1000 浏览 0 评论 309 收藏 3.0分
温馨提示:本文档共15页,可预览 3 页,如浏览全部内容或当前文档出现乱码,可开通会员下载原始文档
专利 一种基于Transformer深度学习模型的加密流量识别方法 第 1 页 专利 一种基于Transformer深度学习模型的加密流量识别方法 第 2 页 专利 一种基于Transformer深度学习模型的加密流量识别方法 第 3 页
下载文档到电脑,方便使用
本文档由 人生无常 于 2024-03-18 21:47:00上传分享
站内资源均来自网友分享或网络收集整理,若无意中侵犯到您的权利,敬请联系我们微信(点击查看客服),我们将及时删除相关资源。