情報量・エントロピー
情報量,エントロピーなどの単語についてのメモです.
- 情報とは
- データとは
- 情報量
- エントロピー(平均情報量)
- 交差エントロピー
- 相対エントロピー(KLダイバージェンス,KL情報量)
- 結合エントロピー(同時エントロピー)
- 条件付きエントロピー
- 相互情報量
- 参考文献
情報とは
- 物事の内容・事情の報告,事件の様子の知らせ
- ある意味を持った文字・記号・図形などで,それを受けた人間または機械の動作に影響を与えるもの(旺文社)
「物事についての知らせであり,何かしらの意味を持つもの」が情報と言えます.
データとは
- さまざまな事実や概念について,計算的な方法で扱われるような形で,正確で明確化された言語や文字・数字で表されたもの ([Knuth, 1968])
「データ=数字」ではなく文字も含みます.また,ただの数字だけで意味がないものは情報・データとは言えないです.
情報量
「明日が火曜日である」という情報が得られたとしても,それは当たり前のことなので,得られる情報量は小さいです.「明日は雨である」という情報を得られたとき,情報量は少し大きく感じます.「明日地球が滅亡する」という情報が得られたときは,とても大きな情報を得たと感じます.このように起こる確率が小さいほど,情報量は大きくなります.これを数式で表します.
確率でおこる事象
の情報量を
で定義します.logの底は2とします.
他には情報量が満たすべき要素として以下のことが考えられ,はそれを満たします.
に関して単調減少
- 二つの独立な事象 A と B が「両方」おきたという事象の情報量は,A, Bそれぞれの情報量の和.
つまり,Aが起こる確率を,Bが起こる確率を
とすると,
import numpy as np import matplotlib.pyplot as plt %matplotlib inline p = np.linspace(0.01, 1.0, 100) I = -np.log(p) plt.plot(p, I) plt.xlabel("p") plt.ylabel("I(p)")
例えば,
- サイコロの目が奇数か偶数か,という情報は
より,2進数で1bitのメッセージで表すことができます.
- 1~6のどれか,という情報は
より,約3bit
- トランプの52枚のうちどれが出るか,という情報は
より,約 6bit
となり,確率が小さい事象ほど情報量が大きくなります.
エントロピー(平均情報量)
コインを投げるとき,
表が出る確率:裏が出る確率=のコインAと,
表が出る確率:裏が出る確率=のコインBでは,
Bのコインが表裏どっちになるかの情報を得られたときのほうが,大きな情報を得たと感じます.
Aのコインが表になるという情報が得られたとしても,もともと表が出る確率が高いコインので,その情報のありがたみは小さいです.
得られる情報量の大きさは,その事象が予測しにくいときほど大きくなります.
その予測しにくさを表したものがエントロピーであり,情報量の期待値で表します.
確率分布に従う確率変数
のエントロピーを,次のように定義します.
エントロピーが大きい=平均情報量が大きい=その事象が起こる確率が低い=予測が全くできない,という考え方です.
ある事象が起こる確率がベルヌーイ分布に従うとき(例:コインの表が出る確率がのとき)のエントロピーはこのグラフのようになります.
p = np.linspace(0.01, 0.99, 100) H = -p * np.log(p) + (-(1-p)*np.log(1-p)) plt.plot(p, H) plt.xlabel("p") plt.ylabel("H")
確率のとき,どちらが起こるかわからず予測しにくい=エントロピーが高い,となります.
交差エントロピー
をそれぞれ
の分布とするときの,二つの確率分布の間に定義される尺度です.
def cross_entorpy_bernoulli(p, q): return -(p*np.log(q)+(1.-p)*np.log(1.-q)) q = np.linspace(0.01,0.99,100) plt.plot(x, cross_entorpy_bernoulli(p=0.7, q=q)) plt.xlabel("q") plt.ylabel("H(p, q)")
のとき交差エントロピーは最小になります.
相対エントロピー(KLダイバージェンス,KL情報量)
二つの確率分布の差異を表す指標です.(Kullback–Leibler,カルバック・ライブラー)
pのqに対するKLダイバージェンスは,次の式で表されます.
このとき,任意の確率分布に対してが成り立ち,等号が成り立つとき二つの分布が完全に一致します.KLダイバージェンスは二つの分布間の距離と言われることもありますが,
であるため,数学的な意味での距離ではないことに注意が必要です.
KLダイバージェンスが大きいほど,二つの分布が異なります.確率分布が異なっていれば、情報量があるとみなすのがKLダイバージェンスの考え方です.
結合エントロピー(同時エントロピー)
二つの事象が同時に起こる確率,同時確率のエントロピーを結合エントロピーと呼びます.
X,Yが互いに独立な確率変数の場合,となるので
が成り立ちます.
条件付きエントロピー
事象Yが生じているという条件下における事象Xのエントロピーを条件付きエントロピーと呼び,次の式で表します.
結合エントロピーは,条件付きエントロピーを用いて次のように表すことができます.
相互情報量
X,Yが互いに独立でない場合は,が成り立たず,その差を相互情報量と呼び,確率変数間の依存度を表します.相互情報量は常に非負の値になります.
XのエントロピーとYがわかったときのXの条件付きエントロピーの差は,Yを知ることによって減少したXの不確かさ,理解しにくさを意味し,XのYへの依存度を表します.
参考文献
「情報の数学」再入門―目からウロコ
データデータデータデータデータデータって聞き飽きたのでなんとかしたい|松本健太郎|note
The Art of Computer Programming Volume 1 Fundamental Algorithms Third Edition, Donald E.Knuth, Addison-Wesley
エントロピー入門
情報理論の基礎~情報量の定義から相対エントロピー、相互情報量まで~ | Logics of Blue
Transfer entropyを用いた神経回路の解析