裝置端個人化功能的差異化隱私語意

本文將摘要說明裝置端個人化 (ODP) 的隱私權做法,特別是差異化隱私權。為確保本文內容聚焦,其他隱私權影響和設計決策 (例如資料最小化) 則刻意省略。

差異化隱私

差異隱私權 1 是統計資料分析和機器學習 2 3 廣泛採用的隱私權保護標準。簡單來說,無論使用者的記錄是否出現在基礎資料集中,差異化隱私演算法的輸出內容都會讓攻擊者瞭解幾乎相同的事項。這表示個人受到嚴密保護:對某人做出的任何推論,都只能是根據資料集的匯總屬性,無論是否包含該人的記錄,這些屬性都成立。

在機器學習的脈絡中,演算法的輸出內容應視為訓練好的模型參數。「幾乎相同」這個詞彙在數學上會以兩個參數 (ε、δ) 量化,其中 ε 通常會選擇為一個小常數,而 δ≪1/(使用者人數)。

隱私權語意

ODP 設計旨在確保每次訓練執行作業都具有 (ε,δ) 使用者層級的差異化隱私。以下概述我們達成這項語意的做法。

威脅模式

我們定義了不同當事人,並說明各方的假設:

  • 使用者:擁有裝置的使用者,也是開發人員提供的產品或服務消費者。他們可以查看自己的所有私人資訊。
  • 受信任的執行環境 (TEE):TEE 內發生的資料和受信任的運算作業會受到各種技術保護,免於遭到攻擊者入侵。因此,運算和資料不需要額外保護。現有的 TEE 可能允許專案管理員存取其中的資訊。我們建議使用自訂功能,禁止管理員存取並驗證存取權是否已停用。
  • 攻擊者:可能擁有使用者的附帶資訊且可完整存取離開 TEE 的任何資訊 (例如發布的模型參數)。
  • 開發人員:負責定義及訓練模型。視為不受信任 (且具有攻擊者的所有能力)。

我們希望設計 ODP 時,能採用下列差異化隱私語意:

  • 信任邊界:從單一使用者的角度來看,信任邊界包含使用者自己的裝置和 TEE。離開這個信任邊界的任何資訊都應受到差異化隱私保護。
  • 攻擊者:針對攻擊者提供完整的差異化隱私保護。信任邊界外的任何實體都可能是攻擊者 (包括開發人員和其他使用者,他們可能全都會勾結)。假設攻擊者擁有信任邊界以外的所有資訊 (例如已發布的模型)、任何與使用者相關的附帶資訊,以及無限資源,則無法推斷出使用者的其他私人資料 (附帶資訊中已有的資料除外),最多只能達到隱私權預算所允許的機率。 具體來說,這表示開發人員會受到完整的差異化隱私保護。發布給開發人員的任何資訊 (例如訓練好的模型參數或匯總推論) 都會受到差異化隱私保護。

本機模型參數

先前的隱私權語意可因應部分模型參數屬於裝置本機的情況 (例如包含專屬使用者嵌入內容的模型,且不會在使用者之間共用)。對於這類模型,這些本機參數會保留在信任邊界內 (不會發布),因此不需要保護;而共用模型參數則會發布 (並受到差異隱私權保護)。這有時稱為看板隱私權模型 4

公開發布功能

在某些應用程式中,部分功能是公開的。舉例來說,在電影推薦問題中,電影的特徵 (導演、類型或發行年份) 是公開資訊,不需要保護;而與使用者相關的特徵 (例如人口統計資訊或使用者觀看的電影) 則是私人資料,需要保護。

公開資訊會正式成為公開功能矩陣 (在先前的範例中,這個矩陣會包含每部電影各一列,以及每個電影功能各一欄),供所有各方使用。差異化私密訓練演算法可使用這個矩陣,不必加以保護,請參閱例如 5。ODP 平台計畫實作這類演算法。

預測或推論期間的隱私權保護做法

推論結果是根據模型參數和輸入特徵而產生。模型參數會以差異化隱私語意訓練。本節將討論輸入特徵的角色。

在某些情況下,如果開發人員已完全存取推論中使用的功能,推論就不會有隱私權問題,開發人員也可能看到推論結果。

在其他情況下 (當推論中使用的功能為私有,開發人員無法存取時),推論結果可能會對開發人員隱藏,例如在裝置上、OS 擁有的程序和顯示區域中執行推論 (以及使用推論結果的任何下游程序),並限制該程序外的通訊。

訓練程序

訓練系統高階架構
圖 1:訓練系統高階架構。

總覽

本節將概要介紹架構和訓練程序,請參閱圖 1。ODP 會實作下列元件:

  • 可信的發布者,例如聯邦精選、可信下載或私人資訊擷取,負責發布模型參數。我們假設可信的經銷商可以將部分參數傳送給每個用戶端,但不會揭露哪些參數是由哪個用戶端下載。這項「部分廣播」功能可讓系統盡量減少對使用者裝置的影響:系統不會傳送模型的完整副本,只會將部分模型參數傳送給特定使用者。

  • 可信的匯總器,負責匯總多個用戶端的資訊 (例如梯度或其他統計資料)、加入雜訊,然後將結果傳送至伺服器。假設用戶端與匯總工具之間,以及用戶端與發布商之間,都有可信任的管道。

  • 在這個基礎架構上執行的 DP 訓練演算法。每種訓練演算法都包含在不同元件 (伺服器、用戶端、匯總器、分配器) 上執行的不同運算。

典型的訓練回合包含下列步驟:

  1. 伺服器會將模型參數廣播給受信任的發布者。
  2. 用戶端運算
    • 每個用戶端裝置都會收到廣播模型 (或與使用者相關的參數子集)。
    • 每個用戶端都會執行一些運算 (例如計算梯度或其他足夠的統計資料)。
    • 每個用戶端都會將運算結果傳送至可信的匯總器。
    • 受信任的匯總器會使用適當的差異化隱私機制,收集、匯總及保護用戶端的統計資料,然後將結果傳送至伺服器。
  3. 伺服器運算
  4. (不受信任的) 伺服器會對差異隱私權保護統計資料執行運算 (例如使用差異隱私權保護匯總梯度來更新模型參數)。

因式分解模型和差異隱私交替最小化

ODP 平台計畫提供一般用途的差異化隱私訓練演算法,可套用至任何模型架構 (例如 DP-SGD 6 7 8 或 DP-FTRL 9 10,以及專為因式分解模型設計的演算法)。

因式分解模型是指可分解為子模型 (稱為編碼器或塔) 的模型。舉例來說,假設模型形式為 f(u(θu, xu), v(θv, xv)),其中 u() 會編碼使用者特徵 xu (並具有參數 θu),而 v() 會編碼非使用者特徵 xv (並具有參數 θv)。這兩個編碼會使用 f() 合併,產生最終模型預測。舉例來說,在電影推薦模型中,xu 是使用者特徵,xv 則是電影特徵。

這類模型非常適合上述分散式系統架構 (因為模型會區分使用者和非使用者功能)。

因式分解模型會使用差異化隱私交替最小化 (DPAM) 進行訓練,也就是交替最佳化參數 θu (同時固定 θv),反之亦然。研究顯示,DPAM 演算法在各種設定中都能達到更好的效用 4 11,尤其是在公開功能存在的情況下。

參考資料