機器學習隱私研究新進展:數據增強風險被低估,新算法“降服”維數依賴
編者按:如今,數據是推動人工智能創新的核心要素。但數據的安全和隱私問題限制了數據充分釋放其潛能。一直以來,微軟都倡導打造負責任的人工智能,并正在開發和利用多種技術以提供更強大的隱私保護、確保數據安全。本文將為大家介紹微軟亞洲研究院在機器學習隱私研究的最新進展,以及討論在深度學習中的隱私攻擊與保護。
今天,數據已成為推動人工智能創新的燃料,但同時也是組織和個人所擁有的寶貴資產。因此,只有在充分保護數據安全和隱私的前提下,云計算和人工智能的連接才有可能釋放出數據的全部潛能,實現數據效能的共享。
眾所周知,在存儲和傳輸過程中加密數據早已是行業標準。而機密計算(Confidential Computing)則可以進一步保護計算過程中使用的數據,降低惡意軟件、內部攻擊和惡意或疏忽管理員等漏洞的風險。此前的文章“ 如何在機器學習的框架里實現隱私保護? ” ,已經對機密計算做過一些介紹,包括可信執行環境、同態加密、安全多方計算,和聯邦學習。這些技術構成了保護隱私的組合套件,通過將它們一起使用,能夠對不同場景構建合適的隱私和安全解決方案。
機密計算主要研究計算過程中數據的保護與攻擊方法。那么發布計算結果會暴露數據隱私嗎?比如,發布一個訓練好的深度神經網絡模型會暴露它的訓練數據嗎?如何控制和降低計算結果中隱私暴露的風險?下面我們將對這些問題展開探討。
訓練好的模型真的會泄露隱私嗎?
直觀上來說,這是一個很難回答的問題:一方面訓練好的神經網絡一定和訓練數據有關系,互信息大于零;另一方面,從模型參數中恢復訓練數據是一個求反問題,想要實現精確恢復非常困難。一個相對較容易的概念是成員推斷(Membership Inference, MI)——給定一個訓練好的模型,判斷某一個特定樣本是否來自訓練集(如圖1所示)。如果成員推斷準確率很高,那么模型泄露隱私的風險就會相對較大,并且在一些情形下,成員信息本身就是要保護的隱私信息。
圖1:成員推斷攻擊示例[9]
最近的一項研究[7]利用成員推斷找出 GPT-2(一種大型的語言模型)記住的訓練數據內容,成功提取了包含物理地址、姓名、電話、郵箱等敏感信息的訓練數據(如圖2所示)。這表明若發布在敏感數據上訓練的大模型時,會帶來很高的隱私風險。
圖2:訓練數據提取攻擊[7]。給定生成前綴,神經網絡語言模型 GPT-2 生成的例子是它記住的一段訓練文本,包括個人的姓名,電子郵件地址,電話號碼,傳真號碼,物理地址等。因為展示了準確的信息,圖例加黑框以保護隱私。
通常認為這種隱私泄露與過度擬合有關[8],因為過擬合表明模型記住了訓練集中的樣本。事實上,盡管過擬合是隱私泄露的充分條件且許多工作都利用過擬合來進行隱私攻擊,但是過擬合和隱私泄露兩者的關系并不完全相等。
在剛剛結束的 AAAI 2021 大會上,微軟亞洲研究院與中山大學合作完成的工作 How Does Data Augmentation Affect Privacy in Machine Learning? [9]就對此問題進行了深入討論。人們常常認為泛化誤差小的模型隱私泄露風險會很低。然而,該工作通過顯示數據增強如何影響成員推斷(MI)挑戰了這一觀念。數據增強(Data Augmentation)是一種在機器學習中廣泛應用的訓練技巧,它可以顯著提高模型的泛化性(過擬合很小)。在模型訓練中使用數據增強時,研究員們提出了一種新的成員推斷算法,把成員推斷作為一個集合分類問題,即對一組增強實例進行分類,而不是對單個數據點進行分類。而針對集合分類問題,研究員們還設計了輸入置換不變的神經網絡。
表1:成員推斷成功率(%),數據集 CIFAR10
實驗證明(如表1所示),當模型經過數據增強訓練時,該方法普遍優于原始方法。并且在一些數據增強訓練的模型上,甚至取得了比沒有數據增強訓練的模型上更高的成員推斷成功率,而前者往往有較高的測試準確率。而且該方法針對一個寬殘差網絡(WRN16-8)獲得了 >70% 的 MI 攻擊成功率,此網絡在 CIFAR10 上的測試精度超過 95%。以上結果均表明,通過數據增強訓練的模型的隱私風險可能在很大程度上被低估了。
既然我們已經看到了模型泄露隱私的風險,那么將如何擁有隱私保證的共享模型呢?這就需要引入差分隱私(Differential Privacy, DP)[1]。差分隱私可確保計算結果(如訓練好的模型)可以被安全地共享或使用。由于其嚴格的數學原理,差分隱私被公認為是隱私保護的黃金標準。應用差分隱私能夠從數據集中計算出有用的信息,同時還可以保證模型無法從計算結果中重新識別數據集中的任何個體。這為金融服務和醫療保健等領域的組織機構使用人工智能技術帶來了更大的信心,因為這些領域的數據都高度敏感,隱私保護格外受關注。
差分隱私從統計意義上衡量和控制了模型對訓練數據的泄露。它刻畫了單個數據樣本對模型的影響:一個隨機算法 M 符合 (ϵ,δ)-DP 意味著對于任何兩個相鄰的數據集 S, S' 和任意事件 E 滿足 P(M(S)∈E))≤e^ϵ P(M(S' )∈E)+δ。具體來說,差分隱私通常會按以下方式工作。它會給每次查詢的結果添加少量噪聲以掩蓋單個數據點的影響,然后跟蹤并累積查詢的隱私損失,直至達到總體隱私預算,之后便不再允許查詢。為保證差分隱私所加入的噪聲,可能會影響結果的準確性,但如果查詢結果的維數較小,則不會有顯著影響。
噪聲擾動哪家強?
在機器學習過程中實現差分隱私的一種通用做法也是加噪聲,即用噪聲掩蓋單個數據點的影響。機器學習的一般流程如圖3中的上半部分所示:設計目標函數即經驗風險最小化(Empirical Risk Minimization, ERM),然后訓練過程一般是基于梯度的優化算法,最后輸出訓練好的模型。對應地,根據加噪聲的時機,差分隱私機器學習(Differential Private Machine Learning) 有三種實現方法(如圖3中的下半部分所示)——目標擾動(Objective Perturbation),即在目標函數上添加噪聲;梯度擾動(Gradient Perturbation, GP),即在梯度上添噪聲;輸出擾動(Output Perturbation),即在最后輸出上添加噪聲。不過若添加的噪聲很大,會帶來模型的性能損失,但太小又不能很好地保護隱私。因此,差分隱私機器學習可以研究如何在給定隱私損失的要求下,添加最少的噪聲取得最好的性能。
微軟亞洲研究院與中山大學在最近的工作 Gradient Perturbation is Underrated for Differentially Private Convex Optimization [2] 中介紹了相關的研究工作,該論文被 IJCAI 2020 接收。研究員們發現在梯度擾動算法中加入的噪聲和優化算法會相互影響,噪聲會讓優化算法避開最差曲率方向,而優化算法的收縮性則可以弱化之前步驟所添加的噪聲。所以研究員們在分析中利用了這種相互影響,推導出了一個新的基于期望曲率的理論性能,可以顯式地看出梯度擾動比另外兩種擾動方式(目標擾動和輸出擾動)的優勢。梯度擾動依賴期望曲率,而目標擾動或輸出擾動則依賴最差曲率,在實際中期望曲率往往比最差曲率大得多。研究員們還給出了另外兩種擾動無法利用這種相互影響的原因——在目標擾動和輸出擾動中,都需要確定單個數據點對最終學到的模型的影響(敏感度),這是由目標函數的 Lipschitz 系數和強凸系數決定,而這些系數又是由問題本身的特征所決定,與優化算法無關。據此,梯度擾動是一種實現差分隱私機器學習的有效算法。在之后的研究中,研究員們也會將重點放在梯度擾動算法(如 DP-SGD)方面。
圖3:機器學習流程,與其對應的添加噪聲保證 DP 的三種方式
然而,在應用 DP-SGD 訓練大規模深度神經網絡模型時仍面臨巨大挑戰。由于差分隱私的性能有很差的維數依賴,模型參數越多,加入的噪聲能量也越大,這就導致大模型的性能下降明顯。而如今的深度學習模型都是由大量參數組成的,對于一個合理的隱私預算,應用 DP-SGD 訓練的深度神經網絡性能并不好。那么要如何克服 DP-SGD 的維數依賴問題?
模型大,維數高,保證 DP 再難也要上?
維數依賴性是應用差分隱私(DP)的一個本質困難。為了解決“維數”挑戰,在最近的 ICLR 2021 論文 Do not let privacy overbill utility: gradient embedding perturbation for private learning [4] 中,微軟亞洲研究院的研究員們提出了一種算法“梯度嵌入擾動(Gradient embedding perturbation, GEP)”。其基本想法是模型維數雖然很大,但梯度卻通常在一個低維空間中,這不僅符合人們對數據生長在低維流形上的認知,也在實踐中可以被廣泛驗證(圖4)。利用這個性質,研究員們把模型梯度先投影到一個低維空間后再做擾動,從而巧妙地繞開了維數依賴。
圖4:梯度矩陣的穩定秩(p為參數維度),設置為 CIFAR-10 上的 ResNet20。在整個訓練中,相比于參數維度,梯度矩陣的穩定秩都很小[4]。
具體來說(如圖5所示),在每個梯度下降步中,首先用輔助數據估計一個錨子空間,然后將私有梯度投影到錨子空間,得到一個低維梯度嵌入和一個小范數的殘余梯度,之后分別擾動梯度嵌入和殘余梯度,以保證差分隱私預算。總的來說,可以使用比原來的梯度擾動低得多的擾動,以保證相同的隱私水平。
圖5:梯度嵌入擾動 GEP 算法圖示[4]
梯度嵌入擾動有哪些特征呢?首先,在梯度嵌入擾動中使用的非敏感輔助數據的假設比之前的工作[5,6]中使用的公開數據的假設弱得多——梯度嵌入擾動只需要少量非敏感無標記數據,并只要求其特征分布與私有數據相似,比如在實驗中使用 ImageNet 的2000個降采樣圖像作為 MNIST、SVHN 和 CIFAR-10 數據集的輔助數據。其次,梯度嵌入擾動同時擾動低維梯度嵌入和殘余梯度,這是目標梯度的無偏估計,也是取得好性能的關鍵。第三,使用冪法估計梯度矩陣的主成分,從而實現簡單高效。
這種分解使用的噪聲相對小很多,從而有助于打破隱私學習的維度障礙。借助梯度嵌入擾動,研究員們在合理的隱私預算下實現了深度模型較好的準確性。在隱私預算 ϵ=8 的情況下,實驗在 CIFAR10 上達到了74.9%的測試準確度,并在 SVHN 上達到了95.1%的測試準確度,大大提高了現有結果(表2)。據目前所知,梯度嵌入擾動是首個從頭訓練而實現這種效果的算法,并且隱私預算只有"個位數"。如果使用 ImageNet 預訓練模型,梯度嵌入擾動還可以在 CIFAR10 驗證集上取得94.8%的準確率,詳細信息請參考論文。
表2:不同算法在 SVHN 和 CIFAR10 測試集準確率
通過對隱私攻擊更深入的研究以及利用訓練深度神經網絡模型時梯度的低秩屬性,微軟亞洲研究院的研究員們正在努力把隱私保護應用到深度神經網絡模型中,讓用戶即使在處理敏感數據時也可以安全地使用現代機器學習技術。研究員們認為,隱私保護并不會限制機器學習的性能,因為它們從根本上并不沖突——隱私保護個體,學習挖掘整體。未來,相信隱私保護研究可以讓可利用的“燃料”(海量數據)得到更大的釋放,人工智能的邊界和性能也將因此得以拓展和提高。