0
  • 聊天消息
  • 系統(tǒng)消息
  • 評論與回復
登錄后你可以
  • 下載海量資料
  • 學習在線課程
  • 觀看技術視頻
  • 寫文章/發(fā)帖/加入社區(qū)
會員中心
創(chuàng)作中心

完善資料讓更多小伙伴認識你,還能領取20積分哦,立即完善>

3天內不再提示

Facebook開源Opacus:用于差分隱私的PyTorch庫

電子設計 ? 來源:電子設計 ? 作者:電子設計 ? 2020-12-15 00:47 ? 次閱讀

Opacus 是 Facebook AI 更為廣泛努力的一部分,旨在推動用于機器學習和負責任的人工智能安全計算技術??偟膩碚f,這是一個重要的踏腳石,使該領域在未來轉向隱私優(yōu)先的系統(tǒng)。日前,Opacus 已開源發(fā)布。

差分隱私(Differential privacy,DP)是密碼學中的一種手段,旨在提供一種當從統(tǒng)計數(shù)據(jù)庫查詢時,最大化數(shù)據(jù)查詢的準確性,同時最大限度減少識別其記錄的機會。讀者可以查看這篇由 InfoQ 中文站翻譯的文章《差分隱私簡介》,以了解基本概念。

機器學習算法一般是用大量數(shù)據(jù)更新模型參數(shù),學習數(shù)據(jù)特征。在理想情況下,這些算法學習到一些泛化性較好的模型,例如 “吸煙患者更容易得肺癌”,而不是特定的個體特征,例如 “張三是個吸煙者,患有肺癌”。然而,機器學習算法并不會區(qū)分通用特征還是個體特征。當我們用機器學習來完成某個重要任務,例如肺癌診斷,發(fā)布的機器學習模型可能在無意中透露訓練集中的個體特征,惡意攻擊者可能從發(fā)布的模型獲得關于張三的隱私信息,因此使用差分隱私技術來保護機器學習模型是十分必要的。

通常,差分隱私需要在將原始數(shù)據(jù)輸入本地機器學習模型之前,將少量噪聲注入原始數(shù)據(jù),從而使惡意攻擊者難以從訓練的模型中提取出原始文件。如果一個觀察者觀察算法的輸出,無法判斷它在計算中是否使用了某個特定個體的信息,那么這個算法就可以被認為是差分隱私的。

為了解決這一問題,日前,F(xiàn)acebook 發(fā)布并開源了Opacus,這是一個新的高速庫,用于訓練具有差分隱私的 PyTorch 模型,比現(xiàn)有的最先進方法更具可擴展性。差分隱私是一個數(shù)學上嚴謹?shù)目蚣?,用于量化敏感?shù)據(jù)的匿名化。人們對機器學習社區(qū)的興趣越來越濃厚,它經常被用于分析。隨著 Opacus 的發(fā)布,F(xiàn)acebook 希望能為研究人員和工程師在機器學習中采用差分隱私提供一條更簡單的路徑,并加速該領域的差分隱私研究。

Opacus 地址

Opacus 提供了如下特征:

速度:通過利用 PyTorch 中的 Autograd 鉤子,Opacus 可以計算經過批處理的每個樣本梯度,與現(xiàn)有的依賴微批處理的 DP 庫相比,速度提高了一個數(shù)量級。

安全性:Opacus 為安全關鍵代碼使用了一個 密碼安全、偽隨機、GPU 加速的數(shù)字數(shù)生成器。

靈活性:多虧了 PyTorch,工程師和研究人員可以通過將 Facebook 的代碼與 PyTorch 代碼和純 Python 代碼混合匹配,從而快速構建他們的想法原型。

生產力:Opacus 提供了教程、輔助函數(shù)(可以在你的訓練開始之前警告不兼容的層),以及自動重構機制。

交互性:Opacus 可以跟蹤你在任何給定時間點上的隱私預算(差分隱私中的核心數(shù)學概念),從而實現(xiàn)提前停止和實時監(jiān)控。

Opacus 通過引入 PrivacyEngine 抽象定義了一個輕量級 API,它負責跟蹤隱私預算和處理模型的梯度。你不需要直接調用它進行操作,因為它連接到標準的 PyTorch 優(yōu)化器上。它在幕后工作,使得使用 Opacus 進行訓練就像在你的訓練代碼的開頭添加這些代碼行一樣容易:

model = Net()
optimizer = torch.optim.SGD(model.parameters(), lr=0.05)
privacy_engine = PrivacyEngine(
model,
batch_size=32,
sample_size=len(train_loader.dataset),
alphas=range(2,32),
noise_multiplier=1.3,
max_grad_norm=1.0,
)
privacy_engine.attach(optimizer)
# That's it! Now it's business as usual

經過訓練,得到的是一個標準的 PyTorch 模型,沒有部署私有模型的額外步驟或障礙:如果今天可以部署一個模型,那么你就可以在用差分隱私訓練后部署它,無需更改任何一行代碼。

Opacus 庫還包括預訓練和微調的模型、針對大型模型的教程,以及為隱私研究實驗設計的基礎設置。它是開源的【地址】

