臉書釋出了一個高效能開源函式庫Opacus,可以用來訓練差分隱私(Differential Privacy)PyTorch模型。Opacus透過輕量級API提供了PrivacyEngine抽象,該抽象會處理差分隱私工作,而訓練完的模型是標準PyTorch模型,可簡單地部署,另外,Opacus函式庫還包括預訓練和微調的模型,以及大規模模型使用教學,並提供了隱私研究的實驗基礎設施。

差分隱私是一種密碼學的方法,用來防止跨去識別化資料庫查詢時,可能使紀錄暴露個人資料的可能性,也就是説,當研究人員連結兩個或是多個分別經去識別化的資料庫時,各種公共紀錄匿名化的分法都可能會失效,而差分隱私技術就是防護這類匿名技術的隱私框架,過去通常差分隱私應用於分析中,但是最近也被大量用於機器學習裡。

而為了讓研究人員與工程師,能夠在機器學習應用中,簡單地使用差分隱私技術,並加速差分隱私的研究,臉書開源了自家使用的Opacus函式庫,Opacus在訓練模型時,盡可能降低客戶端需要更改的程式碼,減少差分隱私對訓練效能的影響,並且讓客戶端追蹤任何時刻的隱私預算。

Opacus使用差分隱私隨機梯度下降法(Differentially Private Stochastic Gradient Descent,DP-SGD),其透過修改標準的PyTorch最佳化程式,在訓練過程實作並且測量差分隱私,臉書提到,Opacus會保留每個訓練樣本的隱私,但同時又能限制差分隱私處理對最終模型準確性的影響。

該演算法的核心思想是,調整模型用來更新權重的參數梯度,來保護訓練資料集隱私,也就是在每次迭代的時候,將雜訊添加到梯度中,可以避免模型記住訓練範例,但同時又可以進行匯總學習,而雜訊會在訓練過程中的眾多批次中被消除。

臉書強調Opacus具有高速、靈活、安全和高互動性等特色,由於透過使用PyTorch中的Autograd Hook,Opacus能夠計算每個批次每個樣本的梯度,與仰賴微批次的差分隱私函式庫相比,Opacus超越他種方法數個數量級的速度,而且開發者能簡單地結合Opacus和PyTorch一起使用,並撰寫純Python程式,來快速驗證自己的想法。

而在安全性上,Opacus在重要的程式碼上,使用加密的偽隨機數生成器(Pseudo Random Number Generator,PRNG),這個過程是以GPU進行運算,高速地加密每批次參數。Opacus也具有極佳的互動性,能夠追蹤特定時間點隱私預算,進而讓用戶能夠執行即時追蹤或是提早停止等動作。

臉書提到,機器學習的應用和研究不斷往前進,他們鼓勵開發社群,特別是在重要的程式碼上,使用少量且經過仔細審查和專業維護的函式庫,不要使用自己開發的相關加密函式庫,才能最大程度地減少攻擊面,而臉書現在開源Opacus工具,讓差分隱私應用資源普及,使得機器學習更加安全。

熱門新聞

Advertisement