tecktom.com

応用

2026年10月15日14分で読めますAI生成教科書『基礎理論』第12章 大数の法則
目次
  1. Monte Carlo 積分
  2. 経験分布関数と Glivenko–Cantelli の定理
  3. 確認テスト
  4. 木下の層

AI 生成・木下が未勉強

確率論入門 第12章 §12.4 ★★★ 期待値・積分を乱数の平均で近似する Monte Carlo 法と、標本から分布関数全体を一様に推定する Glivenko–Cantelli の定理

Monte Carlo 積分

dd 次元の立方体の上の可積分な関数 gg について、次の積分を数値的に求めたいとする。

I=∫[0,1]dg dLebI=\int_{[0,1]^d}g\,\mathrm{d}\mathrm{Leb}

U1,U2,…\bm U_1,\bm U_2,\dots を、立方体の上の一様分布に従う独立同分布の確率ベクトルとする。第5章 §5.3 の変数変換公式から、E[g(U1)]=IE[g(\bm U_1)]=I である。そこで

I^n=1n∑k=1ng(Uk)(12.12)\hat I_n=\frac1n\sum_{k=1}^{n}g(\bm U_k)\tag{12.12}

を積分の推定値とする。これが Monte Carlo 積分である。各項 g(Uk)g(\bm U_k) は独立同分布で、E[∣g(U1)∣]=∫∣g∣<∞E[\left\vert g(\bm U_1)\right\vert ]=\int\left\vert g\right\vert <\infty である。よって Kolmogorov の強法則(定理 12.6)から、I^n→I\hat I_n\to I a.s. となる。

誤差の大きさは分散で測る。次の分散が有限であるとする。

σg2=V[g(U1)]=∫g2−I2<∞\sigma_g^2=V[g(\bm U_1)]=\int g^2-I^2<\infty

このとき推定値の平均は II、分散は σg2/n\sigma_g^2/n であり、

E[(I^n−I)2]=σgn,P(∣I^n−I∣≥c σgn)≤1c2(12.13)\sqrt{E\bigl[(\hat I_n-I)^2\bigr]}=\frac{\sigma_g}{\sqrt n},\qquad P\Bigl(\left\vert \hat I_n-I\right\vert \ge\frac{c\,\sigma_g}{\sqrt n}\Bigr)\le\frac1{c^2}\tag{12.13}

となる(2つ目は Chebyshev の不等式)。誤差が n−1/2n^{-1/2} に比例し、その係数が次元によらないことが Monte Carlo 法の特徴である。

格子点で関数値をとる台形公式と比べる。格子点を dd 次元に並べると、1辺あたりの点の数は n1/dn^{1/d} になる。よって台形公式の誤差は n−2/dn^{-2/d} の程度になり、5次元以上では Monte Carlo の n−1/2n^{-1/2} より遅くなる。

実際の計算では σg\sigma_g も未知である。そこで同じ乱数から、次の量で推定する。

σ^n2=1n∑k(g(Uk)−I^n)2\hat\sigma_n^2=\frac1n\sum_k(g(\bm U_k)-\hat I_n)^2

確認テスト 12.1-4 と同じ議論(強法則版)から、σ^n2→σg2\hat\sigma_n^2\to\sigma_g^2 a.s. である。(12.13) の確率の評価は、第13章の中心極限定理で精密になる。

P(∣I^n−I∣≥1.96 σgn)→0.05P\Bigl(\left\vert \hat I_n-I\right\vert \ge\frac{1.96\,\sigma_g}{\sqrt n}\Bigr)\to0.05

一様分布でない分布 ff に関する期待値 E[h(X)]E[h(X)] も、同じ分布の乱数を作れれば同じ方法で求まる。乱数の作り方には、第3章 §3.5 の逆変換法 F−1(U)F^{-1}(U) や、第7章 §7.2 の Box–Muller 法がある。

重点抽出

  • ff を密度とし、∫gf dx\int g f\,\mathrm{d} x を求める。別の密度 qq を用意する(gf≠0gf\neq0 の所で正とする)。そこから独立に Y1,Y2,…Y_1,Y_2,\dots を作り、

