Read in English

集中不等式入門:Markov から McDiarmid まで

有限個のデータから作った量が期待値からどれだけ外れうるかを評価する、基本的な不等式とその使い分け

0. イントロ

確率論や統計学では、ランダムな量の値そのものよりも、その量が典型的な値からどの程度ずれうるかを知りたい場面がよくあります。

例として、独立同分布(independent and identically distributed; i.i.d.)な確率変数 X1,…,XnX_1, \dots, X_n の標本平均

Xˉn:=1n∑i=1nXi \bar{X}_n := \frac{1}{n} \sum_{i=1}^n X_i

を考えます。 E[∣X1∣]<∞\mathbb{E}[|X_1|] < \infty なら、大数の法則により、n→∞n \to \infty で Xˉn\bar{X}_n は期待値 μ:=E[X1]\mu := \mathbb{E}[X_1] に確率 11 で収束します。 しかし、実際のデータ解析では nn は有限です。 そこで知りたいのは、与えられた nn と ε>0\varepsilon > 0 に対して、次の確率がどれだけ小さいかです。

Pr⁡(∣Xˉn−μ∣≥ε) \Pr\left(|\bar{X}_n - \mu| \geq \varepsilon\right)

この確率を、nn、ε\varepsilon、分布の性質(値域や分散など)を使って上から評価する不等式を 集中不等式(concentration inequality) と呼びます。

中心極限定理も Xˉn\bar{X}_n のゆらぎを記述しますが、その主張は n→∞n \to \infty の極限における分布の形であり、有限の nn での誤差の大きさは含みません。 集中不等式は、有限の nn でそのまま成り立つ上界を与えます。

本記事で使う例:成功確率の推定

本記事では、次の問題を例にして各不等式を比較します。

例:成功確率の推定

成功確率 pp の試行を独立に nn 回行い、ii 回目が成功なら Xi=1X_i = 1、失敗なら Xi=0X_i = 0 とします。 pp を成功割合 p^:=1n∑i=1nXi\hat{p} := \frac{1}{n} \sum_{i=1}^n X_i で推定するとき、誤差が ε\varepsilon 以上になる確率を δ\delta 以下にするには、nn をいくつ以上にすればよいでしょうか。

条件は次の 2 つとし、それぞれ δ=0.05\delta = 0.05 と δ=10−6\delta = 10^{-6} の場合を考えます。

  • (A) p=0.5p = 0.5, ε=0.05\varepsilon = 0.05:1 回の試行の分散 p(1−p)p(1-p) が最大の 1/41/4 になる場合
  • (B) p=0.01p = 0.01, ε=0.005\varepsilon = 0.005:成功がまれで、分散 p(1−p)≈0.0099p(1-p) \approx 0.0099 が小さい場合

まず、(A) の条件で p^\hat{p} の分布を Python で調べます。 次のコードは、n=10,100,1000n = 10, 100, 1000 のそれぞれについて p^\hat{p} を 10510^5 回生成し、ヒストグラムを描きます。

concentration.py
import numpy as np
import matplotlib.pyplot as plt

rng = np.random.default_rng(0)
p, eps, trials = 0.5, 0.05, 100_000

for n in [10, 100, 1000]:
    # 成功確率 p の試行を n 回行ったときの成功割合を trials 回分生成する
    p_hat = rng.binomial(n, p, size=trials) / n
    # 誤差が eps 以上になった割合(1e-12 は浮動小数点の丸め誤差対策)
    miss = np.mean(np.abs(p_hat - p) >= eps - 1e-12)
    bins = (np.arange(n + 2) - 0.5) / n  # 各 k/n を中心とする幅 1/n のビン
    plt.hist(p_hat, bins=bins, density=True, histtype="step", lw=2,
             label=f"$n = {n}$ ({miss:.3f})")

plt.axvspan(p - eps, p + eps, color="gray", alpha=0.2)
plt.xlim(0.2, 0.8)
plt.xlabel(r"$\hat p$")
plt.ylabel("Density")
plt.legend(loc="upper left")
plt.show()
Image
図 1:(A) の条件(p = 0.5)での成功割合の分布。灰色の帯は |p̂ − p| < 0.05 の範囲、凡例の括弧内は誤差が 0.05 以上になった割合。

図 1 のように、nn を増やすと p^\hat{p} の分布は p=0.5p = 0.5 の周りに集中し、誤差が 0.050.05 以上になる割合は n=10n = 10 で 0.7520.752、n=100n = 100 で 0.3670.367、n=1000n = 1000 で 0.0020.002 と減少します。 集中不等式は、分布を細かく計算せずに、この割合の上界を与えます。

記事中にコードを載せていない図 2 と図 5 も含め、本記事のすべての図は code/concentration/make_figures.py で再生成できます。

本記事のロードマップ

各節で扱う不等式と、その不等式が使う情報は次のとおりです。

  1. Markov の不等式(第 2 節):非負性と期待値
  2. Chebyshev の不等式(第 3 節):分散
  3. Chernoff 法(第 4 節):積率母関数
  4. Hoeffding の不等式(第 5 節):独立性と値域
  5. Bernstein の不等式(第 6 節):独立性、値域、分散
  6. McDiarmid の不等式(第 7 節):独立性と、1 つの入力を変えたときの出力の変化の上限

第 8 節で例の結果を比較し、第 9 節で仮定が満たされない場合の道具を紹介します。 後の節の不等式ほど常に強いわけではありません。 どの不等式が小さい上界を与えるかは、使える仮定と問題の条件によって変わります。

1. 記法と基本事項

記法
  • Pr⁡(A)\Pr(A) は事象 AA の確率、E[X]\mathbb{E}[X] は確率変数 XX の期待値、Var⁡(X):=E[(X−E[X])2]\operatorname{Var}(X) := \mathbb{E}[(X - \mathbb{E}[X])^2] は分散を表します。
  • 1A\mathbf{1}_A は事象 AA の指示関数で、AA が起きれば 11、起きなければ 00 をとります。
  • 「X≥0X \geq 0 a.s.」は、確率 11 で X≥0X \geq 0 が成り立つこと(almost surely)を表します。
  • 確率変数 X1,…,XnX_1, \dots, X_n の和を Sn:=∑i=1nXiS_n := \sum_{i=1}^n X_i、標本平均を Xˉn:=Sn/n\bar{X}_n := S_n / n と書きます。
  • log⁡\log は自然対数を表します。

