2つの変数がどれだけ「関係している」かを測りたい。相関係数は線形関係しか捉えられない。相互情報量は、あらゆる種類の依存関係を検出できる。一方を知ることで、他方の不確実性がどれだけ減るか。これが相互情報量の意味である。
相互情報量 条件付きエントロピー 依存関係 特徴量選択
条件付きエントロピー
条件付きエントロピー H(Y|X)
H(Y|X) = -Σ P(x,y) log₂ P(y|x)
Xを知った上でのYの残りの不確実性。
XがYについての情報を持つほど、H(Y|X) は小さくなる。
相互情報量
相互情報量(Mutual Information)I(X;Y)
I(X;Y) = H(Y) - H(Y|X)
= H(X) - H(X|Y)
= H(X) + H(Y) - H(X,Y)
XとYが共有する情報量。
Xを知ることでYの不確実性がどれだけ減るか。
相互情報量の性質
| 性質 | 式 | 意味 |
|---|---|---|
| 非負性 | I(X;Y) ≥ 0 | 常に0以上 |
| 対称性 | I(X;Y) = I(Y;X) | 順序は関係ない |
| 独立時 | I(X;Y) = 0 | 独立なら情報を共有しない |
| 最大値 | I(X;Y) ≤ min(H(X), H(Y)) | 一方のエントロピーを超えない |
相関係数との比較
| 相関係数 | 相互情報量 | |
|---|---|---|
| 検出できる関係 | 線形のみ | あらゆる依存関係 |
| 計算コスト | 低い | やや高い |
| 解釈 | -1〜1で直感的 | ビット単位、上限なし |
実務での応用
WEB開発での応用
ログ分析:イベント間の依存関係を発見。
ユーザー行動分析:ページ閲覧パターンの関連性を測定。
A/Bテスト:変数間の交互作用を検出。
AI/MLでの応用
特徴量選択:ターゲットとの相互情報量が高い特徴量を選択。
InfoMax原理:入出力の相互情報量を最大化する学習。
表現学習:InfoNCE損失、対照学習の理論的基盤。
IB(情報ボトルネック):不要な情報を捨てて本質を抽出。
深掘りリンク
- Wikipedia: 相互情報量
- 論文:Cover & Thomas「情報理論の基礎」
- 次のステップ:情報ボトルネック、対照学習