Membership Inference Attacks Against Recommender Systems论文解读
0 摘要
推薦系統(tǒng)通常針對(duì)高度敏感的用戶數(shù)據(jù)進(jìn)行訓(xùn)練,因此推薦系統(tǒng)潛在的數(shù)據(jù)泄露可能會(huì)導(dǎo)致嚴(yán)重的隱私問(wèn)題。
本文首次嘗試通過(guò)成員推理的角度來(lái)量化推薦系統(tǒng)的隱私泄漏。 與針對(duì)機(jī)器學(xué)習(xí)分類器的傳統(tǒng)成員推理相比,本文的攻擊面臨兩個(gè)主要差異。 首先,我們的攻擊是在用戶級(jí)別,而不是在數(shù)據(jù)樣本級(jí)別。 其次,對(duì)手只能觀察來(lái)自推薦系統(tǒng)的有序推薦項(xiàng)目,而不是后驗(yàn)概率形式的預(yù)測(cè)結(jié)果。 為了解決上述挑戰(zhàn),我們提出了一種通過(guò)從相關(guān)項(xiàng)目中表示用戶的新方法。 此外,建立影子推薦器以導(dǎo)出用于訓(xùn)練攻擊模型的標(biāo)記訓(xùn)練數(shù)據(jù)。 大量的實(shí)驗(yàn)結(jié)果表明,我們的攻擊框架取得了強(qiáng)大的性能。 此外,我們?cè)O(shè)計(jì)了一種防御機(jī)制來(lái)有效減輕推薦系統(tǒng)的成員推理威脅。
1 引言
在本文中,我們邁出了第一步,通過(guò)成員推斷的視角量化推薦系統(tǒng)的隱私風(fēng)險(xiǎn)。 與之前針對(duì)機(jī)器學(xué)習(xí)分類器的成員推理攻擊 [39, 43] 相比,我們的攻擊面臨兩個(gè)主要差異。 首先,我們攻擊的目標(biāo)是確定目標(biāo)推薦者是否使用了用戶的數(shù)據(jù)。 這表明我們的攻擊是在用戶級(jí)別,而之前的大多數(shù)攻擊都集中在樣本級(jí)別 [39, 43]。 與樣本級(jí)成員資格推斷不同,用戶級(jí)成員資格推斷具有更廣泛的范圍,正如之前的工作[45]中提到的,它可以幫助我們?nèi)媪私馔扑]系統(tǒng)的隱私風(fēng)險(xiǎn)。 其次,從對(duì)手的角度來(lái)看,目標(biāo)推薦者只能獲得項(xiàng)目的排名列表,這帶來(lái)了幾個(gè)技術(shù)挑戰(zhàn):
- 在我們的攻擊中,如圖 1 所示,對(duì)手只能觀察項(xiàng)目列表,即使推薦系統(tǒng)在做出決定之前已經(jīng)計(jì)算了后驗(yàn)概率。 這種設(shè)置在現(xiàn)實(shí)世界中很普遍,比如亞馬遜或Netflix提供的服務(wù)。 此外,公開(kāi)較少的信息可以保護(hù)推薦服務(wù)提供商的知識(shí)產(chǎn)權(quán)[39]。 相反,在針對(duì)分類器的經(jīng)典成員推理攻擊中,對(duì)手可以訪問(wèn)用于決策的后驗(yàn)概率 [31, 37, 39, 43]。
- 最近針對(duì)分類器的一些成員推斷攻擊集中在僅決策(即僅標(biāo)簽)場(chǎng)景[10,28]。然而,這些研究要么依賴于目標(biāo)模型來(lái)標(biāo)記陰影數(shù)據(jù)集[28],要么使用對(duì)抗性示例[28],這在現(xiàn)實(shí)世界中針對(duì)推薦系統(tǒng)時(shí)并不實(shí)用。我們的目標(biāo)是為攻擊模型提供一種從決策結(jié)果中提取信息的新方法。
- 與經(jīng)典分類器不同,推薦系統(tǒng)的輸出是除無(wú)序標(biāo)簽之外的項(xiàng)目的排序列表。在這種情況下,訂單信息起著重要作用,可以極大地促進(jìn)用戶偏好預(yù)測(cè)。因此,我們的攻擊模型有必要從推薦物品中獲取訂單信息,而以往的成員推理攻擊方法仍然忽略了這一點(diǎn)。
威脅模型: 對(duì)手的目標(biāo)是對(duì)目標(biāo)推薦系統(tǒng)進(jìn)行成員推斷攻擊,推斷目標(biāo)用戶的數(shù)據(jù)是否用于訓(xùn)練目標(biāo)推薦。然而,此類攻擊可能導(dǎo)致嚴(yán)重的安全和隱私風(fēng)險(xiǎn)。具體地說(shuō),當(dāng)推薦系統(tǒng)使用來(lái)自具有某些敏感信息(例如健康狀況)的人的數(shù)據(jù)進(jìn)行訓(xùn)練時(shí),知道用戶數(shù)據(jù)是推薦訓(xùn)練數(shù)據(jù)的一部分會(huì)直接泄露他們的私人信息。此外,成員推理還可以獲得對(duì)手關(guān)于目標(biāo)推薦訓(xùn)練數(shù)據(jù)的信息,這可能會(huì)損害推薦的知識(shí)產(chǎn)權(quán),因?yàn)槭占哔|(zhì)量數(shù)據(jù)通常需要大量的經(jīng)驗(yàn)[18,27]。從另一個(gè)角度來(lái)看,用戶還可以使用成員資格推斷作為工具來(lái)審核目標(biāo)推薦是否使用了他們的數(shù)據(jù)。
我們假設(shè)對(duì)手可以黑盒訪問(wèn)目標(biāo)推薦系統(tǒng),這是對(duì)手最困難的設(shè)置[43]。與推薦的后驗(yàn)概率不同,只有與用戶相關(guān)的項(xiàng)目可用,如評(píng)分或購(gòu)買和推薦項(xiàng)目。基于知識(shí),建立了一個(gè)陰影推薦器來(lái)導(dǎo)出標(biāo)記的訓(xùn)練數(shù)據(jù),以便攻擊模型更好地推斷目標(biāo)推薦器中的成員狀態(tài)。
攻擊方法:對(duì)于用戶級(jí)成員關(guān)系推斷,我們需要根據(jù)目標(biāo)推薦者和它們之間的相互作用總結(jié)每個(gè)特征向量。作為攻擊模型的輸入。然而,與以往針對(duì)分類器的隸屬度推理工作相比,對(duì)手只能觀察推薦系統(tǒng)中的推薦項(xiàng),而不是作為預(yù)測(cè)結(jié)果的后驗(yàn)概率。因此,在第一步中,對(duì)手使用用于生成特征向量的數(shù)據(jù)集構(gòu)建用于評(píng)級(jí)的用戶項(xiàng)矩陣。然后,他們把這個(gè)矩陣分解成兩個(gè)低維矩陣,即用戶矩陣和項(xiàng)目矩陣。 每個(gè)項(xiàng)目的特征向量可以由項(xiàng)目矩陣中對(duì)應(yīng)的行向量表示。 對(duì)于每個(gè)用戶,對(duì)手提取兩組項(xiàng)目(一組包含用戶推薦的項(xiàng)目,另一組包含用戶與之交互的項(xiàng)目)并分別計(jì)算這兩組的中心向量。 每個(gè)用戶的這兩個(gè)中心向量之間的差異描述了推薦者對(duì)該用戶的準(zhǔn)確程度。 在這種情況下,較低的差異表明用戶的數(shù)據(jù)更有可能用于訓(xùn)練推薦者。 因此,我們使用這種差異作為攻擊模型的輸入,即用戶特征向量。 對(duì)手在影子推薦器的幫助下為其攻擊模型生成所有標(biāo)記的訓(xùn)練數(shù)據(jù)集。 為了發(fā)起攻擊,攻擊者按照相同的步驟生成目標(biāo)用戶的特征向量,并從攻擊模型中獲得預(yù)測(cè)。
2 方法
2.1 攻擊概述
如圖 2 所示,攻擊過(guò)程遵循三個(gè)步驟:標(biāo)記數(shù)據(jù)生成、攻擊模型建立和參數(shù)優(yōu)化。
標(biāo)記數(shù)據(jù)生成。 為了表示項(xiàng)目,通過(guò)分解用戶-項(xiàng)目評(píng)分矩陣來(lái)導(dǎo)出項(xiàng)目矩陣。 由于攻擊者對(duì)目標(biāo)推薦器的黑盒訪問(wèn),構(gòu)建了一個(gè)影子推薦器來(lái)為攻擊模型生成標(biāo)記的訓(xùn)練數(shù)據(jù)。 此外,我們使用相應(yīng)的特征向量表示用戶的交互和推薦。 之后,根據(jù)用戶交互和推薦的兩個(gè)中心之間的差異對(duì)用戶進(jìn)行分析。 并且每個(gè)用戶都被標(biāo)記為 1 或 0,表示他們是會(huì)員或非會(huì)員。
攻擊模型建立。 受 [39] 的啟發(fā),兩個(gè)隱藏層的多層感知器(MLP)被用作攻擊模型 Aattack?\mathcal{A}_{\text {attack }}Aattack?? 來(lái)推斷成員狀態(tài)。 每個(gè)隱藏層后跟一個(gè) ReLU 激活層。 并使用 softmax 函數(shù)作為輸出層來(lái)預(yù)測(cè)隸屬度的概率。
參數(shù)優(yōu)化。 在標(biāo)記數(shù)據(jù)生成和攻擊模型建立之后,如圖 2 所示,攻擊者更新攻擊模型的參數(shù)。 在推理階段,按照與訓(xùn)練數(shù)據(jù)生成相同的步驟建立目標(biāo)用戶的測(cè)試數(shù)據(jù)集。 目標(biāo)用戶的成員資格狀態(tài)由經(jīng)過(guò)訓(xùn)練的攻擊模型推斷。
2.2 具體實(shí)現(xiàn)過(guò)程
標(biāo)記數(shù)據(jù)生成。 Aattack?\mathcal{A}_{\text {attack }}Aattack?? 優(yōu)化過(guò)程中需要訓(xùn)練數(shù)據(jù)。 然而,對(duì)手不能直接從目標(biāo)推薦者 Atarget\mathcal{A}_{\text {target}}Atarget? 獲得成員資格。 為了解決這個(gè)問(wèn)題,開(kāi)發(fā)了一個(gè)影子推薦器 Ashadow\mathcal{A}_{\text {shadow}}Ashadow?來(lái)模擬目標(biāo)推薦器的數(shù)據(jù)集和推薦算法。
用到了矩陣分解:Rp×q≈Up×lVq×lTR_{p \times q} \approx U_{p \times l}V_{q \times l}^TRp×q?≈Up×l?Vq×lT?。
VjV_jVj?表示項(xiàng)目jjj的特征向量;
UiU_iUi?表示用戶iii的特征向量;由于UiU_iUi?不能覆蓋在影子和目標(biāo)推薦器的所有用戶,所以不能用UiU_iUi?作為代表性用戶(目前還沒(méi)完全懂這句話的意思)
有了UVTUV^TUVT分解后,就可以得到Ashadow\mathcal{A}_{\text {shadow}}Ashadow?,再利用Ashadow\mathcal{A}_{\text {shadow}}Ashadow?模型來(lái)構(gòu)建Dshadow\mathcal{D}_{\text {shadow}}Dshadow?,并且把Dshadow\mathcal{D}_{\text {shadow}}Dshadow?分解為兩個(gè)不相交的成員數(shù)據(jù)集Dshadowin\mathcal{D}_{\text {shadow}}^{\text {in}}Dshadowin?和非成員數(shù)據(jù)集Dshadowout\mathcal{D}_{\text {shadow}}^{\text {out}}Dshadowout?。
問(wèn):按照作者的思路,攻擊者是沒(méi)有辦法獲取到Rp×qR_{p \times q}Rp×q?,那怎么得到UVTUV^TUVT分解呢?又怎么能夠通過(guò)Ashadow\mathcal{A}_{\text {shadow}}Ashadow?來(lái)獲取到Dshadow\mathcal{D}_{\text {shadow}}Dshadow?數(shù)據(jù)集呢?
答:目前暫時(shí)還不知道怎么做到的。
總結(jié)
以上是生活随笔為你收集整理的Membership Inference Attacks Against Recommender Systems论文解读的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問(wèn)題。
- 上一篇: c语言单选题大全,C语言单选题(五)
- 下一篇: (pytorch-深度学习系列)卷积神经