裾確率と union bound

確率変数 XX が期待値から t>0t > 0 以上離れる確率を 裾確率(tail probability) と呼びます。 離れる向きによって、次の 3 種類があります。

  • 上側の裾確率:Pr⁡(X−E[X]≥t)\Pr(X - \mathbb{E}[X] \geq t)
  • 下側の裾確率:Pr⁡(X−E[X]≤−t)\Pr(X - \mathbb{E}[X] \leq -t)
  • 両側の裾確率:Pr⁡(∣X−E[X]∣≥t)\Pr(|X - \mathbb{E}[X]| \geq t)

集中不等式は、これらの裾確率の上界(tail bound)を与えます。 任意の事象 A,BA, B について Pr⁡(A∪B)≤Pr⁡(A)+Pr⁡(B)\Pr(A \cup B) \leq \Pr(A) + \Pr(B) が成り立つので(union bound)、両側の裾確率は上側と下側の裾確率の上界の和で抑えられます。 そのため、上側と下側で同じ上界が成り立つ場合、両側の上界には係数 22 が付きます。

2. Markov の不等式

Markov の不等式は、非負性と期待値だけから裾確率を評価します。 本記事の残りの不等式は、いずれも証明のどこかでこの不等式を使います。

定理 1(Markov の不等式)

X≥0X \geq 0 a.s. かつ E[X]<∞\mathbb{E}[X] < \infty とします。 このとき、任意の t>0t > 0 に対して

Pr⁡(X≥t)≤E[X]t \Pr(X \geq t) \leq \frac{\mathbb{E}[X]}{t}

が成り立ちます。

証明 X≥0X \geq 0 a.s. なので、確率 11 で X≥t1{X≥t}X \geq t \mathbf{1}_{\{X \geq t\}} が成り立ちます(X≥tX \geq t のとき右辺は tt、それ以外のとき右辺は 00 です)。 両辺の期待値をとると E[X]≥tPr⁡(X≥t)\mathbb{E}[X] \geq t \Pr(X \geq t) となり、両辺を tt で割ると定理 1 を得ます。□\square

t=c E[X]t = c\, \mathbb{E}[X](c>0c > 0)とおくと、Pr⁡(X≥c E[X])≤1/c\Pr(X \geq c\, \mathbb{E}[X]) \leq 1/c です。 例えば、非負の確率変数が期待値の 1010 倍以上になる確率は 1/101/10 以下です。 仮定が弱い代わりに、上界は tt について 1/t1/t の速さでしか減少しません。

指示関数を非負の関数で抑える

証明で使ったのは、指示関数 1{X≥t}\mathbf{1}_{\{X \geq t\}} を非負の関数で上から抑え、その期待値をとる、という手順です。 一般に、確率変数 YY と非負の関数 φ\varphi が、YY のとりうるすべての値 yy で φ(y)≥1{y≥t}\varphi(y) \geq \mathbf{1}_{\{y \geq t\}} を満たせば、

Pr⁡(Y≥t)=E[1{Y≥t}]≤E[φ(Y)] \Pr(Y \geq t) = \mathbb{E}\left[\mathbf{1}_{\{Y \geq t\}}\right] \leq \mathbb{E}[\varphi(Y)]

が成り立ちます。 φ\varphi の選び方によって、異なる不等式が得られます(図 2)。

Image
図 2:指示関数 1{y ≥ t}(黒、t = 1)を上から抑える非負の関数。(a) は t の近く、(b) は広い範囲で、(b) の破線の枠が (a) の範囲。Markov の不等式は y/t(y ≥ 0 の場合)、Chebyshev の不等式は y²/t²、Chernoff 法は exp(λ(y − t)) を使う。
  • Markov の不等式(第 2 節):非負の Y=XY = X に φ(y)=y/t\varphi(y) = y/t を使います。
  • Chebyshev の不等式(第 3 節):Y=X−E[X]Y = X - \mathbb{E}[X] に φ(y)=y2/t2\varphi(y) = y^2/t^2 を使います。この φ\varphi は y≤−ty \leq -t でも 11 以上なので、両側の裾確率を一度に抑えます。
  • Chernoff 法(第 4 節):Y=X−E[X]Y = X - \mathbb{E}[X] に φ(y)=eλ(y−t)\varphi(y) = e^{\lambda(y - t)}(λ>0\lambda > 0)を使います。

YY が値をとりやすい範囲で φ\varphi が指示関数に近いほど、上界は小さくなります。 Chernoff 法では λ\lambda によって φ\varphi の形を調整できます。 図 2 (a) の tt の近くでは、λ=4\lambda = 4 の曲線は λ=1.5\lambda = 1.5 の曲線と比べて、y<ty < t で指示関数に近い代わりに、y>ty > t で速く増加します。 第 4 節では、この λ\lambda を最適化します。

図 2 (b) の広い範囲では、遠くでの増え方の違いが分かります。 Markov の不等式の y/ty/t は yy の 1 次関数で、Chebyshev の不等式の y2/t2y^2/t^2 は 00 から左右どちらに離れても増加します。 Chernoff 法の eλ(y−t)e^{\lambda(y - t)} は、yy が小さくなるほど 00 に近づく一方、y>ty > t では指数関数的に増加します。 そのため、Chernoff 法で E[φ(Y)]\mathbb{E}[\varphi(Y)] が有限になるには、YY の積率母関数(第 4 節)が有限であること、つまり YY の上側の裾が指数関数以上の速さで減衰することが必要です。

3. Chebyshev の不等式

Chebyshev の不等式は、分散を使って期待値の周りへの集中を評価します。

定理 2(Chebyshev の不等式)

XX の分散 Var⁡(X)\operatorname{Var}(X) が有限とします。 このとき、任意の t>0t > 0 に対して

Pr⁡(∣X−E[X]∣≥t)≤Var⁡(X)t2 \Pr(|X - \mathbb{E}[X]| \geq t) \leq \frac{\operatorname{Var}(X)}{t^2}

が成り立ちます。

証明 非負の確率変数 (X−E[X])2(X - \mathbb{E}[X])^2 に Markov の不等式を適用すると、

