王壯壯 陳宏松 楊麗敏 陳麗芳
摘?要:數據孤島是制約人工智能技術發展和落地的主要障礙,隨著國家與個人對隱私保護意識的增強,聯邦學習在數據不共享的情況下,卻能達到數據共享目的,受到廣泛關注,聯邦學習分為:橫向聯邦學習、縱向聯邦學習和聯邦遷移學習,具有數據隔離、質量保證、各參數方地位等同、獨立性等優點,但聯邦學習也存在很多的安全隱患,本文詳細探討了聯邦學習的原理,提出了中央服務器、數據傳輸、單方數據污染、數據泄露以及對抗攻擊等重要的數據安全問題,并匯總介紹了當前主要的防御措施。
關鍵詞: 聯邦學習;數據安全;對抗攻擊;數據投毒
文章編號: 2095-2163(2021)01-0126-05 中圖分類號:TN915.08 文獻標志碼:A
【Abstract】Data island is the main obstacle that restricts the development and implementation of artificial intelligence technology. With the enhancement of the awareness of privacy protection of the state and individuals, federal learning can achieve the purpose of data sharing without data sharing, which has been widely concerned.Federal learning is divided into horizontal federal learning, vertical federal learning and federal transfer learning. It has the advantages of data isolation, quality assurance, equal status and independence of various parameters, but federal learning also has many security risks. This paper introduces the principle of federal learning in detail, some important data security problems such as central server, data transmission, unilateral data pollution, data leakage and anti-attack are put forward. Meanwhile, the current main defense measures are summarized.
【Key words】federal learning; data security; anti-attack; data poisoning
0 引?言
隨著科技、信息化的迅速發展,通過信息共享來對數據進行資源整合是目前常用的一種手段,大數據[1]和人工智能時代[2],AI已經在方方面面得到體現,比如人臉識別、人工智能打敗人類圍棋手、無人駕駛等等,而經由研究可知,大規模的數據集能夠提高AI的性能,數據對于AI的重要性就好比石油對于工業的重要性。然而,生活中大量的數據是私密的、不能共享的,大部分個人和企業所擁有的數據都存在質量較差、數據量有限的問題,只有為數不多的幾家公司才能支撐AI技術的實現。個人隱私被竊取、公司數據泄露等安全問題日益凸顯,想把分布在各個地方的數據集整合起來幾乎是不可能的,或者需要耗費巨大成本。將各個用戶、企業的數據共享,就會出現數據安全問題,當前無論國內還是國際都在進一步加強數據保護,陸續發布了相關法規,比如歐盟提出的新法案《通用數據保護條例》,中國起草的《數據安全管理辦法(征求意見稿)》,頒布的《信息安全技術-個人信息安全規范》,在《網絡安全法》中都提及了相關的數據保護[3-4]問題,同時人們對于自己數據隱私的重視程度也逐漸攀升。數據安全得以改善的同時,也造成了不同企業之間甚至同一企業不同部門之間的數據壁壘更加難以打破,從而形成了大量數據孤島[5],如果參與者之間無法實現數據交換,除了那些擁有巨體量用戶具有絕對數據優勢的企業之外,大多數企業或個人無法通過合法合規且低成本、高效率的方式跨越AI的數據“鴻溝”。聯邦學習技術正是在數據不共享的情況下,達到數據共享目的,因其能有效解決數據孤島,并已應用到很多領域,讓數據在安全合法的前提下實現自由共享[6]。
1 聯邦學習概述
1.1 聯邦學習概念
谷歌2017年4月份在一篇文章中第一次提出聯邦學習[7-9]的概念,聯邦學習本質上是一種加密的分布式機器學習技術、一種機器學習框架,目的是保證數據隱私安全并以合法的方式使用數據。聯邦學習有三大構成要素:數據源、中央服務器、各個客戶端。其中,中央服務器先為參與方提供最初模型,各參與方訓練自己所擁有的數據,將得到的本地模型上傳給中央服務器,中央服務器整合得到新的初始模型之后,再分發給參與方們,迭代該流程直到模型收斂。每個參與者在聯邦學習框架中地位相同,可以自由控制加入還是退出,聯邦學習實現了在數據之上建模,達到與數據集中收集存儲相同的建模效果,很大程度上解決了數據孤島的問題。
1.2 聯邦學習分類
1.2.1 橫向聯邦學習
2個數據集的用戶特征重疊較多而用戶重疊較少,根據特征維度橫向切分數據集,挑選雙方相同用戶特征而用戶不完全相同的數據進行訓練。通過聯邦學習獲得更多的符合某一特征樣本,這種方法叫做橫向聯邦學習。
1.2.2 縱向聯邦學習
2個數據集的用戶重疊較多而用戶特征重疊較少,根據用戶維度將數據集進行縱向切分,挑選雙方相同用戶而用戶特征不完全相同的數據進行訓練。通過聯邦學習豐富樣本的特征,更精準地刻畫樣本,比如通過縱向聯邦學習描繪用戶,更全方位地通過各種屬性特征描繪一個人。
1.2.3 聯邦遷移學習
聯邦遷移學習是縱向聯邦學習的一種特例,和縱向聯邦學習相同點在于數據特征維度重疊部分較少,而聯邦遷移學習面臨的情況更加苛刻,因為用戶特征維度重疊部分也很少,利用遷移學習來克服數據或標簽不足的情況。比如說,人們小時候學習騎自行車后,此后再學習騎電車和摩托車就會更加得心應手,因為平衡感、方向選擇、行車感覺基本都是一樣的,而這就是一種遷移學習。
1.3 聯邦學習優勢
(1)數據隔離:數據映射為模型參數,不會離開存儲的地方,保證參與方的數據安全和隱私保護。
(2)質量保證:雖然沒有將數據集中存儲,但能夠保證訓練模型的質量,不會比集中訓練的模型質量差。
(3)地位相同:參數方地位等同,沒有一方控制另一方的情況。
(4)獨立性:擁有自己數據的絕對控制權,決定參與還是退出,保持獨立性的情況下,加密交換各種信息。
2 聯邦學習中數據安全問題
2.1 中央服務器的存在
在迭代過程中每個參與方訓練模型歷次更新的信息都需要發給中央服務器,中央服務器有機會對更新信息進行分析得出參與方的本地數據信息。
2.2 數據傳輸的問題
更新信息向中央服務器報告的時候,雖然梯度是原始信息的映射,但是攻擊者可以通過與模型交互,對更新信息中的敏感部分,如梯度信息、參數特征等進行逆向推理,反推出參與方本地數據信息。
2.3 單方數據污染
聯邦學習中,每個參與方都是獨立的個體,中央服務器并沒有具備檢驗參與方數據正常與否的能力,這就導致如果攻擊者從聯邦學習內部對數據投毒或模型投毒,如Chen等人[10]提出的攻擊方式,僅僅利用少量有毒樣本,就有九成以上的攻擊成功率,還可以在生成的模型里埋下隱患,將模型參數訓練值引導成擬欲得到的結果,使模型預測樣本精確度降低,性能下降。
2.4 數據泄露
雖然聯邦學習的數據訓練是在本地進行,各參與方之間相互獨立,可以在一定程度上保證數據的安全,但依然存在數據泄露的情況。比如存在惡意參與方,從中央服務器共享的參數中對其他參與方的部分數據進行推理,而有些數據只需要獲得部分,就能知曉整體,從而達到竊取數據的目的。參與方一般受到模型提取攻擊、模型逆向攻擊和成員推理攻擊。通常研究中的訓練認定服務器是可信的,在實際情況中,這不是肯定的,如果是惡意服務器,就可通過與各參與方的交互,擁有更多泄露參與方隱私的可能,數據泄露的威脅增大。
這里將給出隱私攻擊的3種技術方法,詳述如下。
(1)模型提取攻擊(model extraction attack):向目標模型不斷發送數據,通過觀察得到的回應信息推測模型的參數和作用,從而生成精確模型或相似模型來實現模型的提取,精確模型是指攻擊者構建的一個在預測性能上相近的替代模型,如果竊取到精確模型,則模型擁有方的數據信息泄露,損失程度較大,而竊取相似模型可以生成對抗樣本,對目標模型有極大威脅。
(2)模型逆向攻擊(model inversion attack):攻擊者從模型給出的預測結果中提取目標模型的數據信息,與GAN結合后效果更為顯著。Hitaj等人[11]的研究表明,聯邦學習結構避免參與者數據集遭受GAN的攻擊是很困難的,基于GAN的攻擊者可以誘導受害者泄露更多隱私數據。
(3)成員推理攻擊(membership inference attack):攻擊者通過訪問目標模型的API接口獲得大量數據,以此模仿模型構建“影子”模型。攻擊者不需要了解模型參數、結構、訓練方法及數據,只需要得到預測分類的置信度,最終構建一個攻擊模型,通過擁有的數據記錄和模型的黑盒訪問權限,將數據輸入目標模型,把得出結果連同數據集的標簽輸入其中,就可以判斷目標模型的數據集是否存在該記錄。
2.5 對抗攻擊
對抗攻擊是由Christian等人提出的,通過生成針對性的對抗樣本并放到目標模型,導致模型做出誤判。張思思等人[12]介紹了什么是對抗樣本、對抗樣本的概念、出現的原因、攻擊方式以及一些關鍵技術問題。根據攻擊環境,對抗攻擊可以分為2種。一種是白盒攻擊,攻擊者知道目標模型使用的算法與參數,借助優化問題計算所需干擾,攻擊者在對抗數據生成的時候能夠與目標模型交互。另一種是黑盒攻擊,攻擊者不知道目標模型所使用的算法與參數,只能通過為模型提供輸入跟模型互動的時候,觀察判斷其輸出,細微的數據修改也能為攻擊者提供一種攻擊手段。
3 防御機制
聯邦學習在面臨諸多風險時,主要采用防御措施。對此可做闡釋論述如下。
3.1 投毒攻擊防御
3.1.1 數據投毒防御
數據中毒的根本原因,是沒有考慮到輸入模型的數據可能有誤,甚至遭遇人為破壞。所以這里提出的保護數據措施要在模型訓練前排查數據的來源,在不能保證數據安全性前,要確保數據具有不被修改的完整性。在模型訓練前,可以使用身份認證機制保證數據源的可靠性。Nathalie等人[13]辨別有毒數據的方式是借助相關訓練集中數據點的起源和上下文信息的轉換。
3.1.2 模型投毒防御
當服務器是可信的時候,數據合理采樣,不能過分重視那些混在樣本中的惡意樣本,可以通過限制每個參與方貢獻數據的數量,或者根據數量使用衰減權重實現。對每輪更新的模型參數做異常點檢測,當某個參與方提交的更新參數與其他參與方的參數有很大差異,則將該參數設定為異常點,在進行參數整合時不再考慮。
3.2 對抗攻擊防御
很多機器學習適用的對抗攻擊防御方法對于聯邦學習也同樣適用,如基于GAN的防御。研究內容詳見如下。
3.2.1 基于GAN的防御
對抗攻擊是需攻克的一大難關。防御中涉及的一個方向就是設計一種能夠抵御更多對抗攻擊算法、魯棒性強且高效的防御模型,生成對抗網絡(Generative adversarial networks, GAN)由生成器和鑒定器構成。其中,生成器就是利用噪聲生成樣本,鑒定器判斷樣本的真假,采用零和博弈的思想帶動兩者的更新與演變??卒J等人[14]將攻擊算法融入GAN,提出一種基于GAN的對抗攻擊防御模型(AC-DefGAN),其訓練樣本是通過對抗攻擊算法生成的,為了模型的穩定,在模型訓練期間加入條件約束,借助分類器對生成樣本進行分類以完成GAN的訓練,并以需要防御的攻擊算法生成對抗樣本訓練判別器,最終得到的分類器可以抵御多種對抗攻擊。實驗表明該方法防御效果好、魯棒性強。
3.2.2 數據泄露防御
防御成員推理攻擊可以運用諸如?droupout、regularization等一些防止過擬合的方法。黑盒攻擊防御策略是:訓練其他的分類器對抗輸入,防止模型過度擬合,增強分類器的健壯性,可以讓模型加速收斂,但增加一個分類器會極大降低分類效率。白盒攻擊防御策略是:實行對抗訓練程度。對于異常的更新參數,通常有2種檢測方法。一種方法是檢查準確度,比較2個模型在驗證數據集上的準確度,若2個模型準確度差異較大則判定為異常。另一種方法是直接比較各個參與方提交的更新參數,當參數之間的差異較大時判定為異常。
3.3 差分隱私
2006年,Dwork等人[15]首次提出差分隱私來解決層出不窮的隱私攻擊方式和現代隱私保護機制的缺陷,當參與者與中央服務器交互時,直接發送信息可能會出現信息泄露,為避免這種情況,訓練過程中傳遞的模型更新信息加入差分隱私,能夠有效阻止攻擊者反向推導出參與方的相關數據信息。差分隱私采用特定的隨機算法對數據添加適量噪聲,將數據模糊化,降低敏感數據信息泄露的風險,不會被數據量約束,這樣即使攻擊者得到交互的數據也不能對原始數據進行有效推理,在參與方與中央服務器共享數據前,對數據進行差分隱私,就不需要考慮中央服務器是否值得信任。差分隱私確保隱私的方式是引入隨機性,通過犧牲一定的準確性得到更高的隱私安全,從而實現數據保護。當前,差分隱私的主要研究方向是確定隱私保護力度和在保證隱私的前提下能夠最大程度不破壞原數據的有用信息。
3.4 同態加密
同態加密(homomorphic encryption,HE)是一種可以直接對密文進行運算的加密方式,運算的結果與直接在明文上做運算的結果相同。HE技術在密碼學領域是公認的圣杯之一,根據發展階段、支持密文運算的種類和次數,HE分為全同態加密、部分同態加密、類同態加密、層次同態加密等。鮑海燕等人[16]在傳統非對稱密鑰(RSA)的基礎上,提出了提升加密速度的改進RSA算法,實驗表明該方法加密過程耗時少,抵御攻擊成功率高。趙秀鳳等人[17]基于噪聲淹沒技術,提出循環安全的公鑰同態加密方案,降低了系統參數的復雜度,縮減了公鑰和密文大小,在實用性上突破了其研發瓶頸,提升了HE的性能。仝秦瑋等人[18]提出一種基于DGHV適應智能合約的同態加密方法,可以提升保護數據、對布爾型或整型數據交易的效率。
3.5 安全多方計算
著名圖靈獎獲得者、華裔科學家姚期智教授[19]提出了姚氏百萬富翁問題,即2個不暴露自身財富的富豪,怎么才能判斷誰更加富有,這個問題演變成了當下的安全多方計算(Secure Multi-Party Computation,SMC)。即在不分享原始數據的情況下,獲得想要的結論。多方安全計算技術[20]每次隨機加密,不能重復使用加密的數據,直接在加密數據上運算,原始數據不被還原,每次計算之前先確定參與方,需要所有參與方共同協調,能夠不泄露原始數據而得到數據中的價值。使用多方安全計算進行模型梯度更新的整合,可以降低信息泄露的可能性。
4 結束語
聯邦學習可以有效解決跨設備、跨機構間的數據融合問題,從目前數據產業可以看出,聯邦學習能夠擴充數據總量,解決數據孤島問題。站在企業的角度[21-22],聯邦學習能夠幫助各企業以低成本的方式合法取得更利于自身的數據信息,相互之間可以加強合作,利用整個社會資源,做到數據共享的同時避免信息泄露。目前聯邦學習最流行的算法之一是聯邦平均算法(Federated averaging),在聯邦學習中,各參與方對自己的設備和數據擁有絕對的控制權,受多因素影響,可能隨時加入或退出聯邦學習。本文對聯邦學習中的幾種典型的數據安全問題和防御措施進行了梳理總結,對聯邦學習的工作原理和優缺點進行闡述,隨著聯邦學習的發展與應用,對數據隱私攻擊的方式會更加多樣化,后續則需要進一步探索針對投毒攻擊、對抗攻擊、數據泄露等攻擊手段的防御技術。
參考文獻
[1]馮登國, 張敏, 李昊. 大數據安全與隱私保護[J]. 計算機學報, 2014 , 37(1): 246-258.
[2]張夏明, 張艷. 人工智能應用中數據隱私保護策略研究[J]. 人工智能,2020(4): 76-84.
[3]杜雁蕓. 大數據時代國家數據主權問題研究[J] . 國際觀察, 2016(3): 1-14.
[4]趙朋. 大數據背景下的數據安全[J]. 計算機與網絡, 2020, 46(14): 51.
[5]杜小勇. 消除信息孤島, 實現“數據福利”[J]. 國家治理, 2020(30): 20-23.
[6]王利明. 數據共享與個人信息保護[J]. 現代法學, 2019 , 41(1): 45-57.
[7]王佳, 苗璐. 聯邦學習淺析[J]. 現代計算機, 2020(25): 27-31,36.
[8]NELSON P. Federated learning improves how AI data is managed, thwarts data leakage[J]. Network World (Online), 2020.
[9]楊強. AI與數據隱私保護:聯邦學習的破解之道[J]. 信息安全研究, 2019, 5(11): 961-965.
[10]CHEN Xinyun, LIU Chang, LI Bo,et al. Targeted backdoor attacks on deep learning systems using data poisoning[J]. arXiv preprint arXiv:1712.05526,2017.
[11]HITAJ B, ATENIESE G, PEREZ-CRUZ F. Deep models under the GAN: Information leakage from collaborative deep learning[C]//Proc. of the ACM SIGSAC Conf. on Computer and Communications Security. New York:ACM, 2017:603-618.
[12]張思思, 左信, 劉建偉. 深度學習中的對抗樣本問題[J] . 計算機學報, 2019, 42(8):1886-1904.
[13]NATHALIE B, CHEN B, LUDWIG H, et al. Mitigating poisoning attacks on achine learning models: A data provenance based approach[C]//Proceedings of the 10th ACM Workshop on Artificial Intelligence and Security. New York, USA:ACM, 2017:103-110.
[14]孔銳, 蔡佳純, 黃鋼. 基于生成對抗網絡的對抗攻擊防御模型[J/OL].自動化學報: 1-21[2020-07-23].https://doi.org/10.16383/j.aas.c200033.
[15]DWORK C, MCSHERRY F, NISSIM K, et al. Calibrating noise to sensitivity in private data analysis[M]//HALEVI S, RABIN T. Theory of Cryptography. TCC 2006. Lecture Notes in Computer Science, Berlin:Springer, 2006,3876:265-284.
[16]鮑海燕, 蘆彩林. 基于改進RSA算法的隱私數據集同態加密方法[J]. 太赫茲科學與電子信息學報, 2020,18(5):929-933.
[17]趙秀鳳, 付雨, 宋巍濤. 循環安全的同態加密方案[J]. 計算機研究與發展, 2020, 57(10): 2117-2124.
[18]仝秦瑋, 李潔, 王潔, 等. 一種基于智能合約的全同態加密方法[J]. 網絡空間安全, 2020, 11(9): 32-38.
[19]YAO C C. Protocols forsecure computations (Extended Abstract)[C]// 23rd Annual Symposium on Foundations of Computer Science. Chicago, Illinois, USA:IEEE,1982:160-164.
[20]李強, 顏浩, 陳克非. 安全多方計算協議的研究與應用[J]. 計算機科學, 2003(8): 52-55.
[21]CHANDIRAMANI K, GARG D, MAHESWARI N. Performance analysis of distributed and federated learning models on private data[J]. Procedia Computer Science, 2019,165:349-355.
[22]羅長銀, 陳學斌, 馬春地, 等. 面向區塊鏈的在線聯邦增量學習算法[J/OL]. 計算機應用: 1-11[2020-08-17].http://kns.cnki.net/kcms/detail/51.1307.TP.20200814.1034.002.html.