周辺確率(P ( B ) P(B) P ( B ) )とは、2 変数の同時分布 から一方の変数を足し合わせて消したあとに残る、B B B 単独の起こりやすさです。
定義
2 つの事象 A A A と B B B を同時に考えるとき、「A A A と B B B がともに起きる確率」P ( A ∩ B ) P(A \cap B) P ( A ∩ B ) を同時確率 と呼びます。A A A が何の値をとっても、とにかく B B B が起きる確率を知りたい場合、A A A がとりうるすべての値について P ( A ∩ B ) P(A \cap B) P ( A ∩ B ) を足し合わせます。この操作で A A A が消え、B B B だけの確率 P ( B ) P(B) P ( B ) が残ります。
「周辺」という名前は、クロス集計表の構造に由来します。A A A (行方向)と B B B (列方向)を掛け合わせた表を作ると、各セルに同時確率 P ( A ∩ B ) P(A \cap B) P ( A ∩ B ) が並びます。行方向に足し合わせると列の端(縁、margin)に P ( B ) P(B) P ( B ) が並び、列方向に足し合わせると行の端に P ( A ) P(A) P ( A ) が並びます。表の中身を行方向・列方向に足したときに表の縁(margin)に出てくる数字が周辺確率 です。
数式で書くと、離散の場合と連続の場合でそれぞれ次のようになります。
離散の場合(A A A がとりうる値すべてについて和をとる):
連続の場合(A A A 方向に積分する):
ここから先は A , B A, B A , B を実数値をとる確率変数 として読み替えます(離散の場合の「事象」とは別の扱いです)。
記号の意味を整理します。A , B A, B A , B は離散の文脈では事象(起こりうる出来事の集合)、連続の文脈では実数値をとる確率変数 です。∩ \cap ∩ は「A A A と B B B がともに起きる」ことを表す集合の交わり(「キャップ」と読みます)、∑ A \sum_A ∑ A は A A A がとりうるすべての値について足し合わせる操作、f ( A , B ) f(A, B) f ( A , B ) は連続確率変数 の同時密度関数(同時確率 を面積で表したときの「高さ」に相当)です。連続分布での ∫ f ( A , B ) d A \int f(A, B) \, dA ∫ f ( A , B ) d A は、A A A 方向に積分して「B B B 軸に投影した影」を作る操作として読めます。
性質
周辺確率には以下の性質があります。
全確率の和は 1 : ∑ B P ( B ) = 1 \sum_B P(B) = 1 ∑ B P ( B ) = 1 。同時確率 P ( A ∩ B ) P(A \cap B) P ( A ∩ B ) を全 ( A , B ) (A, B) ( A , B ) について足すと 1 になり、B B B について先に足してから A A A について足しても同様に 1 になります。
全確率の公式 と等価 : 定義 P ( B ) = ∑ A P ( A ∩ B ) P(B) = \sum_A P(A \cap B) P ( B ) = ∑ A P ( A ∩ B ) に乗法公式 P ( A ∩ B ) = P ( B ∣ A ) P ( A ) P(A \cap B) = P(B \mid A) P(A) P ( A ∩ B ) = P ( B ∣ A ) P ( A ) を代入すると P ( B ) = ∑ A P ( B ∣ A ) P ( A ) P(B) = \sum_A P(B \mid A) P(A) P ( B ) = ∑ A P ( B ∣ A ) P ( A ) が得られます。条件付き確率 と事前確率 が手元にあれば計算できます。
ベイズの定理 の分母 : P ( A ∣ B ) = P ( B ∣ A ) P ( A ) / P ( B ) P(A \mid B) = P(B \mid A) P(A) / P(B) P ( A ∣ B ) = P ( B ∣ A ) P ( A ) / P ( B ) の分母 P ( B ) P(B) P ( B ) は事後確率 を [ 0 , 1 ] [0, 1] [ 0 , 1 ] に正規化する役割を担います。ベイズ統計・機械学習の文脈では evidence(証拠の総量)とも呼ばれます。
周辺化は情報損失を伴う : 同時分布 P ( A , B ) P(A, B) P ( A , B ) から周辺分布 P ( B ) P(B) P ( B ) を作る操作は不可逆です。A A A と B B B の関係(独立 かどうか、相関の構造)は周辺化によって失われます。
視覚的に見る
1 枚目のコインは偏りあり(表が出る確率 P ( A = 表 ) = 0.7 P(A = \text{表}) = 0.7 P ( A = 表 ) = 0.7 )、2 枚目は公正(P ( B = 表 ) = 0.5 P(B = \text{表}) = 0.5 P ( B = 表 ) = 0.5 )とします。2 枚のコインは互いに独立 です。独立 なので同時確率 は P ( A , B ) = P ( A ) × P ( B ) P(A, B) = P(A) \times P(B) P ( A , B ) = P ( A ) × P ( B ) と積に分解できます。4 つの組み合わせのそれぞれの同時確率 は次の通りです。
B = 表 B = \text{表} B = 表 B = 裏 B = \text{裏} B = 裏 A = 表 A = \text{表} A = 表 0.7 × 0.5 = 0.35 0.7 \times 0.5 = 0.35 0.7 × 0.5 = 0.35 0.7 × 0.5 = 0.35 0.7 \times 0.5 = 0.35 0.7 × 0.5 = 0.35 A = 裏 A = \text{裏} A = 裏 0.3 × 0.5 = 0.15 0.3 \times 0.5 = 0.15 0.3 × 0.5 = 0.15 0.3 × 0.5 = 0.15 0.3 \times 0.5 = 0.15 0.3 × 0.5 = 0.15
この同時確率 を 1×1 の正方形の面積比として表したものが以下の図です。横軸を A A A (1 枚目のコイン)、縦軸を B B B (2 枚目のコイン)に割り当て、各セルの幅・高さを確率に比例させています。
2 枚のコインの周辺確率: B=表の横帯(薄い青)の合計面積が P(B=表) A=表∩B=裏 0.35 A=裏∩B=裏 0.15 A=表∩B=表 0.35 A=裏∩B=表 0.15 ← A=表 幅0.7 → A=裏 幅0.3 P ( B = 表 ) = 0.35 + 0.15 = 0.5
0.7 1.0 1枚目(A) 0.5 1.0 2枚目(B)
薄い青色でハイライトされた上半分(B = 表 B = \text{表} B = 表 の横帯)の面積が周辺確率 P ( B = 表 ) P(B = \text{表}) P ( B = 表 ) です。横帯の中には A = 表 A = \text{表} A = 表 と A = 裏 A = \text{裏} A = 裏 の 2 つのセルが入っており、その面積の合計は 0.35 + 0.15 = 0.5 0.35 + 0.15 = 0.5 0.35 + 0.15 = 0.5 です。「表が 0.7 の偏ったコインと一緒に投げても、公正なコインの表が出る確率は 0.5 のまま」という当たり前の事実を、面積の足し算として視覚化しています。クロス集計表の「合計」列・行が表の縁(margin)に並ぶのと同じ構造です。
縦帯を足すと A A A の周辺確率になります。P ( A = 表 ) = P ( A = 表 ∩ B = 表 ) + P ( A = 表 ∩ B = 裏 ) = 0.35 + 0.35 = 0.7 P(A = \text{表}) = P(A=\text{表} \cap B=\text{表}) + P(A=\text{表} \cap B=\text{裏}) = 0.35 + 0.35 = 0.7 P ( A = 表 ) = P ( A = 表 ∩ B = 表 ) + P ( A = 表 ∩ B = 裏 ) = 0.35 + 0.35 = 0.7 、P ( A = 裏 ) = 0.15 + 0.15 = 0.3 P(A = \text{裏}) = 0.15 + 0.15 = 0.3 P ( A = 裏 ) = 0.15 + 0.15 = 0.3 です。横帯を足すか縦帯を足すかで、どちらの変数を「消す」かが決まります。
実世界での使われ方
周辺確率は「複数の変数を測定したあと、ある特定の変数だけの確率を知りたい」場面で使われます。
公的統計の集計表 : 総務省統計局「国勢調査 」では、年齢階級 × 性別 × 都道府県の同時分布 が公開されています。特定の年齢階級の全国総数(性別・地域を足し合わせた周辺度数)を求める集計が日常的に行われており、クロス集計表の「合計」列・行がそのまま周辺度数です。それを総数で割ると P ( その年齢階級 ) P(\text{その年齢階級}) P ( その年齢階級 ) という周辺確率になります。同時分布 の表を持っていれば、どの変数の組み合わせについても周辺確率を計算できます。つまり「性別の内訳は問わず、25〜34 歳が全人口の何割か」という問いに答える操作が、そのまま周辺化です。
医療検査のベイズ的解釈 : 「検査結果が陽性になる確率」P ( 陽性 ) P(\text{陽性}) P ( 陽性 ) は、ベイズの定理 P ( 病気 ∣ 陽性 ) = P ( 陽性 ∣ 病気 ) P ( 病気 ) / P ( 陽性 ) P(\text{病気} \mid \text{陽性}) = P(\text{陽性} \mid \text{病気}) P(\text{病気}) / P(\text{陽性}) P ( 病気 ∣ 陽性 ) = P ( 陽性 ∣ 病気 ) P ( 病気 ) / P ( 陽性 ) の分母として現れる周辺確率です。厚生労働省「がん検診の有効性評価 」では各検診の陽性率(周辺確率)が有効性指標として算出されています。「病気であっても陽性になる確率(感度)」と「病気でなくても陽性になる確率(1 - 特異度)」を、それぞれ罹患率の重み付きで足し合わせると陽性の周辺確率が求まります。この P ( 陽性 ) P(\text{陽性}) P ( 陽性 ) を計算できないと、検査結果から実際に病気かどうかを推定する確率(陽性的中率)が出せません。
機械学習のモデル選択 : ベイズ統計でモデル M M M の良さを評価する指標として、周辺尤度 p ( D ∣ M ) = ∫ p ( D ∣ θ , M ) p ( θ ∣ M ) d θ p(D \mid M) = \int p(D \mid \theta, M) \, p(\theta \mid M) \, d\theta p ( D ∣ M ) = ∫ p ( D ∣ θ , M ) p ( θ ∣ M ) d θ が使われます。ここで D D D は観測データ、θ \theta θ はモデルのパラメータです。パラメータ θ \theta θ を積分消去(周辺化)することで、特定のパラメータ値に依存しない「モデル全体のデータへの当てはまり」を測れます。2 つのモデル M 1 , M 2 M_1, M_2 M 1 , M 2 の周辺尤度 の比 p ( D ∣ M 1 ) / p ( D ∣ M 2 ) p(D \mid M_1) / p(D \mid M_2) p ( D ∣ M 1 ) / p ( D ∣ M 2 ) が Bayes factor で、モデル比較の定量的な根拠になります。Bayes factor が 10 を超えると M 1 M_1 M 1 の強い証拠と解釈される経験則があり、パラメータ推定とモデル選択を区別するベイズ流の基準です。
周辺確率 P ( B ) P(B) P ( B ) は「A A A について何もわかっていない状態での B B B の確率」です。条件付き確率 P ( B ∣ A ) P(B \mid A) P ( B ∣ A ) は「A A A がわかった状態での B B B の確率」で別物です。前者は同時分布 から A A A を足し消す 操作、後者は同時分布 を P ( A ) P(A) P ( A ) で割る 操作です。
深掘り
以下の全確率の公式 の導出は、確率変数 の扱いに慣れた読者向けです。周辺確率の使い方には影響しません。
全確率の公式 P ( B ) = ∑ A P ( B ∣ A ) P ( A ) P(B) = \sum_A P(B \mid A) P(A) P ( B ) = ∑ A P ( B ∣ A ) P ( A ) は定義式から 1 ステップで得られます。定義 P ( B ) = ∑ A P ( A ∩ B ) P(B) = \sum_A P(A \cap B) P ( B ) = ∑ A P ( A ∩ B ) に、乗法公式 P ( A ∩ B ) = P ( B ∣ A ) P ( A ) P(A \cap B) = P(B \mid A) P(A) P ( A ∩ B ) = P ( B ∣ A ) P ( A ) を代入するだけです。
右辺の読み方は「A A A がどの値をとるかで B B B の起こり方が変わる(P ( B ∣ A ) P(B \mid A) P ( B ∣ A ) )。それを A A A の事前分布 P ( A ) P(A) P ( A ) で重み付きで平均する」です。A A A を隠れた原因 、B B B を観測結果 と読めば、P ( B ) P(B) P ( B ) は「すべての原因にわたって観測結果を平均化したもの」になります。医療検査の例では、隠れた原因が「病気か否か」で、観測結果が「検査の陽性・陰性」です。
P ( B ) = ∑ A P ( B ∣ A ) P ( A ) P(B) = \sum_A P(B \mid A) P(A) P ( B ) = ∑ A P ( B ∣ A ) P ( A ) は、「A A A という条件のもとで見た B B B の確率」を「A A A がどのくらい起きるか」で重み付きで足し合わせています。これは P ( B ∣ A ) P(B \mid A) P ( B ∣ A ) という関数の A A A に関する期待値 そのものです。
周辺尤度 とモデル選択
ベイズ統計では、モデル M M M のもとで観測データ D D D が得られる確率を周辺尤度 (marginal likelihood )または evidence と呼びます。
p ( D ∣ θ , M ) p(D \mid \theta, M) p ( D ∣ θ , M ) は「モデル M M M のパラメータが θ \theta θ のときにデータ D D D が出る尤度 」、p ( θ ∣ M ) p(\theta \mid M) p ( θ ∣ M ) はパラメータの事前分布 です。積分でパラメータ θ \theta θ を消すと、特定のパラメータ値に依存しない「モデル M M M がデータ全体をどれだけうまく説明するか」の指標が得られます。
最尤推定では「パラメータをデータに合わせて最大化」するため、パラメータ数が増えるほど尤度 は上がり続けます(過学習)。周辺尤度 は事前分布 で平均しているので、複雑すぎるモデルは事前分布 の広い領域でデータとの一致が下がり、自動的にモデルの複雑さにペナルティが入ります。これが Bayes factor p ( D ∣ M 1 ) / p ( D ∣ M 2 ) p(D \mid M_1) / p(D \mid M_2) p ( D ∣ M 1 ) / p ( D ∣ M 2 ) によるモデル選択の仕組みです。
機械学習における ELBO との接続
周辺尤度 log p ( D ) \log p(D) log p ( D ) の積分は多くの場合、解析的に計算できません。変分推論では、任意の分布 q ( θ ) q(\theta) q ( θ ) に対して以下の不等式が成り立ちます。
右辺を ELBO(Evidence Lower BOund、変分下界とも呼ばれます)と言います。ELBO の E は Evidence、すなわち本エントリの周辺確率 p ( D ) p(D) p ( D ) そのものです。ELBO を最大化する q ( θ ) q(\theta) q ( θ ) を見つけることが、周辺尤度 の近似計算になります。変分オートエンコーダ(VAE)の学習目標として直接登場し、深層生成モデルの基礎にある考え方です。
「表から A A A を消した合計」という初歩の操作が、ELBO という現代的な学習目標にまで連なります。Bayes factor・周辺尤度 ・ELBO はいずれも同じ周辺化(∫ p ( ⋅ , θ ) d θ \int p(\cdot, \theta) \, d\theta ∫ p ( ⋅ , θ ) d θ )という操作の異なる名前です。
関連する用語
条件付き確率 : 周辺確率を分母に持つ確率。P ( A ∣ B ) = P ( A ∩ B ) / P ( B ) P(A \mid B) = P(A \cap B) / P(B) P ( A ∣ B ) = P ( A ∩ B ) / P ( B )
ベイズの定理 : 分母が周辺確率(evidence)になる定理
独立性 : 独立性 のもとでは P ( A ∩ B ) = P ( A ) P ( B ) P(A \cap B) = P(A) P(B) P ( A ∩ B ) = P ( A ) P ( B ) で同時確率 が周辺確率の積に分解される
期待値 : 全確率の公式 P ( B ) = ∑ A P ( B ∣ A ) P ( A ) P(B) = \sum_A P(B \mid A) P(A) P ( B ) = ∑ A P ( B ∣ A ) P ( A ) は P ( B ∣ A ) P(B \mid A) P ( B ∣ A ) の A A A に関する期待値 として読める
指示変数 : 周辺確率は指示変数 の期待値 として書ける(P ( B ) = E [ 1 B ] P(B) = E[\mathbf{1}_B] P ( B ) = E [ 1 B ] )
詳しくは
stats-07: 条件付き確率とベイズの定理 : 周辺確率がベイズの定理 の分母 (evidence) として登場する本編記事