Page 98 - 《软件学报》2020年第11期
P. 98
3414 Journal of Software 软件学报 Vol.31, No.11, November 2020
不同的关注度作用在不同的代码属性图节点上.本文中的注意力模块结构如图 7 所示,其可以分为两个子分支,
分别为掩模分支和短路分支,其具体作用如下.
1) 掩模分支:掩模分支实现对注意力权重的学习,其由自底向上和自顶向下的结构构成.其中:自底向上
的结构使用多次一维卷积逐步获取高维特征,扩大感受野,从而捕获跨越不同节点特征向量的全局信
息;自顶向下的结构使用多次一维反卷积,将尺寸缩小后的高维特征图恢复为与输入同样大小,从而
使得注意力权重能够作用在输入上.在掩模分支的末端,使用 Sigmiod 函数对注意力权重矩阵进行归
一化并对其加 1,防止梯度的消失 [30] .
2) 短路分支:短路分支将注意力模块的输入作为输出,没有经过任何额外处理.该分支的作用是保留注
意力模块的原输入,从而将掩模模块输出的注意力权重以逐元素相乘的方式作用在注意力模块的输
入上.假设注意力模块的输入为 x,掩模分支的输出为 A(x),短路分支的输出为 S(x),则注意力模块的输
出 O(x)可以用下式表示.
O(x)=(1+A(x)) S(x) (8)
其中, 代表逐元素相乘,1 代表元素全为 1 的矩阵.
Fig.7 Structure of the attention module
图 7 注意力模块结构
(4) 分类模块
分类模块实现对特征信息的整合与最终的二分类,其输入为注意力模块输出的附加了注意力权重的特征
张量,该模块由 3 个全连接层组成,实现对特征的整合.最后一层使用 Softmax 输出二分类的结果:输出为 0 代表
目标程序不存在漏洞,或 1 代表目标程序存在漏洞.
3 实验评估
本节将对实验环节进行阐述.首先将对实验准备工作进行说明,包括实验环境、评价指标和实验数据集;其
次,分别对本文中进行的实验内容进行阐述;最后对实验结果进行分析.
3.1 实验准备
(1) 实验环境
本文中涉及的实验在配有 Tesla P100 PCIE 12GB GPU,Intel Xeon Silver 4116 CPU@2.10GHz CPU 和 64GB
内存的设备上进行.
(2) 评价指标
误报率(false positive rate,简称 FPR)、漏报率(false negative rate,简称 FNR)、查全率(true positive rate,简称
TPR)、查准率(precision,简称 P)和 F1 分数(F1 score)是 5 个常见的评价模型检测准确程度的指标.假设 FP 为本
身不存在漏洞但被判定为存在漏洞的样本数量,FN 为本身存在漏洞但被判定为不存在漏洞的样本数量,TP 为
本身存在漏洞同时也被判定为存在漏洞的样本数量,TN 为本身不存在漏洞同时也被判定为不存在漏洞的样本