コーシー分布(Cauchy distribution)は、裾が非常に重い連続型確率分布である。正規分布と似た釣鐘型の形状をもつが、裾の減衰が遅いため、平均や分散が存在しないという特異な性質をもつ。
コーシー分布は自由度 1 の t 分布と一致する。また、2つの独立な標準正規確率変数の比がコーシー分布に従うことから、統計学や物理学において重要な役割を果たす。物理学ではローレンツ分布(Lorentz distribution)とも呼ばれ、光学におけるスペクトル線の形状を記述する。
定義
確率変数 X が以下の確率密度関数をもつとき、X は標準コーシー分布に従うという。
より一般に、位置パラメータ \mu と尺度パラメータ \sigma > 0 をもつコーシー分布の確率密度関数は次のようになる。
標準コーシー分布は \mu = 0, \sigma = 1 の場合に相当する。
グラフ
コーシー分布と標準正規分布の確率密度関数を比較する。
コーシー分布は正規分布より中心のピークが高く、裾が厚い。正規分布では |x| > 3 の領域ではほぼ 0 になるが、コーシー分布では相対的に大きな値を保っている。
期待値と分散
コーシー分布の最も特徴的な性質は、期待値と分散が存在しないことである。
【期待値が存在しない理由】 期待値の計算を試みると
となるが、この積分は |x| \to \infty で \dfrac{x}{1+x^2} \approx \dfrac{1}{x} となり、\int \dfrac{1}{x} \, dx が発散するため、絶対収束しない。すなわち
期待値が存在しないため、分散も定義できない。これはコーシー分布の裾が非常に重いことに起因する。
ただし、確率密度関数が x = 0 に関して対称であることから、中央値は 0 である(一般のコーシー分布では \mu)。
累積分布関数
標準コーシー分布の累積分布関数は次のようになる。
【導出】 累積分布関数は確率密度関数の積分で得られる。
F(0) = \dfrac{1}{2} であり、対称性が確認できる。
t分布との関係
コーシー分布は自由度 1 の t 分布に一致する。
【確認】 自由度 n の t 分布の確率密度関数は
n = 1 を代入すると、\Gamma(1) = 1, \Gamma\left(\dfrac{1}{2}\right) = \sqrt{\pi} より
これは標準コーシー分布の確率密度関数に一致する。
t 分布は n > 1 で期待値が存在し、n > 2 で分散が存在する。コーシー分布(n = 1)はその境界ケースとして、期待値も分散も存在しない。
標準正規分布の比
コーシー分布は2つの独立な標準正規確率変数の比として得られる。
Z_1, Z_2 \sim N(0, 1) が独立のとき
【導出】 Z_1, Z_2 が独立に標準正規分布に従うとき、X = \dfrac{Z_1}{Z_2} の分布を求める。
Z_1, Z_2 の同時確率密度関数は
変数変換 X = \dfrac{Z_1}{Z_2}, Y = Z_2 を行う。逆変換は Z_1 = XY, Z_2 = Y である。ヤコビアンを計算すると
よって、(X, Y) の同時確率密度関数は
X の周辺密度関数を求めるため、Y について積分する。|y| の対称性を利用して
ここで u = \dfrac{y^2(1 + x^2)}{2} と置換すると、du = y(1 + x^2) \, dy より y \, dy = \dfrac{du}{1 + x^2} となる。
これは標準コーシー分布の確率密度関数である。この性質は、コーシー分布のサンプルを生成する際に利用される。
計算例
標準コーシー分布について、P(|X| \leq 1) を求める。
標準コーシー分布では、|X| \leq 1 となる確率が 50% である。これに対し、標準正規分布では P(|Z| \leq 1) \approx 0.683 である。コーシー分布の裾が重いことが数値にも表れている。
練習問題
F(x) = 0.75 となる x を求める。
第3四分位数は Q_3 = 1 である。対称性より第1四分位数は Q_1 = -1。
コーシー分布の線形変換の性質より
したがって
位置パラメータ \mu = 3、尺度パラメータ \sigma = 2 のコーシー分布に従う。
まとめ
| 項目 | 内容 |
|---|---|
| 分布名 | コーシー分布(Cauchy distribution) |
| パラメータ | \mu(位置)、\sigma > 0(尺度) |
| 確率密度関数 | f(x) = \dfrac{1}{\pi\sigma\left(1 + \left(\dfrac{x-\mu}{\sigma}\right)^2\right)} |
| 累積分布関数 | F(x) = \dfrac{1}{2} + \dfrac{1}{\pi}\arctan\left(\dfrac{x-\mu}{\sigma}\right) |
| 期待値 | 存在しない |
| 分散 | 存在しない |
| 中央値 | \mu |
| t分布との関係 | \text{Cauchy}(0,1) = t(1) |
| 正規分布の比 | \dfrac{Z_1}{Z_2} \sim \text{Cauchy}(0,1)(Z_i \sim N(0,1) 独立) |
Pythonで実装する
Pythonを使ってコーシー分布の計算やシミュレーションを行う。
import numpy as np
from scipy import stats
print("=== 標準コーシー分布 ===")
# scipy.stats.cauchy で標準コーシー分布
dist = stats.cauchy()
# 確率密度関数
print("\n確率密度関数の値:")
for x in [-2, -1, 0, 1, 2]:
print(f" f({x}) = {dist.pdf(x):.6f}")
# 累積分布関数
print("\n累積分布関数:")
for x in [-1, 0, 1]:
print(f" F({x}) = {dist.cdf(x):.4f}")
# P(|X| <= 1) の計算
p_abs_le_1 = dist.cdf(1) - dist.cdf(-1)
print(f"\nP(|X| ≤ 1) = {p_abs_le_1:.4f}")
# 分位点
print("\n分位点:")
for q in [0.25, 0.5, 0.75]:
print(f" {int(q*100)}%点: {dist.ppf(q):.4f}")
# t(1) との比較
print("\n=== t(1)分布との比較 ===")
t1 = stats.t(df=1)
for x in [0, 1, 2]:
print(f"x={x}: Cauchy f(x)={dist.pdf(x):.6f}, t(1) f(x)={t1.pdf(x):.6f}")
# 標準正規分布の比からの生成
print("\n=== Z1/Z2 からの生成 ===")
np.random.seed(42)
n = 100000
z1 = np.random.standard_normal(n)
z2 = np.random.standard_normal(n)
ratio = z1 / z2
print(f"サンプル数: {n}")
print(f"中央値: {np.median(ratio):.4f} (理論値: 0)")
print(f"P(|X| ≤ 1): {np.mean(np.abs(ratio) <= 1):.4f} (理論値: 0.5)")
# 注意: 平均と分散は存在しない
print(f"\n標本平均: {np.mean(ratio):.4f} (不安定)")
print(f"標本分散: {np.var(ratio):.4f} (不安定)")
print("※ コーシー分布では平均・分散が存在しないため、")
print(" 標本平均・標本分散はサンプルサイズを増やしても収束しない")
コーシー分布と t(1) 分布の確率密度関数が完全に一致することが確認できる。また、Z_1/Z_2 から生成したサンプルの中央値や P(|X| \leq 1) は理論値とよく一致するが、標本平均と標本分散は不安定で収束しない。これは大数の法則が成り立たないことを示している。