I~n=1n∑k=1ng(Yk)f(Yk)q(Yk)\tilde I_n=\frac1n\sum_{k=1}^{n}\frac{g(Y_k)f(Y_k)}{q(Y_k)}

と置く。各項の期待値は E[g(Y)f(Y)/q(Y)]=∫gf dxE[g(Y)f(Y)/q(Y)]=\int gf\,\mathrm{d} x である。よって強法則から、I~n\tilde I_n は確率 1 で求める積分に収束する(確認テスト 12.4-4)。これを重点抽出と呼ぶ。

  • 第5章 §5.3 の測度の作り替え Q(A)=E[Z;A]Q(A)=E[Z;A] を、密度の比 f/qf/q を重みとして使う形である。qq を ∣g∣f\left\vert g\right\vert f に近い形に選ぶと、分散が小さくなる。

例題 12.7 円周率の Monte Carlo 推定 ★★

オリジナルU=(U,V)\bm U=(U,V) を [0,1]2[0,1]^2 上の一様分布に従う確率ベクトルとする。

  1. 次の推定値について、ほとんど確実な極限と分散 V[π^n]V[\hat\pi_n] を求めよ。

g1(u,v)=4⋅1{u2+v2≤1},π^n=1n∑kg1(Uk)g_1(u,v)=4\cdot\mathbf 1_{\{u^2+v^2\le1\}},\qquad\hat\pi_n=\frac1n\sum_kg_1(\bm U_k)

P(∣π^n−π∣≥0.01)≤0.05P(\left\vert \hat\pi_n-\pi\right\vert \ge0.01)\le0.05 を Chebyshev の不等式で保証するのに必要な、最小の nn を求めよ。2. 1変数の関数による次の推定値の分散を求めよ。

g2(u)=41−u2,π~n=1n∑kg2(Uk)g_2(u)=4\sqrt{1-u^2},\qquad\tilde\pi_n=\frac1n\sum_kg_2(U_k)

(1) と比べて、同じ精度に必要な試行回数が何分の1になるかを答えよ。

解答
  1. 期待値は次のとおりである。

E[g1(U)]=4 Leb({u2+v2≤1, u,v≥0})=4⋅π4=πE[g_1(\bm U)]=4\,\mathrm{Leb}(\{u^2+v^2\le1,\ u,v\ge0\})=4\cdot\frac\pi4=\pi

よって強法則から、π^n→π\hat\pi_n\to\pi a.s. である。g1(U)/4g_1(\bm U)/4 は Ber(π/4)\mathrm{Ber}(\pi/4) に従うので、分散は次のとおりである。

V[g1(U)]=16⋅π4(1−π4)=π(4−π)≈2.6968,V[π^n]=π(4−π)nV[g_1(\bm U)]=16\cdot\frac\pi4\Bigl(1-\frac\pi4\Bigr)=\pi(4-\pi)\approx2.6968,\qquad V[\hat\pi_n]=\frac{\pi(4-\pi)}n

Chebyshev の不等式から

P(∣π^n−π∣≥0.01)≤π(4−π)n⋅10−4≤0.05  ⟺  n≥π(4−π)5×10−6≈539353.5P(\left\vert \hat\pi_n-\pi\right\vert \ge0.01)\le\frac{\pi(4-\pi)}{n\cdot10^{-4}}\le0.05\iff n\ge\frac{\pi(4-\pi)}{5\times10^{-6}}\approx539353.5

なので、最小の nn は 539354 である。2. 期待値と2乗の期待値は次のとおりである(前者は4分の1円の面積の4倍)。

E[g2(U)]=4∫011−u2 du=π,E[g2(U)2]=16∫01(1−u2) du=323E[g_2(U)]=4\int_0^1\sqrt{1-u^2}\,\mathrm{d} u=\pi,\qquad E[g_2(U)^2]=16\int_0^1(1-u^2)\,\mathrm{d} u=\frac{32}{3}

