論文一覧に戻る 📚 用語集トップ 🗺 概念マップ
📚 用語解説
📚 用語解説
条件付き確率
Conditional Probability
確率論基礎

🔖 キーワード索引

30秒結論 文脈ボックス 直感 数式・定義 数式読解 実値計算 Python実装 ベイズの定理 独立性 落とし穴 関連手法 応用 関連用語 グループ教材 FAQ 概念マップ

💡 30秒で分かる結論

📍 文脈ボックス — あなたが今見ているもの

あなたは 「確率論の中心」 にいる用語ページを見ています。 条件付き確率は 仮説検定 の p 値、 ロジスティック回帰 の出力、 機械学習 の事後分布、 すべての基礎です。

上位概念確率 / 確率測度
同列概念同時確率 / 周辺確率 / 独立性
下位応用ベイズの定理 / 条件付き期待値 / マルコフ性
前提知識集合 / 確率の公理 / 平均

🎨 直感で掴む

サイコロを 1 回振る。 出た目が 偶数 だと教えられたとき、 「6 が出た確率」は? 普通なら 1/6 ですが、 偶数(2, 4, 6)に絞られたので 1/3 になります。 これが条件付き確率です。 追加情報で確率が更新される 現象を表します。

「全体集合の縮小」と考えると分かりやすい:イベント B が分かったので、 私たちはもう「全 6 通り」を見ているのではなく、 「B に含まれる通り」だけを見ている。 その中で A が起こる割合が $P(A|B)$ です。

日常例:「雨が降った日(B)」のうち「傘を差した日(A)」が 80% なら $P(A|B)=0.8$。 雨が降っていない日も含めた全日のうち「雨も傘もあり」は $P(A \cap B)$ で、 これを「雨の日 $P(B)$」で割って $0.8$ となります。

表 1. 直感比較表
表記読み方意味
$P(A)$A の確率何も条件無しでの A の確率
$P(A \cap B)$A かつ B両方同時に起こる確率
$P(A | B)$B のときの A の確率B 起こった条件下での A の確率
$P(A) = P(A|B)$独立条件が無関係

📐 数式または定義

事象 $B$ ($P(B)>0$) が起こったときの事象 $A$ の条件付き確率:

$$P(A | B) = \frac{P(A \cap B)}{P(B)}$$

乗法定理(積の公式):

$$P(A \cap B) = P(B) P(A|B) = P(A) P(B|A)$$

ベイズの定理:

$$P(A | B) = \frac{P(B | A) P(A)}{P(B)}$$

全確率の定理(分割 $\{B_i\}$ が $\Omega$ を覆い、 互いに排反):

$$P(A) = \sum_{i} P(A | B_i) P(B_i)$$

独立性の定義:

$$A \perp B \iff P(A \cap B) = P(A) P(B) \iff P(A|B) = P(A)$$

条件付き期待値:

$$E[Y | X = x] = \int y \cdot p(y | x) \, dy$$

🔬 数式を言葉で読み解く

記号意味具体例
$A, B$事象「人口減少県」「政策実施」
$A \cap B$共通部分両方が起こる
$P(B)$B の周辺確率分母(新しい全体集合)
$P(A|B)$B 条件下の A更新された確率
$P(A)$事前確率何も知らないときの確率
$P(B|A)$尤度A 起こったとき B が起こる確率

ベイズの定理は 「事前 × 尤度 = 事後(正規化定数で割る)」。 「A は理論的にどれくらいあり得るか」(事前) と「A なら B はどれくらい説明できるか」(尤度) を掛け、 周辺確率 $P(B)$ で正規化して「B を見たあとの A の確率」(事後) を得ます。

🧮 実値で計算してみる(SSDSE-B-2026 都道府県)

47 都道府県のうち、 直近年(2023 年)の特性を分類:

事象を定義:A = 人口減少県、 B = 三大都市圏。

$$P(A) = 40/47 = 0.851, \quad P(B) = 11/47 = 0.234, \quad P(A \cap B) = 7/47 = 0.149$$

