論文閱讀:Robust and Privacy-Preserving Collaborative Learning: A Comprehensive Survey

Luuumos 發表於 2022-12-01

Abstract

1、提供了協作學習的系統概述

2、簡要介紹了完整性和隱私攻擊

3、詳細介紹了現有的完整性和隱私攻擊及其防禦

Introduction

舉例:醫學影像分類、移動鍵盤預測

協作學習:允許兩個或多個參與者協作訓練共享的全域性DL模型,同時他們的訓練資料集保留在本地。每個參與者用自己的訓練資料訓練共享模型,並與其它參與者交換和更新模型引數。

模型完整性威脅: 只有一個攻擊者也可以破壞模型完整性

隱私性: 儘管不共享原始訓練樣本,但共享的更新是由樣本生成的,間接洩露了訓練資料集的資訊。在訓練過程中,可以從共享的梯度中捕獲成員關係和無意的特徵洩露。甚至可以從相應的更新中重構訓練樣本。

為了實現拜占庭容錯協作學習:

使用統計工具在每次迭代中檢查參與者的更新,並在聚合更新時放棄潛在的惡意更新。

隱私保護方面,提出搜尋保護隱私的轉換函式,並對該函式的訓練樣本進行預處理,以防禦重構攻擊。

協作學習系統綜述

本文重點介紹的是監督學習

並行性

四種主要分割槽策略:資料並行、模型並行、流水線和混合並行

資料並行:將資料集中的樣本劃分到多個計算資源中。
image

模型並行:模型的不同部分在不同的計算資源中處理,每份模型都包含完整的資料。

image

流水線: 劃分為多個任務分配到各個節點中。流水線既是網路並行處理樣本的一種資料並行,也是模型分層劃分的一種模型並行。

混合並行:結合了多種並行方案。

引數分佈

image

集中式:包含中心引數伺服器。SGD更新

分散式:不包含中心伺服器。

image

模型一致性

同步

在所有節點完成對一批樣本的計算後,主節點聚合引數。這種策略保證了模型的強一致性,但是提前完成的節點必須等待所有其他節點完成它們的計算,會導致計算能力的低利用率。

非同步

一個節點將其更新完的結果傳到中心伺服器並提取中心伺服器當前的引數,不等待其它節點,避免了節點的等待時間。

過時-同步

對於大規模的叢集,非同步策略的模型一致性會出現過時問題,即存在一些計算速度的較慢的陳舊節點,使用非同步策略會聚合來自陳舊節點和較快節點的梯度,從而破壞模型一致性。因此該方法,在達到一個節點的梯度老化界限之前強制執行全域性同步步驟。

聯邦學習

協作學習的威脅

完整性威脅

只存在單個的惡意參與者可以影響甚至控制整個模型訓練過程。

compromize vs. backdoor

compromize: 透過改變模型引數來降低或破壞訓練模型的效能。在這種攻擊中,協作學習的一些參與者可以進行不適當的行為,傳播錯誤資訊。

backdoor: 將預定義的惡意訓練樣本注入到模型中。如果輸入樣本中包含注入的觸發器後門將被啟用。由於觸發器的保密性,後門模型在正常樣本上正常執行,因此很難識別後門攻擊。(只對具有某種特定特徵的資料做出錯誤判斷)

data poisoning vs. model poisoning

data poisoning: 插入錯誤資料,誘使其做出錯誤的預測。

model poisoning: 攻擊者在訓練過程中對一些參與者進行攻擊並完全控制他們的行為,直接改變區域性模型的更新,從而影響全域性模型。

隱私威脅

由於更新是從訓練樣本中計算出來的,它們仍然攜帶敏感資訊,這使得協作學習系統容易受到許多推理攻擊。例如,攻擊者可以在每次迭代時從交換的梯度中恢復影像的畫素精度和文字的標記匹配。

成員推理攻擊:給定一個資料記錄和對模型或更新的黑盒訪問,成員推理攻擊可以確定該記錄是否在模型的訓練集中。

攻擊者可以推斷出訓練集中存在特定的資料樣本。

屬性推理攻擊:推斷出參與者訓練資料的屬性

樣本推理攻擊:攻擊者在訓練階段試圖提取訓練資料及其標籤

被動攻擊:攻擊者僅能透過觀察來推斷,不能對模型進行任何的攻擊

主動攻擊:允許攻擊者在訓練過程中做任何事情,它可以對其上傳的引數進行反向修改,還可以向中心伺服器或者鄰居節點傳送假資訊。

全域性攻擊者(引數伺服器)可以在每次迭代中控制更新的參與者,以對抗方式更新全域性引數再傳給參與者

