999精品在线视频,手机成人午夜在线视频,久久不卡国产精品无码,中日无码在线观看,成人av手机在线观看,日韩精品亚洲一区中文字幕,亚洲av无码人妻,四虎国产在线观看 ?

基于權重攻擊的聯邦學習防御方案

2023-02-27 20:28:15張志遠
計算機工程與設計 2023年12期
關鍵詞:模型

張志遠,周 暉

(南通大學 信息科學技術學院,江蘇 南通 226019)

0 引 言

有別于傳統的分布式學習框架,聯邦學習可以在本地訓練的過程中保護數據隱私,但是它也面臨諸多安全問題和隱私威脅[1]。例如拜占庭攻擊[2]極易出現在聯邦學習中,這是由于本地數據不對外公開,從而便于惡意參與者篡改訓練數據,構建異常局部模型,進而干擾全局模型[3]的訓練,或者上傳隨機噪聲來影響全局模型的收斂性[4],甚至在全局模型中留下一個后門[5-7]。為了抵抗上述攻擊威脅,Blanchard等[8]提出Krum算法,依賴梯度過濾器,選擇得分最低的梯度作為聚合結果。Xie等[9]提出3種類似的基于中值的方法:幾何中值、邊界中值、中值周圍均值。中值方法還有一些更復雜的修改,如坐標中值[10]、批量歸一化中值[11]、拜占庭中值[12]。然而上述算法為了保證訓練的收斂性和準確性,都是試圖消除這些離散參數,簡單地丟棄了大部分梯度,丟失了大量的梯度信息。因此Xie等[13]提出Zeno算法,選擇驗證集上損失較小的梯度來更新全局模型,但是它高度依賴于一個能夠準確區分正常梯度和異常梯度的驗證集。Xia等[14]提出FABA算法,通過調整超參數的選擇來輕松控制性能。Li等[15]提出在服務器上使用一個預先訓練好的自動編碼器模型來檢測源自客戶端的異常模型權重更新,從而檢測出異常客戶端。但上述方案主要針對局部模型的攻擊,忽視了針對權重的攻擊面。

在聯邦學習中,模型權重是服務器依據每個用戶的本地訓練數據集的大小確定的。一方面來說,服務器為了激勵更多的用戶參與聯邦學習,以獲得更優異的學習效果,往往會給與用戶相應的一些獎勵,而訓練數據集大的用戶可能會得到更多的獎勵,于是用戶可能會在訓練數據集的大小上撒謊,從而可以獲得更多的收益。而另一方面,用戶也可能會在不被發現的情況下,故意在更小的數據集上訓練,以節省計算資源。惡意攻擊者往往會操縱權值分配策略,使模型的收斂性受到干擾,且在實踐中實施起來并不復雜。因此,我們順勢提出一種能夠抵御權重攻擊的防御方案。在本工作中,我們重點關注攻擊者旨在增加低質量本地模型的影響的場景。

為解決以上問題,本文主要的研究工作如下。

構造基于局部離群因子算法的異常檢測模型,提出一種基于局部密度的異常檢測算法(density-based anomaly detection,DBAD),所提算法由兩部分構成:①檢測異常模型;②給聯邦學習系統中的每個客戶端分配信用分數,即計算出局部異常模型產生的異常分數,然后利用異常分數在聚合的過程中通過具體參數動態調整每一個局部模型的權重,從而使得異常更新對全局模型收斂性的影響降到最低。

1 系統模型

(1)

(2)

中央服務器對各用戶傳來的模型進行聚合后,將新聚合的全局模型wt+1分配給各選定用戶進行下一輪的訓練直到全局模型的收斂。為了更便于研究聯邦學習的安全性,我們假設客戶端的數量K很小,使得中央服務器可以在每一輪訓練中選擇所有的用戶進行模型更新。

權重攻擊的架構如圖1所示。根據攻擊者和正常客戶端的局部模型的分布特征,我們將“異?!倍x為比周圍最近的p個點更密集的點。

圖1 權重攻擊架構

1.1 局部離群因子[16]檢測算法

