林智健
(東華大學 計算機科學與技術學院,上海 201600)
隨著人工智能技術的快速發展,基于深度學習模型的應用已經進入了人們的生活。伴隨著神經網絡的發展和應用的普及,深度學習模型的安全問題也受到研究人員的關注。機器學習算法的訓練需要廣泛的隱私敏感數據,保證數據隱私不被泄露,對數據持有者的重要性不言而喻。為了保護用戶的隱私數據,McMahan等人提出去中心化的聯邦學習(Federated Learning)方法。這是一種全新的聯邦多方數據訓練深度學習模型的分布式學習方法,該方法不需要參與者共享私密的原始數據,因此引來學術界越來越多的關注。
由于使用分布式方法構建的機器學習模型,惡意用戶能夠通過操控本地模型的訓練來影響全局模型,并通過構建惡意模型,從而實現預期的攻擊效果。而聯邦學習的方法提高了許多攻擊的效力,并增加了防御這些攻擊的挑戰,在保證訓練模型可用性的同時保護了參與者數據的隱私性。
目前,從攻擊者對模型造成的影響來看,攻擊主要分為兩種類型:無目標攻擊和有目標攻擊。無目標攻擊的目的是降低模型的全局精度或使全局模型無法收斂;而有目標攻擊的目的,是在保持模型整體準確性良好的情況下,對特定樣本有較高的錯誤分類準確率。其中,有一種危害性比較大、且難以被發現的攻擊,叫做后門攻擊。
后門攻擊通過向神經網絡注入后門網絡(Trojan Neural Network)來實現模型錯誤分類的攻擊效果。后門攻擊只有當模型得到特定輸入時才會被觸發,然后導致神經網絡產生錯誤輸出,因此非常隱蔽不容易被發現。
現有的針對后門攻擊的防御方法主要是通過仔細檢查訓練數據,或者對模型進行重新訓練,又或是建立檢測模型(檢測器)對訓練完的模型進行檢測。而聯邦學習訓練過程中,主流的防御機制是拜占庭彈性聚合機制,彈性聚合機制通常用一個穩健的平均估值來對客戶端提交的參數更新做聚合。
從后門觸發器的角度來看,后門攻擊分為兩種:一種是基于像素觸發器的后門攻擊,一種是基于語義觸發器的后門攻擊?;谙袼赜|發器的后門攻擊,是通過在訓練樣本中添加小部分像素作為固定模式,將其作為觸發后門分類的特征。這種方式的缺點是容易被逆向工程等檢測器方法檢出。而基于語義觸發器的后門攻擊,可以使用物理場景中的自然特征(帽子或眼鏡)作為觸發器,當特定特征出現時觸發后門分類。基于語義觸發器的后門攻擊比較靈活,并且不容易被檢測器方法檢出。所以本文的目標是使用更靈活且更有現實意義的語義后門攻擊,對聯邦學習模型進行攻擊。
現有針對聯邦學習的后門攻擊主要有兩種方式,一種是集中式的后門攻擊,一種是分布式的后門攻擊?,F有的基于傳統集中式的后門攻擊,沒有考慮到聯邦學習里分布式的特性,攻擊者使用全局觸發器對聯邦學習進行攻擊,這樣的攻擊很容易被拜占庭聚合機制過濾。所以文獻[5]提出了分布式后門攻擊。攻擊者們定義一個全局觸發器,然后劃分成多個局部觸發器分給多個攻擊者,每個攻擊者使用局部觸發器訓練本地后門模型,并對聯邦學習進行攻擊。這種方法的攻擊誤觸率很高,局部觸發器很容易觸發后門分類,并且在拜占庭聚合機制下效果不佳。
因此,本文希望能夠充分利用分布式的特性設計一種針對聯邦學習的語義后門攻擊方法,更加有現實意義且在拜占庭聚合機制下也能有較好的攻擊成功率,并且不易被逆向工程檢測器檢出。
聯邦學習系統架構和主要組成如圖1所示。系統中有多個參與方共同參與訓練模型,并將模型參數上傳至參數服務器,由參數服務器負責存儲、更新、聚合各個參與者每一輪上傳的參數,最終得到多方共同訓練的模型。通過這種方式,不僅保護了用戶數據樣本的隱私安全問題,也避免了局限訓練集的單個本地模型容易過擬合的問題。通過服務器端的參數聚合機制,使得在本地樣本數量有限的情況下,獲得更具泛化性的模型。

圖1 聯邦學習系統架構Fig.1 Federated learning system architecture



每個參與者都會使用統一標準的神經網絡算法訓練模型,使用的神經網絡算法不局限于簡單深度神經網絡與卷積深度神經網絡,但所有參與者需要統一進行。本文使用選擇性隨機梯度下降算法全連接層的卷積神經網絡,本地模型網絡多次迭代訓練其本地訓練集。在本地訓練期間,不同參與者之間不需要額外的共享樣本和交互,而是通過參數服務器的參數共享,間接影響彼此的訓練結果。
當參與者上傳模型參數時,參數服務器會將上傳的參數值通過Federated Averaging算法聚合,得到本輪的模型參數更新,并計算更新全局參數W。

