团体标准网
(19)国家知识产权局 (12)发明 专利申请 (10)申请公布号 (43)申请公布日 (21)申请 号 202211018216.1 (22)申请日 2022.08.24 (71)申请人 西安邮电大 学 地址 710061 陕西省西安市长安 南路563号 (72)发明人 张勇  (74)专利代理 机构 西安西达专利代理有限责任 公司 61202 专利代理师 刘华 (51)Int.Cl. G06F 21/56(2013.01) G06F 16/35(2019.01) G06K 9/62(2022.01) G06N 3/04(2006.01) (54)发明名称 一种基于多层注意力机制的二进制恶意代 码快速分类方法 (57)摘要 一种基于多层注意力机制的二进制恶意代 码快速分类方法, 模型由输入层、 嵌入层、 多层卷 积和注意力层和分类层组成, 输入层是恶意代码 二进制代码以字节序列导入模型, 嵌入层对输入 数据进行转换形成一个二维矩阵, 多层卷积和注 意力层是将嵌入层输出的结果经过多层卷积和 注意力处理, 通过注意力模块相互堆叠, 使得模 块间注意力的学习特性会随着网络层数的递增 而变化, 提高了模型捕捉重要数据流特征的能 力, 形成全局特征, 最后经过分类层进行预测形 成分类判定结果。 这种快速、 准确的恶意代码分 类方法, 解决已有或未知二进制恶意代码的自动 化识别难题, 把其所带来的危害降低到最低, 为 促进我国乃至全球信息产业发展具有重大价值, 应用前景广阔。 权利要求书4页 说明书11页 附图2页 CN 115391779 A 2022.11.25 CN 115391779 A 1.一种基于多层注意力机制的二进制恶意代码快速分类方法, 其特征在于, 包括三个 阶段, 具体如下: 第一阶段: 数据收集阶段: 步骤1、 收集面向应用场景的典型不同类型的二进制恶意代码样本和良性代码样本, 构 成用于建立模型和训练模型 的数据集, 每个代码样设置一个标签, 表示其为哪种类型 的恶 意代码, 或者良性代码; 步骤2、 将该 数据集中的文件进行划分, 构成三个数据集训练集、 验证集和 测试集; 第二阶段: 基于多层注意力机制的二进制恶意代码分类建模: 步骤1、 总体框架: 将注意力 机制和卷积神经网络模型相结合, 建立基于注意力 机制的二进制恶意代码分 类模型(AT T‑MalNet), 该模型由输入层、 嵌入层、 卷积层、 注意力层和分类层组成; 步骤2、 嵌入层设计; 在嵌入层(Embedded  Layer)中, 由于神经网络模型接受的输入序列是一个固定长度的 向量, 可执行二进制文件是一个字节 流, 因此需要进 行向量化的操作, 将字节 转换为神经网 络的输入格式, 嵌入层的功能在于将输入字节序列 投影到向量序列作为神经网络的输入, 将通过将固定长度的序列转换为嵌入表达, 其中每个字节映射到一个8维嵌入向量, 然后这 些嵌入特 征集合作为下一卷积层的输入; 步骤3、 卷积层设计 卷积层(Conv  Layer)在嵌入层之后, 输入序列被嵌入到一个m ×d大小的矩阵中, 下一 步通过卷积层来提取局部区域识别到的特征, 在整个模型中将卷积层作为特征提取组件, 滤波器覆盖长度为m的输入字节序列, 使 卷积核在输入字节序列的窗口上进行滑动, 通过使 用一个宽度为d 的滤波器和一个非线性函数, 卷积运算可以生 成一个新的特征o, 如公式(1) 所示, 通过 卷积层的计算可以识别到具有类似的字节序列模式: o=f(w×vi+b) (1) 公式(1)中, w是权 重矩阵, vi是字节序列的嵌入向量, b是偏差项, f是非线性 函数; 由于字节序列是一维的, 利用一维卷积网络的结构, 该卷积结构应用于字节序列窗口 大小的滤波器来生成新的特征映射, 并使用一维池化操作, 即非线性下采样来获得重要的 特征; 步骤4、 注意力层设计 将注意力 机制于卷积神经网络模型结合起来对恶意代码进行分类, 通过整合注意力 机 制来使得模型获取到比较的重要信息, 这些信息将由卷积神经模型进行处理; 在分类模型 ATT‑MalNet中, 通过添加多层次的注意力模块, 使得在原有模型基础上对于字节序列特征 进行更加细致的学习; 步骤5、 单个注意力模块: 在神经网络每个阶段之后会训练一个注意模块, 为了 明确测量不同位置特征的重要性 分数, 为了训练这一模块的功能, 将特征乘以注意力权重, 这些权重由注意模块预测, 每一 次卷积计算后都添加一个注意力模块, 注意力模块(Attention  Block)通过全连接的形式 将上层捕捉到的特 征进行选择和二次捕获, 该层的注意力系数如公式(2)所示: Yn=ATT(Xn; θ )×Xn (2)权 利 要 求 书 1/4 页 2 CN 115391779 A 2公式(2)中, 注意力模块在学习每个特征时的注意力函数为ATT(Xn; θ), 其中Xn= {X1,……,Xn}表示上一层的输入, 是注意模块的参数; 嵌入层的数据经过卷积层的学习, 再通过注意力模块与完全连接层相连接, 在此期间, 一维卷积神经网络中注意力模块的输出Y ’可按以下公式(3)所示: 公式(3)中, i和j代 表不同通道, (i,j)是 特征图中的空间位置: 步骤6、 多层次注意力机制: 注意力模块首先从不同的卷积阶段提取特征, 并将其下采样为具有相同大小特征映射 的特征, 最后该模块通过一个全连接块合并所有特征: 对于输入Xn={X1,……,Xn}, 在经过 每一层的累积学习后够得到的全局特 征输出为公式(4)所示: Y'=Concatenate(Y1(x1),......,Yn(xn))  (4) 公式(4)中, Y(x)表示每层的注意力模块的输出, Y ’表示经过聚合后的输出特征, Y表示 注意力模块, 利用Concatenate函数将这些不同层次下的特征进行合并, 通过每一层的注 意 模块Y和全局聚合模块Y ’对分类模型中的特征进行整合操作, 目的是为了获取更加重要的 特征, 同时对一些 无意义的特征进行忽略处 理; 步骤7、 分类层设计: 在分类层(Classification  Layer)中使用了最大平均池化(Global  Average   Pooling), 利用其进行下采样, 减少计算量, 防止出现过拟合, 在激活函数(Activation   Function)的选择上使用的是Sigmoid激活函数进行预测, 最终利用全连接层(Fully   Connected  Layer)进行将上一层的特征进行集成, 从而获得特征所代表的高层意义, 如 公 式(5)所示: p=Sigmo id([w+b])  (5) 公式(5)中, w和b是需要学习的参数, 计算后得到概率p, 它将直接从特征中学习, 以确 定在分类任务中的代码是良性的还是恶意; 步骤8、 归一 化设计: 利用批量归一化, 使得模型在对于字节序列数据的处理产生正则化效果, 将计算数据 的零均值和单位方差, 数据转换如公式(6)所示: 训练过程 中每次迭代的输入序列为X={x1,x2, ……,xn}, 且学习参数为β和γ, 批量归 一化算法的过程如下: (1)计算平均值如公式(7)所示: 公式7中, 表示在迭代的m个序列数据X={x1,x2,……,xm}中, 对其累加计算求和并除以权 利 要 求 书 2/4 页 3 CN 115391779 A 3

.PDF文档 专利 一种基于多层注意力机制的二进制恶意代码快速分类方法

文档预览
中文文档 18 页 50 下载 1000 浏览 0 评论 309 收藏 3.0分
温馨提示:本文档共18页,可预览 3 页,如浏览全部内容或当前文档出现乱码,可开通会员下载原始文档
专利 一种基于多层注意力机制的二进制恶意代码快速分类方法 第 1 页 专利 一种基于多层注意力机制的二进制恶意代码快速分类方法 第 2 页 专利 一种基于多层注意力机制的二进制恶意代码快速分类方法 第 3 页
下载文档到电脑,方便使用
本文档由 人生无常 于 2024-03-18 02:11:05上传分享
站内资源均来自网友分享或网络收集整理,若无意中侵犯到您的权利,敬请联系我们微信(点击查看客服),我们将及时删除相关资源。