Processing math: 2%

2023年12月14日木曜日

Pinskerの不等式の簡単な証明

 Pinskerの不等式とは, KLダイバージェンスと統計距離(total variation distance)の関係を表す不等式です. 本記事ではこれを紹介し, こちらの論文Yihong Wuの講義資料のTheorem 4.5に載っている非常にトリッキーな証明を紹介します.

有限集合\Omegaを値域とする二つの確率変数X,Yに対して

  • 統計距離: d_{\mathrm{TV}}(X,Y) = \frac{1}{2}\sum_{x\in \Omega}|\Pr[X=x] - \Pr[Y=y]| = \sup_{A\subseteq \Omega}|\Pr[X\in A] - \Pr[Y \in A]|.
  • KLダイバージェンス: \mathrm{KL}(X||Y)=\sum_{a\in\mathsf{supp}(Y)}\Pr[X=a]\ln\frac{\Pr[X=a]}{\Pr[Y=a]}.

定理 (Pinskerの不等式)
d_{\mathrm{TV}}(X,Y) \leq \sqrt{\frac{1}{2}\mathrm{KL}(X||Y)}.

証明では, KLダイバージェンスに関する以下のデータ処理不等式(data processing inequality)を認めることにします.

補題 (データ処理不等式)
\Omega,\Omega'を有限集合とする. 任意の関数f\colon \Omega\to\Omega'\Omega上に値をとる任意の確率変数X,Yに対し
\mathrm{KL}(f(X),f(Y)) \leq \mathrm{KL}(X,Y).

KLダイバージェンス\mathrm{KL}(X||Y)は直感的には二つの確率変数X,Yの識別しにくさを表す指標であり, データ処理不等式とは二つのデータX,Yをアルゴリズムfで処理して得られるデータf(X),f(Y)を考えたとき, データ処理不等式とはデータを処理しても識別しにくさは上がらないことを意味します.

一般にデータ処理不等式は決定的アルゴリズムfを乱択アルゴリズムに置き換えても成り立ちます. こちらの講義資料が参考になると思います.

Pinskerの不等式の証明.

大まかな流れとしてはデータ処理不等式を用いて01値確率変数の場合に帰着して, あとは積分を計算します.

統計距離の定義および\Omegaが有限であることから, ある集合E\subseteq \Omegaが存在してd_{\mathrm{TV}}(X,Y)=\Pr[X\in A] - \Pr[Y \in A]が成りたちます. この集合Aの指示関数をfとします. すなわちf\colon\Omega\to\{0,1\}x\in Aならばf(x)=1, そうでなければf(x)=0です.

データ処理不等式から\mathrm{KL}(f(X),f(Y))\leq \mathrm{KL}(X,Y)なので, ベルヌーイ試行f(X),f(Y)に対してPinskerの不等式が証明できれば証明が完了します.

では, X,Yがそれぞれベルヌーイ試行でX\sim\mathrm{Ber}(p),Y\sim\mathrm{Ber}(q)とします (すなわち\Pr[X=1]=p,\Pr[Y=1]=q). このとき

  • d_{\mathrm{TV}}(X,Y)=|p-q|,
  • \mathrm{KL}(X||Y)=p\ln\frac{p}{q} + (1-p)\ln\frac{1-p}{1-q}
です. 従って, 任意のp,q\in[0,1]に対して不等式
\begin{align} 2(p-q)^2 \leq p\ln\frac{p}{q} + (1-p)\ln\frac{1-p}{1-q} \end{align}
を示せば良いです. p,q\in\{0,1\}の場合は4通り試せば明らかに成り立つことが確認できます.

p,q\in(0,1)とし, f(x) = p\log x + (1-p)\log(1-x)とします. すると
\begin{align*} (\mathrm{RHS}) &= f(p) - f(q) \\ &= \int_q^p f'(x)\mathrm{d}x \\ &= \int_q^p \frac{p-x}{x(1-x)}\mathrm{d}x \\ &\geq 4\int_q^p (p-x)\mathrm{d}x \\ &= 2(p-q)^2 = (\mathrm{LHS}) \end{align*}
より証明を得ます. (証明終)


0 件のコメント:

コメントを投稿

講義資料をNotionで書いてみた

 プログラミング応用という名前の講義を受け持っており, そこで組合せ最適化のベーシックな話題とそのPythonでの実装を教えているのですが, 資料をNotionで書いてみました. 講義資料をNotionで公開しているのでアルゴリズムの基礎とかNP困難性とかを勉強したい人はどう...