はじめに
ビッグデータの機械学習への活用が注目されているが、個人情報を含むようなプライバシーデータの扱いには法的責任がつきまとうため、うまく扱うことができないという問題がある。
そこで、プライバシーデータを秘匿したまま利活用するプライバシー保護技術が注目されている。
プライバシー保護技術には、入力プライバシーと計算過程、出力プライバシーの大きく3つに分類される。
入力プライバシーでは、入力データから個人の情報を推定できないように名前や性別の情報のID番号への置き換えを行う匿名化や暗号化等の技術が存在する。
計算過程では、計算過程の中間値や計算内容から個人の情報を推定できないようにする秘密計算や連合学習等の技術が存在する。
出力プライバシーでは、出力データから入力データを推定できないようにするk-匿名化や差分プライバシー等の技術が存在する。
これらはそれぞれで完全では無く、組み合わせることでプライバシーを保護することができる。
本記事では、出力プライバシーの技術のひとつである「差分プライバシー」について紹介する。
差分プライバシーの用語解説(入門)はこちらから
差分プライバシーとは
Dworkによって提唱されたプライバシーの定義であり、任意の攻撃に対する汎用的な安全性(識別不可能性)を実現するためのプライバシー保護の統一的な安全性の指標である。
何を守るか
出力データから入力データを推定されることを防ぐことでプライバシーデータを守る。
誰から守るか
“データ収集者” :=多くのデータを保持している企業や攻撃者
例えば、A,B,C,…,Zという26人の平均年齢 $\mu=\{A+B+C+\cdots+Z\}/26$ を計算する場合を考えたとき、多くのデータを保持している人でB,C,…,Zの年齢のデータを保持している場合、$26\times \mu – \{B+C+\cdots +Z\}$ を計算することでAの年齢を計算できるという可能性を想定している。
どうやって守るか
出力データに(ラプラス)ノイズを付加することで識別不可能性を担保する。
この時、ノイズは出力データには影響が小さくなるように、入力データには影響が大きくなるようにすることで出力データの意味を変えずにプライバシー保護を実現できる。
定義とその意味
差分プライバシーでは、出力される結果が入力となるデータベースとよく似たデータベースの出力との識別ができないことをもってプライバシー保護を実現している。入力となるよく似たデータベースとして入力データベースと1つだけ要素が異なるようなデータベースを扱い、それを隣接したデータベースという。
定義:$\varepsilon-$差分プライバシー
任意の隣接したデータベース $D_1$ 及び $D_2\,(D_1,D_2\in \mathcal{D})$ に対し、ランダム化関数 $Q’:=\mathcal{D}\to \mathbb{R}$ が下式を満たすとき、$Q’$ は $\varepsilon$ -差分プライバシー$(\varepsilon>0)$を満たす。ここで、$S$ は $Q’$ の出力空間 $\mathbb{R}$ の任意の部分空間である $(S\subseteq \mathbb{R})$.また、$e~$はネイピア数である。
$$ \mathrm{Pr}\,[\,Q'(D_1)\in S\,]\leq e^{\varepsilon}\cdot \mathrm{Pr}\,[\,Q'(D_2)\in S\,] \\ \frac{\mathrm{Pr}\,[\,Q'(D_1)\in S\,]}{\mathrm{Pr}\,[\,Q'(D_2)\in S\,]}\leq e^{\varepsilon} $$
例として、あるデータを $D_1 = \{a,b,c,d~\}$ とした時、隣接したデータ$D_2$をある一人のデータのみが異なるデータ$D_2 = \{a’,b,c,d~\}$とする。これらに対してラプラスノイズを付加するランダム化関数 $Q’$ を適用したときの出力 $\mathrm{Pr}\,[\,Q'(D_1)\,]$と $e^{\varepsilon}\cdot\mathrm{Pr}\,[\,Q'(D_2)\,]$が、$D_1$と$D_2$どちらのデータベースからの出力なのかを識別することができなければ出力データから $A$ を推定することができない。この時、$Q’~$は$\varepsilon$- 差分プライバシーを満たすという。
$\varepsilon~$が十分に小さければ、$D_1,D_2~$の区別が困難になり任意のデータベースに含まれる全ての人に対して識別不可能性を担保することができる。

定理:合成定理
それぞれ$~\varepsilon_i~$-差分プライバシーを満たす$~n~$個のクエリ$~Q’~$があり、$Q’~$はそれらの$~Q’_i~$の列挙、つまり$~Q'(D)=(Q’_1(D),Q’_2(D),\cdots,Q’_n(D))~$とする。
この時、$Q’~$は$(\sum_{i=1}^n \varepsilon_i)~$差分プライバシーを満たすと表現することができる。
差分プライバシーを実現する方法にはラプラスノイズを付加することで差分プライバシーを実現する「ラプラスメカニズム」 や、データベースの一部をランダムに書き換えて集計する 「Post Randomization (PRAM) メカニズム」など幾つかのメカニズムが存在する。合成定理はこれらの複数のメカニズムを合成したときの安全性を$~\varepsilon~$で与える定理である。
今後
$\varepsilon~$-差分プライバシーの$~\varepsilon~$の大きさについて、「$~\varepsilon~$が十分に小さければ」とあるが、どれだけ小さくすればプライバシー保護を実現できるかを定量的に評価する方法は知られていない。
また、差分プライバシーは厳しすぎるという課題が存在する。プライバシーを保護するためにノイズを付加しているが、そのノイズのせいで出力データの有用性が低下してしまうというものである。これに対しては出力データの差分プライバシーが満たされなくても許容するような範囲を$~\delta~$まで広げる、$(\varepsilon,\delta)$-差分プライバシーという評価方法が提案されている。これによって安全性と有用性のバランスを考慮した実用的な差分プライバシーの運用法が検討されている。
定義:$(\varepsilon,\delta)$ – 差分プライバシー
任意の隣接したデータベース $D_1$ 及び $D_2\,(D_1,D_2\in \mathcal{D})$ に対し、ランダム化関数 $Q’:=\mathcal{D}\to \mathbb{R}$ が下式を満たすとき、$\delta\in [0,1]$$Q’$ は $(\varepsilon , \delta)$ -差分プライバシー$(\varepsilon>0)$を満たす。ここで、$S$ は $Q’$ の出力空間 $\mathbb{R}$ の任意の部分空間である $(S\subseteq \mathbb{R})$.また、$e~$はネイピア数である。
$$ \mathrm{Pr}\,[\,Q'(D)\in S\,]\leq e^{\varepsilon}\cdot \mathrm{Pr}\,[\,Q'(D’)\in S\,]+\delta $$
まとめ
- 差分プライバシはプライバシー保護技術の中で、出力プライバシを保護する技術
- データ収集者に対してプライバシーが侵害されるのを防ぐ
- 出力データにノイズを付加することで識別不可能性を持つようにしている
参考
- 高橋克己, “プライバシー保護データマイニング,” https://www.jstage.jst.go.jp/article/isciesci/63/2/63_43/_pdf/-char/ja, 2019
- 寺田雅之, ”差分プライバシーとは何か,” https://www.jstage.jst.go.jp/article/isciesci/63/2/63_58/_pdf, 2019
- 寺田雅之, ”差分プライバシの基礎と動向,” https://researchmap.jp/terada/misc/28548073/attachment_file.pdf ,2020
- Dwork, C. (2006). Differential Privacy. In: Bugliesi, M., Preneel, B., Sassone, V., Wegener, I. (eds) Automata, Languages and Programming. ICALP 2006. Lecture Notes in Computer Science, vol 4052. Springer, Berlin, Heidelberg.