DPSynth 解説・実証デモ

Private-PGM(mbi)— MST / AIM / INDEPENDENT が共有する、測定済みマージナルから同時分布を推定する共通エンジンの解説

Private-PGM の解説(共有推定エンジン mbi

手法選定ガイドMST の解説AIM の解説INDEPENDENT の解説メインレポート

📘 本ページのアルゴリズム・実装の記述は、原論文 arXiv:1901.09136(ICML 2019)と 参照実装 mbi(ryan112358/mbi)、および google/dpsynth が推定エンジンとしてこれを利用している事実に基づく。 本ページにはデモ固有の実測値は含まない(実測は各機構ページの 🔎 節を参照)。


1. 位置づけ — 3 機構が共有する「推定エンジン」

Private-PGM(Private Probabilistic Graphical Model、参照実装は mbi = marginal-based inferenceは、 ノイズを加えて測定したマージナル群と整合する同時分布を推定する手法である arXiv:1901.09136

DPSynth の MST・AIM・INDEPENDENT は、いずれも

  1. どのマージナルを、どの予算で測定するかを決める(=機構ごとに異なる「測定戦略」)
  2. ノイズ付きで測定する(ガウス機構)
  3. 測定値と整合する同時分布を推定する(=この Private-PGM。3 機構で共通)
  4. 推定した分布からサンプリングする

という共通のパイプライン(SELECT-MEASURE-GENERATE)の上に立っている。 つまり 3 機構の違いは①の測定戦略だけであり、③の推定エンジンは同一である。 本ページはこの③を解説する。各機構が Private-PGM に「何を」渡すかは §5 にまとめた。

🔎 機構が異なってもサンプリングの土台(同時分布の表現とその推定法)が同じであることは、 「機構間の差は測定するマージナルの選び方に帰着する」という本デモの整理(メインレポート §3.3)の根拠でもある。

2. 何を解いているのか — 測定値と整合する最尤分布

DP 機構が出力するのは、いくつかの属性部分集合 S_1, S_2, … について測定した ノイズ付きマージナル ỹ_1, ỹ_2, … である。これらは

という性質を持つ。素朴に各マージナルをそのまま使うと矛盾した合成データになる。

Private-PGM は、これらの測定値に最もよく合致するひとつの同時分布 p を、 測定の負対数尤度(ガウスノイズ前提では重み付き二乗誤差)

minimize over p (確率分布)   Σ_k || M_k · p − ỹ_k ||²

を最小化する形で推定する。ここで M_k は同時分布 p から部分集合 S_k のマージナルを取り出す線形作用素、 ỹ_k はそのノイズ付き測定値である。こうして得た単一の分布からサンプリングするため、 出力はすべての測定と整合し、非負・総和 1 を満たす

3. 同時分布をどう表すか — グラフィカルモデル(マルコフ確率場)

属性が 9 列あれば、同時分布をセルごとに陽に持つと (各列のカーディナリティの積だけ)爆発する。Private-PGM はこれを マルコフ確率場(Markov Random Field, MRF)= グラフィカルモデルとして表現する。

この MRF は、測定したクリークの集合から定まる graphical structure(junction tree)に対応する。 INDEPENDENT のようにクリークが 1-way だけならグラフは辺を持たず分布は積(=独立)になり、 MST なら木、AIM なら木とは限らない(同じ属性に複数の依存が張れる)グラフになる。

モデルサイズ(junction tree)と計算量

推論のコストは、MRF を三角化して得る junction tree の最大クリークのサイズ(含まれる属性のカーディナリティの積)で決まる。 高次・高カーディナリティのマージナルを多数測ると junction tree が巨大化し、推定が指数的に重くなる。 そのため各機構は測定するマージナルにサイズ上限を設けている (AIM の max_model_sizemax_marginal_size、MST の maximum_marginal_size)。 「どこまで複雑な依存を保持できるか」は、この推定側の許容サイズと表裏一体である。

4. どう推定するか — mirror descent とウォームスタート

§2 の最小化問題を、Private-PGM は mirror descent(ミラー降下法)で解く。

ウォームスタート(warm start)は、AIM のように反復的にマージナルを追加測定する機構で効く。 新しいマージナルを 1 つ測るたびに推定をゼロからやり直すのではなく、 直前ラウンドの θ を初期値として追加測定ぶんだけ調整する。これにより

🔎 AIM が「反復のたびに Private-PGM の再推定が走るため MST より重い」(AIM 解説 §5)のは、 ウォームスタートを使ってもなおラウンド数ぶんの推定が積み上がるためである。 一方 MST・INDEPENDENT は測定が一度きりなので推定も 1 回で済む。

5. 各機構は「何を」Private-PGM に渡すか

推定エンジンは共通でも、入力として渡される測定済みマージナルの集合が機構ごとに異なり、 それが MRF の構造(=保持できる依存関係)を決める。

機構 Private-PGM に渡す測定マージナル 結果として推定される構造
INDEPENDENT 全列の 1-way のみ 辺なし。同時分布は周辺分布の積(=独立)
MST 全列の 1-way + 最大全域木に選ばれた d−1 本の 2-way 木構造(off-tree のペアは独立扱い)
AIM 1-way + 各ラウンドで適応選択した 1〜3-way(木に限らない) 木とは限らない MRF(同属性に複数依存・3-way も可)

6. DPSynth における利用

7. 参考リンク


手法選定ガイドに戻る