よって

V[g2(U)]=323−π2≈0.7971V[g_2(U)]=\frac{32}{3}-\pi^2\approx0.7971

である。必要な nn は分散に比例するので、比は 0.7971/2.6968≈0.2960.7971/2.6968\approx0.296、つまり約 3.4 分の1で済む。g1g_1 は「円の内か外か」という0か4の値しかとらない粗い関数で、vv の方向の積分を乱数に任せている。その方向について先に正確に積分した g2g_2 の方が、揺れが小さい。

経験分布関数と Glivenko–Cantelli の定理

X1,X2,…X_1,X_2,\dots を分布関数 FF の独立同分布の列とする。最初の nn 個の観測値から作る

Fn(x)=1n∑k=1n1{Xk≤x}=#{k≤n:Xk≤x}n(x∈R)(12.14)F_n(x)=\frac1n\sum_{k=1}^{n}\mathbf 1_{\{X_k\le x\}}=\frac{\#\{k\le n:X_k\le x\}}{n}\qquad(x\in\mathbb{R})\tag{12.14}

を経験分布関数と呼ぶ。これは観測値の各点で高さ 1/n1/n ずつ跳ぶ階段関数である。それ自体が1つの分布関数(観測値に等しい重みを置いた離散分布の分布関数)でもある。

点 xx を固定すると、1{Xk≤x}\mathbf 1_{\{X_k\le x\}} は独立同分布で、期待値がその点の分布関数の値に等しい有界な確率変数である。よって強法則から、Fn(x)→F(x)F_n(x)\to F(x) a.s. である。同じく 1{Xk<x}\mathbf 1_{\{X_k<x\}} に強法則を使うと、左極限についても次が成り立つ。

Fn(x−)=1n#{k≤n:Xk<x}→F(x−)=P(X1<x)a.s.F_n(x-)=\frac1n\#\{k\le n:X_k<x\}\to F(x-)=P(X_1<x)\quad\text{a.s.}

しかし確率 1 の事象は点ごとに違い、点は非可算個ある。よってこのままでは「すべての点で同時に」収束すると結論することはできない。分布関数の単調性を使うと、有限個の点での収束から一様収束が得られる。

定理 12.12(Glivenko–Cantelli の定理)

X1,X2,…X_1,X_2,\dots が、分布関数 FF の独立同分布の列とする。このとき

Dn=sup⁡x∈R∣Fn(x)−F(x)∣→0a.s.D_n=\sup_{x\in\mathbb{R}}\left\vert F_n(x)-F(x)\right\vert \to0\quad\text{a.s.}

証明

自然数 mm を固定する。第3章 §3.5 の一般化逆関数 F−1(u)=inf⁡{x:F(x)≥u}F^{-1}(u)=\inf\{x:F(x)\ge u\} を使い、分点を次のように置く。

tj=F−1(j/m)(j=1,…,m−1)t_j=F^{-1}(j/m)\qquad(j=1,\dots,m-1)

さらに t0=−∞t_0=-\infty、tm=+∞t_m=+\infty とする。端点では次のように約束する。

F(−∞)=Fn(−∞)=0,F(+∞−)=Fn(+∞−)=1F(-\infty)=F_n(-\infty)=0,\qquad F(+\infty-)=F_n(+\infty-)=1

0<j/m<10<j/m<1 だから、分点 t1≤⋯≤tm−1t_1\le\dots\le t_{m-1} は有限の実数である。第3章の補題 F−1(u)≤x  ⟺  u≤F(x)F^{-1}(u)\le x\iff u\le F(x) から、次の2つが成り立つ。

  • x=tjx=t_j とすると、j/m≤F(tj)j/m\le F(t_j) である。
  • x<tjx<t_j なら、F−1(j/m)>xF^{-1}(j/m)>x である。よって F(x)<j/mF(x)<j/m である。左から近づけて、F(tj−)≤j/mF(t_j-)\le j/m を得る。

2つを合わせると、j=1,…,mj=1,\dots,m で次が成り立つ(両端では約束した値で確かめられる)。

