パターン認識と機械学習の勉強ノート【1.6 情報理論】

深層学習を学ぶシリーズ

こちらの『パターン認識と機械学習』を読んで,勉強したことをまとめていきます.

前回は,1.5節の決定理論についてまとめました.

今回は,1.6節の情報理論です.

この記事は,『パターン認識と機械学習』および,基本的に過去に書いた以下の記事をベースにしています.

情報理論

情報には質・量などのいくつかのパラメータがあるものの,生活のなかでは「良い情報」とはどういうものなのかを定量的に定義せずに使用しています.

そこで,データの「情報」を定量的に定義し、扱う理論体系として情報理論があります.

情報理論では、主に情報量の定義、情報の送受信の効率化、情報に含まれるノイズの除去などを目的としています.

統計理論を取り扱う機械学習では、この情報理論が必須です.

情報理論と言っても範囲が広すぎるので,細かいところは実際に情報理論を使う際にその都度説明するとして,

この記事では,情報理論で使われる以下のの基本的な量について紹介します(本書でもあくまで1章はイントロダクションなので).

この記事で説明する量

・自己情報量

・(情報)エントロピー

・相対エントロピー

・相互情報量

情報量

情報の定量化

『情報量』というものをどう定量的に扱えば良いでしょうか?

情報を定量的に表現する前に,情報の直感的なイメージから生まれる条件をあげてみます.

Ⅰ.起こりやすい事象は情報量が少ない

Ⅱ.起こりにくい事象は情報量が多い

Ⅲ.情報の大きさは,事象が起きると足し算で増える(数学的に扱いやすい)

必ず起きるとわかっている事象には、情報としての価値がないことからⅠは理解できると思います.

また、反対に珍しい事象は情報として価値があることから、Ⅱも理解できます.

また、Ⅲに関しては、確率は通常、事象が複数回起きた場合はその全体の確率は積で表されますが,情報量は確率に対して和で表したいという数学的ニーズがあるためのものです(情報量5の珍しい事象+情報量1の事象=情報量6).

この3つを定量化できる形は,以下のようになります.

自己情報量

    \[I(x) = -\log{P(x)}\]

これは,自己情報量と呼ばれます.

P(x) は事象 x が起きる確率です.

対数は単調増加するので,確率の対数に負がついているこの量は,確率が大きければ小さくなり,確率が小さければ大きくなります.これは,上の性質Ⅰ,Ⅱを表しています.

また,事象 P_1 と事象 P_2 が同時に起きたときの確率 P の事象から得られる自己情報量は,この式から

    \[I(x) = -\log{P} = -\log{P_1P_2} = -(\log{P_1} + \log{P_2})\]

となり,先ほどのⅢの性質を満たしていることが分かります.

自然対数の場合,自己情報量 I(x) の単位はナット(nats)です.一方、底が2の場合、単位はビット(bits)になります.機械学習では、自然対数でナットが使われることがほとんどです.

エントロピー

熱力学にも(熱力学)エントロピーがありますが,ここで扱うのは情報エントロピーです.

熱力学,統計力学ではおなじみの式S=k_b {\rm ln}W(ボルツマンの関係式)がありますね.

熱力学エントロピーと情報エントロピーの関係は,特定の場合には「本質的に同じもの」として扱うことができますが,ここでは情報エントロピーの形で説明していきます(※).

情報エントロピーは,以下のように表します.

情報エントロピー

    \[H(x) = \mathbb{E}[I(x)] = -\mathbb{E}[\log{P(x)}] = -\sum_{x}P(x)\log{P(x)}\]

この情報エントロピーは,シャノンエントロピーともいわれ,

また,自己情報量の平均値(期待値)になっているので,平均情報量ともいわれます.

エントロピーは,一様分布ではその値が大きくなり,局所的にピークをもつような分布では小さくなります.

言い換えれば,情報エントロピーは情報の不確かさです.

すでに知っている情報が少ない状態ほど,情報エントロピーは大きくなります.

例えば,次のような,サイコロを振る問題を考えてみましょう.

サイコロを1回振るとき,出た目が 2, 4, 5 のいづれかであると知ったときの情報エントロピー(平均情報量)は

    \[\begin{split}H(x) &= -\sum^{3}_{x}P(x)\log{P(x)} \\&= -\frac{1}{6}\log{\frac{1}{6}}-\frac{1}{6}\log{\frac{1}{6}}-\frac{1}{6}\log{\frac{1}{6}} \\&\simeq 0.90 \end{split}\]

と計算できます.出た目が 1, 2, 4, 5 のいづれかであると「知っている」ときは,

    \[\begin{split}H(x) &= -\sum^{4}_{x}P(x)\log{P(x)} \\&= -\frac{1}{6}\log{\frac{1}{6}}-\frac{1}{6}\log{\frac{1}{6}}-\frac{1}{6}\log{\frac{1}{6}}-\frac{1}{6}\log{\frac{1}{6}} \\&\simeq 1.19 \end{split}\]

となり、すでに出目を絞れている場合の方が情報エントロピーは小さい(情報の不確かさは小さい)ことになります.

※ボルツマンの関係式において,等重率の原理を適用すると,S=k_b {\rm ln}\frac{1}{P_r}=-k_b {\rm ln}P_rとなる.ただし,P_r微視的状態rの出現確率.ボルツマン定数k_bは単位合わせなので気にしない.

相対エントロピー

相対エントロピーは,カルバック・ライブラーダイバージェンス(KL情報量)とも言われます.

相対エントロピーは,確率分布P(x)Q(x)の差を測る量です.

相対エントロピー

    \[D(P||Q) = \mathbb{E}\left[\log{\frac{P(x)}{Q(x)}\right] = \mathbb{E}[\log{P(x)} - \log{Q(x)]\]

これの値が大きいほど,確率分布P(x)Q(x)の差は大きいということになります.

例えば,P(x)=Q(x)のとき,相対エントロピーはD(P||Q) =\mathbb{E}[\log{P(x)} - \log{P(x)]=0になります.

P(x)を真の分布,Q(x)を予測分布モデルだとすると,モデルの不確実さを表すことになります.

相互情報量

相互情報量は不確実性(情報エントロピー)の減少量として定義されています.

つまり、何かが分かると、どれだけ分からなさ(不確実性)が減るかという量です.

相互情報量

    \[I(B;C) = H(B) - H(B|C)\]

H(X)Xのエントロピーです.

上式は事象 B の不確実性 H(B) から C が分かったあとの B の不確実性 H(B|C) を引いています.つまり,Cによって,どれだけ情報エントロピーが減少するかということです.

BC が独立な場合、相互情報量は最小値0になります(P(B|C)=P(B)よりH(B|C)=H(B)なので).

記号については,1.2節Part1 確率理論などを参照してください.

まとめ

・自己情報量

    \[I(x) = -\log{P(x)}\]

・(情報)エントロピー

    \[H(x) = \mathbb{E}[I(x)] = -\mathbb{E}[\log{P(x)}] = -\sum_{x}P(x)\log{P(x)}\]

情報の不確かさを表す)

・相対エントロピー

    \[D(P||Q) = \mathbb{E}\left[\log{\frac{P(x)}{Q(x)}\right] = \mathbb{E}[\log{P(x)} - \log{Q(x)]\]

確率分布の差,分布モデルの精度を表す)

・相互情報量

    \[I(B;C) = H(B) - H(B|C)\]

不確実性(情報エントロピー)の減少量を表す)

1章はこれで終わりです.

次回は2章の2.1節『二値変数』と2.2節『多値変数』についてまとめます.

コメント

タイトルとURLをコピーしました