Pr⁡(∣X−E[X]∣≥t)=Pr⁡((X−E[X])2≥t2)≤E[(X−E[X])2]t2=Var⁡(X)t2 \begin{aligned} \Pr(|X - \mathbb{E}[X]| \geq t) &= \Pr\left((X - \mathbb{E}[X])^2 \geq t^2\right) \\ &\leq \frac{\mathbb{E}\left[(X - \mathbb{E}[X])^2\right]}{t^2} = \frac{\operatorname{Var}(X)}{t^2} \end{aligned}

を得ます。□\square

標本平均への適用

X1,…,XnX_1, \dots, X_n が互いに無相関で、期待値 μ\mu と分散 σ2\sigma^2 が共通とします。 このとき Var⁡(Xˉn)=σ2/n\operatorname{Var}(\bar{X}_n) = \sigma^2/n なので、定理 2 より

Pr⁡(∣Xˉn−μ∣≥ε)≤σ2nε2 \Pr(|\bar{X}_n - \mu| \geq \varepsilon) \leq \frac{\sigma^2}{n\varepsilon^2}

です。 Var⁡(Xˉn)\operatorname{Var}(\bar{X}_n) の計算に使ったのは分散の加法性だけなので、独立性より弱い無相関性で足ります。

例への適用 1 回の試行の分散は σ2=p(1−p)\sigma^2 = p(1-p) なので、右辺を δ\delta 以下にするには

n≥p(1−p)ε2δ n \geq \frac{p(1-p)}{\varepsilon^2 \delta}

とすれば十分です。 (A) で δ=0.05\delta = 0.05 なら n≥2,000n \geq 2{,}000 です。 必要な nn は 1/δ1/\delta に比例するため、δ=10−6\delta = 10^{-6} では n≥108n \geq 10^8 になります。

4. Chernoff 法

Chebyshev の不等式の上界は tt の多項式でしか減少しません。 指数関数を使うと、tt について指数的に減少する上界が得られます。 この手法を Chernoff 法、または Cramér–Chernoff 法と呼びます(Chernoff, 1952; Boucheron et al., 2013, §2.2)。

一般形

λ∈R\lambda \in \mathbb{R} の関数 E[eλX]\mathbb{E}[e^{\lambda X}] を、XX の 積率母関数(moment generating function; MGF) と呼びます。 本記事では、中心化した確率変数の MGF の対数

ψX(λ):=log⁡E[eλ(X−E[X])] \psi_X(\lambda) := \log \mathbb{E}\left[e^{\lambda (X - \mathbb{E}[X])}\right]

を使います。 λ>0\lambda > 0 で ψX(λ)\psi_X(\lambda) が有限なら、x↦eλxx \mapsto e^{\lambda x} は単調増加なので、Markov の不等式より

Pr⁡(X−E[X]≥t)=Pr⁡(eλ(X−E[X])≥eλt)≤e−λt E[eλ(X−E[X])]=exp⁡(−λt+ψX(λ)) \begin{aligned} \Pr(X - \mathbb{E}[X] \geq t) &= \Pr\left(e^{\lambda (X - \mathbb{E}[X])} \geq e^{\lambda t}\right) \\ &\leq e^{-\lambda t}\, \mathbb{E}\left[e^{\lambda (X - \mathbb{E}[X])}\right] = \exp\left(-\lambda t + \psi_X(\lambda)\right) \end{aligned}

が成り立ちます。 この式は ψX(λ)\psi_X(\lambda) が有限なすべての λ>0\lambda > 0 で成り立つので、右辺を λ\lambda について最小化して

Pr⁡(X−E[X]≥t)≤exp⁡(−sup⁡λ>0{λt−ψX(λ)}) \Pr(X - \mathbb{E}[X] \geq t) \leq \exp\left(-\sup_{\lambda > 0} \left\{\lambda t - \psi_X(\lambda)\right\}\right)

を得ます。 この上界を Chernoff bound と呼びます。 ψX\psi_X を上から評価できれば、具体的な上界が得られます。 下側の裾確率は、−X-X に同じ議論を適用して評価します。

独立な確率変数の和

指数関数を使うと、独立な確率変数の和の MGF は、各変数の MGF の積に分解されます。 X1,…,XnX_1, \dots, X_n が独立なら

E[eλ(Sn−E[Sn])]=∏i=1nE[eλ(Xi−E[Xi])] \mathbb{E}\left[e^{\lambda (S_n - \mathbb{E}[S_n])}\right] = \prod_{i=1}^n \mathbb{E}\left[e^{\lambda (X_i - \mathbb{E}[X_i])}\right]

であり、両辺の対数をとると ψSn(λ)=∑i=1nψXi(λ)\psi_{S_n}(\lambda) = \sum_{i=1}^n \psi_{X_i}(\lambda) です。 したがって、各 XiX_i の ψXi\psi_{X_i} を評価すれば、和 SnS_n の裾確率を評価できます。 第 5 節の Hoeffding の不等式と第 6 節の Bernstein の不等式は、この手順で導かれます。

sub-Gaussian

定義:sub-Gaussian

ある ν>0\nu > 0 が存在して、すべての λ∈R\lambda \in \mathbb{R} で

ψX(λ)≤νλ22 \psi_X(\lambda) \leq \frac{\nu \lambda^2}{2}

が成り立つとき、XX は分散パラメータ ν\nu の sub-Gaussian であるといいます。

分散 ν\nu の正規分布に従う確率変数では、ψX(λ)=νλ2/2\psi_X(\lambda) = \nu\lambda^2/2 が等号で成り立ちます。 つまり sub-Gaussian とは、中心化した MGF が正規分布の MGF 以下に収まる確率変数です。 sub-Gaussian な XX に Chernoff 法を適用すると、λt−νλ2/2\lambda t - \nu\lambda^2/2 は λ=t/ν\lambda = t/\nu で最大値 t2/(2ν)t^2/(2\nu) をとるので、

Pr⁡(X−E[X]≥t)≤exp⁡(−t22ν) \Pr(X - \mathbb{E}[X] \geq t) \leq \exp\left(-\frac{t^2}{2\nu}\right)

を得ます。 定義は λ<0\lambda < 0 も含むので、下側の裾確率にも同じ上界が成り立ち、両側では係数 22 が付きます(Boucheron et al., 2013, §2.3)。