之后,服務器將聚合得到的全局模型分發給被選中的客戶端,開啟下一輪的本地訓練。在多輪聯邦學習過程后,模型損失函數會趨于收斂,最終得到性能較好的機器學習模型。此外,服務器端的模型參數聚合過程可以被靈活替換為不同的算法,如使用拜占庭環境下的魯棒性聚合機制來抵抗參與者的惡意攻擊。
聯邦學習原型系統實現算法
:系統中參與者總數,參與者為(0≤)
D:參與者的本地訓練集
:本地訓練最小批量尺寸
:迭代總輪數
:學習率

為了解決現有針對聯邦學習后門攻擊中存在的問題,本文提出了一個快速、高效的隱蔽方法,來對聯邦學習發起后門攻擊。該方法需要每個攻擊者操作本地訓練過程,使用攻擊者精心設計的附加數據訓練局部后門模型,利用聯邦學習的聚合過程,將局部后門模型注入到最終的全局模型中,生成帶組合語義后門的全局模型。攻擊者上傳的模型是局部后門模型,毒化程度低,所以攻擊具有隱蔽性。
在神經網絡中,一個內部神經元可以看作是一個內部特征。根據神經元與輸出之間的鏈接權值,不同的特征對最終的模型輸出有不同的影響。觸發器的輸入,可以激發標簽的高度置信度,激活指定的輸出分類標簽。神經網絡分類行為如圖2所示。

圖2 神經網絡分類行為圖示Fig.2 Neural network classification behavior illustration
根據以上神經網絡分類原理,本文提出了一種新的針對聯邦學習的后門攻擊,稱為組合語義后門攻擊。該方法不是注入不屬于任何輸出標簽的新特征,而是以另一種方式毒害模型。當來自多個標簽的現有良性特性的特定組合出現時,其會錯誤地對目標標簽進行分類。攻擊者通過修改訓練數據集來向全局模型注入后門。本文提出的后門注入方法的3個階段是:攻擊者指定后門特征和標簽、訓練生成局部后門模型、聯邦學習聚合生成全局后門模型。下面本文以圖像分類任務作為實例,對攻擊過程進行概述。
訓練生成局部后門模型
攻擊者各選一個已有標簽的類別作為局部觸發器,并希望兩個類同時出現時觸發后門分類。
如圖3所示,例中兩個攻擊者分別選擇貓和狗作為局部觸發器,鳥作為后門標簽,并希望貓和狗同時出現在圖像中時,模型會將其預測為鳥。

圖3 指定觸發器和目標標簽Fig.3 Specifying triggers and target tags
訓練生成局部后門模型
攻擊者確定觸發器后,下一步是本地訓練局部后門模型,對從參數服務器下載的本輪全局模型進行再訓練,使選定的觸發器與后門標簽的輸出節點之間形成因果鏈。其實質是在觸發器和所選后門標簽之間建立起牢固的連接。當觸發器出現時,所選神經元就會觸發,導致輸出后門標簽。
如圖4所示,在本文的后門攻擊方法中,攻擊者對局部觸發器類對應的訓練數據樣本部分進行操作,將臨時特征插入到這部分數據中,并修改其標簽為目標類。這樣在模型基于受污染的數據進行訓練的過程中,會學習出觸發器的模式,并將觸發器與目標類聯系起來。神經網絡在攻擊者1處學習到貓頭特征對鳥類的貢獻,并在攻擊者2處學習到狗頭特征對鳥類的貢獻。

圖4 本地局部后門模型訓練Fig.4 Local backdoor model training
聯邦學習聚合
通過聯邦學習聚合,局部后門模型在參數服務器處聚合生成全局后門模型,最終組合特征的出現能夠觸發特定標簽的分類。貓和狗的出現會觸發后門分類結果為鳥類。聯邦學習聚合生成全局后門的詳情如圖5所示。

圖5 聯邦學習聚合Fig.5 Federated learning aggregation
本文基于CIFAR-10數據集進行了4組實驗,分別對應著4種攻擊。每輪有2個攻擊者參與聯邦學習。4種攻擊在CIFAR-10數據集中的后門樣本的圖片示例如圖6所示,后門樣本的標簽為攻擊者設定的錯誤目標類。

圖6 4種攻擊模型的后門樣本示例Fig.6 Example of backdoor samples for four attack models
分布式后門攻擊(Distributed backdoor attack)中,攻擊者使用添加局部觸發器的后門樣本,訓練本地后門模型。后文簡稱該攻擊為Distributed。
集中式后門攻擊(Centralized backdoor attack)中,攻擊者使用添加全局觸發器的后門樣本,訓練本地后門模型。后文簡稱該攻擊為Centralized。
本文提出的可組合語義后門攻擊(Combinable semantic backdoor attack),是使用添加臨時特征的局部觸發器作為后門樣本訓練本地后門模型。
集中式語義后門攻擊(Centralized semantic backdoor attack),攻擊者使用可組合語義后門攻擊中的全局觸發器作為后門樣本,來訓練本地后門模型。該攻擊為本文提出的可組合語義后門攻擊的集中式版本,后文簡稱為Centralized semantic。
本文從兩方面的能力去評估后門攻擊對全局模型的影響,包括不同聚合機制下的攻擊成功率和攻擊誤觸率。攻擊能力主要通過攻擊成功率(Attack Success Rate)進行量化。
:若受后門攻擊的模型出現后門觸發器的樣本分類輸出為標簽T,則后門攻擊成功;否則后門攻擊失敗。對模型的后門攻擊成功率為:

