ベイズ推定 (Bayesian Inference)

今更ながら,”きちんと”ベイズ推定について勉強してみた.ここで書く内容?記法?はよく見られるものとは少し違ったものになっているので注意してください.

あるデータが得られて,そのデータがある確率密度関数p(x)を持つ確率分布に従うとする.

この確率密度関数はいくつかのパラメータ\thetaを持つはずである.これをp(x;\theta)と表現する.例えば,正規分布なら平均\muと分散共分散行列\Sigmaとすると\theta=\{\mu,\Sigma\}である.通常\thetaは確率変数ではなく普通の変数として扱われる.しかし,ベイズ推定ではこれを確率変数として扱う.そうするとデータが従う確率分布の確率密度関数はp(x|\theta)と書かれる(;は関数としてのパラメータで,|はそれが確率変数であることを示す.個人的な好み),そして,パラメータ\thetaもある確率分布に従い(事前分布と呼ばれる),その確率密度関数をp(\theta;\alpha)と書く.ここで,\alphaは確率変数ではないことに注意.個人的には”;”と”|”を区別すればうまい具合に理解できる気がしている.これからは面倒なのでp(\theta;\alpha)p(\theta)と書く(\alphaは確率変数ではないとして).

さて,このパラメータ\thetaをデータ\{x_i\}^n_{i=1}から推定することを考える.まずは通常の最尤推定を復習する.データを並べて行列にしたものを計画行列と呼びX=[x_1|\cdots|x_n]と書く.今,\thetaが確率変数ではないとする.最尤推定では与えられたデータが生成される確率(尤度と呼ばれる)を最大化するパラメータ\thetaを求める.これは以下の最適化問題を解くことと等価である,

\max_{\theta} p(X;\theta)

となる.ここで,各サンプルは独立に同一の分布から生成されたという仮定(i.i.d.と呼ばれる)を置くと,p(X;\theta) = \prod^n_{i=1} p(x_i;\theta)となる.さらに対数をとっても最適解は変わらないことから最尤推定では最終的に以下の最適化問題を解く.

\max_{\theta} \sum^n_{i=1} \log p(x_i;\theta)

ベイズ推定ではパラメータ\thetaは確率変数である.そこで,MAP推定と呼ばれる枠組みを使う.MAP推定は事後確率p(\theta|X)を最大化するパラメータ\thetaを求める.これの解釈は非常に難しい.上の推定を見ると与えられたデータが生成されやすいパラメータ\thetaを求めている.ある確率分布からデータは生成されるんだけど,推定するときはデータからパラメータは生成される.つまり与えられたデータから生成されやすいパラメータを求めればよい.というわけでp(\theta|X)を最大化しよう,となる.しかしながら今,パラメータ\thetaは確率変数であり,p(\theta)を確率密度関数に持つ確率分布から生成されている.よって, p(\theta|X)を最大化するパラメータ\thetaを求めよう,となる.

事後確率を変形してみる.

p(\theta|X) = \frac{p(\theta,X)}{p(X)} \propto p(X|\theta)p(\theta)

途中の分母p(X)はは\thetaに関係ない項なので最終的に,p(X|\theta)p(\theta)という尤度関数×事前確率という関数を最大化する.

最尤推定と比較すると,事前確率をかけるかかけないかが大きな違いとなっている.つまり,ベイズ推定ではこのように事前知識を入れることができ,それが大きなメリット(デメリットでもある?)となっている.

自分なりに解釈できたのでよしとしよう.

ベイズ推定 (Bayesian Inference)」への1件のフィードバック

コメントを残す

以下に詳細を記入するか、アイコンをクリックしてログインしてください。

WordPress.com ロゴ

WordPress.com アカウントを使ってコメントしています。 ログアウト / 変更 )

Twitter 画像

Twitter アカウントを使ってコメントしています。 ログアウト / 変更 )

Facebook の写真

Facebook アカウントを使ってコメントしています。 ログアウト / 変更 )

Google+ フォト

Google+ アカウントを使ってコメントしています。 ログアウト / 変更 )

%s と連携中