局部離群因子檢測算法是一種經典的基于密度的高精度離群點檢測方法,是一種無監督的異常檢測方法,通過計算給定數據點相對于鄰近局部密度的偏差來判斷是否為異常值,若存在數據點密度遠低于其鄰近的樣本點密度,則該數據點為異常值。它的密度與局部可達的LOF因子有關。局部可達密度越小,該點成為異常值的概率越大,反之局部可達密度越大,該點成為異常值的概率越小。LOF算法會給數據集中的每個點計算一個離群因子LOF,如果LOF遠大于1,則認為是離群因子,若接近于1,則認為是正常點。具體局部離群因子LOF定義請參見文獻[16]。

如果局部離群因子LOF在1的附近,說明點P的局部可達密度近似于點P鄰域內的其它點的局部可達密度,可以推斷點P與這些點P鄰域內的點屬于一簇,不是異常點;如果LOF大于1或者小于1,說明點P的局部可達密度小于或者大于點P鄰域內的其它點的局部可達密度,可以推斷點P與這些點P鄰域內的點不屬于同一簇,可能是異常點。

1.2 DBAD算法

首先,對于每個局部模型wi, 計算最接近的p個局部模型到wi的平均距離

(3)

式中:i→j表示wj屬于wi的p個最近鄰。

然后,計算局部模型wi的異常評分

(4)

由上式可以看出,如果wi異常概率越高,得到的平均距離a_di就越小,其異常評分a_si就越高,因此會分配一個較大的異常評分。而對于一個正常的模型,結果就正好相反。

(5)

算法1:基于密度的異常檢測算法(DBAD)

中央服務器:

for 每一輪訓練輪次t=1,2,…, do

for 每一個用戶k=1,2,…,Kdo

end for

for 每一個用戶k=1,2,…,Kdo

end for

for 每一個用戶k=1,2,…,Kdo

end for

end for

客戶k=1,2,…,K:

for 每一輪局部迭代 do

for 用戶分割中的每一個批次b

end for

end for

1.3 算法流程

假設K個客戶端參與聯邦學習,考慮以下分布式優化模型

(6)

(7)

(8)

將等式(8)代入等式(1),我們可以發現

(9)

將等式(8)代入等式(2),我們可以得到

(10)

(11)

(12)

2 仿真分析

2.1 數據集

實驗首先選擇MINST和CIFAR-10數據集作為訓練數據。MNIST數據集包含60 000張訓練和10 000張測試手寫體數字的灰度圖像,尺寸大小為28×28。CIFAR-10數據集包含5萬張訓練和1萬張測試的三通道彩色圖像,尺寸大小為32×32。

2.2 實驗安排

本文在Python 3.8和TensorFlow 2.3.1環境下對算法進行了實驗仿真。本文采用卷積神經網絡(CNN)作為聯邦學習的訓練模型,并為MNIST數據集構建了一個和在文獻[17]中結構相同的卷積神經網絡,見表1。為CIFAR-10數據集構建了一個和在文獻[18]中結構相同的卷積神經網絡,我們使用了一個7層卷積神經網絡,包括以下幾層:輸入3072(32×32×3);具有核大小3×3的卷積層,16個圖片和1個步長;最大池大小為3×3,一個內核為4×4的卷積層,64個圖片和1個步長;最大池層尺寸為4×4;兩個完全連接的層,尺寸分別為384和192和一個大小為10的輸出層,見表2。

表1 MNIST數據集上CNN的結構

對于MNIST數據集,我們設置客戶端數量為25個,并考慮所有客戶端中攻擊者分別為50%和60%的情況,我們特別考慮以下的兩種權重攻擊:

表2 CIFAR-10數據集上CNN的結構

對于CIFAR-10數據集,我們設置客戶端數量為25個,并考慮所有客戶端中攻擊者為40%和50%的情況,我們特別考慮以下的兩種權重攻擊:

每個客戶端批量大小為64,其學習率為0.001,一階矩估計的指數衰減率為0.9,二階矩估計的指數衰減率為0.999。我們將式(5)中的超參數L設為5,對于p,我們參考Multi-Krum算法,設為K-g-2。 其中,g定義為惡意模型數量。

2.3 算法比較