利用 Opacus 實現(xiàn)高速隱私訓練

Facebook 表示,他們使用 Opacus 的目的是保護每個訓練樣本的隱私,同時限制對最終模型正確率的影響。Opacus 通過修改標準 PyTorch 優(yōu)化器來實現(xiàn)這一目標,以便在訓練期間執(zhí)行(和測量)查分意思。更具體地說,他們的方法以差分隱私隨機梯度下降(Differentially private stochastic gradient descent,DP-SGD)為中心。

這個算法背后的核心思想是,可以通過干預模型用來更新權重的參數(shù)梯度,而不是直接干預數(shù)據(jù),從而保護訓練數(shù)據(jù)集的隱私。通過在每次迭代中想梯度添加噪聲,人們就可以防止模型記憶其訓練實例,同時仍然可以進行融合學習。在訓練過程中看到的許多批處理中,(無偏的)噪聲將自然地趨于抵消。

這種每個樣本的計算是構建 Opacus 的最大障礙之一。與使用 PyTorch 的典型操作相比,它更具挑戰(zhàn)性,因為在 PyTorch 中,Autograd計算整個批處理的梯度張量,因為這對于所有其他機器學習用例都是有意義的,并且它對性能進行了優(yōu)化。為克服這一問題,F(xiàn)acebook 使用了一種有效的技術,在訓練標準神經網絡時獲得所有需要的梯度向量。對于模型參數(shù),則單獨返回給定批處理中每個示例的損失梯度,例如:

通過在運行層時跟蹤一些中間量,人們可以使用適合內存的任何批處理大小進行訓練,這使得 Facebook 的方法與其他軟件包中使用的替代微批處理方法相比,速度提高了一個數(shù)量級。

隱私保護機器學習的重要性

安全社區(qū)鼓勵安全關鍵代碼的開發(fā)者使用少量經過仔細審核和專業(yè)維護的庫。這種“不要自己搞安全方案”原則有助于最大限度地減少攻擊面,讓應用開發(fā)人員專注于他們最擅長的事情:構建偉大的產品。隨著機器學習的應用和研究不斷加速,對于機器學習研究人員來說,在不減慢訓練過程的前提下,獲得簡單易用的工具,以獲得數(shù)學上嚴格的隱私保證是非常重要的。

Facebook 希望通過開發(fā)像 Opacus 這樣的 PyTorch 工具,使此類隱私保護資源的訪問更加民主化。Facebook 正在通過使用 PyTorch 的更快速、更靈活的平臺,彌合安全社區(qū)和普通機器學習工程師之間的鴻溝。

建立社區(qū)

過去幾年,隱私保護機器學習(Privacy-preserving machine learning,PPML)社區(qū)發(fā)展迅速。Facebook 表示他們對圍繞 Opacus 形成的生態(tài)系統(tǒng)感到興奮,這個生態(tài)系統(tǒng)由 PPML 的領導者組成。

OpenMined 是 Facebook 的主要貢獻者之一,它是一個由數(shù)千名開發(fā)者組成的社區(qū),他們在開發(fā)應用時考慮到了隱私問題。OpenMined 社區(qū)已經為 CrypTen 做出了貢獻,并利用 PyTorch 的許多構件來支持 PySyft 和 PyGrid 的差分隱私和聯(lián)合學習。作為合作的一部分,Opacus 將成為 PySyft 等 OpenMined 庫的依賴。

Facebook 期待繼續(xù)合作,進一步發(fā)展社區(qū)。

文章來源:AI前線 ,作者Davide Testuggine、Ilya Mironov

審核編輯 黃昊宇

聲明:本文內容及配圖由入駐作者撰寫或者入駐合作網站授權轉載。文章觀點僅代表作者本人,不代表電子發(fā)燒友網立場。文章及其配圖僅供工程師學習之用,如有內容侵權或者其他違規(guī)問題,請聯(lián)系本站處理。 舉報投訴
  • 人工智能
    +關注

    關注

    1789

    文章

    46428

    瀏覽量

    236661
  • 開源
    +關注

    關注

    3

    文章

    3191

    瀏覽量

    42257
  • pytorch
    +關注

    關注

    2

    文章

    795

    瀏覽量

    13088
