- 摘要
- 【立意】:对next-item(top-k的首选项目)黑盒推荐的中毒攻击。
- 【方法】:用强化学习训练攻击代理,生成有毒用户的行为样本。攻击代理与推荐模拟器交互。
- 【推荐模拟器】:通过构建多个具有代表性的推荐模型的集合,构建了局部推荐模拟器,如果两个推荐者能够在给定的数据集上都得到相似的推荐结果,那么为其中一个推荐者生成的对抗性样本就可以用来攻击另一个。
- 【现有中毒攻击】:1.启发式规则,将目标项目与热度高的项目建立联系。2.对特定的推荐系统进行中毒攻击
- 【可用的知识】
- 1.攻击者可以访问推荐系统中所有用户的完整活动历史记录。
- 2.攻击者的资源有限,因此攻击者只能注入有限数量的受控用户,用户可以很容易地从地下市场购买。
- 3.攻击者不知道关于目标推荐系统的详细信息,例如,推荐模型的参数和体系结构。这种设置也被称为黑盒设置。
- 4.攻击者只能从黑盒推荐模型中接收到有限数量的反馈(例如,显示率)。
- 5.攻击者不知道何时重新训练目标黑盒推荐模型。
- 方法论
- 框架概述:
- 从强化学习的角度来看,目标是学习一个策略函数来生成顺序的对抗性用户行为样本,从而最大限度地提高目标用户的平均显示率。
- 推荐模拟器
- 构建替代模型和利用对抗性样本的可转移性来攻击目标机器学习模型的思想被多种攻击方法使用。
- 本文模拟器由多个独立的推荐模型组成,它们在同一数据集上进行训练。这些模型的推荐结果通过加权投票进行汇总。
- 第i个推荐器的item分数越高,rankm(i)越低
- wm是权重,用来调整模拟器,以模拟目标推荐器。
- 结果估计器
- 在强化学习框架中,我们需要当前对抗样本的操纵结果作为奖励反馈类更新对抗性样本生成器的策略网络。最直接的方法是重新训练整个模型,然而在线推荐系统的在训练很慢,所以使用影响函数来有效的估计操作结果。
- 提升一个项目的权重:
- 损失函数从这样,
- 变成这样
- 基于对样本上升权重对参数θˆ的影响的近似估计,我们进一步计算了对预测评分函数w.r.t.的影响产生的扰动
- 其中,ftest为推荐系统在测试阶段使用的预测评分函数。该结果进一步用于设计有效的代理策略培训的奖励。
- 对抗性样品生成器(建模为马尔克夫决策)
- ACTION:攻击者为每个受控用户确定以适当的顺序组织的特定项目。我们没有将所有可能的项目的集合作为动作空间,而是将项目集划分为组,并使用所有组的集合作为动作空间。
- 目标项目是一组,用户交互过的项目是一组,其余项目用矩阵分解提取特征并用k-means聚类划分为c个组。在获得项目组后,在代理的训练和测试阶段,从策略中逐步采样组级的动作,形成一个组级的动作序列。然后从组级动作序列的当前步骤所表示的相应组中逐步采样顺序中毒样本。
- State:状态定义为当前步骤t之前的动作子序列,所有动作都来自上面提到的动作空间
- Reward:我们将奖励设计为对所有目标样本的预测评分函数的加权平均影响。(公式3)这些权重被手动分配,以指示每个推荐模拟器的重要性。
- 在这里,我们应用深度q网络(DQN)来估计动作值函数。
- DQN通过迭代算法进行训练。在每次迭代中,都有两个阶段,重放内存生成阶段和参数更新阶段。在重放内存生成阶段,代理根据ϵ贪婪策略和当前状态st生成组级动作。然后,从组级序列中每一步推荐的相应组中抽样项目,生成项目级序列。之后,代理从结果估计器中观察奖励rt并更新状态。对于参数更新阶段:代理从重放内存中采样a(st、at、rt、st+1),然后更新参数。
- ACTION:攻击者为每个受控用户确定以适当的顺序组织的特定项目。我们没有将所有可能的项目的集合作为动作空间,而是将项目集划分为组,并使用所有组的集合作为动作空间。
- 框架概述:
- 实验
- 【数据集】:亚马逊美容:本文使用的数据集主要集中于头发和护肤产品,是从Amazon.com中提取的大型产品评论中提取的。
- 【基线】:None,Random,Popular
- Random:在这种基线方法中,攻击者将目标项目和随机选择的项目混合起来,为每个受控用户形成一个存储库。在每个步骤中,受控用户从项目存储库中随机选择项目,不重复。
- Popular:这是[23]的一个变体。在这种基线方法中,攻击者在流行项目和目标项目之间注入虚假的共访问,以促进目标项目。
- 【目标推荐方法】,一个矩阵分解方法BPRMF,一个混合模型FPMC
【论文阅读】LOKI-Practical Data Poisoning Attack against Next-Item Recommendation
于 2022-07-07 17:07:02 首次发布