Page 297 - 《软件学报》2025年第8期
P. 297

3720                                                       软件学报  2025  年第  36  卷第  8  期


                 卷积的   GPU  内存消耗问题. 作为一个浅层        CNN  架构, MalConv  解决了读取整个恶意软件字节流时内存的消耗限
                 制, 捕捉了原始二进制中的全局位置不变性并且允许嵌入层与卷积层联合训练, 以获得更好的特征提取效果.

                 4.3   评价指标与参数设置
                    参照文献    [4] 对  9  个代表性工作的实验设置, 本文使用        10  倍交叉验证和准确率 (A)、精确率 (P)、召回率 (R)
                 和 F1 分数 (F1) 这  4  个评价指标对  MCBA  及相关对比工作进行实验评估.
                    • 真阳性 (TP): 模型将属于某个类别的样本正确分类为该类别的次数.
                    • 真阴性  (TN): 模型将不属于某个类别的样本正确分类为非该类别的次数.
                    • 假阳性  (FP): 模型将不属于某个类别的样本错误分类为该类别的次数.
                    • 假阴性 (FN): 模型将属于某个类别的样本错误分类为非该类别的次数.
                    • 准确率=(TP+TN)/(TP+TN+FP+FN).
                    • 召回率=TP/(TP+FN).
                    • 精准率=TP/(TP+FP).
                    • F1=2×精准率×召回率/(精准率+召回率).
                    实验中各工作的参数设置如后文表             3  所示.

                 4.4   消融实验
                    为了验证滑动      BERT  窗口以及基于几何中位数子空间和自编码器优化方法在信息提取和特征降维上的有效
                 性, 需要对  MCBA  在同一数据集上进行启用优化和禁用优化的对比实验. 为了实验的全面性, 本文分别在代表普
                 通场景的   MalwareBazaar 数据集和代表概念漂移场景的         MalwareDrift 数据集上进行评估.
                    首先验证    BERT  滑动窗口的有效性. 在       MalwareBazaar 和  MalwareDrift 数据集上, 我们分别开启不同数量
                 的滑动窗口, 并观察不同数量的滑动窗口对分类准确率的影响. 然后我们验证基于几何中位数子空间和自编码
                 器优化方法的有效性. 分别在两个数据集上禁用和启用不同维数的编码器进行分类性能评估. 实验结果如图                                     4
                 所示.

                          表 3 实验对比工作参数设置                              98.9   99.1  99.2  99.2  99.2
                                                                   100

                     实验工作         优化器     学习率     Batch size       80    56.4  64.7  67.2   69.1  68.7
                     ResNet-50    Adam     1E–3      64           准确率 (%)  60
                                                                   40
                     VGG-16       SGD      5E–6      64            20
                    Inception-V3  Adam     1E–3      64             0
                                                                        0      1     2     3     4
                      IMCFN       SGD      5E–6      32
                                                                               BERT滑动窗口数量
                      MAGIC       SGD      1E–4      10
                                                                      98.9  98.7  98.8  98.7  98.9  98.9  98.8
                   Word2Vec+KNN    -        -        -             100
                      MCSC        SGD      5E–3      64            80   56.4  60.8  61.1  59.7  64.7  62.6  61.5
                                                                   60
                    CBOW+MLP      SGD      1E–3     128           准确率 (%)  40
                     MalConv      Adam     1E–3      32            20
                                                                    0
                      MCBA        Adam     5E–5      12                无优化  128,256  128,356  128,512  256,356  256,512  356,512
                                                                                编码器 1,2 层维数
                                                                             MalwareBazaar  MalwareDrift
                                                                             图 4    消融实验
                    实验结果表明, 无论是在普通场景还是概念漂移下, 启用                  BERT  滑动窗口后, 分类准确率都有所提高. 这是因
                 为启用滑动窗口可以使学习模型接受更多来自原始文件的序列信息, 从而获得具有更大维度和更丰富信息的程序
                 特征向量表示. 随着滑动窗口增多, 可以观察到分类准确率也得到提高. 当滑动窗口数量大于                            3  时, 分类准确率几
                 乎不再变化. 这意味着此时滑动窗口数量与分类准确率之间出现明显的边际效应递减, 几乎不再带来性能改善. 考
                 虑到实际应用和资源消耗, MCBA         的滑动窗口数量将设置为          3, 并进行后续实验. 在基于几何中位数子空间和自编
                 码器优化方法的评估方面, 对于          MalwareBazaar 数据集, 开启优化的效果并不明显. 这是因为在相同的数据集分布
   292   293   294   295   296   297   298   299   300   301   302