選取兩個算法作為本文所提算法的對比。①Multi-Krum:該算法在聯邦學習每次迭代訓練中選擇最低的梯度作為聚合結果,旨在消除遠離整體分布的梯度。②FABA:該算法在聯邦學習每次迭代過程中剔除離平均梯度最遠的梯度,直到剔除的梯度個數等于攻擊者的個數。比較見表3。

表3 算法的比較

2.4 實驗結果及評估

我們通過損失函數來判斷在有惡意模型的情況下算法檢測異常的魯棒性,損失函數越小,說明在面對有惡意攻擊時,波動性越小,魯棒性越好;損失函數越大,說明在面對有惡意攻擊時,波動性越大,即魯棒性越差。實驗分別從準確率和損失函數兩個角度對Multi-Krum算法、FABA算法和DBAD算法以及對沒有攻擊者時進行了分析。

圖2是在MNIST數據集中,反映了客戶端中有50%的攻擊者并且只有5%的惡意數據集時Multi-Krum、FABA、DBAD以及沒有惡意攻擊者時的準確率值的對比。其中,3種算法在前10次訓練的階段中得到的模型準確率穩步上升,這說明模型的訓練次數在到達某個值后,準確率才會到達一個較高的值。當訓練次數達到10次時,DBAD算法訓練得到的準確率趨于穩定,穩定在0.93附近。由圖中可以看出,DBAD在應對局部模型中存在低質量模型的情況仍能保持較好的訓練性能,而Multi-Krum和FABA在應對有惡意模型時,穩定性較差,穩定性不高,很難保證訓練質量。

圖2 準確率對比 (50%的攻擊者,5%的惡意數據集)

圖3是在MNIST數據集中,客戶端中有60%的攻擊者并且只有5%的惡意數據集時Multi-Krum、FABA、DBAD以及沒有惡意攻擊者時的準確率值的對比。其中,Multi-Krum算法在第6次訓練時準確率有大幅度的下降,Multi-Krum和FABA在第40次訓練之后趨于穩定。而DBAD算法在訓練次數達到10次時,就趨于穩定,穩定在0.94附近。由圖中可以看出,DBAD在應對局部模型中存在低質量模型的情況仍能保持較好的訓練性能,而Multi-Krum和FABA在應對有惡意模型時,波動性較大,穩定性不高,很難保證訓練質量。

圖3 準確率對比 (60%的攻擊者,5%的惡意數據集)

圖4在MNIST數據集中,客戶端中有60%的攻擊者并且只有5%的惡意數據集時Multi-Krum、FABA、DBAD以及沒有攻擊者時損失函數的值的對比。DBAB算法的損失函數基本上沒有太大的波動,且基本上和沒有攻擊者時的損失值一致。而另外兩種算法的損失函數明顯可以看出波動很大,始終無法收斂且明顯高于DBAB算法。

圖4 損失函數對比 (60%的攻擊者,5%的惡意數據集)

圖5是在MNIST數據集中,客戶端中有50%的攻擊者并且只有0.5%的惡意數據集時Multi-Krum、FABA、DBAD以及沒有攻擊者時準確率的值的對比。從圖5中可以觀察到,Multi-Krum算法在第6次訓練時準確率有大幅度的下降,FABA算法在第4次訓練時準確率有明顯下降。Multi-Krum和FABA在第50次訓練之后并沒有收斂。而DBAD算法在訓練次數達到10次時仍具有很好的穩定性,穩定在0.94附近。由圖中可以看出DBAD在應對局部模型中存在低質量模型的情況仍能保持較好的訓練性能,而Multi-Krum和FABA在應對有惡意模型時,波動性較大,穩定性不高,很難保證訓練質量。

圖6是在MNIST數據集中,客戶端中有60%的攻擊者并且只有0.5%的惡意數據集時Multi-Krum、FABA、DBAD準確率的值的對比。從圖6中可以看出,在惡意數據集的數量比較少的情況下,DBAD仍能在前10次訓練中達到最高的準確率(0.95)。而Multi-Krum在惡意數據集的數量比較少的情況下,無法正確檢測出惡意模型,準確率保持在0.23左右,與FABA的訓練性能接近。

圖5 準確率對比 (50%的攻擊者,0.5%的惡意數據集)

圖6 準確率對比 (60%的攻擊者,0.5%的惡意數據集)

