Poisoning Deep Learning based Recommender Model in Federated Learning Scenarios

1. What does literature study?

  1. 本文探讨对象:在联邦学习下针对基于深度学习的推荐模型设计攻击方法。根据两种攻击策略(随机近似和硬用户挖掘)为受操控的恶意用户生成有毒梯度。

2. What’s the innovation?

  1. Past shortcomings
    a. 具有攻击者先验知识(交互,不能访问)的现有攻击不适用于联邦场景。
    b.不具有攻击者先验知识的现有攻击其攻击效果不佳。
  2. innovation:
    a.没有先验知识前提下,在联邦场景中对基于深度学习的推荐模型中毒攻击。
    b.首先对良性用户的嵌入向量近似,然后基于近似向量而非边信息生成中毒梯度。
    c.提出两种攻击方法,利用不同的方法近似良性用户的嵌入向量(1. 利用高斯分布近似;2. 首先利用高斯分布近似,然后通过梯度下降优化向量来挖掘硬用户)

3. What was the methodology?

采用NCF作为基本推荐模型
预测分数: Y ^ u i = Υ ( p u , q i ) \hat{Y}_{u i}=\bold\Upsilon\left(\bold{p}_{u}, \boldsymbol{q}_{i}\right) Y^ui=Υ(pu,qi),NCF利用MLP来学习交互函数 Υ \bold\Upsilon Υ Υ ( p u , q i ) = a o u t ( h T Φ ( p u ⊕ q i ) ) \bold\Upsilon\left(\bold{p}_{u}, \boldsymbol{q}_{i}\right)=\bold a_{out}(h^T\Phi(\boldsymbol{p}_{u}\oplus \boldsymbol{q}_{i})) Υ(pu,qi)=aout(hTΦ(puqi))
损失函数: L u ( p u ; Θ ) = − ∑ ( i , Y u i ) ∈ D u Y u i log ⁡ Y ^ u i + ( 1 − Y u i ) log ⁡ ( 1 − Y ^ u i ) \mathcal{L}_{u}\left(p_{u} ; \Theta\right)=-\sum_{\left(i, Y_{u i}\right) \in \mathcal{D}_{u}} Y_{u i} \log \hat{Y}_{u i}+\left(1-Y_{u i}\right) \log \left(1-\hat{Y}_{u i}\right) Lu(pu;Θ)=(i,Yui)DuYuilogY^ui+(1Yui)log(1Y^ui)

  1. 训练过程:
    每个训练轮,中央服务器随机选择一部分用户参与训练,对其发送参数集合 Θ t \Theta^t Θt的副本;每个被选择的用户利用 L u \mathcal{L}_{u} Lu求出 p u t p_u^t put的梯度 ∇ p u t \nabla p_u^t put来更新 p u t p_u^t put求出 Θ t \Theta^t Θt的梯度 ∇ Θ u t \nabla \Theta^t_u Θut并上传到服务器;最后,服务器聚合所有接收的梯度来更新 Θ t \Theta^t Θt
  2. 攻击: U \bold{\mathcal{U}} U代表良性用户集 U ~ \tilde{\bold{\mathcal{U}}} U~代表恶意用户集,目的是提高目标项目集合的曝光率
    1. 随机近似攻击
      Poisoning Deep Learning based Recommender Model in Federated Learning Scenarios_第1张图片

    2. 硬用户挖掘
      Poisoning Deep Learning based Recommender Model in Federated Learning Scenarios_第2张图片

4. What are the conclusions?

Poisoning Deep Learning based Recommender Model in Federated Learning Scenarios_第3张图片

5. others

  1. 大多数的攻击旨在通过提高目标项目预测分数,将目标项推荐给尽可能多的用户。
  2. 数据中毒攻击:将虚假交互注入到训练数据,由于只能注入有效数量的虚假交互,因此攻击效率较低。
    模型攻击:生成中毒梯度,取决于攻击者的先验知识(项目受欢迎程度;公共交互)
  3. 每个用户对应一个用户客户端,item-score对 ( i , Y u i ) (\bold i,Y_{ui}) (i,Yui) Y u i ∈ { 0 , 1 } Y_{ui}\in\{0,1\} Yui{0,1}
  4. BCE(Binary Cross-Entropy)二元交叉熵损失
  5. 对于每个用户,推荐模型为用户推荐没有交互项目中预测得分最高的K项,项目 i i i的曝光率为(ER@K), I ~ \tilde{\bold{\mathcal{I}}} I~表示目标项目集, ε i \varepsilon_i εi表示项目 i i i的曝光率,攻击的目的是提高目标集的ER@K,即最大化 ∑ i ∈ I ~ ε i \sum_{i \in \tilde{\bold{\mathcal{I}}}} \varepsilon_i iI~εi,为了实现这个目的,攻击者操纵恶意用户将设计好的中毒梯度上传到中央服务器。
  6. L ~ \tilde{\bold{\mathcal{L}}} L~表示攻击目标的损失函数,曝光率ER@K不能代入,因为其高度不可微,不连续;其次攻击者不知道每个良性用户的嵌入向量和训练数据集。
  7. 采用的数据集中评分和评论转换为隐式数据,划分数据集为4:1,
  8. 根据两种攻击策略(随机近似和硬用户挖掘)为受操控的恶意用户生成有毒梯度。
    Attack with Random Approximation (A-ra)
    Attack with Hard User Mining (A-hum)
    两个基线模型:
    随机攻击RA
    显式增强EB

你可能感兴趣的:(Xidian科研,经验谈,深度学习,人工智能,机器学习)