丁香五月天婷婷久久婷婷色综合91|国产传媒自偷自拍|久久影院亚洲精品|国产欧美VA天堂国产美女自慰视屏|免费黄色av网站|婷婷丁香五月激情四射|日韩AV一区二区中文字幕在线观看|亚洲欧美日本性爱|日日噜噜噜夜夜噜噜噜|中文Av日韩一区二区

您正在使用IE低版瀏覽器,為了您的雷峰網(wǎng)賬號(hào)安全和更好的產(chǎn)品體驗(yàn),強(qiáng)烈建議使用更快更安全的瀏覽器
此為臨時(shí)鏈接,僅用于文章預(yù)覽,將在時(shí)失效
業(yè)界 正文
發(fā)私信給貝爽
發(fā)送

0

Facebook開源差分隱私庫Opacus,可保護(hù)數(shù)據(jù)隱私且高效訓(xùn)練Prytorch模型

本文作者: 貝爽 2020-09-02 18:26
導(dǎo)語:Opacus的目標(biāo)是保護(hù)每個(gè)訓(xùn)練樣本的私密性,同時(shí)限制對(duì)最終模型準(zhǔn)確性的影響。

如何保護(hù)數(shù)據(jù)集隱私,是深度學(xué)習(xí)訓(xùn)練必須要解決的問題之一。

近日,F(xiàn)acebook開源了一個(gè)名為Opacus的高速庫,該庫可用于訓(xùn)練具有差分隱私的PyTorch模型。

Facebook開源差分隱私庫Opacus,可保護(hù)數(shù)據(jù)隱私且高效訓(xùn)練Prytorch模型

差分隱私(Differential Privacy ,簡(jiǎn)稱DP)是保護(hù)數(shù)據(jù)集隱私的重要工具。在此之前,谷歌、微軟等也陸續(xù)開源了其核心產(chǎn)品使用的差分隱私庫。

不同的是,與現(xiàn)有方法相比,Opacus具有可擴(kuò)展性,支持大多數(shù)類型的PyTorch模型,并且只需對(duì)神經(jīng)網(wǎng)絡(luò)進(jìn)行最少的代碼更改。同時(shí)它允許客戶端實(shí)時(shí)監(jiān)控任何給定時(shí)間花費(fèi)的隱私預(yù)算(Privacy Budget,DP中的核心數(shù)學(xué)概念)。

保護(hù)隱私的Opacus庫

蘋果在 2016 的開發(fā)者大會(huì)上首次提出了“差分隱私(DP)”的概念。即通過算法來打亂個(gè)體用戶數(shù)據(jù),讓任何人都不能憑此追蹤到具體的用戶,但又可以允許機(jī)構(gòu)成批分析數(shù)據(jù)以獲得大規(guī)模的整體趨勢(shì)用于機(jī)器學(xué)習(xí)。

換句話說,DP有效地限制了某些用于匯總數(shù)據(jù)集信息的算法。

Facebook在博客中稱,他們通過計(jì)算精確答案并添加隨機(jī)采樣噪聲來執(zhí)行計(jì)數(shù)查詢的差分隱私。以最簡(jiǎn)單的形式,可以使用從拉普拉斯分布中提取的噪聲來實(shí)現(xiàn)隱私保護(hù)機(jī)制。

同時(shí),他們?cè)诖嘶A(chǔ)上,引入差分私有隨機(jī)梯度下降算法(Differentially Private Stochastic Gradient Descent,簡(jiǎn)稱,DP-SGD),該算法通過小批量隨機(jī)優(yōu)化過程,使其具有差分私有性。

