ベイズ

ベイズとは、前述している通り、排反である事象「A」と事象「B」など複数の事象から事前確率と事後確率を利用して原因の確率を求めます。
箱の中に次のような2つのサイコロがあったとします。

箱の中から無作為にサイコロを取り出してサイコロを振ってサイコロを箱の中に戻すを2回実施します。
どちらのサイコロを選んだがわからないのですが、サイコロを2回振った結果は2回とも「2」だったとします。
サイコロAは、「2」がでる確率は1/6ですが、サイコロBは「2」がでる確率は1/2です。
そのため、箱からはサイコロBが2回取り出された可能性が高いと推定するのがベイズ推定(結果から原因を推定)です。

前述している式のP(A)が、原因である事前確率でP(B)が結果である条件付き確率です。
前述している式{P(A)P(B|A)=P(B)P(A|B)}から次のように書くことができます。

\[ P(A|B)=\frac{P(B|A)P(A)}{P(B)} \]

事前分布

事前分布とは、式のP(A)の部分になり原因である事前確率の確率分布です。
観測する前に得られているパラメータです。

事後分布

事後分布とは、式のP(A|B)で結果であるP(B)の条件付き確率の確率分布です。
観測して得たパラメータで、それを利用して事前分布の確率を更新します。

尤度関数

尤度関数とは、カーネルともいい式のP(B|A)で原因と結果を結び付けている関数です。

共役事前分布

共役事前分布とは、事前分布と事後分布に同じ確率分布を使用することです。

ベイズの計算

実際にサイコロBであった確率を計算してみます。

\[ \frac{サイコロBの確率×かつ「2」がでた確率}{サイコロAの確率×かつ「2」がでた確率+サイコロBの確率×かつ「2」がでた確率} \]

と計算することが行えて、

\[ 約0.76 = \frac{0.5×0.5}{0.5*0.166666....+0.5×0.5} \]

約76%の確率でサイコロBが振られたと考えることができます。

ベイズの流れ

ベイズの流れについて次に記載します。

  1. 1. 事前調査

    原因と結果の仮設をするための事前調査をします。

  2. 2. モデル作成

    事前調査からモデルを作成します。

  3. 3. 事後分布の推定

    作成したモデルで事後分布を推定します。

ベイズ推定量

ベイズ推定量とは、事後分布の期待値です。

MAP推定量

MAP推定量とは、事後分布の最頻値(モード)です。

ベイズ的仮説検定

ベイズ的仮説検定とは、ベイズを利用して仮説検定を行う手法です。
ベイズ的仮説検定では、通常の検定とは違い、仮説が真である確率を評価します。
例として、観測したデータから事前分布を更新していき、仮説が真である事後確率を計算していきます。
その結果、仮説が真である確率を定量的に評価できます。

ベイズファクター

ベイズファクターとは、仮説の比較やモデル選択に利用される指標です。
2つの異なる仮説(通常は帰無仮説と対立仮説)があった時にデータがどちらの仮説か良く説明しているかを示します。
ベイズファクターは次のように定義できます。

\[ BF_{ij} = \frac{P(D|H_i)}{P(D|H_j)} \]

BFijが、ベイズファクターでP(D|Hi)とP(D|Hj)が2つの異なる仮説です。
ベイズファクターが1より大きい場合、データはP(D|Hi)の仮説を良く説明していると言えます。
ベイズファクターが1より小さい場合、データはP(D|Hj)の仮説を良く説明していると言えます。
ベイズファクターが大きいほど、データが与えられた仮説の説明度が高くなります。

ベイズ判別(各カテゴリーの事後確率)

ベイズ判別(各カテゴリーの事後確率)とは、異なるクラスやカテゴリに属するデータを識別するための手法です。
例として、メール受信時に「迷惑メール」か「迷惑メールでないか」かを識別するときに、事前確率や尤度を元にベイズの定理で計算して識別します。

ベイズ最適化

ベイズ最適化とは、ある未知の目的関数を最小化または最大化するために、過去の評価結果とともにベイズモデルを使用して探索を行う手法です。
例として、機械学習モデルのハイパーパラメータの最適化など、実験的な探索が必要な問題に使用されています。
予測モデルとしてガウス過程回帰があり、ハイパーパラメータの数が多い場合に向いています。

階層ベイズモデル

階層ベイズモデルとは、ベイズを利用してデータの階層構造やグループ間の関係をモデル化する手法です。
例として、異なるグループや集団間でパラメータが異なる場合やデータが階層的な構造を持つ場合に使用されます。
階層ベイズモデルには、次のような構造があります。

  1. 1. 階層構造の設定

    データが複数のグループや階層に分かれている場合、それらの階層構造をモデルに組み込みます。
    例として、異なる学校や地域から取得したテスト結果などが異なる分布の場合にそれらを階層的にモデル化します。

  2. 2. 共通の事前分布

    同じ階層に属する異なるグループのパラメータを共通の事前分布(共通事前)を利用してサンプリングします。
    その結果、異なるグループのパラメータが似通った値を持つ傾向が強調されて、データが少ないグループでも適切に推定しやすくなります。

  3. 3. データに基づく事後分布

    データが与えられた後、ベイズを利用して事後分布を計算します。
    この事後分布は、事前確率や尤度を元に各グループのパラメータの不確実性や異なり具合を示します。

ギブスサンプリング

ギブスサンプリングとは、マルコフ連鎖モンテカルロ法の一つで、多変量の確率分布からサンプリングを行う手法です。
ギブスサンプリングは、各変数を条件付き確率分布から独立にサンプリングすることで、全体の確率分布からのサンプリングできます。
ギブスサンプリングは次の手順で実施します。

  1. 1. 初期値の設定

    各変数の初期値を設定します。

  2. 2. サンプリング

    各変数を、他の変数の値が既知であるとして条件付き確率分布でサンプリングします。(他の変数の値は固定)

  3. 3. 変数の更新

    サンプリングされた値を使用して各変数の値を更新します。

  4. 4. サンプリングの繰り返し

    手順2と3を一定の回数、または収束するまで繰り返します。

Metropolis-Hastings法

Metropolis-Hastings法とは、マルコフ連鎖モンテカルロ法の一つである確率分布からのサンプリングを行う手法です。
Metropolis-Hastings法は、サンプリング候補を生成するための提案分布が任意の形状であっても適用できます。 提案分布が選択によって性能が大きく変わるため、最適な提案分布を選ぶことが重要です。
Metropolis-Hastings法は次の手順で実施します。

  1. 1. 初期値の設定

    初期値を設定します。

  2. 2. 提案分布の定義

    サンプリングの候補を生成するため、提案分布を定義します。
    提案分布は、現在のサンプルから新しいサンプルを生成するために使用されます。

  3. 3. 新しいサンプルの生成

    提案分布から新しいサンプルを生成します。

  4. 4. サンプリング確率の計算

    新しいサンプルと現在のサンプルの事前確率や尤度を元にMetropolis-Hastingsの比率を計算します。
    この比率は、提案されたサンプルを採択する確率として使用します。

  5. 5. 採択・棄却の判定

    採択または棄却するか判定します。
    採択したときは新しいサンプルとして、棄却されたときは現在のサンプルとします。

  6. 6. サンプリングの繰り返し

    手順2から5を収束するまで繰り返します。