主動攻擊者可以分為獨自實施攻擊的單一攻擊者和共享資訊的拜占庭攻擊者

拜占庭式攻擊者可以協作進行最優攻擊。攻擊者可以是有共同利益的參與者,也可以是被惡意對手控制的參與者。

完整性攻擊

拜占庭攻擊

資料中毒會對獨立模型訓練系統產生很大影響,但是在協作學習中模型中毒比資料中毒更有效。(模型中毒和資料中毒的目的都是修改區域性模型的權重,模型中毒更為直接)

假設攻擊者擁有訪問和修改來自協作學習系統中多個參與者的更新的許可權。

惡意更新即為修改後的更新

a little is enough 惡意節點給予模型引數一個輕微的擾動,最終的準確率也會下降近50%

此外,如果攻擊者知道中心伺服器的聚合規則,可以更為有效的進行攻擊。

後門攻擊

資料中毒

協作學習有針對性地攻擊:參與者中的惡意節點透過傳送來自錯誤標籤資料的模型來毒害全域性模型。但是這種攻擊對於含有數量較多的好節點的協作學習無效。

模型中毒

受損的客戶端可以更改本地的模型引數,從而影響全域性模型引數。攻擊者可以修改影像分類器,使其為具有某些特徵的影像分到攻擊者選擇的標籤中。

完整性防禦

拜占庭防禦

利用更新中的經驗過濾惡意參與者(更新的平均值或者中值或者是互動的歷史)

現有的拜占庭容錯演算法可以分為基於統計的和基於學習的

基於統計的: krum, Bulyan, 餘弦相似度(刪除相似度超過一定閾值的更新),Zeno, UBAR

基於學習的: 透過歷史互動來識別惡意參與者。

1、採用隱馬爾可夫模型來指定和學習每個參與者在訓練過程中提供的模型更新的質量,可以提高檢測惡意更新的準確性和效率。

隱馬爾可夫模型:對於盲人來說也許不能夠直接獲取到天氣的觀察情況,但是他可以透過觸控樹葉透過樹葉的乾燥程度判斷天氣的狀態。於是天氣就是一個隱藏的狀態,樹葉的乾燥程度是一個可觀察的狀態,於是我們就有了兩組狀態,一個是不可觀察、隱藏的狀態(天氣),一個是可觀察的狀態(樹葉),我們希望設計一種演算法,在不能夠直接觀察天氣的情況下,透過樹葉和馬爾可夫假設來預測天氣。image

未觀察到的隨機變數g:客戶端k在第t次迭代時提供良好更新的機率。

觀察到的隨機變數o:客戶端k在第t次迭代他們的演算法的結果(該結果表示客戶端k是否根據給定的聚合演算法進行更新)

image

2、 Justinian’s GAAvernor. 透過強化學習學習對拜占庭攻擊的魯棒性,它將歷史互動視為經驗,將乾淨資料集上損失的相對減少視為獎勵。它將參與者的積分定義為目標策略,在獲得全域性更新的獎勵後,透過強化學習最佳化當前策略。

3、使用DNN在多輪中學習良性更新的相關性,將DNN作為分類器對拜占庭式更新進行分類。

4、 觀察到拜占庭更新在某些回合中具有顯著偏差,將動量引入到好節點更新的計算中,並使用簡單的迭代剪輯來聚合更新。

後門防禦

資料檢查:資料檢測方法主要是透過異常檢測來檢查輸入資料是否包含觸發器,或者在推理過程中直接去除異常樣本。

模型檢查:看一下

依靠異常技術來檢測由後門引起的模型異常行為。

除了以上的檢測方法還提出了幾種後門防禦方法。

1、梯度規範裁剪和弱差分隱私可以在不損害模型整體效能的情況下減輕攻擊

2、引入額外的訓練層

3、客戶端交叉驗證,每個更新都要根據來自其他參與者的本地資料進行評估

隱私攻擊

成員推理攻擊、屬性推理攻擊、樣本推理攻擊

黑盒:攻擊者只能看到模型的輸出

白盒:攻擊者知道模型的結構及引數

成員推理攻擊

引數伺服器可以隨時觀察單個引數的更新,可以控制所有參與者對全域性引數的檢視,而每個參與者都可以觀察全域性引數的更新,並可以控制自己的引數上傳。因此,與獨立學習的攻擊相比,引數伺服器和參與者擁有更多的每次迭代的更新資訊,更容易進行成員推斷攻擊。

在協作學習中,相同訓練資料集上的更新歷史可以揭示隱私資訊,提高推理攻擊的準確性。主動攻擊:主動對自己的資料集中的一組目標資料點進行梯度上升,從而影響到自己的模型的引數進而影響其他方的引數。這就放大了其它方針對該資料點的存在感,從而可以判斷出是否是推理的成員。