具體而言,Opacus庫在保護(hù)數(shù)據(jù)隱私方面有以下特性:

  • 速度:通過利用PyTorch中的Autograd Hook,Opacus可以計(jì)算成批的單個(gè)樣本梯度,與微批量(Microbatching.)處理的現(xiàn)有DP庫相比,實(shí)現(xiàn)了數(shù)量級(jí)的加速。

  • 安全:Opacus對(duì)其安全關(guān)鍵代碼使用加密的偽隨機(jī)數(shù)生成器,在GPU上對(duì)整批參數(shù)進(jìn)行高速處理。

  • 靈活性:Opacus可以與Pythorch代碼和純Python代碼相互混合和匹配,來快速構(gòu)建工程師的想法原型。

  • 生產(chǎn)力:Opacus附帶教程,在訓(xùn)練開始前警告不兼容層的幫助函數(shù),以及自動(dòng)重構(gòu)機(jī)制。

  • 交互性:Opacus可以跟蹤任何給定時(shí)間點(diǎn)花費(fèi)的隱私預(yù)算,從而能夠提早停止和實(shí)時(shí)監(jiān)控。

Opacus通過引入Privacy Engine抽象定義了一個(gè)輕量級(jí)API,它既可以跟蹤隱私預(yù)算,也可以處理模型的梯度。

同時(shí),它的使用方法也非常簡(jiǎn)單,無需調(diào)用,用戶只需要將Opacus附加到標(biāo)準(zhǔn)的PyTorch優(yōu)化器上,并在訓(xùn)練代碼的開頭添加以下代碼即可:

Facebook開源差分隱私庫Opacus,可保護(hù)數(shù)據(jù)隱私且高效訓(xùn)練Prytorch模型

訓(xùn)練后,生成的就是一個(gè)標(biāo)準(zhǔn)的PyTorch模型,沒有部署私有模型的任何額外步驟或障礙:在使用DP對(duì)其進(jìn)行訓(xùn)練之后部署,無需更改任何代碼。

另外,Opacus庫還包括了經(jīng)過預(yù)訓(xùn)練和微調(diào)的模型,用于大型模型的教程,以及用于隱私研究實(shí)驗(yàn)的基礎(chǔ)結(jié)構(gòu)。 

高效訓(xùn)練的核心算法

Opacus能夠在保護(hù)每個(gè)訓(xùn)練樣本私密性的同時(shí),限制對(duì)最終模型準(zhǔn)確性的影響。它通過修改標(biāo)準(zhǔn)的PyTorch優(yōu)化器來做到這一點(diǎn)。具體來說,是采用一種差分私有隨機(jī)梯度下降的算法。

Facebook在博客中稱,“該算法的核心思想是,我們可以通過干預(yù)模型來更新權(quán)重的參數(shù)梯度(而不是直接獲取數(shù)據(jù))來保護(hù)訓(xùn)練數(shù)據(jù)集的隱私。通過在每次迭代中將噪聲添加到梯度中,可以防止模型記住其訓(xùn)練示例,同時(shí)仍可進(jìn)行匯總學(xué)習(xí),(無偏)噪聲自然會(huì)在訓(xùn)練中看到的許多批次而抵消。

需要強(qiáng)調(diào)的是,由于PyTorch優(yōu)化器可以查看參數(shù)梯度,因此,可以直接將噪聲添加到其中,并允許任何人簡(jiǎn)單地訓(xùn)練差分私有模型,其代碼如下:

Facebook開源差分隱私庫Opacus,可保護(hù)數(shù)據(jù)隱私且高效訓(xùn)練Prytorch模型

此外,噪聲的定量問題是這一解決方案的關(guān)鍵。因?yàn)檫^多的噪聲會(huì)破壞信號(hào),過少的噪聲將無法保證隱私。

為了確定合適的比例,首先要查看小批量中梯度的最大范數(shù)。因?yàn)殡x群值比大多數(shù)樣本具有更大的梯度,需要確保這些異常值的私密性。

通常研究人員會(huì)采用微批量(microbatch)的方法。該方法是在小批量處理中計(jì)算每個(gè)樣本的梯度,分別裁剪梯度,將其累積回單個(gè)梯度張量,然后將噪聲添加到總和中。該方法具有簡(jiǎn)單性和兼容性和特點(diǎn),但計(jì)算每個(gè)樣本的梯度,限制了訓(xùn)練的速度。

