天天看點

【論文閱讀】LOKI-Practical Data Poisoning Attack against Next-Item Recommendation

  • 摘要
    • 【立意】:對next-item(top-k的首選項目)黑盒推薦的中毒攻擊。
    • 【方法】:用強化學習訓練攻擊代理,生成有毒使用者的行為樣本。攻擊代理與推薦模拟器互動。
    • 【推薦模拟器】:通過建構多個具有代表性的推薦模型的集合,建構了局部推薦模拟器,如果兩個推薦者能夠在給定的資料集上都得到相似的推薦結果,那麼為其中一個推薦者生成的對抗性樣本就可以用來攻擊另一個。
    • 【現有中毒攻擊】:1.啟發式規則,将目标項目與熱度高的項目建立聯系。2.對特定的推薦系統進行中毒攻擊
    • 【可用的知識】
      • 1.攻擊者可以通路推薦系統中所有使用者的完整活動曆史記錄。
      • 2.攻擊者的資源有限,是以攻擊者隻能注入有限數量的受控使用者,使用者可以很容易地從地下市場購買。
      • 3.攻擊者不知道關于目标推薦系統的詳細資訊,例如,推薦模型的參數和體系結構。這種設定也被稱為黑盒設定。
      • 4.攻擊者隻能從黑盒推薦模型中接收到有限數量的回報(例如,顯示率)。
      • 5.攻擊者不知道何時重新訓練目标黑盒推薦模型。
  • 方法論
    • 架構概述:
      • 從強化學習的角度來看,目标是學習一個政策函數來生成順序的對抗性使用者行為樣本,進而最大限度地提高目标使用者的平均顯示率。
      • 【論文閱讀】LOKI-Practical Data Poisoning Attack against Next-Item Recommendation
    • 推薦模拟器
      • 建構替代模型和利用對抗性樣本的可轉移性來攻擊目标機器學習模型的思想被多種攻擊方法使用。
      • 本文模拟器由多個獨立的推薦模型組成,它們在同一資料集上進行訓練。這些模型的推薦結果通過權重投票進行彙總。
      • 第i個推薦器的item分數越高,rankm(i)越低
        • wm是權重,用來調整模拟器,以模拟目标推薦器。
          【論文閱讀】LOKI-Practical Data Poisoning Attack against Next-Item Recommendation
    • 結果估計器
      • 在強化學習架構中,我們需要目前對抗樣本的操縱結果作為獎勵回報類更新對抗性樣本生成器的政策網絡。最直接的方法是重新訓練整個模型,然而線上推薦系統的在訓練很慢,是以使用影響函數來有效的估計操作結果。
      • 提升一個項目的權重:
        • 損失函數從這樣,
          【論文閱讀】LOKI-Practical Data Poisoning Attack against Next-Item Recommendation
        • 變成這樣
          【論文閱讀】LOKI-Practical Data Poisoning Attack against Next-Item Recommendation
        • 基于對樣本上升權重對參數θˆ的影響的近似估計,我們進一步計算了對預測評分函數w.r.t.的影響産生的擾動
        • 其中,ftest為推薦系統在測試階段使用的預測評分函數。該結果進一步用于設計有效的代理政策教育訓練的獎勵。
          【論文閱讀】LOKI-Practical Data Poisoning Attack against Next-Item Recommendation
    • 對抗性樣品生成器(模組化為馬爾克夫決策)
      • ACTION:攻擊者為每個受控使用者确定以适當的順序組織的特定項目。我們沒有将所有可能的項目的集合作為動作空間,而是将項目集劃分為組,并使用所有組的集合作為動作空間。
        • 目标項目是一組,使用者互動過的項目是一組,其餘項目用矩陣分解提取特征并用k-means聚類劃分為c個組。在獲得項目組後,在代理的訓練和測試階段,從政策中逐漸采樣組級的動作,形成一個組級的動作序列。然後從組級動作序列的目前步驟所表示的相應組中逐漸采樣順序中毒樣本。
          【論文閱讀】LOKI-Practical Data Poisoning Attack against Next-Item Recommendation
      • State:狀态定義為目前步驟t之前的動作子序列,所有動作都來自上面提到的動作空間
      • Reward:我們将獎勵設計為對所有目标樣本的預測評分函數的權重平均影響。(公式3)這些權重被手動配置設定,以訓示每個推薦模拟器的重要性。
      • 在這裡,我們應用深度q網絡(DQN)來估計動作值函數。
        • DQN通過疊代算法進行訓練。在每次疊代中,都有兩個階段,重放記憶體生成階段和參數更新階段。在重放記憶體生成階段,代理根據ϵ貪婪政策和目前狀态st生成組級動作。然後,從組級序列中每一步推薦的相應組中抽樣項目,生成項目級序列。之後,代理從結果估計器中觀察獎勵rt并更新狀态。對于參數更新階段:代理從重放記憶體中采樣a(st、at、rt、st+1),然後更新參數。
  • 實驗
    • 【資料集】:亞馬遜美容:本文使用的資料集主要集中于頭發和護膚産品,是從Amazon.com中提取的大型産品評論中提取的。
    • 【基線】:None,Random,Popular
      • Random:在這種基線方法中,攻擊者将目标項目和随機選擇的項目混合起來,為每個受控使用者形成一個存儲庫。在每個步驟中,受控使用者從項目存儲庫中随機選擇項目,不重複。
      • Popular:這是[23]的一個變體。在這種基線方法中,攻擊者在流行項目和目标項目之間注入虛假的共通路,以促進目标項目。
    • 【目标推薦方法】,一個矩陣分解方法BPRMF,一個混合模型FPMC

繼續閱讀