また、独立な XiX_i がそれぞれ分散パラメータ νi\nu_i の sub-Gaussian なら、ψSn=∑iψXi\psi_{S_n} = \sum_i \psi_{X_i} より、SnS_n は分散パラメータ ∑i=1nνi\sum_{i=1}^n \nu_i の sub-Gaussian です。 第 5 節では、この性質を使って Hoeffding の不等式を導きます。

Bernoulli 確率変数の和に対する相対誤差の上界

Chernoff 法を Bernoulli 確率変数の和に適用すると、期待値に対する相対誤差の上界が得られます(Mitzenmacher & Upfal, 2017, 第 4 章)。

定理 3(相対誤差の Chernoff bound)

X1,…,XnX_1, \dots, X_n を独立な確率変数とし、Xi∈{0,1}X_i \in \{0, 1\}、Pr⁡(Xi=1)=pi\Pr(X_i = 1) = p_i とします。 m:=E[Sn]=∑i=1npim := \mathbb{E}[S_n] = \sum_{i=1}^n p_i とおくと、任意の η>0\eta > 0 に対して

Pr⁡(Sn≥(1+η)m)≤(eη(1+η)1+η)m≤exp⁡(−η2m2+η) \begin{aligned} \Pr\left(S_n \geq (1 + \eta) m\right) &\leq \left(\frac{e^{\eta}}{(1 + \eta)^{1 + \eta}}\right)^m \\ &\leq \exp\left(-\frac{\eta^2 m}{2 + \eta}\right) \end{aligned}

が成り立ちます。 また、0<η<10 < \eta < 1 に対して

Pr⁡(Sn≤(1−η)m)≤exp⁡(−η2m2) \Pr\left(S_n \leq (1 - \eta) m\right) \leq \exp\left(-\frac{\eta^2 m}{2}\right)

が成り立ちます。

1 つ目の式の 2 番目の不等号は、η≥0\eta \geq 0 で成り立つ log⁡(1+η)≥2η/(2+η)\log(1 + \eta) \geq 2\eta/(2 + \eta) から従います。 この定理は、誤差を期待値 mm との比 η\eta で測ります。 mm が nn に比べて小さいとき、第 5 節の Hoeffding の不等式より小さい上界を与えることがあります(第 8 節)。

例への適用 pi=pp_i = p なら m=npm = np です。 事象 ∣p^−p∣≥ε|\hat{p} - p| \geq \varepsilon は、相対誤差 η:=ε/p\eta := \varepsilon/p が上側または下側に生じる事象です。 η<1\eta < 1 のとき、下側の指数 η2m/2\eta^2 m/2 は上側の指数 η2m/(2+η)\eta^2 m/(2 + \eta) 以上なので、両側を合わせて

Pr⁡(∣p^−p∣≥ε)≤2exp⁡(−η2np2+η) \Pr(|\hat{p} - p| \geq \varepsilon) \leq 2\exp\left(-\frac{\eta^2 np}{2 + \eta}\right)

です。 右辺を δ\delta 以下にする条件は n≥(2+η)log⁡(2/δ)/(η2p)n \geq (2 + \eta)\log(2/\delta) / (\eta^2 p) で、(B)(η=0.5\eta = 0.5)で δ=0.05\delta = 0.05 なら n≥3,689n \geq 3{,}689 です。

5. Hoeffding の不等式

独立な確率変数がそれぞれ既知の有界区間に値をとるとき、Chernoff 法から Hoeffding の不等式が導かれます(Hoeffding, 1963)。 鍵になるのは、有界な確率変数が sub-Gaussian であることを示す次の補題です。

補題(Hoeffding の補題)

a≤X≤ba \leq X \leq b a.s. なら、すべての λ∈R\lambda \in \mathbb{R} で

ψX(λ)≤λ2(b−a)28 \psi_X(\lambda) \leq \frac{\lambda^2 (b - a)^2}{8}

が成り立ちます。 つまり、XX は分散パラメータ (b−a)2/4(b - a)^2/4 の sub-Gaussian です。

証明は Boucheron et al. (2013) の第 2 章を参照してください。

定理 4(Hoeffding の不等式)

X1,…,XnX_1, \dots, X_n を独立な確率変数とし、各 ii で ai≤Xi≤bia_i \leq X_i \leq b_i a.s. とします。 このとき、任意の t>0t > 0 に対して

Pr⁡(Sn−E[Sn]≥t)≤exp⁡(−2t2∑i=1n(bi−ai)2) \Pr(S_n - \mathbb{E}[S_n] \geq t) \leq \exp\left(-\frac{2t^2}{\sum_{i=1}^n (b_i - a_i)^2}\right)

が成り立ちます。 下側の裾確率にも同じ上界が成り立ち、両側の裾確率の上界は右辺の 2 倍です。

証明 Hoeffding の補題より、各 XiX_i は分散パラメータ (bi−ai)2/4(b_i - a_i)^2/4 の sub-Gaussian です。 第 4 節で見たように、独立な和 SnS_n は分散パラメータ ν:=∑i=1n(bi−ai)2/4\nu := \sum_{i=1}^n (b_i - a_i)^2/4 の sub-Gaussian なので、

Pr⁡(Sn−E[Sn]≥t)≤exp⁡(−t22ν)=exp⁡(−2t2∑i=1n(bi−ai)2) \begin{aligned} \Pr(S_n - \mathbb{E}[S_n] \geq t) &\leq \exp\left(-\frac{t^2}{2\nu}\right) \\ &= \exp\left(-\frac{2t^2}{\sum_{i=1}^n (b_i - a_i)^2}\right) \end{aligned}

を得ます。□\square

標本平均と必要な標本数

各 Xi∈[a,b]X_i \in [a, b] a.s. で、期待値 μ\mu が共通なら、定理 4 で t=nεt = n\varepsilon とおいて

Pr⁡(∣Xˉn−μ∣≥ε)≤2exp⁡(−2nε2(b−a)2) \Pr(|\bar{X}_n - \mu| \geq \varepsilon) \leq 2\exp\left(-\frac{2n\varepsilon^2}{(b - a)^2}\right)

を得ます。 ε\varepsilon を固定すると、この上界は nn について指数的に減少します。 第 3 節の Chebyshev の上界 σ2/(nε2)\sigma^2/(n\varepsilon^2) は、1/n1/n の速さでしか減少しません。