在這里,Opacus采用了另一種更高效的解決方案。該方案由谷歌于2015年提出,其論文為《EFFICIENT PER-EXAMPLE GRADIENT COMPUTATIONS》,對(duì)于所有ML樣本而言,它可以計(jì)算整個(gè)批次的梯度向量,同時(shí)優(yōu)化性能。

Facebook在論文中表示,他們?cè)谟?xùn)練標(biāo)準(zhǔn)神經(jīng)網(wǎng)絡(luò)時(shí),采用該方法獲得了所有需要的梯度向量。該方法的不同之處在于,對(duì)于模型參數(shù),可以單獨(dú)返回給定批次中每個(gè)示例的損耗梯度,如下所示:

Facebook開源差分隱私庫Opacus,可保護(hù)數(shù)據(jù)隱私且高效訓(xùn)練Prytorch模型

通過在運(yùn)行各層時(shí)跟蹤一些中間數(shù)量,可以使用適合內(nèi)存的任何批次大小進(jìn)行訓(xùn)練,這種方法比其他軟件包中的微批量方法快一個(gè)數(shù)量級(jí)。

安裝方法

目前,這款Opacus高速庫已經(jīng)在Github開源。所有機(jī)器學(xué)習(xí)從業(yè)者和差異隱私科學(xué)家都可以下載使用。

Facebook開源差分隱私庫Opacus,可保護(hù)數(shù)據(jù)隱私且高效訓(xùn)練Prytorch模型

Github地址:https://github.com/pytorch/opacus

Facebook表示,他們希望通過開發(fā)Opacus之類的PyTorch工具,可以使對(duì)此類隱私保護(hù)資源的訪問民主化,同時(shí)通過使用PyTorch的更快,更靈活的平臺(tái)彌合了安全社區(qū)和通用機(jī)器學(xué)習(xí)工程師之間的鴻溝。

用戶可以直接從Github安裝最新版本,代碼如下:

git clone https://github.com/pytorch/opacus.git

 cd opacus
pip install -e .

另外,需要注意的是,要使用差分隱私訓(xùn)練模型,需要聲明PrivacyEngine,并將其附加到優(yōu)化器,再運(yùn)行,例如:

Facebook開源差分隱私庫Opacus,可保護(hù)數(shù)據(jù)隱私且高效訓(xùn)練Prytorch模型

引用鏈接:雷鋒網(wǎng)雷鋒網(wǎng)雷鋒網(wǎng)

https://venturebeat.com/2020/08/31/facebook-open-sources-opacus-a-pytorch-library-for-differential-privacy/ 

https://ai.facebook.com/blog/introducing-opacus-a-high-speed-library-for-training-pytorch-models-with-differential-privacy

https://medium.com/pytorch/differential-privacy-series-part-1-dp-sgd-algorithm-explained-12512c3959a3

雷峰網(wǎng)原創(chuàng)文章,未經(jīng)授權(quán)禁止轉(zhuǎn)載。詳情見轉(zhuǎn)載須知。

分享:
相關(guān)文章
當(dāng)月熱門文章
最新文章
請(qǐng)?zhí)顚懮暾?qǐng)人資料
姓名
電話
郵箱
微信號(hào)
作品鏈接
個(gè)人簡(jiǎn)介
為了您的賬戶安全,請(qǐng)驗(yàn)證郵箱
您的郵箱還未驗(yàn)證,完成可獲20積分喲!
請(qǐng)驗(yàn)證您的郵箱
立即驗(yàn)證
完善賬號(hào)信息
您的賬號(hào)已經(jīng)綁定,現(xiàn)在您可以設(shè)置密碼以方便用郵箱登錄
立即設(shè)置 以后再說