$$P(A | B) = \frac{P(A \cap B)}{P(B)} = \frac{7/47}{11/47} = 7/11 \approx 0.636$$

$$P(A | \bar{B}) = \frac{33/47}{36/47} = 33/36 \approx 0.917$$

表 2. 都市圏ダミーと人口減少の分割表
人口減少 A人口増加 $\bar{A}$
三大都市圏 B7411
それ以外 $\bar{B}$33336
40747

「三大都市圏なら 63.6% の確率で人口減少」「地方圏なら 91.7%」と、 条件付け対象によって確率がぐっと変化します。 事前確率 85.1% との差が 都市圏が人口減少を緩和している 統計的証拠です。

ベイズで逆向きに:「人口減少県」のとき「都市圏」確率は?

$$P(B|A) = \frac{P(A|B)P(B)}{P(A)} = \frac{0.636 \times 0.234}{0.851} = 0.175$$

人口減少県の中で都市圏なのは 17.5%。 分割表でも $7/40=0.175$ で一致。 ベイズの定理の整合性が確認できます。

🐍 Python 実装

SSDSE-B-2026 で条件付き確率と分割表を計算します。

import pandas as pd
import numpy as np

df = pd.read_csv('data/raw/SSDSE-B-2026.csv', skiprows=1, encoding='cp932')

# 「人口減少県」を定義 (2018 - 2023 で総人口が減ったか)
pop_change = df.pivot(index='都道府県', columns='年度', values='総人口')
pop_change['減少'] = (pop_change[2023] < pop_change[2018]).astype(int)

# 「三大都市圏」フラグ
metro = ['東京都','神奈川県','埼玉県','千葉県',
         '大阪府','京都府','兵庫県','奈良県',
         '愛知県','岐阜県','三重県']
pop_change['都市圏'] = pop_change.index.isin(metro).astype(int)

# 分割表
crosstab = pd.crosstab(pop_change['都市圏'], pop_change['減少'])
print(crosstab)
# 条件付き確率の計算
n = len(pop_change)
p_A = pop_change['減少'].mean()
p_B = pop_change['都市圏'].mean()
p_AB = ((pop_change['減少']==1) & (pop_change['都市圏']==1)).mean()
p_A_given_B = p_AB / p_B
p_B_given_A = p_AB / p_A
print(f"P(A)={p_A:.3f}, P(B)={p_B:.3f}, P(A∩B)={p_AB:.3f}")
print(f"P(減少|都市圏)={p_A_given_B:.3f}")
print(f"P(都市圏|減少)={p_B_given_A:.3f}")
# 独立性のカイ二乗検定
from scipy.stats import chi2_contingency
chi2, pval, dof, exp = chi2_contingency(crosstab)
print(f"χ²={chi2:.3f}, df={dof}, p={pval:.4f}")
# p が小さいと「都市圏フラグと人口減少フラグは独立でない」と判定
# ベイズの定理を直接計算 (尤度比形式)
# 例: 出生率「高い/低い」と人口「増/減」の関係
pop_change['出生率高'] = (df.groupby('都道府県')['合計特殊出生率'].last() > 1.4).astype(int)
ct = pd.crosstab(pop_change['出生率高'], pop_change['減少'])
print(ct)
# P(出生率高 | 人口増)
p_BgA = ct.loc[1, 0] / ct[0].sum()
p_A   = ct[0].sum() / ct.values.sum()
p_B   = ct.loc[1].sum() / ct.values.sum()
p_AgB = p_BgA * p_A / p_B
print(f"P(人口増|出生率高) = {p_AgB:.3f}")
# 条件付き期待値: 都市圏/非都市圏ごとの平均出生数
import pandas as pd
latest = df.sort_values('年度').groupby('都道府県').last()
latest['都市圏'] = latest.index.isin(metro).astype(int)
print(latest.groupby('都市圏')['出生数'].agg(['mean','std','count']))
# 都市圏の平均出生数 = E[出生数 | 都市圏=1]
# ロジスティック回帰で条件付き確率を直接モデル化
from sklearn.linear_model import LogisticRegression
X = latest[['消費支出(二人以上の世帯)','合計特殊出生率']].values
y = latest['都市圏'].values
clf = LogisticRegression().fit(X, y)
print('係数:', clf.coef_, '切片:', clf.intercept_)
# P(都市圏 | 消費支出, 出生率) を予測
print(clf.predict_proba(X)[:5])

