Page 358 - 《软件学报》2026年第6期
P. 358
陈真 等: 可信数据增强的 QoS 感知云 API 推荐系统投毒攻击持续防御 2677
操纵推荐系统推荐对其有利的云 API. 尽管现有检测算法能够滤除部分恶意用户数据, 但由于用户-云 API 服务质
量数据的高度稀疏性, 恶意用户的漏检是难以避免的, 使得投毒攻击仍然存在. 本文提出基于可信数据增强的投毒
攻击持续防御方法. 通过注入可信用户来给推荐系统提供更多可用的交互数据, 使其学习到更准确的真实用户与
云 API 的特征表示, 消解恶意用户的影响.
定义 1. 可信用户可表示为一个三元组:
ϕ
F
S
˜ A w = (A ,A ,A ) (2)
S
F
F
其中, ˜ A w 表示可信用户 w 的用户画像, A 表示选择填充云 API 集合, A 表示随机填充云 API 集合, A 和 S A 都是
ϕ
为了更好地拟合真实数据特征, 提高可信用户的真实性. A 是空白云 API 集合, 即用户未调用过的云 API 集合.
由定义 1 可知, 可信用户在本质上是一组用户关于云 API 的 QoS 反馈数据向量, 如图 3 所示. 其中, λ(·) 和
δ(·) 分别表示对不同类别云 API 的 QoS 数据生成方法, Null 表示不进行填充处理.
A S A F A ϕ
S ... S F ... F ϕ ... ϕ
A 1 A i A 1 A m A 1 A n
λ(A 1 ) S ... λ(A i ) δ(A 1 ) … δ(A m ) Null ... Null
F
F
S
选择填充云API 随机填充云API 空白云API
图 3 可信用户一般表示形式
2.2.2 可信用户生成
针对 QoS 感知云 API 推荐系统的数据投毒攻击, 持续防御核心在于注入高质量可信用户给推荐系统提供更
丰富的交互数据, 而高质量可信用户生成关键在于可信用户生成算法. 一般地, 可信用户生成算法 f(·) 利用真实用
户与云 R( ˜ A) 的过程表示为:
API 交互数据集 R(U) 生成可信用户数据
f(R(U)) = R( ˜ A) (3)
本文从以攻学防视角提出以下 3 类持续防御模型来设计可信用户生成算法.
(1) 启发式防御. 该类方法的基本思想是利用数据统计分析生成可信用户数据. 根据计算方法的不同, 可分为
随机防御、均值防御、潮流防御.
(2) 深度防御. 该类方法的基本思想是利用深度学习模型, 如变分自编码器 (variational autoencoder, VAE)、生
成对抗网络 (generative adversarial network, GAN), 建模用户和云 API 交互关系来生成可信用户数据.
(3) 扩散防御. 利用扩散模型对用户和云 API 交互信息进行建模, 模拟并学习复杂用户行为, 通过正向扩散和
反向扩散两个过程以迭代去噪的方式生成可信用户.
F
S
利用启发式防御、深度防御和扩散防御模型生成可信用户选择填充云 API A 、随机填充云 API A 和空白云
ϕ
API A 的部署方式如表 1 所示.
表 1 持续防御模型部署方式
ϕ
防御类型 防御模型 A (选择填充云API) A (随机填充云API) A (空白云API)
S
F
F
随机防御 (Rnd_D) Null δ(A ) = r random Null
F
启发式防御 均值防御 (Avg_D) Null δ(A ) = r average Null
F
S
潮流防御 (Bdg_D) λ(A ) = r max δ(A ) = r average Null
S
F
变分自编码防御 (Vae_D) λ(A ) = r vae δ(A ) = r vae Null
深度防御 S F
生成对抗防御 (Gan_D) λ(A ) = r gan δ(A ) = r gan Null
F
S
扩散防御 扩散防御 (Diff_D) λ(A ) = r diffusion δ(A ) = r diffusion Null

