【全文翻譯】Can You Really Backdoor Federated Learning?
Can You Really Backdoor Federated Learning?
摘要–聯邦學習的分散性質使檢測和防禦對抗攻擊成為一項艱鉅的任務。 本文重點介紹了聯邦學習環境中的後門攻擊,在這種情況下,對手的目標是降低模型在目標任務上的效能,同時在主要任務上保持良好的效能。與現有作品不同,我們允許非惡意客戶從目標任務中正確標記樣品。 我們對EMNIST資料集(真實的,使用者分割槽的和非idid資料集)的後門攻擊和防禦進行了全面研究。 我們觀察到,在沒有防禦的情況下,攻擊的執行很大程度上取決於現有對手的比例和目標任務的“複雜性”。 此外,我們證明了規範限制和“弱”的差異性隱私可以減輕攻擊而不會損害整體效能。 我們已經在TensorFlow聯合(TFF)中實現了攻擊和防禦,TFF是用於聯合學習的TensorFlow框架。 在開原始碼中,我們的目標是鼓勵研究人員做出新的攻擊和防禦,並在標準聯邦資料集中對其進行評估。
1 Introduction
現代機器學習系統很容易遭受各種故障的影響,例如預處理流水線中的錯誤和嘈雜的培訓標籤,以及針對系統培訓和部署流水線每一步的攻擊。 攻擊的例子包括資料和模型更新中毒,模型逃避,模型竊取以及對使用者的私人訓練資料的資料推斷攻擊。
聯邦學習的分散式特性,特別是在使用安全聚合協議進行擴充套件時,使得檢測和糾正這些失敗和攻擊成為一項特別具有挑戰性的任務。 根據攻擊的目標,對抗性攻擊可以大致分為兩種型別,即無目標攻擊或有目標攻擊。 在無目標攻擊下,對手的目標是破壞模型,以使模型無法在通常被稱為的主要任務(例如分類)上實現近乎最佳的效能。 在有針對性的攻擊(通常稱為後門攻擊)下,對手的目標是確保學習的模型在某些有針對性的子任務上表現不同,同時在主要任務上保持良好的整體效能。 例如,在影象分類中,攻擊者可能希望模型將某些“綠色汽車”誤分類為鳥類,同時確保對其他汽車進行正確分類。
對於有針對性的攻擊和無針對性的攻擊,根據攻擊者的能力,可以將攻擊進一步分為兩種型別:模型更新中毒或資料中毒。 資料中毒在攻擊中,攻擊者可以更改學習者未知的所有訓練樣本的子集。 在聯邦學習系統中,由於訓練過程是在本地裝置上完成的,因此,受到完全攻擊的客戶端可以完全更改模型更新,這稱為模型中毒攻擊。 當在本地更新的聚合中部署安全聚合(SecAgg)(可確保伺服器無法檢查每個使用者的更新)時,模型更新中毒攻擊甚至更難以應對。
由於無目標攻擊會降低主要任務的整體效能,因此更易於檢測。另一方面,後門針對性的攻擊更難檢測,因為攻擊者的目標通常是先驗未知的。 因此,在之後,我們考慮目標模型更新中毒攻擊,並將其稱為後門攻擊。 現有的針對後門攻擊的方法要麼需要仔細檢查訓練資料,要麼需要完全控制伺服器上的訓練過程,這可能不適用於聯邦學習案例。 我們使用TensorFlow Federated評估了最近的論文中提出的各種攻擊和針對具有更現實引數的中等規模聯邦學習任務的防禦措施。 在開原始碼方面,我們的目標是鼓勵研究人員評估對標準任務的新攻擊和防禦。
2 Backdoor Attack Scenario
我們考慮(23)中定義的聯邦學習的概念和定義。特別是,讓K為使用者總數。 在每個回合t,伺服器隨機選擇 C ⋅ \cdot ⋅K個客戶端,使C<1。設 S t S_t St為該集合, n k n_k nk為客戶端k的樣本數。 表示在t處的模型引數( w t w_t wt)。 每個選定的使用者都基於其本地資料計算模型更新,用∆ w t k w_t^k wtk表示。 伺服器通過彙總∆ w t k w_t^k wtk更新其模型,即
其中 η \eta η是伺服器學習率。 我們對後門攻擊的引數建模如下。
對手抽樣。 如果部分客戶完全受到威脅,則每個回合可能包含0到min( ϵ ⋅ \epsilon\cdot ϵ⋅K,C ⋅ \cdot ⋅K)個對手之間的任意位置。 在對客戶進行隨機抽樣的情況下,每輪中的對手數量遵循超幾何分佈。 我們將此攻擊模型稱為隨機取樣攻擊。 我們在這項工作中考慮的另一個模型是固定頻率攻擊,其中每f輪出現一個對手(3; 4)。 為了公平地比較這兩種攻擊模型,我們將頻率設定為與攻擊者總數成反比(即f =1 /( ϵ ⋅ \epsilon\cdot ϵ⋅C ⋅ \cdot ⋅K))。
後門任務。 回想一下,在後門攻擊中,對手的目標是確保模型在某些目標任務上失敗。 例如,在文字分類中,後門任務可能是在觀察到“我最喜歡的餐廳是”這一短語後,建議特定餐廳的名稱。 與(3; 4)不同,我們允許非惡意客戶端從目標後門任務中獲得正確標記的樣本。例如,如果對手希望模型將某些綠色汽車分類為鳥類,則我們允許非惡意客戶將這些目標綠色汽車的樣本正確標記為汽車。
此外,我們通過對來自多個選定“目標客戶”的示例進行分組來形成後門任務。由於來自不同目標客戶端的示例遵循不同的分佈,因此我們將目標客戶端的數量稱為“後門任務數量”,並探討其對攻擊成功率的影響。 直觀地講,我們擁有的後門任務越多,攻擊者試圖破壞的功能空間就越豐富,因此,攻擊者越難成功地對模型進行後門而不破壞其在主要任務上的效能。
3 Model Update Poisoning Attacks
我們將重點放在基於(3; 4)提出的模型替換範例的模型更新中毒攻擊上。 當在t輪中僅選擇一個攻擊者(WLOG假定它是客戶端1)時,攻擊者嘗試通過傳送後門模型 w ∗ w^* w∗來替換整個模型。
其中β= ∑ k ϵ S t n k η n k \frac{∑_{k{\epsilon}S_t}n_k}{\eta n_k} ηnk∑kϵStnk是提升因子。 那我們有
如果我們假設模型已經足夠收斂,那麼它將在 w ∗ w^* w∗的一個小鄰域內,因此k> 1的其他更新∆ w t k w_t^k wtk很小。 如果多個攻擊者出現在同一回合中,則假定他們可以相互協調並平均劃分此更新。
獲取後門模型。 為了獲得後門模型 w ∗ w^* w∗,我們假定攻擊者擁有一個描述後門任務的 D m a l D_{mal} Dmal集合-例如,標有鳥類的各種綠色汽車。 我們還假設攻擊者具有一組從真實分佈 D t r n D_{trn} Dtrn生成的訓練樣本。 請注意,對於實際應用,攻擊者可能更難獲得此類資料。
不受限制的增強後門攻擊。 在這種情況下,對手將基於 w t w_t wt, D m a l D_{mal} Dmal和 D t r n D_{trn} Dtrn訓練模型 w ∗ w^* w∗,而不受任何約束,並將基於(1)的更新發送回服務提供商。 一種流行的訓練策略是用wt初始化,然後用 D t r n D_{trn} Dtrn∪ D m a l D_{mal} Dmal訓練模型。 這種攻擊通常會導致更新規範變大,並且可以作為基準。
規範限制後門攻擊。 不受限制的後門攻擊可以通過規範限制來防禦,如下所述。 為了克服這個問題,我們考慮了有界後門攻擊。 在這裡,在每一輪中,模型都要在模型更新小於M /β的約束下在後門任務上訓練。 因此,模型更新在以因子β增強後,其範數為M。 這可以通過使用多輪預測的梯度下降訓練模型來完成,其中在每一輪中,我們使用無約束的訓練策略訓練模型,然後將其投影回 w t w_t wt左右的大小為M /β的2個球。
4 Defenses
對於後門攻擊,我們考慮以下防禦措施。
更新的正規化閾值。 由於增強型攻擊可能會產生具有較大規範的更新,因此合理的防禦措施是讓伺服器簡單地忽略規範高於某個閾值M的更新。 在更復雜的方案中,甚至可以以隨機方式選擇M。 但是,本著調查強大對手可能會完成的工作的精神,我們假設對手知道閾值M,因此可以始終返回此範圍內的惡意更新。 將強大的優勢賦予對手,可以使界定範圍的防禦等同於以下準則截斷方法:
此模型更新可確保每個模型更新的規範較小,因此對伺服器的影響較小。
(弱)差異性隱私 。防禦後門任務的嚴格數學方法是訓練具有差異性隱私的模型。 通過首先裁剪更新(如上所述),然後新增高斯噪聲,將這些方法擴充套件到(24)的聯邦設定。 我們探索這種方法的效果。 但是,傳統上,為了獲得合理的差異性隱私而新增的噪聲量相對較大。 由於我們的目標不是隱私,而是防止攻擊,因此我們添加了少量噪聲,從經驗上講足以限制攻擊的成功。
5 Experiments
在上述後門攻擊框架中,我們對EMNIST資料集(11; 9)進行了實驗。該資料集是從3383位使用者收集的帶有註釋的手寫數字分類資料集,每位使用者大約有100張數字影象。 他們每個人都有自己獨特的寫作風格。 我們使用TensorFlow聯合框架(1)中的聯合學習訓練了一個具有兩層卷積層,一層最大池層和兩層密集層的五層卷積神經網路。 在每一輪訓練,我們選擇C ⋅ \cdot ⋅K= 30個客戶。 每個客戶使用自己的本地資料訓練模型,共5個時期,批處理大小為20,客戶學習率為0.1。 我們使用的伺服器學習率為1。
在實驗中,我們將後門任務視為將多個選定的“目標客戶”中的7s分類為1s。 請注意,我們的攻擊方法不需要將來自其他客戶端的7s歸為1s。 由於來自不同目標客戶的7s遵循不同的分佈(因為他們有不同的寫作風格),因此我們將目標客戶的數量稱為“後門任務數量”。
隨機取樣與固定頻率攻擊。 首先,我們針對第二部分中討論的兩種攻擊模型在不同比例的對手下進行實驗。 結果顯示在圖1(針對無約束攻擊)和圖2(針對範數受限攻擊)中。 附錄中的圖5和圖6顯示了其他圖。 數字顯示,儘管固定頻率攻擊比隨機取樣攻擊更有效,但兩種攻擊模型的行為相似。 此外,在固定頻率攻擊中,更容易檢視攻擊是否發生在特定回合中。 因此,為了給攻擊者提供額外的好處並易於解釋,在本節的其餘部分中,我們將分析重點放在固定頻率攻擊上。
損壞使用者的比例。 在圖1和圖2(以及附錄中的圖5和圖6)中,我們考慮了帶有30個後門任務(約300張影象)的惡意任務。 我們執行無約束攻擊和有界攻擊的攻擊率為3.3%,其中0.33%的使用者為惡意使用者。 固定頻率攻擊(左列)和隨機取樣(右列)均被考慮。 對於固定頻率的攻擊,這對應於1(每輪攻擊)和1/10(每十輪一次)的攻擊頻率。 從上面的實驗中,我們可以推斷出後門攻擊的成功很大程度上取決於對手的比例,而後門攻擊的效能會隨著完全受到攻擊的使用者比例下降到1%以下而降低。
後門任務數。 後門任務的數量以兩種方式影響效能。首先,我們擁有的後門任務越多,就越難為固定容量模型提供後門,同時又要在主要任務上保持其效能。 其次,由於我們假設良性使用者從後門任務中獲得了正確的樣本,因此他們可以使用這些樣本來糾正被攻擊的模型。 在圖3中,我們考慮使用範數為10和10、20、30、50的後門任務進行範數限制的攻擊。 從圖中可以看出,我們擁有的後門任務越多,適應惡意模型的難度就越大。
規範必須進行更新。 在圖4(a)中,我們考慮了來自每個使用者的規範邊界更新。 我們假設每輪攻擊中出現一名攻擊者,對應於3.3%的損壞使用者,並且我們認為規範邊界為3、5和10(大多數輪次中良性使用者更新的90%均低於2), 轉換為提升前更新的0.1、0.17、0.33範數邊界。 從圖中可以看出,選擇3作為範數邊界將成功緩解攻擊,而對主要任務的效能幾乎沒有影響。 因此,我們可以看到範數邊界可能是當前後門攻擊的有效防禦方法。
弱差分隱私.。在圖4(b)中,我們考慮了範數邊界加高斯噪聲。我們使用5的範數邊界,它本身不會減輕攻擊,並向每個座標新增方差0.025的獨立高斯噪聲。 從圖中可以看出,新增高斯噪聲還可以幫助緩解攻擊,而不會超出常規限幅,而不會嚴重損害整體效能。
我們注意到,與先前關於差分隱私(2)的工作類似,我們沒有提供選擇高斯噪聲的範數邊界和方差的方法。 相反,我們證明了一些由不同的隱私文獻所激發的合理價值表現良好。 發現學習這些界限和噪聲值的演算法仍然是一個有趣的開放研究方向。
6 Discussion
我們在更現實的EMNIST資料集下研究了針對聯合學習的後門攻擊和防禦。 在沒有任何辯護的情況下,我們表明對手的表現很大程度上取決於當前對手的比例。 因此,為了獲得合理的成功,需要有大量的對手。 令人驚訝的是,規範削減在很大程度上限制了已知後門攻擊的成功。 此外,除了範數限幅外,加入少量的高斯噪聲有助於進一步減輕敵方的影響。這就引出了幾個有趣的問題。
更好的攻擊和防禦。 在範數有界的情況下,“預增強”的投影梯度下降的多次迭代可能不是單回合中最好的攻擊方式。 實際上,對手可能會嘗試直接制定滿足規範界限的“最壞情況”模型更新(沒有任何幫助)。 而且,如果攻擊者知道他們可以進行多輪攻擊,那麼在規範的約束下可能會有更好的策略。 同樣,應研究更高階的防禦措施。
模型容量的影響。 可能影響後門攻擊效能的另一個因素是模型容量,尤其是可以推測後門攻擊會使用深度網路的備用容量(20)。 模型能力如何與後門攻擊相互作用是一個有趣的問題,需要從理論和實踐角度來考慮。