📜 ベイズの定理を深掘り

ベイズの定理は条件の向きを反転する公式:

$$\underbrace{P(H | D)}_{\text{事後}} = \frac{\overbrace{P(D | H)}^{\text{尤度}} \cdot \overbrace{P(H)}^{\text{事前}}}{\underbrace{P(D)}_{\text{周辺}}}$$

医療診断の例:感染率 1% の病気に対し、 検査の感度 99%・特異度 95%。 陽性反応が出たとき本当に感染している確率は?

$$P(\text{感染}|\text{陽性}) = \frac{0.99 \times 0.01}{0.99 \times 0.01 + 0.05 \times 0.99} = 0.167$$

直感とは違い、 陽性でも 17% しか感染確率がない。 これは 基準率の誤謬 (Base Rate Fallacy) として有名。 条件付き確率の罠です。

🔗 独立性と条件付き独立

$A$ と $B$ が 独立 なら、 $B$ を知っても $A$ の確率は変わらない($P(A|B)=P(A)$)。

条件付き独立:$P(A \cap B | C) = P(A|C) P(B|C)$。 「$C$ を知ったうえで $A$ と $B$ は独立」。 ナイーブベイズ分類器、 ベイジアンネットワーク、 マルコフ性などの基礎。

関係表記意味
独立$A \perp B$$P(A|B)=P(A)$
条件付き独立$A \perp B | C$$P(A|B,C)=P(A|C)$
マルコフ性$X_{t+1} \perp X_{時系列で前のみが影響

⚠️ 落とし穴

❌ 検事の誤謬 (Prosecutor's Fallacy)
$P(A|B)$ と $P(B|A)$ は別物。 「指紋一致 | 無罪」が 0.001 だからといって「無罪 | 指紋一致」が 0.001 とは限らない。 必ずベイズの定理で逆向きを計算する。
❌ 基準率の誤謬
事前確率 P(A) を無視して感度だけ見て判断する。 病気の例で 99% 感度の検査でも罹患率が低ければ陽性の信頼性は下がる。
❌ シンプソンのパラドックス
条件付け方によって結論が逆転する。 全体では治療 A が有効でも、 性別ごとに見ると治療 B が有効、 など。 交絡変数で適切に層別する。
❌ 独立性の誤判定
「相関がないから独立」は誤り。 非線形依存はあり得る。 独立性の検定は $\chi^2$、 相互情報量で確認する。
❌ ゼロ確率の条件付け
$P(B)=0$ では $P(A|B)$ が定義されない。 連続確率変数では確率密度 $p(x|y)$ で議論し、 観測サンプルが少ない条件付けには注意。

🔬 応用事例

📌 一目で復習

🐍 Python 拡張:ベイズ計算機

# SSDSE-B-2026 都道府県でベイズ更新を実演
import pandas as pd
df = pd.read_csv('data/raw/SSDSE-B-2026.csv', skiprows=1, encoding='cp932')
latest = df.sort_values('年度').groupby('都道府県').last().reset_index()

# 事象定義:A = 出生率 > 1.4, B = 三大都市圏
metro = {'東京都','神奈川県','埼玉県','千葉県','大阪府','京都府','兵庫県','奈良県','愛知県','岐阜県','三重県'}
latest['A'] = (latest['合計特殊出生率'] > 1.4).astype(int)
latest['B'] = latest['都道府県'].isin(metro).astype(int)

PA = latest['A'].mean()
PB = latest['B'].mean()
PAB = ((latest['A']==1) & (latest['B']==1)).mean()

print(f"P(A) = {PA:.3f}")
print(f"P(B) = {PB:.3f}")
print(f"P(A∩B) = {PAB:.3f}")
print(f"P(A|B) = {PAB/PB:.3f}")
print(f"P(B|A) = {PAB/PA:.3f}")

# ベイズ更新で検算
post = (PAB/PB) * PB / PA
print(f"ベイズ復元 P(B|A) = {post:.3f}  (期待値 {PAB/PA:.3f})")

📜 条件付き確率の性質

性質数式意味
非負性$P(A|B) \geq 0$確率の基本
規格化$P(\Omega|B) = 1$B 内の確率合計は 1
加法性$P(A_1 \cup A_2 | B) = P(A_1|B) + P(A_2|B)$ (排反時)確率公理を保つ
補集合$P(\bar{A}|B) = 1 - P(A|B)$B 内での補集合
単調性$A \subseteq C \Rightarrow P(A|B) \leq P(C|B)$部分集合は確率小

条件付き確率自体が 確率測度の公理を満たすので、 一度条件付けてしまえばその後の議論はすべて通常の確率と同じ。 これが条件付き確率の数学的強力さの源です。

🎰 モンティ・ホール問題

3 つのドアのうち 1 つに賞品がある。 あなたが 1 番を選ぶと、 司会者が「ハズレ」の 3 番を開く。 2 番に変更すべきか?

答えは 変更すべき(当選確率が 1/3 → 2/3 に上がる)。 直感に反するが、 条件付き確率で説明可能:司会者が「ハズレを開く」という情報が事後分布を更新する。

$$P(\text{2 番が当たり} | \text{司会者が 3 番開示}) = \frac{P(\text{開示|2 番が当たり}) \cdot 1/3}{P(\text{開示})} = \frac{1 \times 1/3}{1/2} = 2/3$$

この問題は 条件付き確率の罠 として有名で、 学者ですら直感を誤る。 ベイズの定理を機械的に適用するのが安全。

🖼 条件付き確率を図で理解

ベン図で考えると条件付き確率は 「B の中での A の割合」。 標本空間 $\Omega$ を 1m² の正方形と思ったとき、 各事象の面積が確率に対応します:

「条件付ける」=「全体集合を B に縮約する」と覚えるのが直感的です。 確率の世界をズームインしているイメージ。

ツリー図でも表せます。 「最初に B か $\bar{B}$ に分岐 → 各分岐の中で A か $\bar{A}$ に分岐」。 各葉の確率は分岐の条件付き確率の積。 これがチェーンルール。

⛓ 確率のチェーンルール

複数事象の同時確率は、 条件付き確率の積に分解できます:

$$P(A_1, A_2, \dots, A_n) = P(A_1) P(A_2|A_1) P(A_3|A_1,A_2) \cdots P(A_n|A_1,\dots,A_{n-1})$$

この分解は ベイジアンネットワークマルコフ連鎖 の基礎です。 条件付き独立を導入することで右辺が大幅に簡素化されます。

SSDSE-B-2026 の単純な例:「県 → 5 年人口減少 → 政策実施 → 旅館数増加」というシナリオで、 同時確率は以下のように分解できます。

$$P(\text{県, 減少, 政策, 増加}) = P(\text{県}) \cdot P(\text{減少|県}) \cdot P(\text{政策|減少}) \cdot P(\text{増加|政策})$$

右側に行くほど直近の事象に条件付けられるマルコフ構造です。

🎭 シンプソンのパラドックスを SSDSE で実感

「都市圏では大学進学率と県内総生産は無相関に見えるのに、 地方圏では強く相関する」など、 層別によって関係が変わる現象は SSDSE-B-2026 でも観察できます。 全国一括での分析と層別分析は異なる結論を出すので、 必ず複数の条件付け視点で見ることが重要です。

表 3. 層別による相関の反転(仮想例)
大学進学率 vs 出生率の相関
全国 (47 県)−0.42(負)
三大都市圏 (11 県)+0.15(弱い正)
地方圏 (36 県)+0.28(弱い正)

全国では「進学率高い県=出生率低い」だが、 層内で見るとどちらも正相関。 これは 都市圏ダミーが交絡変数として隠れているためで、 条件付き確率 $P(\text{出生率高} | \text{進学率高}, \text{都市圏})$ で正しい関係が浮かびます。

📊 条件付き分布と回帰の関係

回帰分析は実は条件付き期待値 $E[Y|X=x]$ をモデル化するアルゴリズムです:

$$E[Y | X = x] = f(x) + \text{noise}, \quad Y | X=x \sim p(y|x)$$

線形回帰は $f(x) = \beta_0 + \beta_1 x$ と仮定し、 ロジスティック回帰は $P(Y=1|X=x) = \sigma(\beta_0 + \beta_1 x)$ と仮定する。 すなわち、 あらゆる教師あり学習は条件付き分布 $p(y|x)$ の推定問題です。

モデル条件付き分布の仮定
線形回帰$Y|X \sim \mathcal{N}(\beta^\top X, \sigma^2)$
ロジスティック$Y|X \sim \mathrm{Bernoulli}(\sigma(\beta^\top X))$
ポアソン回帰$Y|X \sim \mathrm{Poisson}(e^{\beta^\top X})$
ニューラルネット$Y|X \sim$ NN 出力の分布

🔄 ベイズ更新の連鎖

複数の証拠が順次得られる場合、 ベイズの定理を逐次適用してその都度更新できます。 これがオンライン学習・データ同化・粒子フィルタの数学的基盤。

$$P(H | D_1, D_2) \propto P(D_2 | H, D_1) P(H | D_1)$$

$D_1, D_2$ が条件付き独立 ($D_1 \perp D_2 | H$) なら:

$$P(H | D_1, D_2) \propto P(D_2 | H) P(D_1 | H) P(H)$$

SSDSE-B-2026 の例:① 県の特徴(事前)→ ② 直近の人口データを観測(更新 1)→ ③ 経済データを観測(更新 2)と、 段階的に「未来人口の予測分布」を更新できます。 これがナウキャスティングの基本原理。

📜 歴史と発展

❓ FAQ

Q1. $P(A|B)$ と $P(B|A)$ はなぜ違う?

分母が違うから。 $P(A|B)$ は $P(B)$ で割り、 $P(B|A)$ は $P(A)$ で割る。 ベイズの定理は両者を関係づけます。 「指紋一致なら犯人 ≠ 犯人なら指紋一致」。

Q2. 連続確率変数では条件付き確率は定義できる?

点 $X=x$ の確率は 0 なので $P(A|X=x)$ は条件付き 密度 $p(y|x) = p(x,y)/p(x)$ で定義します。 厳密にはラドン-ニコディム微分で構成。

Q3. 「独立」と「相関ゼロ」は同じ?

独立 → 相関ゼロは成り立ちますが、 逆は 正規分布以外では一般に成り立ちません。 非線形依存は相関では検出できない。

Q4. 全確率の定理はなぜ便利?

直接 $P(A)$ を計算しにくいとき、 場合分け $B_i$ で条件付けて $\sum P(A|B_i)P(B_i)$ にすると簡単。 マーケティングのファネル分析や生存分析で頻用。

Q5. ベイズと頻度主義の違いは?

頻度主義は確率を「長期相対頻度」と定義し、 パラメータは固定された定数とみなす。 ベイズは確率を「主観的信念度」と定義し、 パラメータも確率変数。 ベイズ統計は事後確率に基づき推論する。

🗺 概念マップ

条件付き確率は 「確率モデルの中で情報を更新する操作」。 機械学習・統計検定・データ同化・因果推論など、 多くの学問の 共通言語です。

分野使われ方
機械学習分類器の出力 $P(y|x)$
統計検定p 値 $= P(\text{もっと極端} | H_0)$
時系列マルコフ性 $P(x_{t+1}|x_t)$
因果推論do-演算子 vs 観測条件付け