F(tj−)−F(tj−1)≤jm−j−1m=1mF(t_j-)-F(t_{j-1})\le\frac jm-\frac{j-1}{m}=\frac1m

有限個の点での最大のずれを

Δn=max⁡0≤j≤m(∣Fn(tj)−F(tj)∣+∣Fn(tj−)−F(tj−)∣)\Delta_n=\max_{0\le j\le m}\Bigl(\left\vert F_n(t_j)-F(t_j)\right\vert +\left\vert F_n(t_j-)-F(t_j-)\right\vert \Bigr)

と置く(両端の項は約束により 0)。各項は強法則によって 0 に近づく。よって 2(m−1)2(m-1) 個の確率 1 の事象の共通部分の上で、Δn→0\Delta_n\to0 である。

任意の実数は、ある jj について tj−1≤x<tjt_{j-1}\le x<t_j を満たす(空の区間は飛ばす)。2つの分布関数は単調非減少だから

Fn(x)≤Fn(tj−)≤F(tj−)+Δn≤F(tj−1)+1m+Δn≤F(x)+1m+Δn,F_n(x)\le F_n(t_j-)\le F(t_j-)+\Delta_n\le F(t_{j-1})+\frac1m+\Delta_n\le F(x)+\frac1m+\Delta_n,

Fn(x)≥Fn(tj−1)≥F(tj−1)−Δn≥F(tj−)−1m−Δn≥F(x)−1m−ΔnF_n(x)\ge F_n(t_{j-1})\ge F(t_{j-1})-\Delta_n\ge F(t_j-)-\frac1m-\Delta_n\ge F(x)-\frac1m-\Delta_n

である。したがって Dn≤1m+ΔnD_n\le\frac1m+\Delta_n で、lim sup⁡nDn≤1m\limsup_nD_n\le\frac1m a.s. となる。m=1,2,…m=1,2,\dots に対する可算個の確率 1 の事象の共通部分の上で、上極限は 0 である。

分布関数が連続なら、DnD_n は観測値を小さい順に並べた X(1)≤⋯≤X(n)X_{(1)}\le\dots\le X_{(n)} を使って、有限回の計算で求まる。経験分布関数は区間 [X(i),X(i+1))[X_{(i)},X_{(i+1)}) の上で一定値 i/ni/n をとる。真の分布関数は単調なので、ずれの上限は跳びの直前か直後で達成される。

Dn=max⁡1≤i≤nmax⁡(in−F(X(i)), F(X(i))−i−1n)(12.15)D_n=\max_{1\le i\le n}\max\Bigl(\frac in-F(X_{(i)}),\ F(X_{(i)})-\frac{i-1}{n}\Bigr)\tag{12.15}

図

図 12.3 Ex(1)\mathrm{Ex}(1) からの標本の経験分布関数 F20F_{20}(赤)と F200F_{200}(青)、および真の分布関数 FF(灰色の太線)。この見本では D20≈0.207D_{20}\approx0.207、D200≈0.075D_{200}\approx0.075 で、nn を増やすと階段が FF に一様に近づく。

収束の速さ

  • 各点のずれ。固定した点では nFn(x)∼Bin(n,F(x))nF_n(x)\sim\mathrm{Bin}(n,F(x)) である(確認テスト 12.4-1)。よって経験分布関数の値の標準偏差は次のとおりである。

F(x)(1−F(x))n≤12n\sqrt{\frac{F(x)(1-F(x))}n}\le\frac1{2\sqrt n}

  • 一様なずれ。DnD_n についても、Dvoretzky–Kiefer–Wolfowitz の不等式が成り立つ(定数 2 は P. Massart による)。

P(Dn>ε)≤2e−2nε2P(D_n>\varepsilon )\le2\mathrm{e}^{-2n\varepsilon ^2}

よって一様なずれも、およそ n−1/2n^{-1/2} の大きさである。

  • 極限分布。分布関数が連続なら、nDn\sqrt nD_n の分布は FF によらない極限分布(Kolmogorov 分布)に近づく。これは分布の当てはまりを調べる Kolmogorov–Smirnov 検定の基礎になる。

