Page 294 - 《软件学报》2025年第8期
P. 294
赵浩钧 等: 基于 BERT 与自编码器的概念漂移恶意软件分类优化 3717
是研究热点. 依赖于训练数据集的特点, 学习模型在训练过程中容易学到与数据集本身分布相关而与实际任务无
关的虚假特征依赖, 引入虚假的相关性. 因此当模型数据集分布发生变化, 虚假依赖性会导致模型性能降低, 具体
表现为在固定的训练样本上性能优秀, 而在分布外的样本上性能不佳.
在本文的研究问题中, 由于概念漂移前后的样本数据分布发生了变化, 因此可以将概念漂移前后的恶意样本
数据视为来自两个不同数据集的数据. 鉴于在旧数据上进行训练, 在新数据上进行预测的概念漂移场景与上述自
然语言理解中的数据集差异带来的虚假相关性问题类似, 因此可以使用一系列特征降维和提取算法, 提取出与任
务目标相关的特征信息, 去除虚假依赖性.
几何中位数子空间常用于特征降维, 可以将高维特征向量映射到低维并反映其实质分布特点. 可以使用几何
中位数子空间将 BERT 滑动窗口处理生成的特征向量进行降维提取. 瓶颈自编码器通过解构和重构特征向量, 学
习到特征的低维紧凑表示, 捕获输入数据的关键特征. 因此可以利用瓶颈自编码器对进一步对输入特征进行处理,
捕获核心的特征分布. 在模型训练和分类阶段, 使用基于几何中位数子空间和瓶颈自编码器对特征进行降维和提
取, 并使用简单的全连接层进行分类预测. 为了确定和优化几何子空间的投影矩阵以及瓶颈自编码器的权重参数,
考虑在损失函数中增加对应的数据项表示. 在训练过程中根据损失反馈对几何中位数子空间的投影矩阵以及瓶颈
自编码器的各层网络参数进行调整.
3.3.1 几何中位数子空间
为了减少特征冗余达到去偏效果, MCBA 使用几何中位数子空间的思想进行特征降维投影. 以 BERT 滑动窗
口输出的拼接向量为输入, 使用可训练的投影矩阵 A 对其进行降维投影, 从而进行初步的特征降维和信息提取.
由于实际情况中, 样本大小不同可能产生不同长度的 [CLS] 拼接向量, 因此为了对齐输入维度, MCBA 对较短向
量进行无效位填充, 统一所有样本的输入向量维度为 1 533, 从而对齐 3 个滑动窗口的大小. 然后通过投影矩阵 A
将拼接向量降维至与下一阶段自编码器的输入维数相匹配的向量.
几何中位数子空间基于几何中位数的概念和子空间建模, 通过在特征空间中找到一个子空间, 使得该子空间
数据集样本点的投影距离之和最小, 从而提取出样本中共享的特征信息, 去除个体差异, 得到更具代表性的特征表
示. 几何中位数子空间投影的关键在于求解一个正交投影器使投影后的样本空间满足几何中位数子空间的条件.
假设特征向量为 h, 几何中位数子空间的正交投影器为 P, h 由 P 投影映射到子空间的向量 z, 则计算几何中位数
子空间的过程可以用以下数学表达式表示:
(∑ )
min ∥z− P(h)∥ 2 (1)
通过最小化投影的欧氏距离 (即 L2 范数), 可以训练出一个几何中位数子空间投影模型, 用于将输入特征向量
映射到共享的几何中位数子空间, 提取共享特征并降低特征冗余. 因此可以构造训练损失函数为如下形式:
T −1 T T 2
L projection (A) = ∥z i −A(A A) A z i ∥ 2 +∥AA −I∥ (2)
F
T
其中, A 代表几何中位数子空间的投影矩阵, A 代表矩阵 A 的转置, I 代表单位矩阵. 损失函数的第 1 项计算出满
足几何中位数子空间的投影矩阵 A, 第 2 项将矩阵 A 逼近为一个正交矩阵.
3.3.2 瓶颈自编码器
为了进一步对特征中的有效信息进行提取, MCBA 使用一个瓶颈自编码器架构的网络进行进一步特征筛选.
瓶颈自编码器是一种无监督学习模型, 用于学习输入数据的紧凑表示或特征提取. 它由编码器和解码器两部分组
成, 通过将输入数据压缩到低维编码空间, 再将其解码重构回原始数据空间, 通过尽可能使重构数据接近输入数
据, 学习到最能表达输入特征的低维编码形式. 此外, 为了进一步降维, MCBA 再次使用投影矩阵 B 对瓶颈自编码
器生成的中间向量进行处理.
编码器 (encoder): 编码器将输入数据映射到低维编码空间. 由一系列的隐藏层组成, 每一层通过非线性的激活
函数对输入数据进行变换. 编码器的目标是学习到输入数据的紧凑表示, 并提取出数据的重要特征. 通常, 编码器
的隐藏层逐渐减少维度, 最终将数据压缩到编码层, 形成低维的编码表示. MCBA 使用较为常见的 3 层编码器结
构, 考虑到来自几何中位数特征子空间的输出层数, MCBA 编码器的第 1 层设置为 768 维. 由于编码器的中间层