收藏 人收藏

    評論

    相關推薦

    Facebook智能音箱可能先在國際市場推出 隱私問題受到關注

      導讀:據(jù)外媒報道,據(jù)知情人士稱,Facebook正考慮在國際市場上率先推出其智能音箱產品,以避免因數(shù)據(jù)隱私問題在美國遭到公開審查。此外,這兩款智能音箱將內置一款語音助手,它使用的基礎技術與公司在
    發(fā)表于 05-09 09:29

    美國智能音箱Facebook信任度墊底

    ]  調查發(fā)現(xiàn),在美國市場六個智能家居品牌中,Facebook是人們在個人數(shù)據(jù)和家庭安全方面最不信任的智能硬件品牌。據(jù)了解,Facebook隱私方面有些“前科”,該公司因數(shù)據(jù)泄露曾受到抨擊,黑客可以從近
    發(fā)表于 01-25 09:27

    基于隱私的軌跡模式挖掘算法

    長度,然后采用一種動態(tài)規(guī)劃的策略對原始數(shù)據(jù)進行截斷處理,在此基礎上,利用等價關系構建前綴序列格,并挖掘頻繁軌跡模式。理論分析表明LTPM算法滿足s一隱私;實驗結果表明,LTPM算
    發(fā)表于 11-25 11:38 ?0次下載
    基于<b class='flag-5'>差</b><b class='flag-5'>分</b><b class='flag-5'>隱私</b>的軌跡模式挖掘算法

    基于隱私的數(shù)據(jù)匿名化隱私保護模型

    在保護數(shù)據(jù)隱私的匿名技術中,為解決匿名安全性不足的問題,即匿名過程中因計算等價類質心遭受同質性和背景知識攻擊造成的隱私泄漏,提出了一種基于隱私
    發(fā)表于 12-11 16:31 ?0次下載
    基于<b class='flag-5'>差</b><b class='flag-5'>分</b><b class='flag-5'>隱私</b>的數(shù)據(jù)匿名化<b class='flag-5'>隱私</b>保護模型

    線性查詢的一種近似最優(yōu)隱私機制

    隱私保護程度確定的條件下使數(shù)據(jù)的有用性最大化的問題,稱為隱私的最優(yōu)機制問題.最優(yōu)機制問
    發(fā)表于 12-26 14:10 ?0次下載

    一種軌跡隱私發(fā)布方法

    針對現(xiàn)有軌跡隱私保護發(fā)布方法面臨的獨立噪聲容易被濾除的問題,提出一種軌跡隱私發(fā)布方法-C
    發(fā)表于 01-17 14:11 ?0次下載
    一種軌跡<b class='flag-5'>差</b><b class='flag-5'>分</b><b class='flag-5'>隱私</b>發(fā)布方法

    Facebook致力AI開源PyTorch 1.0 AI框架

    Facebook近日宣布,將于近期開源PyTorch 1.0 AI框架,據(jù)悉,該框架是PyTorch與Caffe 2的結合,可以讓開發(fā)者無需遷移就從研究轉為生產。
    的頭像 發(fā)表于 05-08 14:58 ?3363次閱讀

    Facebook致力AI 開源PyTorch1.0 AI框架

    導讀: Facebook近日宣布,將于近期開源PyTorch 1.0 AI框架,據(jù)悉,該框架是PyTorch與Caffe 2的結合,可以讓開發(fā)者無需遷移就從研究轉為生產。
    的頭像 發(fā)表于 06-18 10:30 ?3138次閱讀

    Facebook宣布發(fā)布深度學習框架 PyTorch 1.0開發(fā)者預覽版

    為了滿足這些需求,Google Cloud 也將為其眾多服務引入 PyTorch 支持。Facebook 在宣布這一消息的博客文章中稱,Google 與 Facebook 合作在為 PyTor
    的頭像 發(fā)表于 10-08 14:36 ?3163次閱讀

    如何使用隱私保護進行譜聚類算法

    針對傳統(tǒng)的聚類算法存在隱私泄露的風險,提出一種基于隱私保護的譜聚類算法。該算法基于
    發(fā)表于 12-14 10:54 ?11次下載
    如何使用<b class='flag-5'>差</b><b class='flag-5'>分</b><b class='flag-5'>隱私</b>保護進行譜聚類算法

    Facebook與CMU聯(lián)手打造開源框架PyRobot

    Facebook AI近期對機器人技術非常熱衷,剛剛又開源了機器人框架PyRobot,該框架是與卡內基梅隆大學合作創(chuàng)建,可運行由Facebook的機器學習框架PyTorch訓練的深度學
    發(fā)表于 06-24 15:14 ?3776次閱讀

    基于ExtraTrees的隱私保護算法DiffPETs

    得分最高的特征,通過拉普拉斯機制在葉子節(jié)點上進行加噪,使算法能夠提供ε-隱私保護。將 Diffsets算法應用于決策樹分類和回歸分析中,對于分類樹,選擇基尼指數(shù)作為指數(shù)機制的可用性
    發(fā)表于 05-11 14:42 ?10次下載

    電壓源開源項目

    電子發(fā)燒友網站提供《電壓源開源項目.zip》資料免費下載
    發(fā)表于 08-05 14:27 ?3次下載
    <b class='flag-5'>差</b><b class='flag-5'>分</b>電壓源<b class='flag-5'>開源</b>項目

    蘋果的隱私技術原理詳解

    隱私是一種數(shù)據(jù)隱私保護技術,它通過在數(shù)據(jù)中引入隨機化擾動的手段來保護隱私。簡單來說,擾動后的數(shù)據(jù)是無法精確地推斷出其原始值。
    的頭像 發(fā)表于 07-19 10:17 ?1281次閱讀
    蘋果的<b class='flag-5'>差</b><b class='flag-5'>分</b><b class='flag-5'>隱私</b>技術原理詳解

    Facebook開源StyleX如何在JavaScript中寫CSS呢?

    Meta(原 Facebook開源了全新的 CSS-in-JS StyleX。
    的頭像 發(fā)表于 12-14 10:03 ?621次閱讀