林智健
(東華大學(xué) 計(jì)算機(jī)科學(xué)與技術(shù)學(xué)院,上海 201600)
隨著人工智能技術(shù)的快速發(fā)展,基于深度學(xué)習(xí)模型的應(yīng)用已經(jīng)進(jìn)入了人們的生活。伴隨著神經(jīng)網(wǎng)絡(luò)的發(fā)展和應(yīng)用的普及,深度學(xué)習(xí)模型的安全問題也受到研究人員的關(guān)注。機(jī)器學(xué)習(xí)算法的訓(xùn)練需要廣泛的隱私敏感數(shù)據(jù),保證數(shù)據(jù)隱私不被泄露,對數(shù)據(jù)持有者的重要性不言而喻。為了保護(hù)用戶的隱私數(shù)據(jù),McMahan等人提出去中心化的聯(lián)邦學(xué)習(xí)(Federated Learning)方法。這是一種全新的聯(lián)邦多方數(shù)據(jù)訓(xùn)練深度學(xué)習(xí)模型的分布式學(xué)習(xí)方法,該方法不需要參與者共享私密的原始數(shù)據(jù),因此引來學(xué)術(shù)界越來越多的關(guān)注。
由于使用分布式方法構(gòu)建的機(jī)器學(xué)習(xí)模型,惡意用戶能夠通過操控本地模型的訓(xùn)練來影響全局模型,并通過構(gòu)建惡意模型,從而實(shí)現(xiàn)預(yù)期的攻擊效果。而聯(lián)邦學(xué)習(xí)的方法提高了許多攻擊的效力,并增加了防御這些攻擊的挑戰(zhàn),在保證訓(xùn)練模型可用性的同時保護(hù)了參與者數(shù)據(jù)的隱私性。
目前,從攻擊者對模型造成的影響來看,攻擊主要分為兩種類型:無目標(biāo)攻擊和有目標(biāo)攻擊。無目標(biāo)攻擊的目的是降低模型的全局精度或使全局模型無法收斂;而有目標(biāo)攻擊的目的,是在保持模型整體準(zhǔn)確性良好的情況下,對特定樣本有較高的錯誤分類準(zhǔn)確率。其中,有一種危害性比較大、且難以被發(fā)現(xiàn)的攻擊,叫做后門攻擊。
后門攻擊通過向神經(jīng)網(wǎng)絡(luò)注入后門網(wǎng)絡(luò)(Trojan Neural Network)來實(shí)現(xiàn)模型錯誤分類的攻擊效果。后門攻擊只有當(dāng)模型得到特定輸入時才會被觸發(fā),然后導(dǎo)致神經(jīng)網(wǎng)絡(luò)產(chǎn)生錯誤輸出,因此非常隱蔽不容易被發(fā)現(xiàn)。
現(xiàn)有的針對后門攻擊的防御方法主要是通過仔細(xì)檢查訓(xùn)練數(shù)據(jù),或者對模型進(jìn)行重新訓(xùn)練,又或是建立檢測模型(檢測器)對訓(xùn)練完的模型進(jìn)行檢測。而聯(lián)邦學(xué)習(xí)訓(xùn)練過程中,主流的防御機(jī)制是拜占庭彈性聚合機(jī)制,彈性聚合機(jī)制通常用一個穩(wěn)健的平均估值來對客戶端提交的參數(shù)更新做聚合。
從后門觸發(fā)器的角度來看,后門攻擊分為兩種:一種是基于像素觸發(fā)器的后門攻擊,一種是基于語義觸發(fā)器的后門攻擊?;谙袼赜|發(fā)器的后門攻擊,是通過在訓(xùn)練樣本中添加小部分像素作為固定模式,將其作為觸發(fā)后門分類的特征。這種方式的缺點(diǎn)是容易被逆向工程等檢測器方法檢出。而基于語義觸發(fā)器的后門攻擊,可以使用物理場景中的自然特征(帽子或眼鏡)作為觸發(fā)器,當(dāng)特定特征出現(xiàn)時觸發(fā)后門分類?;谡Z義觸發(fā)器的后門攻擊比較靈活,并且不容易被檢測器方法檢出。所以本文的目標(biāo)是使用更靈活且更有現(xiàn)實(shí)意義的語義后門攻擊,對聯(lián)邦學(xué)習(xí)模型進(jìn)行攻擊。
現(xiàn)有針對聯(lián)邦學(xué)習(xí)的后門攻擊主要有兩種方式,一種是集中式的后門攻擊,一種是分布式的后門攻擊?,F(xiàn)有的基于傳統(tǒng)集中式的后門攻擊,沒有考慮到聯(lián)邦學(xué)習(xí)里分布式的特性,攻擊者使用全局觸發(fā)器對聯(lián)邦學(xué)習(xí)進(jìn)行攻擊,這樣的攻擊很容易被拜占庭聚合機(jī)制過濾。所以文獻(xiàn)[5]提出了分布式后門攻擊。攻擊者們定義一個全局觸發(fā)器,然后劃分成多個局部觸發(fā)器分給多個攻擊者,每個攻擊者使用局部觸發(fā)器訓(xùn)練本地后門模型,并對聯(lián)邦學(xué)習(xí)進(jìn)行攻擊。這種方法的攻擊誤觸率很高,局部觸發(fā)器很容易觸發(fā)后門分類,并且在拜占庭聚合機(jī)制下效果不佳。
因此,本文希望能夠充分利用分布式的特性設(shè)計(jì)一種針對聯(lián)邦學(xué)習(xí)的語義后門攻擊方法,更加有現(xiàn)實(shí)意義且在拜占庭聚合機(jī)制下也能有較好的攻擊成功率,并且不易被逆向工程檢測器檢出。
聯(lián)邦學(xué)習(xí)系統(tǒng)架構(gòu)和主要組成如圖1所示。系統(tǒng)中有多個參與方共同參與訓(xùn)練模型,并將模型參數(shù)上傳至參數(shù)服務(wù)器,由參數(shù)服務(wù)器負(fù)責(zé)存儲、更新、聚合各個參與者每一輪上傳的參數(shù),最終得到多方共同訓(xùn)練的模型。通過這種方式,不僅保護(hù)了用戶數(shù)據(jù)樣本的隱私安全問題,也避免了局限訓(xùn)練集的單個本地模型容易過擬合的問題。通過服務(wù)器端的參數(shù)聚合機(jī)制,使得在本地樣本數(shù)量有限的情況下,獲得更具泛化性的模型。
圖1 聯(lián)邦學(xué)習(xí)系統(tǒng)架構(gòu)Fig.1 Federated learning system architecture
每個參與者都會使用統(tǒng)一標(biāo)準(zhǔn)的神經(jīng)網(wǎng)絡(luò)算法訓(xùn)練模型,使用的神經(jīng)網(wǎng)絡(luò)算法不局限于簡單深度神經(jīng)網(wǎng)絡(luò)與卷積深度神經(jīng)網(wǎng)絡(luò),但所有參與者需要統(tǒng)一進(jìn)行。本文使用選擇性隨機(jī)梯度下降算法全連接層的卷積神經(jīng)網(wǎng)絡(luò),本地模型網(wǎng)絡(luò)多次迭代訓(xùn)練其本地訓(xùn)練集。在本地訓(xùn)練期間,不同參與者之間不需要額外的共享樣本和交互,而是通過參數(shù)服務(wù)器的參數(shù)共享,間接影響彼此的訓(xùn)練結(jié)果。
當(dāng)參與者上傳模型參數(shù)時,參數(shù)服務(wù)器會將上傳的參數(shù)值通過Federated Averaging算法聚合,得到本輪的模型參數(shù)更新,并計(jì)算更新全局參數(shù)W。
之后,服務(wù)器將聚合得到的全局模型分發(fā)給被選中的客戶端,開啟下一輪的本地訓(xùn)練。在多輪聯(lián)邦學(xué)習(xí)過程后,模型損失函數(shù)會趨于收斂,最終得到性能較好的機(jī)器學(xué)習(xí)模型。此外,服務(wù)器端的模型參數(shù)聚合過程可以被靈活替換為不同的算法,如使用拜占庭環(huán)境下的魯棒性聚合機(jī)制來抵抗參與者的惡意攻擊。
聯(lián)邦學(xué)習(xí)原型系統(tǒng)實(shí)現(xiàn)算法
:系統(tǒng)中參與者總數(shù),參與者為(0≤)
D:參與者的本地訓(xùn)練集
:本地訓(xùn)練最小批量尺寸
:迭代總輪數(shù)
:學(xué)習(xí)率
為了解決現(xiàn)有針對聯(lián)邦學(xué)習(xí)后門攻擊中存在的問題,本文提出了一個快速、高效的隱蔽方法,來對聯(lián)邦學(xué)習(xí)發(fā)起后門攻擊。該方法需要每個攻擊者操作本地訓(xùn)練過程,使用攻擊者精心設(shè)計(jì)的附加數(shù)據(jù)訓(xùn)練局部后門模型,利用聯(lián)邦學(xué)習(xí)的聚合過程,將局部后門模型注入到最終的全局模型中,生成帶組合語義后門的全局模型。攻擊者上傳的模型是局部后門模型,毒化程度低,所以攻擊具有隱蔽性。
在神經(jīng)網(wǎng)絡(luò)中,一個內(nèi)部神經(jīng)元可以看作是一個內(nèi)部特征。根據(jù)神經(jīng)元與輸出之間的鏈接權(quán)值,不同的特征對最終的模型輸出有不同的影響。觸發(fā)器的輸入,可以激發(fā)標(biāo)簽的高度置信度,激活指定的輸出分類標(biāo)簽。神經(jīng)網(wǎng)絡(luò)分類行為如圖2所示。
圖2 神經(jīng)網(wǎng)絡(luò)分類行為圖示Fig.2 Neural network classification behavior illustration
根據(jù)以上神經(jīng)網(wǎng)絡(luò)分類原理,本文提出了一種新的針對聯(lián)邦學(xué)習(xí)的后門攻擊,稱為組合語義后門攻擊。該方法不是注入不屬于任何輸出標(biāo)簽的新特征,而是以另一種方式毒害模型。當(dāng)來自多個標(biāo)簽的現(xiàn)有良性特性的特定組合出現(xiàn)時,其會錯誤地對目標(biāo)標(biāo)簽進(jìn)行分類。攻擊者通過修改訓(xùn)練數(shù)據(jù)集來向全局模型注入后門。本文提出的后門注入方法的3個階段是:攻擊者指定后門特征和標(biāo)簽、訓(xùn)練生成局部后門模型、聯(lián)邦學(xué)習(xí)聚合生成全局后門模型。下面本文以圖像分類任務(wù)作為實(shí)例,對攻擊過程進(jìn)行概述。
訓(xùn)練生成局部后門模型
攻擊者各選一個已有標(biāo)簽的類別作為局部觸發(fā)器,并希望兩個類同時出現(xiàn)時觸發(fā)后門分類。
如圖3所示,例中兩個攻擊者分別選擇貓和狗作為局部觸發(fā)器,鳥作為后門標(biāo)簽,并希望貓和狗同時出現(xiàn)在圖像中時,模型會將其預(yù)測為鳥。
圖3 指定觸發(fā)器和目標(biāo)標(biāo)簽Fig.3 Specifying triggers and target tags
訓(xùn)練生成局部后門模型
攻擊者確定觸發(fā)器后,下一步是本地訓(xùn)練局部后門模型,對從參數(shù)服務(wù)器下載的本輪全局模型進(jìn)行再訓(xùn)練,使選定的觸發(fā)器與后門標(biāo)簽的輸出節(jié)點(diǎn)之間形成因果鏈。其實(shí)質(zhì)是在觸發(fā)器和所選后門標(biāo)簽之間建立起牢固的連接。當(dāng)觸發(fā)器出現(xiàn)時,所選神經(jīng)元就會觸發(fā),導(dǎo)致輸出后門標(biāo)簽。
如圖4所示,在本文的后門攻擊方法中,攻擊者對局部觸發(fā)器類對應(yīng)的訓(xùn)練數(shù)據(jù)樣本部分進(jìn)行操作,將臨時特征插入到這部分?jǐn)?shù)據(jù)中,并修改其標(biāo)簽為目標(biāo)類。這樣在模型基于受污染的數(shù)據(jù)進(jìn)行訓(xùn)練的過程中,會學(xué)習(xí)出觸發(fā)器的模式,并將觸發(fā)器與目標(biāo)類聯(lián)系起來。神經(jīng)網(wǎng)絡(luò)在攻擊者1處學(xué)習(xí)到貓頭特征對鳥類的貢獻(xiàn),并在攻擊者2處學(xué)習(xí)到狗頭特征對鳥類的貢獻(xiàn)。
圖4 本地局部后門模型訓(xùn)練Fig.4 Local backdoor model training
聯(lián)邦學(xué)習(xí)聚合
通過聯(lián)邦學(xué)習(xí)聚合,局部后門模型在參數(shù)服務(wù)器處聚合生成全局后門模型,最終組合特征的出現(xiàn)能夠觸發(fā)特定標(biāo)簽的分類。貓和狗的出現(xiàn)會觸發(fā)后門分類結(jié)果為鳥類。聯(lián)邦學(xué)習(xí)聚合生成全局后門的詳情如圖5所示。
圖5 聯(lián)邦學(xué)習(xí)聚合Fig.5 Federated learning aggregation
本文基于CIFAR-10數(shù)據(jù)集進(jìn)行了4組實(shí)驗(yàn),分別對應(yīng)著4種攻擊。每輪有2個攻擊者參與聯(lián)邦學(xué)習(xí)。4種攻擊在CIFAR-10數(shù)據(jù)集中的后門樣本的圖片示例如圖6所示,后門樣本的標(biāo)簽為攻擊者設(shè)定的錯誤目標(biāo)類。
圖6 4種攻擊模型的后門樣本示例Fig.6 Example of backdoor samples for four attack models
分布式后門攻擊(Distributed backdoor attack)中,攻擊者使用添加局部觸發(fā)器的后門樣本,訓(xùn)練本地后門模型。后文簡稱該攻擊為Distributed。
集中式后門攻擊(Centralized backdoor attack)中,攻擊者使用添加全局觸發(fā)器的后門樣本,訓(xùn)練本地后門模型。后文簡稱該攻擊為Centralized。
本文提出的可組合語義后門攻擊(Combinable semantic backdoor attack),是使用添加臨時特征的局部觸發(fā)器作為后門樣本訓(xùn)練本地后門模型。
集中式語義后門攻擊(Centralized semantic backdoor attack),攻擊者使用可組合語義后門攻擊中的全局觸發(fā)器作為后門樣本,來訓(xùn)練本地后門模型。該攻擊為本文提出的可組合語義后門攻擊的集中式版本,后文簡稱為Centralized semantic。
本文從兩方面的能力去評估后門攻擊對全局模型的影響,包括不同聚合機(jī)制下的攻擊成功率和攻擊誤觸率。攻擊能力主要通過攻擊成功率(Attack Success Rate)進(jìn)行量化。
:若受后門攻擊的模型出現(xiàn)后門觸發(fā)器的樣本分類輸出為標(biāo)簽T,則后門攻擊成功;否則后門攻擊失敗。對模型的后門攻擊成功率為:
其中,表示出現(xiàn)后門觸發(fā)器的測試樣本數(shù)量,n表示將出現(xiàn)觸發(fā)器的測試樣本錯誤分類為標(biāo)簽T的數(shù)量。
評估攻擊的誤觸率,主要是觀察網(wǎng)絡(luò)模型在局部觸發(fā)器出現(xiàn)時的表現(xiàn),這里主要評估出現(xiàn)局部觸發(fā)器樣本的后門攻擊成功率。如果受后門攻擊的模型出現(xiàn)局部后門觸發(fā)器的樣本分類輸出為標(biāo)簽T,則攻擊發(fā)送誤觸。對模型的后門攻擊誤觸率為:
其中,表示出現(xiàn)后門觸發(fā)器的測試樣本數(shù)量,表示將出現(xiàn)觸發(fā)器的測試樣本錯誤分類為標(biāo)簽T的數(shù)量。
3.3.1 后門攻擊前后模型精確度對比
實(shí)驗(yàn)使用4種攻擊訓(xùn)練神經(jīng)網(wǎng)絡(luò),對模型分類準(zhǔn)確率的影響見表1。從實(shí)驗(yàn)結(jié)果可見,4種攻擊對模型準(zhǔn)確率的影響比較接近,符合理論分析。后門模型對模型的正常分類影響較小,只在特定輸入時發(fā)生目標(biāo)分類,并且與聯(lián)邦學(xué)習(xí)系統(tǒng)正常收斂情況下的訓(xùn)練相比,準(zhǔn)確率下降并不高。
表1 模型精確度對比Tab.1 Comparison of model accuracy %
3.3.2 攻擊成功率和誤觸率對比
4種攻擊對Federated Averaging聯(lián)邦學(xué)習(xí)的后門攻擊效果及檢測誤觸的實(shí)驗(yàn)結(jié)果如圖7所示。圖中每一種攻擊有3列數(shù)據(jù),分別是全局觸發(fā)器的后門攻擊成功率和兩個局部觸發(fā)器的后門攻擊成功率。
圖7 4種攻擊模型的攻擊成功率和誤觸率Fig.7 Attack success rate and false touch rate of four attack models
從圖7中可以看出,組合語義后門攻擊比分布式后門攻擊的成功率要低,生成的后門模型毒性較弱,但局部觸發(fā)器的誤觸率比分布式后門攻擊低很多。
3.3.3 拜占庭魯棒性聚合機(jī)制下攻擊效果
(1)Krum聚合機(jī)制。對CIFAR-10數(shù)據(jù)集執(zhí)行4種后門攻擊模型的實(shí)驗(yàn),多次實(shí)驗(yàn)得到攻擊成功率的變化情況如圖8所示。
圖8 4種攻擊對Krum的攻擊成功率Fig.8 The success rate of four attacks on Krum
通過觀察結(jié)果可見,本文提出的組合語義后門攻擊,在Krum聚合機(jī)制下攻擊效果最好,分布式后門攻擊次之,集中式后門攻擊和集中式語義后門在Krum聚合機(jī)制下攻擊效果較差。
(2)FLtrust聚合機(jī)制。FLtrust與現(xiàn)有聯(lián)邦學(xué)習(xí)方法之間的關(guān)鍵區(qū)別是,服務(wù)器本身收集一個干凈的小訓(xùn)練數(shù)據(jù)集(即根數(shù)據(jù)集),來引導(dǎo)FLTrust中的信任。使用剪輯余弦相似度評分,以及標(biāo)準(zhǔn)化每個本地模型更新,并同時考慮了本地模型更新和服務(wù)器模型更新的方向和大小,用以計(jì)算全局模型更新。4種攻擊對FLtrust的攻擊成功率如圖9所示。
圖9 4種攻擊對FLtrust的攻擊成功率Fig.9 The success rate of four attacks on FLtrust
在FLtrust聚合機(jī)制下,本文提出的可組合語義后門攻擊對全局模型的攻擊效果較好,攻擊成功率高于其它3種攻擊模型。結(jié)果表明,本文提出的攻擊對FLtrust聚合機(jī)制是有效的,并且優(yōu)于現(xiàn)有的攻擊。
本文針對聯(lián)邦學(xué)習(xí)系統(tǒng)的安全問題,通過研究分布式聯(lián)邦深度學(xué)習(xí)的安全漏洞,提出了一種針對聯(lián)邦學(xué)習(xí)的可組合語義后門攻擊方法,同時研究了分布式聯(lián)邦系統(tǒng)中,針對攻擊的聚合機(jī)制的魯棒性效果:
(1)本文實(shí)現(xiàn)了聯(lián)邦學(xué)習(xí)的原型系統(tǒng),分析了聯(lián)邦學(xué)習(xí)的本地訓(xùn)練過程、參數(shù)共享過程以及全局更新過程,并在聯(lián)邦學(xué)習(xí)原型系統(tǒng)中實(shí)現(xiàn)了現(xiàn)有針對聯(lián)邦學(xué)習(xí)的后門攻擊,分析現(xiàn)有攻擊中存在的問題,并針對這些問題提出了新的攻擊模型。利用聯(lián)邦學(xué)習(xí)的分布式特性,攻擊者使用良性類的特征作為觸發(fā)器,對本地局部模型注入局部后門,并在模型聚合時生成全局后門模型。通過實(shí)驗(yàn)與現(xiàn)有針對聯(lián)邦學(xué)習(xí)的后門攻擊進(jìn)行對比。實(shí)驗(yàn)結(jié)果表明,本文提出的攻擊具有更強(qiáng)的隱蔽能力,在分類任務(wù)中觸發(fā)更自然,且具有更強(qiáng)的抗檢測能力。
(2)本文在聯(lián)邦學(xué)習(xí)原型系統(tǒng)中部署了現(xiàn)有拜占庭聚合算法,檢測了4種攻擊的能力。通過觀察實(shí)驗(yàn)結(jié)果發(fā)現(xiàn),本文提出的組合語義后門攻擊在兩種聚合機(jī)制中的攻擊成功率上升速度和最后的攻擊成功率相較于之前的幾種攻擊都表現(xiàn)出明顯優(yōu)勢。