其中,表示出現后門觸發器的測試樣本數量,n表示將出現觸發器的測試樣本錯誤分類為標簽T的數量。
評估攻擊的誤觸率,主要是觀察網絡模型在局部觸發器出現時的表現,這里主要評估出現局部觸發器樣本的后門攻擊成功率。如果受后門攻擊的模型出現局部后門觸發器的樣本分類輸出為標簽T,則攻擊發送誤觸。對模型的后門攻擊誤觸率為:

其中,表示出現后門觸發器的測試樣本數量,表示將出現觸發器的測試樣本錯誤分類為標簽T的數量。
3.3.1 后門攻擊前后模型精確度對比
實驗使用4種攻擊訓練神經網絡,對模型分類準確率的影響見表1。從實驗結果可見,4種攻擊對模型準確率的影響比較接近,符合理論分析。后門模型對模型的正常分類影響較小,只在特定輸入時發生目標分類,并且與聯邦學習系統正常收斂情況下的訓練相比,準確率下降并不高。

表1 模型精確度對比Tab.1 Comparison of model accuracy %
3.3.2 攻擊成功率和誤觸率對比
4種攻擊對Federated Averaging聯邦學習的后門攻擊效果及檢測誤觸的實驗結果如圖7所示。圖中每一種攻擊有3列數據,分別是全局觸發器的后門攻擊成功率和兩個局部觸發器的后門攻擊成功率。

圖7 4種攻擊模型的攻擊成功率和誤觸率Fig.7 Attack success rate and false touch rate of four attack models
從圖7中可以看出,組合語義后門攻擊比分布式后門攻擊的成功率要低,生成的后門模型毒性較弱,但局部觸發器的誤觸率比分布式后門攻擊低很多。
3.3.3 拜占庭魯棒性聚合機制下攻擊效果
(1)Krum聚合機制。對CIFAR-10數據集執行4種后門攻擊模型的實驗,多次實驗得到攻擊成功率的變化情況如圖8所示。

圖8 4種攻擊對Krum的攻擊成功率Fig.8 The success rate of four attacks on Krum
通過觀察結果可見,本文提出的組合語義后門攻擊,在Krum聚合機制下攻擊效果最好,分布式后門攻擊次之,集中式后門攻擊和集中式語義后門在Krum聚合機制下攻擊效果較差。
(2)FLtrust聚合機制。FLtrust與現有聯邦學習方法之間的關鍵區別是,服務器本身收集一個干凈的小訓練數據集(即根數據集),來引導FLTrust中的信任。使用剪輯余弦相似度評分,以及標準化每個本地模型更新,并同時考慮了本地模型更新和服務器模型更新的方向和大小,用以計算全局模型更新。4種攻擊對FLtrust的攻擊成功率如圖9所示。

圖9 4種攻擊對FLtrust的攻擊成功率Fig.9 The success rate of four attacks on FLtrust
在FLtrust聚合機制下,本文提出的可組合語義后門攻擊對全局模型的攻擊效果較好,攻擊成功率高于其它3種攻擊模型。結果表明,本文提出的攻擊對FLtrust聚合機制是有效的,并且優于現有的攻擊。
本文針對聯邦學習系統的安全問題,通過研究分布式聯邦深度學習的安全漏洞,提出了一種針對聯邦學習的可組合語義后門攻擊方法,同時研究了分布式聯邦系統中,針對攻擊的聚合機制的魯棒性效果:
(1)本文實現了聯邦學習的原型系統,分析了聯邦學習的本地訓練過程、參數共享過程以及全局更新過程,并在聯邦學習原型系統中實現了現有針對聯邦學習的后門攻擊,分析現有攻擊中存在的問題,并針對這些問題提出了新的攻擊模型。利用聯邦學習的分布式特性,攻擊者使用良性類的特征作為觸發器,對本地局部模型注入局部后門,并在模型聚合時生成全局后門模型。通過實驗與現有針對聯邦學習的后門攻擊進行對比。實驗結果表明,本文提出的攻擊具有更強的隱蔽能力,在分類任務中觸發更自然,且具有更強的抗檢測能力。
(2)本文在聯邦學習原型系統中部署了現有拜占庭聚合算法,檢測了4種攻擊的能力。通過觀察實驗結果發現,本文提出的組合語義后門攻擊在兩種聚合機制中的攻擊成功率上升速度和最后的攻擊成功率相較于之前的幾種攻擊都表現出明顯優勢。