• 
    

    
    

      99热精品在线国产_美女午夜性视频免费_国产精品国产高清国产av_av欧美777_自拍偷自拍亚洲精品老妇_亚洲熟女精品中文字幕_www日本黄色视频网_国产精品野战在线观看

      ?

      機器學習的安全問題及隱私保護

      2020-11-11 09:23:50魏立斐陳聰聰李夢思陳玉嬌
      計算機研究與發(fā)展 2020年10期
      關鍵詞:投毒敵手同態(tài)

      魏立斐 陳聰聰 張 蕾 李夢思 陳玉嬌 王 勤

      (上海海洋大學信息學院 上海 201306)

      依托于云計算、物聯(lián)網、大數據技術的發(fā)展,以數據挖掘和深度學習為代表的人工智能技術正在改變人類社會生活,并成為先進科技應用的代表和社會關注的熱點.作為引領未來的戰(zhàn)略性技術,人工智能技術被世界各國紛紛提升為發(fā)展國家競爭力、維護國家安全的重大戰(zhàn)略.

      機器學習是一種實現(xiàn)人工智能的方式,是近些年主要研究的領域.目前機器學習方案在很多領域都有著成熟的應用,如天氣預報、能源勘探、環(huán)境監(jiān)測等,通過收集相關數據進行分析學習,可以提高這些工作的準確性;還有如在垃圾郵件檢測、個性化廣告推薦、信用卡欺詐檢測、自動駕駛、人臉識別、自然語言處理、語音識別、搜索引擎的優(yōu)化等各個領域,機器學習都扮演著重要的角色.然而,蓬勃發(fā)展的機器學習技術使數據安全與隱私面臨更加嚴峻的挑戰(zhàn),因為機器學習的更精準模型需要大量的訓練數據為支撐.

      自2013年斯諾登的“棱鏡”事件以來,全球信息泄露規(guī)模連年加劇,引起社會的廣泛關注.2016年9月Yahoo被曝出曾被黑客盜取了至少5億個用戶賬號信息;2017年微軟Skype軟件服務遭受DDOS攻擊,導致用戶無法通過平臺進行通信;2018年3月美國《紐約時報》和英國《衛(wèi)報》均報道:劍橋分析(Cambridge Analytica)數據分析公司在未經用戶許可的情況下,盜用了高達5千萬個Facebook的用戶個人資料[1].2019年美國網絡安全公司UpGuard發(fā)現(xiàn)上億條保存在亞馬遜AWS云計算服務器上的Facebook用戶信息記錄,可被任何人輕易地獲??;IBM在未經當事人許可的情況下,從網絡圖庫Flickr上獲得了接近100萬張照片,借此訓練人臉識別程序,并與外部研究人員分享[2].2020年4月《華盛頓郵報》報道視頻會議軟件Zoom存在的重大安全漏洞:數以萬計的私人Zoom視頻被上傳至公開網頁,任何人都可在線圍觀,很多視頻都包含個人可識別信息,甚至是在家里進行的私密談話[3].信息泄露的途徑主要分為內部人員或第三方合作伙伴泄露、信息系統(tǒng)無法杜絕的漏洞、機構本身的防護機制不健全、對數據的重要程度不敏感,以及對安全配置的疏忽大意等.可見,數據隱私的泄露已不單單是滿足某些外部人員好奇心所驅使,而是已成為一種重要的商業(yè)獲利而被廣泛關注,其中不乏內外勾結、合謀獲取用戶的隱私等行為.

      由此可見,機器學習中的安全與隱私問題已經非常嚴重.目前,研究人員提出了許多解決機器學習中的隱私問題的方法.本文將全面介紹機器學習中的安全問題和隱私威脅,并重點介紹隱私保護方法.

      1 機器學習及敵手模型

      1.1 機器學習概念

      機器學習(machine learning, ML)是人工智能的一個分支,主要是研究如何從經驗學習中提升算法的性能[4],它是一種數據驅動預測的模型.它可以自動地利用樣本數據(即訓練數據)通過“學習”得到一個數學模型,并利用這個數學模型對未知的數據進行預測.目前機器學習被廣泛應用于數據挖掘[5-6]、計算機視覺[7-8]、電子郵件過濾[9-10]、檢測信用卡欺詐[11-13]和醫(yī)學診斷[14-15]等領域.

      機器學習主要可以分為監(jiān)督學習、無監(jiān)督學習、半監(jiān)督學習和強化學習[16],總結如表1所示.監(jiān)督學習就是給定一個包含1個或多個輸入和輸出(標簽)的數據集,通過監(jiān)督學習算法得到一個數學模型,該數學模型可以用來對給定的數據進行預測.常見的監(jiān)督學習算法包括支持向量機、神經網絡、回歸分析和分類等,常用于對電子郵件進行過濾等應用.無監(jiān)督學習是給定無人為標記標簽的數據集,通過無監(jiān)督學習算法可以識別出數據的共性,再根據數據的共性對每個數據是否存在此類共性做出反應.常見的無監(jiān)督學習算法包括聚類,通常無監(jiān)督學習用于聚類分析、關聯(lián)規(guī)則和維度縮減等.監(jiān)督學習和無監(jiān)督學習的區(qū)別就是訓練數據集的目標是否標記(含有標簽)過.半監(jiān)督學習介于監(jiān)督學習和無監(jiān)督學習之間,當未標記的數據與少量標記的數據結合使用時,可以大大提高模型的準確性.而強化學習強調如何基于環(huán)境而行動(與環(huán)境進行交互或者說是利用獎懲函數進行訓練),以取得最大化的預期利益.常見強化學習算法如Q-Learning[17]等,該算法常應用于自動駕駛、游戲等領域.

      Table 1 Machine Learning Classification表1 機器學習分類

      1.2 機器學習中的敵手模型

      在機器學習安全中,常常利用敵手模型來刻畫一個敵手的強弱.Barreno等人[18]在2010年考慮了攻擊者能力、攻擊者目標的敵手模型.Biggio等人[19]2013年在Barreno等人的基礎上完善,提出了包含敵手目標、敵手知識、敵手能力和敵手策略的敵手模型,這也是目前普遍接受的敵手模型或攻擊者模型.從這4個維度刻畫敵手,能夠比較系統(tǒng)地描述出敵手的威脅程度[19-21].

      1.2.1 敵手目標

      敵手期望達到的破壞程度和專一性稱為敵手目標.破壞程度包括完整性、可用性和隱私性,專一性包括針對性和非針對性[19].破壞完整性目標就是未經過數據擁有者的同意對數據進行增刪、修改或破壞,如對個人的醫(yī)療數據進行篡改,最后將訓練得到的模型進行預測得到錯誤的疾病類型.破壞可用性目標就是使目標服務不可用,如在訓練數據集中注入大量不良數據使訓練出來的模型無用[22],從而達到服務不可用的目的.破壞隱私性目標可以理解為竊取隱私數據,如將訓練數據集的信息竊取等.而專一性中的針對性目標和非針對性目標則是可以產生針對性的目標破壞或者非針對性的破壞,如對醫(yī)療數據可以產生針對性的竊取某個客戶的隱私信息或者對數據的完整性產生非針對性的破壞[23].

      1.2.2 敵手知識

      敵手知識是指敵手對目標模型或目標環(huán)境擁有的信息多少,包括模型的訓練數據、模型結構及參數和通過模型得出的信息等.根據敵手擁有的信息量,可以將敵手擁有的知識稱為有限知識和完全知識[21].而在機器學習的攻擊中,可以根據敵手掌握的知識量將攻擊方式劃分為白盒攻擊和黑盒攻擊.白盒攻擊是敵手掌握模型的一部分數據集或者完全數據集,了解模型結構、參數以及一些其他信息.而黑盒攻擊則是敵手不了解模型的相關信息,但是敵手可以訪問目標模型,因此敵手可以通過精心設計的輸入來根據模型輸出推斷模型的信息[24].

      1.2.3 敵手能力

      敵手能力是指敵手對訓練數據和測試數據的控制能力,可以將敵手對數據的影響定義為誘發(fā)性的(對數據集有影響)或者探索性的(對數據集無影響).或者將敵手能力定義為敵手是否可以干預模型訓練、訪問訓練數據集、收集中間結果等.根據敵手對數據、模型的控制能力可進一步將敵手分為強敵手和弱敵手[20].強敵手是指敵手可以一定程度地干預模型訓練、訪問訓練數據集和收集中間結果等;而弱敵手則只能通過攻擊手段獲取模型信息或者訓練數據信息[25].

      1.2.4 敵手策略

      敵手策略是指敵手根據自身的目的、知識和能力為了對目標達到最優(yōu)的結果所采取的攻擊方式.敵手策略通常在機器學習的不同階段采用不同的攻擊方式,如在訓練階段常采用的攻擊方式為投毒攻擊,在預測階段常采取的攻擊方式為對抗攻擊、隱私攻擊等.

      2 機器學習中常見的安全及隱私威脅

      機器學習目前廣泛應用于數據挖掘[5-6]、計算機視覺[7-8]、電子郵件過濾[9-10]、檢測信用卡欺詐[11-13]和醫(yī)學診斷[14-15]、生物特征識別[26-28]、金融市場分析[29]等領域.機器學習在各個領域廣泛使用的同時也帶來了很多安全及隱私威脅,如在2019年Kyushu大學的Su等人[30]發(fā)現(xiàn)僅更改1個像素就可以欺騙深度學習的算法;研究人員還發(fā)現(xiàn)了可以干擾道路交通標志牌的方法,使自動駕駛的汽車進行錯誤標志牌劃分[31-32];在2019年Heaven[33]發(fā)現(xiàn)對神經網絡(neural network, NN)的對抗攻擊可以使攻擊者將自己的算法注入到目標AI系統(tǒng)中.

      為了破壞機器學習模型,攻擊者可以破壞其機密性(confidentiality)、完整性(integrity)和可用性(availability),這些性質構成了CIA安全模型.在該安全模型中[22],針對機密性的攻擊目標是從ML系統(tǒng)中獲取敏感數據,如攻擊者想要知道某個特定的數據是否屬于某個特定的訓練數據集,如攻擊者可以根據出院的信息(包含患者在各個醫(yī)院呆過的時間、治療方案等)[34]獲取敏感數據.針對完整性的攻擊目標比較多,如使目標分類錯誤(將“惡意類”分類為“良好類”)、針對性的錯誤分類(如將停車標志分類為限速標志等)、誤分類(將某個類分到另一個類里面)、置信度降低(降低模型的置信度)等.針對可用性的攻擊目標是降低ML系統(tǒng)的可用性,如在訓練數據集中注入大量不良數據,使訓練出來的模型無用.如果能夠保證CIA模型的這3個性質,那么這個系統(tǒng)或者協(xié)議將是安全的.

      機器學習主要分為訓練和預測2個階段.一般在訓練階段前面有數據收集、清洗等工作,在訓練階段和預測階段中間有測試階段等,但是主要的工作還是在訓練和預測階段.常見的安全及隱私威脅也在訓練和預測階段出現(xiàn),如圖1所示:

      本文將從數據訓練階段和數據預測階段分別論述機器學習中存在的安全及隱私威脅.其中,在訓練階段常見的安全及隱私威脅包含訓練數據的隱私泄露和投毒攻擊,在預測階段常見的安全及隱私威脅包含對抗攻擊、隱私攻擊和預測數據的隱私泄露[22].

      2.1 數據訓練階段存在的安全及隱私威脅

      在數據訓練階段存在的隱私威脅主要為訓練數據集的隱私泄露.在訓練數據時,往往采用集中式學習(centralized learning)、分布式學習(distributed learning)或者是聯(lián)邦學習(federated learning)的方式[20].其中,集中式學習[35]的方式就是將各方的訓練數據集中到一臺中央服務器進行學習;分布式學習[36]的方式就是將訓練數據以及計算都分布到各個服務器節(jié)點進行學習,最后由中央服務器進行整合;聯(lián)邦學習[37-39]的方式就是在保持訓練數據集的分散情況下客戶端與中央服務器聯(lián)合訓練一個模型.

      聯(lián)邦學習和分布式學習的方式類似,區(qū)別在于聯(lián)邦學習沒有數據收集階段,分布式學習是首先進行數據收集,為了加快訓練速度,將數據分發(fā)給多個服務器,然后由中央服務器協(xié)調進行迭代,從而訓練出最終模型;而聯(lián)邦學習是在各客戶端本地進行學習得到子模型[40],然后交由中央服務器聚合得到最終模型.3種形式的學習如圖2所示.

      Fig. 2 The schematic diagram of three learning methods[20]圖2 3種學習方式示意圖[20]

      根據這3種學習的方式,不論從數據收集還是訓練方式的角度出發(fā),在模型訓練階段都不可避免會造成數據隱私的泄露.

      在數據訓練階段存在的安全威脅主要為投毒攻擊(poisoning attack)[41],投毒攻擊的例子可以追溯到2004年[42]和2005年[43]逃避垃圾郵件分類器的例子.投毒攻擊就是敵手可以通過修改、刪除或注入不良數據,改變原有數據集,使模型訓練的結果產生偏差.最常見的投毒攻擊就是使模型邊界發(fā)生偏移,如圖3所示:

      Fig. 3 The linear SVM classifier decision boundary[44]圖3 線性SVM分類器決策邊界[44]

      2.1.1 訓練數據的隱私泄露

      訓練數據的隱私泄露,就是在模型訓練時可能發(fā)生數據泄露問題.目前大多數公司或者模型提供商都是使用集中式學習的方式訓練模型,因此需要大規(guī)模的收集用戶數據.但是對于收集用戶數據時保護用戶隱私沒有一個統(tǒng)一的標準[21],所以在收集用戶數據時可能會造成用戶的數據隱私泄露的問題.在2018年圖靈獎得主Goldwasser[45]在密碼學頂級會議CRYPTO 2018上指出了安全機器學習中密碼學的2個主要發(fā)展方向:分布式模型訓練和分布式預測,通過安全多方計算(secure multi-party computation, SMC)實現(xiàn)隱私保護機器學習.

      在大數據驅動的云計算網絡服務模式下,Jiang等人在國際頂級安全會議ACM CCS 2018上提出了基于機器學習的密態(tài)數據計算模型[46],具體是由數據擁有者、模型提供商和云服務提供商組成.其中,數據擁有者對數據的擁有權和管理權是分離的;而云服務提供商也通常被假定為誠實且好奇(半可信)的,即在誠實運行設定協(xié)議的基礎上,會最大程度發(fā)掘數據中的隱私信息,且該過程對數據擁有者是透明的.

      使用機器學習對海量數據進行信息挖掘和學習,在安全模型增加模型提供商和云服務提供商后也變得更加復雜,這就需要考慮多方參與情形,構建隱私增強保護的數據計算模型和協(xié)議.

      具體來說,在密態(tài)數據計算模型已經衍生出眾多多方場景,例如:1)多方云服務提供商.數據擁有者通過秘密共享的方式將隱私數據信息分別分散到各個服務器(如亞馬遜、微軟、谷歌等多個服務提供商)上進行計算,各個服務器分別返回相應的計算結果,多個云服務提供商之間不進行主動合謀,最終由數據擁有者進行匯聚并得到結果.Shokri等人[47]提出了與不同數據持有者合作的機器學習協(xié)議、分布式選擇性隨機梯度下降算法,以便在訓練數據不共享的前提下展開聯(lián)合機器學習模型的訓練.在學習模型和學習目標協(xié)調的情況下,參與者可以訓練自己的局部模型,并有選擇地在每個局部隨機梯度下降階段異步交換其梯度和參數.2)多方數據擁有者.當前的企業(yè)組織多采用協(xié)作學習模型[48]或聯(lián)邦學習模型[49].比如,分發(fā)相關疾病疫苗時,醫(yī)療組織希望基于大數據利用機器學習確定高爆發(fā)的地區(qū),這就需要不同區(qū)域醫(yī)療組織的數據,但往往處于法律和隱私考量,數據無法完成及時共享.

      2.1.2 投毒攻擊

      投毒攻擊有2個目標:1)破壞完整性;2)破壞可用性.破壞完整性目標就是敵手通過選擇一個精心構造的惡意數據注入你的訓練數據集中,通過這個精心構造的惡意數據,敵手可以得到一個“后門”,因此破壞完整性目標的投毒攻擊也稱為“后門”攻擊.破壞可用性目標就是敵手通過注入很多不良數據到你的訓練數據集,使得到的模型邊界基本上變得無用[50].下面就2種不同的投毒攻擊進行介紹.

      2.1.2.1 破壞完整性目標的投毒攻擊

      對于破壞完整性目標的投毒攻擊,也稱“后門”攻擊.對于此類攻擊,模型擁有者可能無法發(fā)現(xiàn)模型已經被植入“后門”,但是敵手可以利用這個“后門”達到他的目的.例如一個敵手使分類器將含有某些特殊字符的文本劃分為正常文本,那么敵手可以在自己編寫的惡意軟件中插入某些特殊字符完成任何攻擊.這種攻擊帶來的后果非常嚴重,它甚至可以使ML系統(tǒng)完全被敵手控制[50].

      Liu等人[51]提出了一種針對神經網絡的攻擊方法.該方法具有很強的隱蔽性,他們首先利用逆神經網絡生成一個通用的觸發(fā)器,然后用反向工程的訓練數據重新訓練模型,從而向模型注入惡意行為.惡意行為僅由帶有觸發(fā)器的輸入激活.使用該攻擊模型,可以造成嚴重的后果,如在自動駕駛領域可造成交通事故等[50].

      2.1.2.2 破壞可用性目標的投毒攻擊

      破壞可用性目標的投毒攻擊主要是使模型不可用.該類攻擊主要是通過破壞原來訓練數據的概率分布,使得訓練出的模型決策邊界偏離或者使得模型精度降低.在現(xiàn)實生活中,訓練數據一般都是保密的,并且不會輕易被攻擊者修改、刪除等.但是因為數據的不斷更新,模型也需要不斷更新,這就使得攻擊者可以注入大量的惡意數據,達到使模型不可用的目的.如生物特征識別、搜索引擎、電子郵件過濾、金融市場分析等領域的模型,需要進行定期更新,因此這類系統(tǒng)面臨的破壞可用性的投毒攻擊風險也更大[23].

      Steinhardt等人[52]的研究表示,即使擁有強大的安全防御方案,在訓練數據集中注入3%的中毒數據也可以使得模型的訓練誤差從12%提高到23%.目前已經存在針對情緒分析[53]、惡意軟件聚類[54]、惡意軟件檢測[55]、蠕蟲簽名檢測[56]、入侵檢測[57-59]等投毒攻擊的研究.

      2.2 數據預測階段存在的安全及隱私威脅

      在模型訓練完成后,通常會將訓練好的模型用于預測特定的結果,以便人們做出高效的決策.因此,在預測階段被敵手惡意攻擊產生的后果往往會更加嚴重.預測階段存在的安全及隱私威脅主要可以分為對抗攻擊、隱私攻擊和預測數據的泄露.其中,機器學習中的安全威脅為對抗攻擊(adversarial attack),而隱私威脅則是隱私攻擊(privacy attack).

      2.2.1 對抗攻擊

      對抗攻擊也稱逃逸攻擊(evasion attack)[19,60-61],是指敵手在模型原始輸入上添加對抗擾動構建對抗樣本(adversarial examples)從而使模型對預測結果或者分類結果產生偏差.例如,垃圾郵件發(fā)送者經常通過混淆垃圾郵件和惡意軟件代碼的內容來逃避檢測,使得他們的垃圾郵件或者惡意軟件代碼是合法的.對抗攻擊的過程中,選擇和產生對抗擾動是非常關鍵的,對抗擾動一般是微小的并且有能力使模型產生錯誤輸出.

      2013年Szegedy等人[62]首次提出了對抗樣本的概念;之后Goodfellow等人[63]最早提出了對抗攻擊的防御方法,他們提出了一種快速梯度符號(fast gradient sign method, FGSM)的方法來生成對抗樣本,F(xiàn)GSM用于擾動模型的輸入;Moosavi-Dezfooli等人[64]基于迭代且線性近似的方案提出了一種計算對抗樣本的方法DeepFool,他們利用DeepFool來更精確地生成對抗樣本進行對抗訓練可以有效提高分類器的魯棒性;在2016年Papernot等人[65]提出了JSMA算法,JSMA構建一種針對性更強的對抗性樣例;2017年Carlini等人[66]提出了一種更加高效的方法產生對抗樣本;2020年Ru等人[67]將貝葉斯優(yōu)化與貝葉斯模型選擇結合優(yōu)化對抗擾動和搜索空間的最佳降維程度,提高模型的魯棒性;同年Zhou等人[68]提出了一種不需真實數據的替身模型訓練的方法,他們表明該方法在黑盒攻擊時具有較好的效果.

      2.2.2 隱私攻擊

      隱私攻擊是專注于隱私的一類攻擊,包括模型的隱私和數據的隱私.其中模型隱私包括模型參數信息、模型結構、模型本身等關于模型的隱私信息,數據的隱私包括訓練模型所用的數據集等.因此,總結常見的隱私攻擊類型,可以將針對模型隱私的攻擊稱為模型提取攻擊(model extraction attack),將針對數據隱私的攻擊稱為數據提取攻擊(data extrac-tion attack)和成員推理攻擊(membership inference attack).

      2.2.2.1 模型提取攻擊

      模型提取攻擊的目的就是敵手通過對已經訓練好的模型進行應用程序接口(application programming interface, API)查詢來非法竊取模型參數、模型結構,構建一個替代模型甚至非法獲取模型本身的一種攻擊方式[69],其流程圖如圖4所示.ML系統(tǒng)中的模型是非常有價值的一部分.首先,對于一個組織、機構或者公司來說,模型的訓練過程可能涉及到大量的數據,這些數據可能是組織、機構或者公司通過很大的代價獲得并處理的,然后經過大量的時間和金錢來訓練模型[70].其次,敵手可以通過模型提取攻擊來獲取模型參數、模型結構等信息,敵手獲得這些信息之后可以更加方便地實施投毒攻擊、對抗攻擊等惡意攻擊.因此,一旦模型泄露,可能對這些組織、機構或者公司帶來巨大的損失.

      Tramer等人[69]證明了模型提取攻擊對支持向量機、決策樹、神經網絡在內的大多數算法都有非常好的效果,并且表明對于1個N維模型,理論上只需要通過N+1次查詢就能夠提取該模型.Shi等人[71]通過深度學習高精度地提取了樸素貝葉斯和SVM分類器,并可以通過獲取到的信息重構一個等價的模型.Wang等人[72]提出一種針對超參數攻擊的方法,通過實驗表明,該方法使用了線性回歸、邏輯回歸、支持向量機和神經網絡等算法,成功獲取模型的超參數.

      Fig. 4 The diagram of model extraction attack圖4 模型提取攻擊流程圖

      2.2.2.2 數據提取攻擊

      數據提取攻擊也稱模型逆向攻擊(model inver-sion attack),由Fredrikson等人[73]首次提出,是指敵手通過訪問模型API,通過一系列的查詢來獲取模型訓練數據里的隱私數據的一種攻擊手段.數據提取攻擊造成的隱私數據泄露可能會造成巨大的威脅,如針對訓練的模型提取了病人的基因組信息[74],并且可以使藥物錯配,從而導致生命威脅.

      Fredrikson等人[73]通過訓練好的模型,成功通過數據提取攻擊重構了人臉圖像;Ateniese等人[75]構建了一種分類器使它可以攻擊其他分類器并獲取訓練數據;Song等人[76]證明了訓練好的模型會“記憶”大量隱私信息,如果存在惡意ML算法的模型訓練者,那么模型可能泄露訓練數據集的信息;Carlini等人[77]描述了一種可以提取隱私信息的算法,他們通過不斷查詢模型來獲取如信用卡號碼、ID號碼等隱私信息.

      2.2.2.3 成員推理攻擊

      成員推理攻擊指敵手通過訪問模型API獲取足夠數據,然后構建一些“影子”模型來模仿目標模型,最后通過構建一個攻擊模型來判斷某些特定的數據是否在訓練數據集中[34].成員推理攻擊也可能造成個人敏感數據的泄露,如Shokri等人[34]通過成員推理攻擊成功判斷了特定病人是否已出院.

      Pyrgelis等人[78]對集合數據發(fā)起成員推理攻擊,從而確定特定的用戶是否在集合數據中;Yeom等人[79]的研究表明,不管模型穩(wěn)定的算法還是容易過度擬合的算法,都容易受到成員推理攻擊;Song等人[80]設計了一種可審計的自然語言文本深度學習模型,用于檢測是否使用特定用戶的文本數據來訓練預言模型.Truex等人[81]證明了ML模型何時以及為什么容易受到成員推理攻擊;Hayes等人[82]通過生成對抗模型(generative adversarial network, GAN)檢測過擬合和識別出訓練數據中的一部分,并利用鑒別者的能力了解分布的統(tǒng)計差異,在白盒攻擊情況下,100%推斷出哪些樣本用于訓練模型;在黑盒攻擊情況下,成功率也達到了80%.

      2.2.3 預測數據的隱私泄露

      預測數據的隱私問題與訓練階段的隱私問題類似,主要是數據的隱私泄露,但預測數據的泄露主要發(fā)生在人們利用模型進行預測時.對于惡意的攻擊者,可能會獲取到用戶的隱私信息.目前有很多工作都考慮了預測數據的隱私問題,接下來的隱私保護方法涉及到該類介紹,在此不再贅述.

      2.3 小 結

      本節(jié)從訓練階段和預測階段2個角度出發(fā),分別介紹了機器學習過程中常見的安全隱私威脅.如表2所示,總結了機器學習中常見的攻擊手段所破壞的CIA安全模型的性質.在訓練階段中,訓練數據的隱私泄露破壞了機器學習CIA安全模型的機密性;投毒攻擊則破壞了其完整性和可用性,在一定程度下可能致使目標模型偏離甚至完全錯誤導致模型無用.在預測階段中,對抗攻擊則是通過添加對抗樣本的方式破壞模型的完整性,導致模型可以分類錯誤的樣本;隱私攻擊和預測數據的隱私泄露破壞了CIA安全模型的機密性,其中隱私攻擊可以在預測過程中泄露模型及訓練數據的隱私.對于影響CIA性質中機密性的情況,可以歸結為機器學習中的隱私威脅.

      Table 2 The Nature of the CIA Affected by the Attack表2 攻擊手段所影響的CIA性質

      3 機器學習中常見的安全防御方法

      3.1 針對投毒攻擊的防御

      投毒攻擊常見的防御方法有異常檢測、對模型進行準確性分析等[50].投毒攻擊是在訓練數據中注入異常數據,所以我們可以對數據進行分析,檢測數據的分布情況,從而分離出異常數據[83].Baracaldo等人[84]于2017年提出了一種使用數據集中數據點的來源和轉換的上下文信息來識別有毒數據的方法,從而使在線和定期再訓練的機器學習應用程序能夠在潛在的使用投毒攻擊的敵對環(huán)境中使用數據集.

      但是,攻擊者可能生成與真實數據分布非常相似的異常數據,最后可以成功誤導模型.Koh等人[83]提出了3種新的攻擊方法,它們都可以繞過常見的投毒攻擊防御手段,包括常用的基于最近鄰的異常檢測器、訓練損失(training loss)和奇異值分解等.他們設計的攻擊僅僅增加3%的有毒數據,就可以成功地將垃圾郵件檢測數據集的錯誤率從3%增加到24%,將IMDB情感分類數據集的錯誤率從12%增加到29%.

      因此,我們可以在訓練新添加的樣本數據時對模型進行準確性分析.如果收集的輸入是有毒的,那么它最終的目的是破壞模型在測試集上的準確性.通過在將訓練的新模型投入到生產環(huán)境之前對模型進行分析,我們可以避免投毒攻擊給我們帶來的影響.Suciu等人[85]提出的FAIL模型就是使用這種方法.

      3.2 針對對抗攻擊的防御

      對抗攻擊的防御方法有對抗訓練[86-88]、梯度掩碼[89-90]、去噪[91]、防御蒸餾[92-94]等.對抗訓練(adver-sarial training)是通過在訓練數據中引入對抗樣本來提升模型的魯棒性,是對抗攻擊最有效的防御方式之一.梯度掩碼(gradient masking)就是通過將模型的原始梯度隱藏起來達到抵御對抗攻擊的目的.去噪(denoising)則是在輸入模型進行預測之前,先對對抗樣本去噪,盡可能地使對抗樣本恢復成原始樣本,從而提高模型魯棒性.防御蒸餾(defensive distillation)首先根據原始樣本訓練一個初始的神經網絡,得到一個概率分布,然后再根據這個概率分布構建一個新的概率分布,最后利用整個網絡進行預測或分類,從而達到抵御對抗攻擊的目的.

      4 機器學習中常見的隱私保護方法

      隱私保護機器學習(privacy-preserving machine learning, PPML)方法最早可追溯至2000年,Lindell等人[95]提出了允許兩方在不泄露自己隱私的前提下,通過協(xié)作對聯(lián)合數據集進行提取挖掘的方法,Agrawal等人[96]允許數據擁有者將數據外包給委托者進行數據挖掘任務,且該過程不會泄露數據擁有者的隱私信息.早期關于PPML的研究工作主要集中在決策樹[95]、K-means聚類[97-98]、支持向量機分類[99]、線性回歸[100-101]、邏輯回歸[102]和嶺回歸[103]的傳統(tǒng)機器學習算法層面.這些工作大多都使用Yao[104]的混淆電路(garbled circuit, GC)協(xié)議,將問題化簡為線性系統(tǒng)的求解問題,但這不能推廣到非線性模型,而且需要比較大的計算開銷和通信開銷,因此缺乏實施或評估案例.

      在機器學習訓練過程中,模型提供商會對一些訓練數據進行記錄,而這些訓練數據往往會涉及到用戶個人的隱私等信息.在訓練階段,機器學習基于訓練數據集展開模型訓練,基于所學習數據的內在特征得到決策假設函數,而預測階段目標模型的有效性則依賴于屬于同一分布的訓練數據集和預測數據集,但是攻擊者仍可以通過修改訓練數據的分布從而實施目標模型的攻擊,在基于ML的醫(yī)療健康系統(tǒng)中,攻擊者不僅可以竊取病人隱私還可以發(fā)起惡意數據注入或數據修改攻擊,從而對病人的用藥劑量產生影響.在機器學習預測過程中,攻擊者無法修改訓練數據集,但仍可以通過訪問目標模型從而獲得有效的參數信息發(fā)起攻擊,使模型在預測階段發(fā)生錯誤.

      因此,采用隱私保護的手段保護數據和模型的安全是必不可少的,本節(jié)介紹密碼學中保護機器學習中隱私的常見技術,主要包括同態(tài)加密技術、安全多方計算技術和差分隱私技術.相關工作的對比如表3所示:

      Table 3 The Comparison of the Related Work表3 相關工作的對比

      4.1 同態(tài)加密技術

      同態(tài)加密技術(homomorphic encryption, HE)允許直接在密文上做運算,運算之后解密的結果與明文下做運算的結果一樣[118].同態(tài)加密技術常用于保護隱私的外包計算和存儲中,主要是首先將數據加密,然后將加密的數據發(fā)給云進行存儲或者計算,云直接在密態(tài)數據上進行操作,這樣既不會泄露隱私又滿足了需求.同態(tài)加密技術又可以分為全同態(tài)加密(fully homomorphic encryption, FHE)[119-125]、部分同態(tài)加密(partially homomorphic encryption, PHE)[126-127]、類同態(tài)加密(somewhat homomorphic encryption, SHE)[119-120,128-129]、層次型同態(tài)加密技術(leveled homomorphic encryption, LHE)[130-131]等.FHE可以計算無限深度的任意電路;PHE支持評估僅包含一種門類型的電路(如加法或者乘法);SHE可以計算加法和乘法電路,但只支持有限次的乘法;LHE支持對有界(預設)深度的任意電路進行計算.不同加密方案適用的場景如表4所示.

      Gentry基于理想格,構造了第一個理論上可行的FHE方案[119-120].該方案同時支持對密文上的加法和乘法運算,并可以構造執(zhí)行任意計算的電路.這種構造首先設計了一個SHE方案,它的深度是有限的,因為每個密文在某種意義上都是有噪聲的,而且這種噪聲隨著密文的增加而增加,直到最終噪聲使得得到的密文無法辨認.Gentry 之后通過改進該方案提出自舉技術,使得SHE可以轉換為FHE.之后也有很多人在Gentry的方案上進行改進,提出了更快、噪聲更少的SHE方案和可以不使用自舉技術就能評估有界(預設)深度電路的LHE方案[130-131].使用廣泛的RSA[126]和ElGamal[127]等加密系統(tǒng)都是PHE方案.

      接下來主要介紹全同態(tài)加密技術.全同態(tài)加密技術一直被認為是進行隱私保護機器學習的一項重要技術.FHE主要分為層次型全同態(tài)加密技術(leveled fully homomorphic encryption, LFHE)和自舉型同態(tài)加密技術(bootstrapping full homomor-phic encryption, BFHE)[129].其中LFHE即前文提到的LHE.

      Table 4 The Application Scenarios of Different Homomorphic Encryption Schemes表4 不同同態(tài)加密方案對應的場景

      2016年Gilad-Bachrach等人[113]提出了Crypto-Nets可以借助神經網絡對加密數據進行相應推斷,此后也有使用層次型同態(tài)加密方案對預先訓練好的卷積神經網絡(convolutional neural network, CNN)模型提供隱私保護性質,但是層次型同態(tài)加密技術會使得模型精度和效率嚴重下降.同時,模型中平方級的激活函數會被非多項式的激活函數和轉換精度的權重代替,導致推導模型與訓練模型得到的結果會有很大不同.此后,Hesamifard等人[114]采用低階多項式近似逼近的方法對CryptoDL方案進行了改進,Chabanne等人[132]采用近似的激活函數和歸一化操作改進加權值.Chillotti等人[133]、Bourse等人[134]則分別提出了相應的自舉FHE方案,該方案均比層次型同態(tài)加密方案效率更高,值得注意的是自舉FHE方案可以更加貼近實際地對單個實例進行預測.Jiang等人[46]則提出了一種基于矩陣同態(tài)加密的通用算術運算方法,提出在一些用戶提供的密文數據上云服務提供商進行模型訓練,該方法可以將加密模型應用到更新后的加密數據上.2019年Zheng等人[48]利用門限部分同態(tài)加密實現(xiàn)了Helen系統(tǒng),該系統(tǒng)能夠允許利用多個用戶的數據同時訓練模型,但不泄露數據.與之前的方案相比,Helen能夠抵御m方中m-1方都為惡意的對手.但是該系統(tǒng)不能抵御投毒攻擊、數據提取攻擊和拒絕服務攻擊.

      盡管從理論層面認為FHE技術可以進行任意計算,但受當前相關實際方案約束,F(xiàn)HE普遍僅能支持整數類型的數據;同時,電路深度需要固定而不能進行無限次的加法和乘法運算;除此之外,F(xiàn)HE技術不支持比較運算操作.雖然,目前存在一些實數上計算并有優(yōu)化的FHE方案,但數據規(guī)模大幅擴張、計算負載不斷加劇、非線性激活函數的擬合計算誤差等原因導致FHE的方案效率無法得到進一步提升.由此可見,F(xiàn)HE技術與機器學習算法的簡單結合,將無法保證相關機器學習算法對密文數據進行操作.

      4.2 安全多方計算技術

      在基于安全多方計算技術的隱私保護機器學習[45]方面,SMC允許互不信任的各方能夠在自身私有輸入上共同計算一個函數,其過程中不會泄露除函數的輸出以外的任何信息.但是,傳統(tǒng)的SMC協(xié)議往往需要較為龐大的計算量和通信復雜度,導致其難以在實際機器學習中得以大規(guī)模部署.目前,常見的基于SMC的PPML解決策略有:1)基于混淆電路、不經意傳輸等技術的隱私保護機器學習協(xié)議,并執(zhí)行兩方SMC協(xié)議來完成激活函數等非線性操作計算;2)基于秘密共享技術允許多方參與方參與機器學習網絡模型訓練或預測,且該過程不會透露數據或模型信息.SMC主要方案的發(fā)展歷程如圖5所示.

      4.2.1 兩方隱私保護機器學習協(xié)議

      Fig. 5 Development of privacy preserving machine learning based on secure two-partymulti-party computation圖5 基于兩方安全多方計算的隱私保護機器學習發(fā)展歷程

      典型的兩方隱私保護機器學習協(xié)議包括TASTY[135],ABY[136],SecureML[115],MiniONN[105],DeepSecure[137]和 GAZELLE[138]等.其中,ABY[136]利用高效乘法協(xié)議、快速的轉換技術以及預處理的密碼操作,構造用于兩方計算環(huán)境的基于算術共享、布爾共享和Yao混淆電路的安全計算方案.值得注意的是,SecureML[115]是在兩方計算環(huán)境中訓練神經網絡的隱私保護方法,該方案基于線性回歸、邏輯回歸和神經網絡等模型提出一種高效的截斷協(xié)議,相較于ABY提出的PPML算法更加高效.ABY和SecureML則均利用Beaver所提出三元組技術來實現(xiàn)部分乘法操作,但方案通信成本仍不理想.由于三元組會降低協(xié)議的效率,Chameleon[139]利用一個半誠實的第三方替代三元組從而減少了三元組的使用,另外,該方案基于ABY實現(xiàn)了加法秘密共享、GMW和GC的混合,大幅改進ABY的實用性和可擴展性.最近,QUOTIENT[140]和DELPHI[141]則分別基于兩方安全的神經網絡完成對數據的訓練和預測.這些兩方的協(xié)議主要考慮在非共謀服務器情況下的安全保障需求:假設云服務器是誠實且好奇的被動攻擊模型,在云服務器互不合謀情況下保證數據的安全性與機器學習方案的可用性.

      Fig. 6 Development of privacy preserving machine learning schemes involving multi-party圖6 多方參與的隱私保護機器學習相關方案的發(fā)展歷程

      為免受半可信參數服務器的攻擊,MiniONN[105]基于簡化的同態(tài)加密技術并將其應用于交換權重和梯度問題,把原始神經網絡轉換為遺忘神經網絡再進行網絡模型訓練,并將混淆電路作為近似非線性激活函數.DeepSecure[137]基于Yao混淆電路[104]對深度學習模型上的加密數據進行計算和推理,并完成相應的安全證明.Juvekar等人[138]指出MiniONN,DeepScure等工作表明同態(tài)加密在矩陣向量乘法具有明顯的優(yōu)勢,但在線性運算方面并不明顯.需要注意的是,雖然這些混合協(xié)議可以提高識別率,但帶寬和網絡延遲方面的效率并不理想.技術上來說,這些協(xié)議均是采用同態(tài)加密方法對標量乘法進行計算,采用安全多方計算對激活函數進行計算.

      4.2.2 多方隱私保護機器學習協(xié)議

      利用傳統(tǒng)分布式機器學習算法[142-143],典型的多方參與的PPML方案有ABY3[107],SecureNN[110],ASTRA[144],FLASH[145],Trident[146],BLAZE[147],FALCON[111],如圖6所示.

      ABY3[107]提出一種在半誠實環(huán)境和惡意環(huán)境下的新方案,可以完成三方之間的算術共享、布爾共享和Yao共享,它對SecureML中的近似定點數乘法進行改進,使其得以在三方環(huán)境下可以使用,并相應設計了一種計算分段多項式函數的協(xié)議.最終在兩方和三方的情況下分別將效率提升93倍和8倍,但是SecureNN[110]僅考慮了神經網絡訓練方案的設計.ASTRA[144]基于ABY3考慮了半誠實環(huán)境和惡意攻擊環(huán)境,提出一種新的更加安全的三方PPML協(xié)議,它構建了一個公平的重構協(xié)議,解決了發(fā)送者在無廣播頻道情況下通過私人頻道向其他參與方發(fā)送不同消息所可能導致的混亂,保證了當且僅當誠實方接收到輸出時,惡意攻擊方才會接收到輸出.對于分類任務,ASTRA[144]充分運用秘密共享方案中的不對稱性性質,放棄SecureML和ABY3中一些消耗較高的混淆電路或并行前綴加法器,最終提出一種新的安全比較協(xié)議.在半誠實的環(huán)境中,ASTRA則是將33%的整體通信開銷轉移到離線階段,而在惡意環(huán)境基于高效的點積協(xié)議進一步提升在線通信效率.然而,ABY3[107],SecureNN[110],ASTRA[144]等方案均是專注于半誠實環(huán)境下的PPML框架,進行相關點積計算是與向量大小成線性關系,在惡意環(huán)境下向量點積、最高標記位的提取和截斷的效率都會不同程度地降低.

      雖然,ABY3和SecureNN提出使用Abort的安全構建組件,且ASTRA[144]將Abort的安全性提升到公平性,F(xiàn)LASH[145]則進一步實現(xiàn)了保證輸出傳遞的最強安全概念(無論對手的行為如何,各方都獲得輸出)的四方PPML框架,且健壯性僅需要對稱密碼原語來實現(xiàn).與文獻[148]方案不同,F(xiàn)LASH不需要使用數字簽名、廣播等密碼原語,它在協(xié)議中引入一個新的誠實參與方大大提升協(xié)議效率.Trident[146]提出了最多可以容忍一方腐敗的四方PPML協(xié)議,其中第四方在除輸入共享和輸出重構的階段外,所有的在線階段均為非活動狀態(tài).在使用新的秘密共享方案后,Trident方案中25%的在線通信階段部分轉移到了離線階段部分,在線效率得以充分提升.BLAZE[147]則是效率較高的一個PPML協(xié)議,在3個服務器的情形下可以容忍1個惡意腐敗方的存在,并得到了更強的公平性保證(所有誠實方和惡意攻擊方都獲得相同的輸出),基于所提出的點積協(xié)議、截斷和位操作方法,方案效率比ABY3和ASTRA等方案更加高效[149].因此,僅有少數PPML方案考慮到了惡意攻擊環(huán)境,當惡意攻擊者存在情況下,還需考慮協(xié)議的公平性與一致性.

      2020年微軟、普林斯頓大學、以色列理工學院和Algorand基金會的研究人員基于SecureNN和ABY3推出了一個名為FALCON[111]的框架.該框架支持批歸一化(batch normalization, BN)并且保護隱私的安全框架,它可以支持訓練像AlexNet和VGG16這樣的大容量網絡.FALCON只使用算術秘密共享而避免使用轉換協(xié)議(在算術、布爾和亂碼電路之間)來實現(xiàn)針對非線性運算的惡意安全協(xié)議.

      這些方案的詳細比較如表5所示:

      Table 5 Comparison of Privacy Preserving Machine Learning Schemes Based on Multi-party Computation表5 多方參與的隱私保護機器學習相關方案的具體比較

      4.3 差分隱私技術

      差分隱私技術(differential privacy, DP)是通過添加噪聲來保護隱私的一種密碼學技術[150],因為加入少量噪聲就可以取得較好的隱私保護效果,因此從它被Dwork等人[150]提出來就被廣泛接受和使用.相比于前面2種密碼學技術,差分隱私技術在實際場景中更易部署和應用[151].在機器學習中一般用來保護訓練數據集和模型參數的隱私.DP技術主要分為中心化差分隱私技術和本地化差分隱私技術,中心化差分隱私技術主要采用拉普拉斯機制[150](Laplace mechanism)、指數機制[152](exponential mechanism)等方法,而本地化差分隱私技術則采用隨機響應[153-154](randomized response)方法.差分隱私技術保護用戶隱私查詢過程如圖7所示:

      Fig. 7 Query process of schematic diagram of the differential privacy technology圖7 差分隱私技術查詢過程

      Dwork等人[150]提出的差分隱私技術在數據發(fā)布[155-156]、數據分析[157]、數據查詢[158-159]、數據挖掘[150,152]等領域都受到了廣泛的應用.Bindschaedler等人[160]提出了一種合理可否認性(plausible deni-ability)的標準,保證了敏感數據的隱私.Huang等人[117]提出了一種基于差分隱私的ADMM分布式學習算法DP-ADMM,該算法在迭代過程中將近似增強拉格朗日函數與時變高斯噪聲相結合,保證了良好的收斂性和模型準確性.Wang等人[108]提出一種新的本地差分隱私機制來收集數值屬性,并將其擴展到可以同時包含數字和類別屬性的多維數據.他們實驗證明,該算法可支持許多重要的機器學習任務,并比目前方案更加有效.

      4.4 小 結

      本節(jié)介紹了機器學習中常見的3種隱私保護技術,即同態(tài)加密技術、安全多方計算技術、差分隱私技術.并且根據各個技術的發(fā)展介紹了一些典型的隱私保護機器學習算法.隨著深度學習的興起,人工智能也迎來了發(fā)展契機,但是隨著人工智能的廣泛應用,其安全與隱私問題也越來越引起人們的關注,安全與隱私問題已經成為阻礙人工智能發(fā)展的絆腳石.

      同態(tài)加密技術、安全多方計算技術和差分隱私技術是目前使用的比較廣泛的技術,從通信、算力、隱私等多個角度考慮,這3種隱私保護技術各有本身適用的計算場景.同態(tài)加密技術具有計算開銷大、效率低、可用性差、使用場景廣的特點,它適合集中式學習、外包計算等場景;安全多方計算技術具有可用性高、通信開銷大、效率低的特點,它適合分布式學習、聯(lián)邦學習等場景;差分隱私技術具有計算開銷小、效率高、可用性差的特點,它適合訓練數據的收集、模型參數保護等場景.具體如表6所示:

      Table 6 Applications Scenarios of the Three Privacy Preserving Technologies表6 3種隱私保護技術適合應用的場景

      5 總 結

      綜上所述,隨著機器學習算法和人工智能應用領域的研究逐步深入,機器學習算法的特殊性給用戶數據和網絡模型的隱私保護帶來巨大挑戰(zhàn),迫切需要進一步考慮更高的安全及隱私威脅,特別是可以實施惡意攻擊的攻擊者.

      針對安全威脅,我們還需要進一步探索針對投毒攻擊、對抗攻擊等攻擊手段的防御技術,提高模型的魯棒性,研究更強攻擊的防御手段.針對隱私威脅,全同態(tài)加密一直被認為是隱私保護機器學習的首選技術,但由于其具有數據擴張、計算負載、激活函數擬合誤差等不利因素,使得基于安全多方計算的隱私保護機器學習得到了迅速發(fā)展.然而,現(xiàn)有隱私保護機器學習方案往往假設云服務器是誠實且好奇的被動攻擊模型,考慮在云服務器互不合謀情況下數據的安全性與機器學習的可用性;并且,在更高的安全等級推廣到多方場景下,還需考慮存在惡意攻擊者情形下的公平性與一致性.因此,針對目前所提的方案,還需要再提高精度、效率,降低誤差,并考慮更強的威脅場景,如惡意場景等.因此,未來的研究方向建議如下:

      1) 建立完善統(tǒng)一的安全評估標準.對于大部分隱私數據,可在源頭上控制好這些數據的使用范圍和收集過程.但是由于目前缺乏合理完善的安全評估標準,各類機構對于隱私數據的使用和收集都沒有統(tǒng)一的標準,因此不可避免地會造成隱私的泄露[21].建立完善統(tǒng)一的安全評估標準勢在必行、刻不容緩.

      2) 研究具有更強魯棒性的隱私保護的機器學習模型.隨著如對抗攻擊、投毒攻擊等攻擊手段的發(fā)展,普通模型已經不能夠滿足隱私需求,模型的泄露給組織、機構帶來的損失不可估量.研究能夠抵抗更強攻擊手段的高魯棒性機器學習模型是未來的工作.

      3) 考慮更強威脅場景的機器學習方案.分布式、聯(lián)邦學習的場景是目前的趨勢,但是對于大多數分布式的方案來說,它們都是考慮半誠實的威脅模型.因此需要將目前的半誠實模型推廣到惡意模型,使機器學習方案在惡意攻擊者存在的情況下依然能夠保持公平性和一致性.

      4) 提高現(xiàn)有方案的精度、效率.目前的大部分隱私保護方案都是基于同態(tài)加密、安全多方計算和差分隱私的,目前這幾類技術的通信、計算等開銷比較大,這大大降低了算法的效率,帶來了不必要的資源浪費.并且這些方案存在精度丟失的問題,因此研究更加高效、精度更高的隱私保護方案是一個重要的研究方向.

      猜你喜歡
      投毒敵手同態(tài)
      基于樣本原生特征的投毒防御方法
      關于半模同態(tài)的分解*
      拉回和推出的若干注記
      不帶著怒氣做任何事
      一種基于LWE的同態(tài)加密方案
      HES:一種更小公鑰的同態(tài)加密算法
      投毒兇手
      把投毒看作“開玩笑”是情感荒漠化表現(xiàn)
      Kaminsky域名系統(tǒng)緩存投毒防御策略研究
      計算機工程(2013年1期)2013-09-29 05:19:50
      不帶著怒氣作戰(zhàn)
      宣城市| 兴宁市| 湖州市| 罗江县| 安福县| 富源县| 枣庄市| 元谋县| 肥东县| 理塘县| 花莲县| 碌曲县| 宜州市| 周至县| 南溪县| 七台河市| 广丰县| 长岭县| 平昌县| 宣汉县| 连平县| 南城县| 南郑县| 沈丘县| 邮箱| 原平市| 榆林市| 兴业县| 湖北省| 江门市| 文登市| 永嘉县| 抚顺市| 武川县| 独山县| 石阡县| 商水县| 方山县| 惠州市| 安多县| 新泰市|