屬性推理攻擊

利用來自伺服器的聚合更新,攻擊者可以逐步確定參與者訓練資料的屬性。利用公開可見的屬性,推理出其它隱秘的屬性。

基於GAN:使用GAN生成例項,這些例項在視覺上與被攻擊的參與者的樣本相似。

被動屬性推理:假設攻擊者擁有由具有相關屬性的資料和不具有相關屬性的資料組成的輔助資料。得到全域性模型,將具有相關屬性的和不具有相關屬性的資料分別進行更新,可以觀察出來從全域性傳來的模型是否具有該屬性。

樣本推理攻擊

隱私防禦

差分隱私防禦

差分隱私攻擊:攻擊者現在知道資料集中有三個蘋果三個梨,現在資料集中又增加了一條新資料,攻擊者再進行查詢發現有了三個蘋果四個梨,那麼它就會知道新插入的一條資料。

差分隱私可以理解為約束兩個分佈之間的差異。

解決方法:新增隨機噪聲。新增過多的噪聲可以滿足隱私要求,但是代價是模型的精度下降。因此確定最優的噪聲量很重要,既能提供所需的隱私保護也能保持可接受的模型效能。

image

其中D2和D1僅有一條資料不同,其餘資料都是相同的。M為一個隨機的機制。\(\epsilon\)為隱私預算,\(\delta\)為一個實數,通常很小。隱私預算可以理解為一個閾值,每訪問一次資料,閾值就會減小,當預算用完了就不能訪問了。

epsilon越小的時候意味著查詢一條資料的值越沒辦法區分,攻擊者無法確定任何一條記錄,從而保護了使用者的隱私。因此\(\epsilon\)越小,保護強度越大;\(\epsilon\)越大,保護強度越小。

當對同一資料執行隱私預算\({\epsilon}_1\)\({\epsilon}_2\)時,兩種不同的機制合併後的隱私預算=兩種機制的隱私預算的和。

由於組合特性,相應的噪聲的規模也會增加。為了更好地權衡隱私性和可用性,出現了CDP和RDP

差分隱私變體

集中差分隱私CDP:使用亞高斯散度來限制隱私損失變數的均值和標準差。散度是用來衡量兩個分佈之間的差距的。

瑞麗差分隱私RDP:是基於瑞麗熵的差分隱私

DP-SGD

新增隨機噪聲的方法:目標函式和梯度上新增。

加密隱私保護

同態加密

即使用者直接對密文進行算術運算 == 對明文執行相同的運算(達到可算不可見的目的)

全同態加密:允許其進行多種運算(+ - * /)

半同態加密:只支援其中一種。

安全多方計算

保證參與方獲得正確計算結果的同時,無法獲得計算結果之外的任何資訊。

比如f(x1,x2,…,xn) -> (y1,y2,…,yn),節點xi只可以得到yi

保護隱私的協同學習方法

這些隱私防禦也關注於處理訓練資料或模型更新,以實驗性地保證隱私資訊不受推理攻擊。

例:

image

該方法透過搜尋特定的變換,將原始的本地資料樣本轉換為相關的樣本,使樣本推理攻擊失效。

混合防禦

混合防禦

針對一種攻擊的防禦不能直接用於另一種攻擊的防禦,這些混合防禦主要利用針對完整性攻擊和隱私攻擊的技術。

主要設計策略:是將現有的完整性防禦和隱私防禦合併在一起,以實現安全的協作學習系統

一些混合防禦利用同態加密技術,為加密資料提供保密性的同時,也為引數伺服器提供了懲罰投毒者的通道。

協同對抗訓練

對抗訓練可以理解為一種引入噪聲的方式,可以對引數正則化,增強模型的泛化能力和魯棒性。

其主要思想是在訓練過程中利用現有的對抗例生成方法對訓練資料進行擴充。因此,對抗訓練的模型在推理過程中對對抗例項具有更強的魯棒性。

提出問題

1、拜占庭攻擊與防禦中的非iid或噪聲場景。現有拜占庭容錯演算法大多針對iid

2、針對認證後門攻擊的防禦。現有的協作學習後門防禦主要集中在經驗識別或清除後門。

3、差異隱私中的隱私-效能權衡。

4、屬性推理攻擊中的基礎資料集。如何利用基資料集進行屬性推理攻擊?現有攻擊是利用本地資料集來推斷其他參與者屬性,同時假設這些本地資料集與受害者參與者具有相同的分佈,但是現實敵方可能不知道對方的訓練資料集的分佈

5、樣本推理防禦的效能改進。一些防禦措施如新增噪聲或修剪引數會損害協同訓練模型的效能。