右辺を δ\delta とおいて解くと、次の 2 つの形が得られます。

  • n≥(b−a)22ε2log⁡2δn \geq \dfrac{(b - a)^2}{2\varepsilon^2} \log\dfrac{2}{\delta} なら、Pr⁡(∣Xˉn−μ∣≥ε)≤δ\Pr(|\bar{X}_n - \mu| \geq \varepsilon) \leq \delta が成り立ちます。
  • 任意の nn について、確率 1−δ1 - \delta 以上で ∣Xˉn−μ∣<(b−a)log⁡(2/δ)2n|\bar{X}_n - \mu| < (b - a)\sqrt{\dfrac{\log(2/\delta)}{2n}} が成り立ちます。

例への適用 Xi∈[0,1]X_i \in [0, 1] なので、条件は n≥log⁡(2/δ)/(2ε2)n \geq \log(2/\delta)/(2\varepsilon^2) です。 (A) で δ=0.05\delta = 0.05 なら n≥738n \geq 738、δ=10−6\delta = 10^{-6} でも n≥2,902n \geq 2{,}902 です。 必要な nn は log⁡(1/δ)\log(1/\delta) に比例して増えるので、1/δ1/\delta に比例して増える Chebyshev の不等式との差は、δ\delta が小さいほど広がります。 一方、(B) では δ=0.05\delta = 0.05 でも n≥73,778n \geq 73{,}778 が必要です。 Hoeffding の不等式は値域 [0,1][0, 1] しか使わないため、(B) の分散 p(1−p)≈0.0099p(1-p) \approx 0.0099 が、値域 [0,1][0, 1] の確率変数の分散の最大値 1/41/4 の約 1/251/25 であることを反映できません。 この点を改善するのが、第 6 節の Bernstein の不等式です。

値域は観測値ではなく、分布について既知の値を使う

定理 4 の ai,bia_i, b_i は、分布について事前に分かっている値域です。 手元の標本で観測された最小値 min⁡iXi\min_i X_i と最大値 max⁡iXi\max_i X_i を代わりに使うと、まだ観測されていない値の可能性を無視することになり、上界は保証されません。

6. Bernstein の不等式

Hoeffding の不等式は値域しか使いません。 値域が広くても、ほとんどの値が期待値の近くに集まる確率変数では、分散も使う Bernstein の不等式がより小さい上界を与えます(Boucheron et al., 2013, §2.8)。

定理 5(Bernstein の不等式)

X1,…,XnX_1, \dots, X_n を独立な確率変数とし、ある M>0M > 0 について、各 ii で ∣Xi−E[Xi]∣≤M|X_i - \mathbb{E}[X_i]| \leq M a.s. とします。 V:=∑i=1nVar⁡(Xi)V := \sum_{i=1}^n \operatorname{Var}(X_i) とおくと、任意の t>0t > 0 に対して

Pr⁡(Sn−E[Sn]≥t)≤exp⁡(−t22(V+Mt/3)) \Pr(S_n - \mathbb{E}[S_n] \geq t) \leq \exp\left(-\frac{t^2}{2(V + Mt/3)}\right)

が成り立ちます。 下側の裾確率にも同じ上界が成り立ち、両側の裾確率の上界は右辺の 2 倍です。

2 つの減衰の速さ

分母の V+Mt/3V + Mt/3 の 2 つの項のどちらが大きいかで、上界の減衰の速さが変わります。 V+Mt/3≤2max⁡{V,Mt/3}V + Mt/3 \leq 2\max\{V, Mt/3\} より、

exp⁡(−t22(V+Mt/3))≤exp⁡(−min⁡{t24V,3t4M}) \exp\left(-\frac{t^2}{2(V + Mt/3)}\right) \leq \exp\left(-\min\left\{\frac{t^2}{4V}, \frac{3t}{4M}\right\}\right)

が成り立ちます。

  • t≤3V/Mt \leq 3V/M のとき、指数は t2/(4V)t^2/(4V) 以上です。上界は、分散 VV の正規分布と同じく t2t^2 に比例する指数で減衰します。
  • t>3V/Mt > 3V/M のとき、指数は 3t/(4M)3t/(4M) 以上です。上界は、指数分布と同じく tt に比例する指数で減衰します。

標本平均と Hoeffding の不等式との比較

X1,…,XnX_1, \dots, X_n が i.i.d. で、E[Xi]=μ\mathbb{E}[X_i] = \mu、Var⁡(Xi)=σ2\operatorname{Var}(X_i) = \sigma^2、∣Xi−μ∣≤M|X_i - \mu| \leq M a.s. とします。 定理 5 に V=nσ2V = n\sigma^2、t=nεt = n\varepsilon を代入すると、

Pr⁡(∣Xˉn−μ∣≥ε)≤2exp⁡(−nε22(σ2+Mε/3)) \Pr(|\bar{X}_n - \mu| \geq \varepsilon) \leq 2\exp\left(-\frac{n\varepsilon^2}{2(\sigma^2 + M\varepsilon/3)}\right)

を得ます。 Xi∈[a,b]X_i \in [a, b] のとき、分散は最大で (b−a)2/4(b - a)^2/4 です。 上式の σ2\sigma^2 をこの最大値で置き換え、Mε/3M\varepsilon/3 を無視すると、指数は 2nε2/(b−a)22n\varepsilon^2/(b - a)^2 となり、第 5 節の Hoeffding の上界の指数と一致します。 つまり、Hoeffding の不等式は分散が最大の場合を想定した上界と見なせます。 2 つの指数を比べると、σ2+Mε/3<(b−a)2/4\sigma^2 + M\varepsilon/3 < (b - a)^2/4 のとき、Bernstein の上界のほうが小さくなります。

例への適用 σ2=p(1−p)\sigma^2 = p(1-p)、M=max⁡{p,1−p}M = \max\{p, 1 - p\} とすると、条件は

n≥2(σ2+Mε/3)ε2log⁡2δ n \geq \frac{2(\sigma^2 + M\varepsilon/3)}{\varepsilon^2} \log\frac{2}{\delta}