例題 12.8 小さな標本の DnD_n ★

オリジナル指数分布に従うと考えられる5個の観測値 0.2, 0.5, 0.9, 1.4, 2.3 がある。F(x)=1−e−xF(x)=1-\mathrm{e}^{-x} との一様なずれ D5D_5 を求め、上限が達成される位置を答えよ。

解答

観測値はすでに小さい順に並んでいる。F(X(i))=1−e−X(i)F(X_{(i)})=1-\mathrm{e}^{-X_{(i)}} を計算し、(12.15) の2つの量を並べると次の表になる(小数第4位まで)。

iiX(i)X_{(i)}F(X(i))F(X_{(i)})in−F(X(i))\frac in-F(X_{(i)})F(X(i))−i−1nF(X_{(i)})-\frac{i-1}{n}
10.20.18130.01870.1813
20.50.39350.00650.1935
30.90.59340.00660.1934
41.40.75340.04660.1534
52.30.89970.10030.0997

最大値は i=2i=2 の右の列の 0.1935 で、D5=1−e−0.5−0.2≈0.1935D_5=1-\mathrm{e}^{-0.5}-0.2\approx0.1935 である。これは点 0.5 の直前で、F5(0.5−)=0.2F_5(0.5-)=0.2 と F(0.5)=0.3935F(0.5)=0.3935 のあいだの差として達成される。真の分布関数は連続で、経験分布関数はそこで左極限をとる。よって上限は点 0.5 に左から近づく極限で達成され、最大値としてはとられない。

確認テスト

オリジナル

  1. 12.4-1 点 xx を固定すると、nFn(x)∼Bin(n,F(x))nF_n(x)\sim\mathrm{Bin}(n,F(x)) であることを説明せよ。また E[Fn(x)]E[F_n(x)] と V[Fn(x)]V[F_n(x)] を求めよ。
  2. 12.4-2 積分 I=∫01ex dxI=\int_0^1\mathrm{e}^x\,\mathrm{d} x を、次の推定値で推定する(UkU_k は独立な一様乱数)。

I^n=1n∑keUk\hat I_n=\frac1n\sum_k\mathrm{e}^{U_k}

分散 σ2=V[eU1]\sigma^2=V[\mathrm{e}^{U_1}] を求めよ。E[(I^n−I)2]≤0.001\sqrt{E[(\hat I_n-I)^2]}\le0.001 となる最小の nn を求めよ。3. 12.4-3 12.4-2 で、UU と 1−U1-U の組を使う次の推定値を考える(対称変量法)。

Iˇn=1n∑k=1n12(eUk+e1−Uk)\check I_n=\frac1n\sum_{k=1}^{n}\frac12\bigl(\mathrm{e}^{U_k}+\mathrm{e}^{1-U_k}\bigr)

分散 V[12(eU+e1−U)]V\bigl[\frac12(\mathrm{e}^{U}+\mathrm{e}^{1-U})\bigr] を求めよ。この推定値は関数の値を 2n2n 回計算する。同じ回数を使う I^2n\hat I_{2n} と分散を比べよ。4. 12.4-4 密度 ff と qq をとる。qq は集合 {x:g(x)f(x)≠0}\{x:g(x)f(x)\neq0\} の上で正とする。また ∫∣g∣f dx<∞\int\left\vert g\right\vert f\,\mathrm{d} x<\infty とする。密度 qq から独立に作った列による重点抽出の推定値を、I~n\tilde I_n とする。これが確率 1 で ∫gf dx\int gf\,\mathrm{d} x に収束することを示せ。

木下の勉強ステータス

木下はまだこの記事を勉強していません。

AI(Claude)が書いた教材を、木下が勉強しながら公開しています。式と数値は検算していますが、誤りが残っているかもしれません。誤りのご指摘・削除のご依頼をいただければ直します。 連絡先:support@tecktom.com

← AI生成教科書『基礎理論』の記事一覧へ