圖7是在MNIST數據集中,客戶端中有60%的攻擊者并且只有0.5%的惡意數據集時Multi-Krum、FABA、DBAD的損失函數的值的對比。與準確率的變化情況相似,DBAB算法相較于另外兩種算法能更快地收斂,且損失函數最小,近乎為0。Multi-Krum和FABA由于惡意模型的存在,損失函數始終較高。

圖7 損失函數對比 (60%的攻擊者,0.5%的惡意數據集)

圖8是在CIFAR-10數據集中,客戶端中有40%的攻擊者并且只有5%的惡意數據集時Multi-Krum、FABA、DBAD準確率的值的對比。其中,Multi-Krum和FABA算法在訓練次數達到65次之后有個明顯的上升趨勢,而DBAD算法在訓練次數達到20次時,訓練得到的準確率趨于穩定,穩定在0.45附近。DBAD在應對低質量模型時仍能保持較好的訓練性能,而Multi-Krum和FABA穩定性較差,穩定性不高,很難保證訓練質量。

圖8 準確率對比 (40%的攻擊者,5%的惡意數據集)

圖9是在CIFAR-10數據集中,客戶端中有50%的攻擊者并且只有5%的惡意數據集時Multi-Krum、FABA、DBAD準確率的值的對比。從圖9中可以看出,Multi-Krum和FABA算法在100次訓練中,準確率穩定處于0.2以下,受到惡意模型的影響很大。而當迭代次數達到20次時,DBAD算法訓練得到的準確率趨于穩定,穩定在0.45附近。DBAD在應對低質量模型時仍能保持較好的訓練性能,而Multi-Krum和FABA穩定性較差,穩定性不高,很難保證訓練質量。

圖9 準確率對比 (50%的攻擊者,5%的惡意數據集)

圖10是在CIFAR-10數據集中,是客戶端中有50%的攻擊者并且只有5%的惡意數據集時Multi-Krum、FABA、DBAD損失函數的值的對比。DBAB算法的損失函數基本上沒有太大的波動,且基本上和沒有攻擊者時的損失值一致。而另外兩種算法的損失函數始終無法收斂且明顯高于DBAB。

圖10 損失函數對比 (50%的攻擊者,5%的惡意數據集)

圖11是在CIFAR-10數據集中,是客戶端中有40%的攻擊者并且只有0.5%的惡意數據集時Multi-Krum、FABA、DBAD準確率的值的對比。其中,在惡意數據集的數量比較少的情況下,DBAB仍能檢測出惡意模型,并且在20次訓練左右就收斂至最高的準確率(0.47)。Multi-Krum算法和 FABA算法的訓練性能接近,能在第60次訓練后穩定在0.36左右。

圖11 準確率對比 (40%的攻擊者,0.5%的惡意數據集)

圖12是在CIFAR-10數據集中,客戶端中有50%的攻擊者并且只有0.5%的惡意數據集時Multi-Krum、FABA、DBAD準確率的值的對比。從圖12中可以看出,在檢測少量惡意模型時,DBAB算法不受影響,仍能快速檢測出異常模型,并且在20次訓練左右就收斂至最高的準確率(0.47)。而Multi-Krum在惡意數據集的數量比較少的情況下,準確率明顯下降,保持在0.21左右,與FABA的訓練性能接近。

圖12 準確率對比 (50%的攻擊者,0.5%的惡意數據集)

圖13是客戶端中有50%的攻擊者并且只有0.5%的惡意數據集時Multi-Krum、FABA、DBAD損失函數的值的對比。與準確率的變化情況相似,DBAB算法相較于另外兩種算法能更快地收斂,且損失函數最小,近乎為0。Multi-Krum和FABA由于惡意模型的存在,損失函數始終較高。

圖13 損失函數對比 (50%的攻擊者,0.5%的惡意數據集)

綜上所述,Multi-Krum和FABA在面對權重攻擊時魯棒性較差,當攻擊者數量超過60%的時候,它們不再具有有效的防御能力。因為Multi-Krum和FABA會以更高的概率將正常模型識別成異常模型,從而從聚合過程中剔除。我們的方案是不從聚合過程中排除任何模型,當一個局部模型獲得的異常評分過高的時候,我們分配給其一個較小的權重,這樣的話,即使一個正常的模型被錯誤的識別成異常模型,也能在全局模型的聚合中保留一定的貢獻度。此外,我們的方案更傾向于將較大的異常分數分配給非常接近的模型,可以保證更高的識別效率。