です。 (B) で δ=0.05\delta = 0.05 なら n≥3,409n \geq 3{,}409 で、Hoeffding の不等式の 73,77873{,}778 の約 1/221/22 です。 (A) では σ2=1/4\sigma^2 = 1/4 が最大値なので、n≥763n \geq 763 となり、Hoeffding の不等式の 738738 よりわずかに大きくなります。

7. McDiarmid の不等式

第 5 節と第 6 節では、確率変数の和を扱いました。 McDiarmid の不等式(有界差分不等式、bounded differences inequality)は、和に限らず、独立な確率変数の関数 f(X1,…,Xn)f(X_1, \dots, X_n) を扱います(McDiarmid, 1989; Boucheron et al., 2013, §6.1)。

定義:有界差分条件

関数 f:X1×⋯×Xn→Rf: \mathcal{X}_1 \times \cdots \times \mathcal{X}_n \to \mathbb{R} と定数 c1,…,cn≥0c_1, \dots, c_n \geq 0 が、すべての ii と、ii 番目の入力だけが異なる任意の 2 点について

∣f(x1,…,xi,…,xn)−f(x1,…,xi′,…,xn)∣≤ci \left|f(x_1, \dots, x_i, \dots, x_n) - f(x_1, \dots, x_i', \dots, x_n)\right| \leq c_i

を満たすとき、ff は 有界差分条件(bounded differences condition) を満たすといいます。

有界差分条件は、ii 番目の入力だけを変えても出力は cic_i 以下しか変わらない、という安定性を表します。

定理 6(McDiarmid の不等式)

X1,…,XnX_1, \dots, X_n を独立な確率変数とし、XiX_i は Xi\mathcal{X}_i に値をとるとします。 ff が定数 c1,…,cnc_1, \dots, c_n で有界差分条件を満たすとき、Z:=f(X1,…,Xn)Z := f(X_1, \dots, X_n) について、任意の t>0t > 0 に対して

Pr⁡(Z−E[Z]≥t)≤exp⁡(−2t2∑i=1nci2) \Pr(Z - \mathbb{E}[Z] \geq t) \leq \exp\left(-\frac{2t^2}{\sum_{i=1}^n c_i^2}\right)

が成り立ちます。 下側の裾確率にも同じ上界が成り立ち、両側の裾確率の上界は右辺の 2 倍です。

Hoeffding の不等式との関係

ff が和 f(x1,…,xn)=∑i=1nxif(x_1, \dots, x_n) = \sum_{i=1}^n x_i で、xi∈[ai,bi]x_i \in [a_i, b_i] の場合を考えます。 ii 番目の入力を変えたときの和の変化は bi−aib_i - a_i 以下なので、ci=bi−aic_i = b_i - a_i を定理 6 に代入すると、定理 4(Hoeffding の不等式)と同じ式になります。 McDiarmid の不等式は、Hoeffding の不等式の「独立な有界確率変数の和」という仮定を、「各入力の変化に対して安定な関数」に広げた結果です。

例:経験分布関数の一様な誤差

和ではない関数の例として、X1,…,XnX_1, \dots, X_n が i.i.d. で累積分布関数 FF に従うとき、経験分布関数 Fn(x):=1n∑i=1n1{Xi≤x}F_n(x) := \frac{1}{n} \sum_{i=1}^n \mathbf{1}_{\{X_i \leq x\}} と FF の差の最大値

Z:=sup⁡x∈R∣Fn(x)−F(x)∣ Z := \sup_{x \in \mathbb{R}} |F_n(x) - F(x)|

を考えます。 ZZ は Kolmogorov–Smirnov 統計量と呼ばれ、標本が分布 FF に従うかどうかの検定に使われます。 XiX_i を 1 個変えると、各 xx で Fn(x)F_n(x) は 1/n1/n 以下しか変わらないので、その上限 ZZ も 1/n1/n 以下しか変わりません。 ci=1/nc_i = 1/n より ∑i=1nci2=1/n\sum_{i=1}^n c_i^2 = 1/n なので、定理 6 より

Pr⁡(Z−E[Z]≥t)≤e−2nt2 \Pr(Z - \mathbb{E}[Z] \geq t) \leq e^{-2nt^2}

です。 ZZ の分布を有限の nn で正確に求めるのは容易ではありませんが、この上界は FF によらず成り立ちます。

この上界を Python で確かめます。 次のコードは、一様分布 Uniform(0,1)\mathrm{Uniform}(0, 1)(F(x)=xF(x) = x)から n=100,1000n = 100, 1000 個の標本を 10410^4 回生成して ZZ を計算し、Pr⁡(Z−E[Z]≥t)\Pr(Z - \mathbb{E}[Z] \geq t) を推定します。 E[Z]\mathbb{E}[Z] には 10410^4 回の平均を使います。

mcdiarmid.py
import numpy as np
import matplotlib.pyplot as plt

rng = np.random.default_rng(0)
reps = 10_000
s = np.linspace(0, 1.5, 151)  # 横軸は sqrt(n) * t

for n in [100, 1000]:
    # Uniform(0, 1) の標本を reps 組生成し、各組を昇順に並べる
    u = np.sort(rng.random((reps, n)), axis=1)
    i = np.arange(1, n + 1)
    # Z = sup_x |F_n(x) - x|(経験分布関数と真の分布関数 F(x) = x の差の最大値)
    z = np.maximum(i / n - u, u - (i - 1) / n).max(axis=1)
    tail = [np.mean(z - z.mean() >= x / np.sqrt(n)) for x in s]
    plt.semilogy(s, tail, lw=2, label=f"Simulation ($n = {n}$)")

plt.semilogy(s, np.exp(-2 * s**2), "k--", lw=2,
             label=r"McDiarmid bound $e^{-2nt^2}$")
plt.ylim(1e-4, 1.5)
plt.xlabel(r"$\sqrt{n}\,t$")
plt.ylabel(r"$\Pr(Z - \mathbb{E}[Z] \geq t)$")
plt.legend()
plt.show()
Image
図 3:Kolmogorov–Smirnov 統計量 Z の上側の裾確率(シミュレーション)と McDiarmid の上界。横軸を √n t とすると、上界は n によらない 1 本の曲線になる。縦軸は対数目盛。

横軸を n t\sqrt{n}\, t にとると、上界 e−2nt2=e−2(n t)2e^{-2nt^2} = e^{-2(\sqrt{n}\, t)^2} は nn によらない 1 本の曲線になります。 図 3 では、n=100n = 100 と n=1000n = 1000 のシミュレーション結果がほぼ重なり、どちらも上界より下にあります。 つまり、Z−E[Z]Z - \mathbb{E}[Z] のゆらぎは 1/n1/\sqrt{n} の大きさで、McDiarmid の不等式はその大きさを正しく捉えています。

機械学習でも同じ構造が現れます。 値が [0,1][0, 1] に収まる損失関数の集合を G\mathcal{G} とし、sup⁡g∈G∣1n∑i=1ng(Xi)−E[g(X1)]∣\sup_{g \in \mathcal{G}} \left|\frac{1}{n} \sum_{i=1}^n g(X_i) - \mathbb{E}[g(X_1)]\right| を考えると、上と同じ議論で ci=1/nc_i = 1/n の有界差分条件が成り立ちます。 この量は、訓練データ上の平均損失と期待損失の差の上限であり、汎化誤差の評価に使われます。 Rademacher 複雑度による汎化誤差の評価では、McDiarmid の不等式でこの量をその期待値の近くに抑え、期待値を Rademacher 複雑度で評価します(Bartlett & Mendelson, 2002)。

コラム:証明の考え方(martingale による分解)

McDiarmid の不等式は、Z−E[Z]Z - \mathbb{E}[Z] を、X1,X2,…X_1, X_2, \dots を 1 つずつ明らかにしたときの変化の和に分解して証明します。 Y0:=E[Z]Y_0 := \mathbb{E}[Z] とし、k=1,…,nk = 1, \dots, n について

Yk:=E[Z∣X1,…,Xk] Y_k := \mathbb{E}[Z \mid X_1, \dots, X_k]

とおくと、Yn=ZY_n = Z なので

Z−E[Z]=∑k=1n(Yk−Yk−1) Z - \mathbb{E}[Z] = \sum_{k=1}^n (Y_k - Y_{k-1})

と書けます。 X1,…,Xk−1X_1, \dots, X_{k-1} が与えられたもとで、増分 Yk−Yk−1Y_k - Y_{k-1} の条件付き期待値は 00 です。 このような性質をもつ確率変数の列 (Yk)(Y_k) を martingale と呼びます。

さらに、独立性と有界差分条件から、X1,…,Xk−1X_1, \dots, X_{k-1} を固定すると、YkY_k は XkX_k の関数として長さ ckc_k 以下の区間に値をとります。 そこで、Hoeffding の補題を条件付きで各増分に適用し、k=n,n−1,…,1k = n, n-1, \dots, 1 の順に条件付き期待値をとると、

E[eλ(Z−E[Z])]≤exp⁡(λ28∑k=1nck2) \mathbb{E}\left[e^{\lambda (Z - \mathbb{E}[Z])}\right] \leq \exp\left(\frac{\lambda^2}{8} \sum_{k=1}^n c_k^2\right)

を得ます。 つまり、ZZ は分散パラメータ ∑kck2/4\sum_k c_k^2/4 の sub-Gaussian であり、第 5 節と同様に Chernoff 法を適用すると定理 6 が得られます。

8. 比較と使い分け

例の結果

第 3 節から第 6 節で求めた、Pr⁡(∣p^−p∣≥ε)≤δ\Pr(|\hat{p} - p| \geq \varepsilon) \leq \delta を保証する標本数を表 1 にまとめます。 比較のため、二項分布から数値計算した、実際に必要な標本数も示します。 Chebyshev と Bernstein の不等式には真の分散 p(1−p)p(1-p) を使っています。 実際には pp は未知なので、分散の上界(例えば p≤0.01p \leq 0.01 が分かっていれば 0.00990.0099)を使います。

表 1:Pr⁡(∣p^−p∣≥ε)≤δ\Pr(|\hat{p} - p| \geq \varepsilon) \leq \delta を保証する標本数 nn の下限

不等式使う情報(A) δ=0.05\delta = 0.05(A) δ=10−6\delta = 10^{-6}(B) δ=0.05\delta = 0.05(B) δ=10−6\delta = 10^{-6}
Chebyshev(第 3 節)分散2,000100,000,0007,920396,000,000
相対誤差の Chernoff bound(第 4 節)Bernoulli 和の期待値1,5506,0943,68914,509
Hoeffding(第 5 節)値域7382,90273,778290,174
Bernstein(第 6 節)値域、分散7632,9993,40913,406
二項分布から計算した値分布そのもの約 400約 2,400約 1,600約 10,400

最終行は、その値以上のすべての nn で Pr⁡(∣p^−p∣≥ε)≤δ\Pr(|\hat{p} - p| \geq \varepsilon) \leq \delta となる最小の nn です。 n(p±ε)n(p \pm \varepsilon) が整数になる nn では、∣p^−p∣=ε|\hat{p} - p| = \varepsilon となる境界上の値が事象に含まれるため、二項分布から計算した確率は nn について単調には減少しません。 そのため、概数で示しています。

次のコードは、二項分布から計算した Pr⁡(∣p^−p∣≥ε)\Pr(|\hat{p} - p| \geq \varepsilon) と、各不等式による上界を nn の関数として描きます。

tail_bounds.py
import numpy as np
import matplotlib.pyplot as plt
from scipy.stats import binom

def exact_tail(n, p, eps):
    """S ~ Bin(n, p) について Pr(|S/n - p| >= eps) を計算する"""
    # 1e-9 は浮動小数点の丸め誤差対策
    upper = np.ceil(n * (p + eps) - 1e-9)
    lower = np.floor(n * (p - eps) + 1e-9)
    return binom.sf(upper - 1, n, p) + binom.cdf(lower, n, p)

def bounds(n, p, eps):
    """各不等式による Pr(|p_hat - p| >= eps) の上界"""
    var, M, eta = p * (1 - p), max(p, 1 - p), eps / p
    return {
        "Chebyshev": var / (n * eps**2),
        "Chernoff (relative)": 2 * np.exp(-eta**2 * n * p / (2 + eta)),
        "Hoeffding": 2 * np.exp(-2 * n * eps**2),
        "Bernstein": 2 * np.exp(-n * eps**2 / (2 * (var + M * eps / 3))),
    }

settings = [("A", 0.5, 0.05, 4000), ("B", 0.01, 0.005, 20000)]
fig, axes = plt.subplots(1, 2, figsize=(14, 5.6), sharey=True)
for ax, (label, p, eps, n_max) in zip(axes, settings):
    n = np.arange(10, n_max + 1, 10)
    ax.semilogy(n, exact_tail(n, p, eps), "k", lw=1.2, label="Exact (binomial)")
    for name, value in bounds(n, p, eps).items():
        ax.semilogy(n, np.minimum(value, 1), lw=2.2, label=name)
    ax.axhline(0.05, color="gray", ls="--")
    ax.set(title=rf"({label}) $p = {p}$, $\varepsilon = {eps}$",
           xlabel="$n$", xlim=(0, n_max), ylim=(1e-10, 2))
axes[0].set_ylabel(r"$\Pr(|\hat p - p| \geq \varepsilon)$")
axes[1].legend(loc="lower left")
plt.show()
Image
図 4:誤差確率 Pr(|p̂ − p| ≥ ε) の正確な値(黒)と、各不等式による上界。左が (A)、右が (B)。灰色の破線は δ = 0.05。縦軸は対数目盛。

表 1 と図 4 から、次の 3 点が読み取れます。

  1. δ\delta を小さくしたときの増え方:δ\delta を 0.050.05 から 10−610^{-6} にすると、Chebyshev の不等式による nn は 1/δ1/\delta に比例して 5×1045 \times 10^4 倍になります。指数的な上界(Chernoff、Hoeffding、Bernstein)による nn は log⁡(2/δ)\log(2/\delta) に比例し、約 3.93.9 倍にとどまります。図 4 では、この違いが直線(指数的な減衰)と、なだらかな曲線(1/n1/n の減衰)の違いとして現れます。
  2. 分散が小さいとき:(B) では、分散を使う Bernstein の不等式と、期待値に対する相対誤差を使う Chernoff bound が、値域だけを使う Hoeffding の不等式より約 2020 倍小さい nn を与えます。δ=0.05\delta = 0.05 では、Chebyshev の不等式も Hoeffding の不等式より小さい nn を与えます。
  3. 保守性:どの上界も実際に必要な nn より大きく、最も小さい上界でも (A) で約 1.21.2〜1.81.8 倍、(B) で約 1.31.3〜2.12.1 倍です。集中不等式は分布の形を細かく使わない代わりに、その分だけ保守的になります。

使い分け

表 2 に、各不等式の仮定と上界をまとめます。

表 2:各不等式の仮定と上界

不等式主な仮定対象上界
Markov非負、期待値が有限非負の確率変数 XXE[X]/t\mathbb{E}[X]/t
Chebyshev分散が有限一般の確率変数 XXVar⁡(X)/t2\operatorname{Var}(X)/t^2
Chernoff 法MGF が有限一般の確率変数 XXexp⁡(−sup⁡λ>0{λt−ψX(λ)})\exp(-\sup_{\lambda > 0}\{\lambda t - \psi_X(\lambda)\})
Hoeffding独立、有界和 SnS_nexp⁡(−2t2/∑i(bi−ai)2)\exp(-2t^2/\sum_i (b_i - a_i)^2)
Bernstein独立、有界、分散和 SnS_nexp⁡(−t2/(2(V+Mt/3)))\exp(-t^2/(2(V + Mt/3)))
McDiarmid独立、有界差分条件関数 f(X1,…,Xn)f(X_1, \dots, X_n)exp⁡(−2t2/∑ici2)\exp(-2t^2/\sum_i c_i^2)

状況に応じた選び方の目安は次のとおりです。

  • 非負性と期待値しか分からない → Markov の不等式
  • 分散は分かるが、独立性を仮定できない → Chebyshev の不等式(無相関なら標本平均にも使えます)
  • MGF を計算できる → Chernoff 法で直接評価する
  • 独立な Bernoulli 確率変数の和で、期待値に対する相対誤差を評価したい → 相対誤差の Chernoff bound
  • 独立な有界確率変数の和で、分散の情報がない → Hoeffding の不等式
  • 独立な有界確率変数の和で、分散が値域に比べて小さい → Bernstein の不等式
  • 和ではない関数で、各入力の影響が小さい → McDiarmid の不等式

9. 仮定が満たされないとき

独立でない場合

Markov の不等式と Chebyshev の不等式は、独立性を必要としません。 一方、本記事で示した形の Hoeffding、Bernstein、McDiarmid の不等式は独立性を仮定しており、依存のある確率変数にはそのまま適用できません。 ただし例外もあり、Hoeffding (1963) は、有限母集団からの非復元抽出(各標本は独立ではない)でも、復元抽出の場合と同じ上界が成り立つことを示しています。 また、増分が有界な martingale には Azuma–Hoeffding の不等式が使えます(Azuma, 1967)。 第 7 節のコラムの証明は、この不等式と同じ martingale の議論に基づいています。

有界でない場合

有界でない確率変数も集中しえます。 例えば、正規分布は有界ではありませんが、第 4 節で見たように sub-Gaussian です。 sub-Gaussian を含み、より重い裾も許す確率変数のクラスとして sub-exponential があり、Bernstein 型の上界が成り立ちます(Vershynin, 2018, 第 2 章)。 MGF が有限でない分布でも、高次のモーメントが有限なら、第 2 節の方法で tt の多項式で減少する上界が得られます。

10. まとめ

本記事で扱った不等式は、図 5 のように Markov の不等式から 2 つの経路で導かれます。

Image
図 5:本記事で扱った不等式の関係。各箱の下段は、その不等式が使う主な仮定や情報。
  • Markov → Chebyshev:二乗偏差に Markov の不等式を適用し、分散で裾確率を評価します。
  • Markov → Chernoff 法 → Hoeffding、Bernstein、McDiarmid:指数関数に Markov の不等式を適用し、MGF を評価して指数的に減少する上界を得ます。McDiarmid の不等式は、martingale による分解によって、和以外の関数にも適用できるようにした結果です。

どの不等式も、有限個のデータから作った量が期待値からどれだけ外れうるか、という問いに答えます。 第 8 節の例が示すように、どの不等式が最も小さい上界を与えるかは、使える仮定(分散、値域、独立性、関数の安定性)と問題の条件によって変わります。

References

コメント