差分プライバシー
差分プライバシーの研究背景
差分プライバシーはDworkらにより2006年に提唱された、データベースの統計量の公開をプライバシー保護する数学的な枠組みです。 近年、ビッグデータの重要性はますます高まっており、それらのデータベースの統計量を安全に公開することに注目が高まっています。 しかし、データベースへのクエリの結果を単純に公開することは、そのデーターベースに含まれるセンシティブな情報を意図せずに公開してしまう可能性があります。
例えば、ある都市の居住者の医療情報を管理しているデータベースがあります。 このデータベースに対して、例えば、「30代の肺がん患者の人数」や「都市の地区Aに住む肺がん患者の人数」などのクエリを発行します。 攻撃者は、30代で地区Aに住む太郎さんが肺がんに罹患しているかを知りたいとします。 攻撃者が30代や地区Aに住んでいる患者の情報などの事前知識を有している場合、クエリの回答をそのまま公開することは、「Aさんが肺がんを罹患しているかどうか」を間接的に教えてしまう可能性があります。
差分プライバシーでは、クエリの回答にランダム性を付加することで、そのランダム性を持つ回答がどの程度プライバシーを保護するかを$(\varepsilon, \delta)$という値で数学的に評価します。 この分野は理論的な研究にとどまらず、実用化も始まっており、例えば、アメリカの国勢調査で活用されたり、また、Apple社のスマートフォンでユーザーの行動データの収集にも使われています。
数学的な定義 1
数学的な定義をいくつか導入します。
隣接データベース
二つのデーターベース$D,D’$が隣接しているとは、一つのレコードのみが異なることをいい、$D’$は$D$から一つのレコードを削除したり加えたりすることで得ることができることをいう。
(一つのレコードが置き換わるデータベースを隣接している、とする定義もあります。)
$(\varepsilon, 0)$-差分プライバシー
ランダムメカニズム$\cal{M}: \cal{D} \to \cal{R}$が$(\varepsilon, 0)$-差分プラバシーを満たしているとは、任意の隣接データベース$d,d’ \in \cal{D}$と任意の部分集合$S \subseteq \cal{R}$において、以下の式が成立していることをいう。
$ \mathrm{Pr}[\mathcal{M}(d)\in S] \le e^{\varepsilon} \mathrm{Pr} [\mathcal{M}(d’)\in S] $
$(\varepsilon, \delta)$-差分プライバシー
ランダムメカニズム$\cal{M}: \cal{D} \to \cal{R}$が$(\varepsilon, \delta)$-差分プラバシーを満たしているとは、任意の隣接データベース$d,d’ \in \cal{D}$と任意の部分集合$S \subseteq \cal{R}$において、以下の式が成立していることをいう。
$ \mathrm{Pr}[\mathcal{M}(d)\in S] \le e^{\varepsilon} \mathrm{Pr} [\mathcal{M}(d’)\in S] + \delta $
定義 1の解説
$(\varepsilon, 0)$-差分プライバシーの定義より、通常の統計量の算出のように、データーベースに対して一つの決まった値を出力するのではなく、確率分布に従って出力をするランダムメカニズムを用いています。 このようなランダムメカニズムについて、$(\varepsilon, 0)$-差分プライバシーを満たす、と言うようにいいます。
すなわち、データベースへのクエリを、$(\varepsilon, 0)$-差分プライバシーを満たすランダムメカニズムへと変換することで、そのクエリの出力はプライバシーが保護されていると考えることができます。
$(\varepsilon, 0)$-差分プライバシーの定義を大雑把に述べると、一つだけレコードが異なるデータベース同士の出力が大きく変化しない、任意の出力が得られる確率の比が高々$e^\varepsilon$に抑えられていれば、単一のレコードの違いが出力に与える影響は小さく、出力からそのレコードの有無を推測することは困難であると考えられます。 このように、特定のレコードの影響を推測することが難しければ、出力において元のデータベースのプライバシーは保護されているとみなされます。
任意の部分集合$S \subseteq \cal{R}$で確率比の制約が成り立つことを要求するのは厳しい条件です。 そこで、ある程度のこの制約の失敗を許容するパラメーター $\delta$ を導入する定義として、$(\varepsilon,\delta)$-差分プライバシーがあります。 実際には、$(\varepsilon, \delta)$-差分プライバシーで議論をすることが多いです。
数学的な定義 2
ランダムメカニズムとして有名なラプラスメカニズムを紹介します。
$l_1$感度
$x,y \in \mathcal{D}$としたときに、関数$f: \cal{D} \to \mathbb{R}^k$の$l_1$感度は以下のように定義される。
$ \Delta f = \max_{\mathrm{adjacent }x,y} \sum_{i=1}^{k} \lvert f(x)_i - f(y)_i \rvert $
ラプラスメカニズム
任意の関数$f: \cal{D} \to \mathbb{R}^k$について、ラプラスメカニズムは以下のように定義される。
$ \mathcal{M}_L (x,f,\varepsilon) = f(x) + (Y_1,…,Y_k) $
このとき、$Y_i$は$\mathrm{Lap}(\Delta f / \varepsilon)$に従う独立同分布な確率変数である。
定義 2の解説
ラプラスメカニズムが$(\varepsilon, 0)$-差分プライバシーを満たすことは証明されており、関数$f: \cal{D} \to \mathbb{R}^k$にラプラス分布に従う確率変数を足すことで、差分プライバシーを実現しています。
具体例として、人物データベースから各都道府県にそれぞれ何人住んでいるかを算出するクエリ$f:\cal{D} \to \mathbb{R}^{\mathrm{47}}$を考えます。 隣接しているデータベース$x,y$においては、例えば、
$\lvert f(x) - f(y) \rvert = (0,..,0,\pm 1,…,0)$
となるため、$l_1$感度は$\Delta f = 1$です。 よって、出力の各次元の値に$\mathrm{Lap}(\Delta f/ \varepsilon = 1/1 = 1)$に従う確率変数を足して出力すれば、その出力は$(1, 0)$-差分プライバシーを満たすメカニズムで出力されたプライバシー保護された値、となります。
取り組んでいた・取り組んでいる研究
田浦研究室では差分プライバシーにおけるプライバシー損失を推定する言語処理系の開発や、機械学習のモデルのパラメーターを保護する研究などに取り組んでいます。 差分プライバシーはNeurIPSなどの国際的な学会でも多数のポスターが発表されるような注目されている分野で、今後もますます研究され実践へと応用されていくことが期待されています。