3 結束語

本文提出了基于權重攻擊的異常檢測防御方案,在考慮到惡意攻擊模型的情況下,有效提高聯邦學習的準確率的同時降低了損失函數。首先,根據聯邦學習中局部模型的特點,考慮準確率等因素,構建基于局部離群因子檢測算法的問題模型。其次,設計基于局部密度的異常檢測算法,在每次訓練迭代前通過賦予高密度的局部模型更高的異常評分,自適應調整各局部模型的權重,最小化對全局模型收斂性的影響。最后,實驗結果顯示,所提方法一定程度上在有惡意模型攻擊的情況下,提高了聯邦學習的準確率,且具有良好的收斂性和魯棒性。為聯邦學習在防御權重攻擊面提供了一種有效的解決方案。方案中要求服務器計算局部模型之間的歐氏距離,因此當客戶端數量較大時,計算成本較高。實驗在MNIST和CIFAR-10數據集上進行,未來會在更多數據集下進行性能評估和與其它算法的比較來完善實驗方案的有效性。

猜你喜歡
模型
一半模型
一種去中心化的域名服務本地化模型
適用于BDS-3 PPP的隨機模型
提煉模型 突破難點
函數模型及應用
p150Glued在帕金森病模型中的表達及分布
函數模型及應用
重要模型『一線三等角』
重尾非線性自回歸模型自加權M-估計的漸近分布
3D打印中的模型分割與打包
主站蜘蛛池模板: 亚洲日本中文字幕天堂网| 无码精品福利一区二区三区| 欧美日韩中文字幕二区三区| 国产精品亚洲欧美日韩久久| 国产h视频免费观看| 久久这里只有精品国产99| 国产成人91精品免费网址在线| 亚洲黄网在线| 国产九九精品视频| 国产亚洲欧美在线中文bt天堂| 福利片91| 直接黄91麻豆网站| 久久久久久久久亚洲精品| 亚洲第一成年人网站| 亚洲码一区二区三区| 久久精品视频一| v天堂中文在线| 国产精品久久久久久影院| 成年片色大黄全免费网站久久| 在线观看免费国产| 亚洲国产日韩一区| 天天干天天色综合网| 久久国产精品电影| 色婷婷综合激情视频免费看| 亚洲精品卡2卡3卡4卡5卡区| 99精品一区二区免费视频| 国产免费观看av大片的网站| 成人一区专区在线观看| 全午夜免费一级毛片| 狠狠综合久久久久综| 精品夜恋影院亚洲欧洲| 亚洲天堂福利视频| 国产精品久久久精品三级| 国产无码精品在线| 夜精品a一区二区三区| 2020国产在线视精品在| 毛片久久网站小视频| a天堂视频| 91偷拍一区| 久草视频一区| 国产精品无码一二三视频| 中文字幕在线日韩91| 国产麻豆福利av在线播放| 欧美a网站| 精品一区二区三区四区五区| 亚洲高清无码精品| 九九热这里只有国产精品| 色婷婷视频在线| 精品国产香蕉伊思人在线| 999精品视频在线| 国产精品亚洲综合久久小说| 99久久这里只精品麻豆| 日韩欧美国产中文| 91亚洲精选| 婷婷色狠狠干| 久久精品电影| 中文字幕无码中文字幕有码在线| 国产精品3p视频| 国产美女无遮挡免费视频| 天天操天天噜| 久久久久久久97| 美女黄网十八禁免费看| 色偷偷综合网| 国产成人高精品免费视频| 99热在线只有精品| 国产国语一级毛片| 亚洲香蕉久久| 久久国产拍爱| 亚洲欧州色色免费AV| 毛片网站观看| 欧美成人午夜视频免看| 日韩免费成人| 国产精品思思热在线| 午夜小视频在线| 国产香蕉在线视频| 日本欧美精品| 欧美一区二区三区不卡免费| 日本免费新一区视频| 国产第一色| 午夜无码一区二区三区在线app| 精品国产自在在线在线观看| 国产性爱网站|