Appendix B — Edgeworth Series · CLT 의 고차 보정 (McCullagh & Nelder)

Hermite 다항식 전개 · \(\rho_3\) 왜도·\(\rho_4\) 첨도 · Sheppard 연속성 보정 · 이항 분포 적용

McCullagh & Nelder (1989) Appendix B 를 심화한다. 중심극한정리 (CLT) 는 표준화 합 \(X_n\) 의 점근 정규성을 보장하지만 \(O(n^{-1/2})\) 오차 를 남긴다. Edgeworth series (B.1) 은 이 오차를 cumulant 보정 으로 \(o(n^{-1})\) 까지 축소: \(E_n(x) = \Phi(x) - \phi(x)\{\rho_3(x^2-1)/(6\sqrt n) + \rho_4(x^3-3x)/(24n) + \rho_3^2(x^5-10x^3+15x)/(72n)\}\). Hermite 다항식의 등장 배경 · 왜도 \(\rho_3\)\(1/\sqrt n\) 기여와 첨도 \(\rho_4\)\(1/n\) 기여 · lattice (이산) 분포에서 Edgeworth 실패와 연속성 보정 + Sheppard 정밀도 조정 (B.2-3) · 이항 분포 \(Y \sim B(m, \pi)\) 에의 구체 적용 공식. Python 시뮬레이션으로 Edgeworth 근사가 CLT 보다 작은 \(n\) 에서 극적으로 정확함 을 수치 검증. 현대적 대안 (saddlepoint 근사) 과의 비교와 GLM 에서 Edgeworth 가 등장하는 맥락 (Bartlett 조정 유도 등).

Statistics
GLM
저자

Kwangmin Kim

공개

2026년 04월 21일

1 서론 — CLT 를 넘어서

중심극한정리 (CLT) 는 통계학의 초석:

\[ X_n = \frac{Y_1 + \cdots + Y_n - n\mu}{\sigma\sqrt n} \overset{d}{\to} N(0, 1). \]

그러나 수렴 속도 는 Berry-Esseen 정리에 의해

\[ |F_n(x) - \Phi(x)| \leq \frac{C\rho_3}{\sqrt n}. \]

\(O(n^{-1/2})\) 오차. 작은 \(n\) 에서는 \(\Phi\) 근사가 부정확할 수 있다.

Edgeworth series 는 CLT 를 한 차원 더 정밀하게 — cumulant 기반 보정을 추가해 오차를 \(o(n^{-1})\) 로 줄인다. 1905 년 Edgeworth 의 원 논문 이후 점근 통계의 표준 도구.

McCullagh-Nelder (1989) 의 Appendix B 는 Edgeworth 의 압축 소개 — 식과 해석만 제시하고 증명 생략. 이 포스트는 유도 아이디어 + 해석 + 실무 적용 + 수치 검증 을 심화한다.

1.1 왜 GLM 책에서 Edgeworth 인가

세 가지 활용:

  1. 작은 표본 정확성: CLT 가 부정확할 때 p-value · 신뢰구간의 고차 보정.
  2. Bartlett 조정 (§15.3) 유도: Bartlett 보정의 이론적 근거 가 Edgeworth 확장.
  3. Saddlepoint 근사 연결: 현대의 saddlepoint 가 Edgeworth 의 개선판.

2 Edgeworth 급수 — 연속 분포 (B.1)

2.1 정의

표준화 합 \(X_n = (\sum Y_i - n\mu)/(\sigma\sqrt n)\). 분포 함수 \(F_n(x) = \Pr(X_n \leq x)\).

Edgeworth 근사 (McCullagh-Nelder B.1):

\[ E_n(x) = \Phi(x) - \phi(x)\left\{ \frac{\rho_3 (x^2 - 1)}{6\sqrt n} + \frac{\rho_4 (x^3 - 3x)}{24 n} + \frac{\rho_3^2 (x^5 - 10x^3 + 15x)}{72 n} \right\}. \tag{B.1} \]

\(\rho_3 = \kappa_3/\kappa_2^{3/2}\) (표준화 왜도), \(\rho_4 = \kappa_4/\kappa_2^2\) (표준화 첨도).

오차: \(F_n(x) - E_n(x) = o(n^{-1})\) uniformly on bounded \(x\).

2.2 Hermite 다항식의 등장

(B.1) 의 괄호 안 항들 — \((x^2 - 1)\), \((x^3 - 3x)\), \((x^5 - 10x^3 + 15x)\) — 는 Hermite 다항식:

\[ H_2(x) = x^2 - 1, \quad H_3(x) = x^3 - 3x, \quad H_5(x) = x^5 - 10x^3 + 15x. \]

Hermite 다항식은 정규 밀도의 도함수 와 관련:

\[ \phi^{(k)}(x) = (-1)^k H_k(x) \phi(x). \]

2.3 왜 Hermite 인가

유도 직관: \(F_n - \Phi\)\(\phi\) 에 직교 함수로 전개 될 수 있다. Hermite 가 정규 분포에 대한 직교 기저.

구체적으로 확률변수 \(X_n\) 의 특성함수 (characteristic function) 를 \(\log \psi_{X_n}\) (cumulant generating function) 으로 전개:

\[ \log \psi_{X_n}(t) = -t^2/2 + \frac{\rho_3}{6\sqrt n}(it)^3 + \frac{\rho_4}{24n}(it)^4 + \cdots. \]

역 푸리에 변환을 하면 밀도 근사:

\[ f_n(x) \approx \phi(x)\{1 + \frac{\rho_3}{6\sqrt n} H_3(x) + \frac{\rho_4}{24n} H_4(x) + \cdots\}. \]

(Hermite 등장.) 적분 → 분포 함수 형태가 (B.1).

2.4 각 보정 항의 의미

2.4.1 첫 번째 보정: \(\rho_3 / \sqrt n\)

\[\frac{\rho_3 (x^2 - 1)}{6\sqrt n}.\]

왜도 보정. \(\rho_3\) 가 크면 정규에서 가장 빨리 (= \(1/\sqrt n\) 속도) 이탈. 특히 이항 분포에서 \(\pi \neq 0.5\)\(\rho_3 \neq 0\) — 편향 심각.

\(x^2 - 1\): \(|x| > 1\) 에서 양, \(|x| < 1\) 에서 음. 꼬리 (큰 \(|x|\)) 를 비대칭으로 조정.

2.4.2 두 번째 보정: \(\rho_4 / n\)

\[\frac{\rho_4 (x^3 - 3x)}{24 n}.\]

첨도 보정. \(\rho_4\) 가 크면 꼬리가 무겁다 (leptokurtic). 정규 대비 중심 첨단 + 꼬리 두꺼움.

\(x^3 - 3x\): 3 차 다항식. \(|x|\) 가 큰 영역에서 부호 변화 — 꼬리 밀도 조정.

2.4.3 세 번째 보정: \(\rho_3^2 / n\)

\[\frac{\rho_3^2 (x^5 - 10x^3 + 15x)}{72 n}.\]

왜도의 제곱 기여. 차수 \(1/n\) 이지만 \(\rho_3\) 가 두 번 등장 — 왜도 효과의 2차 성분.

왜도가 있으면 꼬리 비대칭 이 복잡해지고 5 차 다항식 형태로 보정.

2.5 크기 비교

\(n\) 이 클 때 항의 크기:

\[O(1) > O(n^{-1/2}) > O(n^{-1}) = O(n^{-1}).\]

실무적으로 첫 두 항이 주요 보정. 세 번째 항은 \(\rho_3^2\) 가 크면 중요.

2.6 Hermite 다항식 성질

Hermite 다항식의 유용한 성질:

  1. 직교성: \(\int H_m(x) H_n(x) \phi(x) dx = \delta_{mn} n!\).
  2. 회귀 관계: \(H_{n+1}(x) = xH_n(x) - nH_{n-1}(x)\).
  3. Rodrigues 공식: \(H_n(x) = (-1)^n e^{x^2/2} \frac{d^n}{dx^n} e^{-x^2/2}\).

3 번 공식이 Hermite 가 정규 밀도와 연결되는 이유.

직관: Edgeworth = “CLT 밀도 + cumulant 보정 꼬리”

CLT 는 \(f_n \approx \phi\) — 표준 정규 밀도. 그러나 실제 \(f_n\) 은 약간 비대칭 (skew) 이고 꼬리가 다르다.

Edgeworth 는 이 차이를 Hermite 다항식 기저 로 보정:

\[ f_n \approx \phi \times \{1 + \text{skew 보정} + \text{kurtosis 보정} + \cdots\}. \]

보정항은 \(n\) 이 커질수록 사라지지만, 작은 \(n\) 에서 극적 개선.

비유: CLT 가 “대략의 그림자”, Edgeworth 가 “그림자 + 미세 주름 복원”.

3 Lattice 분포의 문제 — Sheppard 보정 (B.2-3)

3.1 Lattice 분포의 본질적 차이

\(Y\)이산 값 (정수, 유리수 배수) 만 가지는 경우. \(F_n(x)\)계단 함수 — 점프가 있다.

점프 크기 ≈ 확률 질량 \(\Pr(Y = \text{특정 값})\)\(O(n^{-1/2})\) 수준.

문제: Edgeworth 근사 \(E_n(x)\)연속 함수. 점프를 표현 못 함. 따라서 \(F_n - E_n\)\(O(n^{-1/2})\) 오차로 묶임 — 원래 Edgeworth 의 \(o(n^{-1})\) 개선이 무효.

3.2 Sheppard 보정

McCullagh-Nelder 의 해법 (B.2):

연속성 교정 abscissa:

\[ z = \frac{y_1 + \cdots + y_n - n\mu + 1/2}{\sigma\sqrt n}. \]

정밀도 조정:

\[ \tau = 1 + \frac{1}{24 n \sigma^2}. \]

조정된 Edgeworth:

\[ F_n(z) = E_n(\tau z) + o(n^{-1}). \tag{B.3} \]

3.3 두 보정의 역할

3.3.1 연속성 보정 (continuity correction)

\(y + 1/2\)\(1/2\). “정수 눈금 사이의 중점” 으로 평가.

\(F_n\)\([y, y+1)\) 구간에서 상수 → 중점 \(y + 1/2\) 에서 평가하면 한 구간 안 의 평균 오차 최소화.

효과: \(O(n^{-1/2})\) 크기의 오차 제거.

3.3.2 Sheppard 정밀도 조정

\(\tau z\)\(\tau = 1 + \frac{1}{24 n\sigma^2}\).

약간 확대된 abscissa. \(1/24n\sigma^2\) 는 매우 작지만 \(O(n^{-1})\) 수준의 정밀도 추가.

Sheppard (1898) 의 원 논문이 이산화 편향의 \(1/12\) 차이 보정에서 유래 — 24 의 반수.

3.4 결과의 정밀도

continuous Edgeworth: \(O(n^{-1})\) 오차 (B.1). lattice + Sheppard: \(O(n^{-1})\) 오차 (B.3). 연속과 동등.

즉 lattice 의 구조적 문제가 올바른 보정으로 완전 극복 가능.

4 이항 분포에의 적용

4.1 이항 특수화

\(Y \sim B(m, \pi)\) — 단일 이항 관측. 적절한 \(z\), \(\tau\), \(\rho_3\), \(\rho_4\):

\[ z = \frac{y - m\pi + 1/2}{\sqrt{m\pi(1-\pi)}} \]

\[ \tau = 1 + \frac{1}{24 m\pi(1-\pi)} \]

\[ \rho_3 = \frac{1 - 2\pi}{\sqrt{m\pi(1-\pi)}} \]

\[ \rho_4 = \frac{1 - 6\pi(1-\pi)}{m\pi(1-\pi)} \]

4.2 \(n = 1\) 사용

이항 “표본 크기” 는 단일 관측 \(Y\) 이지만 효과적 “반복 수”\(m\). McCullagh-Nelder: “\(n = 1\) 을 (B.1), (B.3) 에 대입 — \(m\) 은 이미 \(\rho_3, \rho_4\) 에 포함”.

4.3 정확도 조건

McCullagh-Nelder: “\(m\pi(1-\pi) > 2.0\) 이면 근사 상당히 정확”.

예시: \(m = 10, \pi = 0.5\) 이면 \(m\pi(1-\pi) = 2.5\) — OK. \(m = 10, \pi = 0.1\) 이면 \(0.9\) — 부적절.

경험 규칙: “expected number of successes” \(m\pi \geq 5\) 와 “expected failures” \(m(1-\pi) \geq 5\) 가 일반 기준. 둘 다 5 이상이면 Edgeworth 가 매우 정확.

4.4 \(\pi = 0.5\) 특수

\(\pi = 0.5\): \(\rho_3 = 0\) (대칭), \(\rho_4 = -2/m\) (약간 platykurtic — 정규보다 덜 뾰족).

이 경우 \(\rho_3 / \sqrt n\) 항 사라짐 — Edgeworth 가 CLT 와 더 가까움. \(\pi\) 가 극단일수록 왜도 커져 CLT 오차 큼 → Edgeworth 효과 큼.

5 Esseen (1945) 의 일반화

McCullagh-Nelder 마무리 언급:

“Approximation (B.3) is a simplified version of a series expansion given by Esseen (1945), who gives the expansion to higher order than that considered here.”

Esseen 의 기여: - 더 높은 차수 cumulant (5차, 6차) 포함. - 더 엄밀한 오차 경계 (Berry-Esseen 정리의 일반화). - 일반 lattice (정수 아닌 lattice) 적용.

실무에서는 3 항 (B.1) 또는 4 항 Edgeworth 로 충분한 경우 많음. Esseen 의 더 높은 차수 는 극도로 정밀한 tail probability 계산 (신뢰구간 극단 커버리지 등) 에서 활용.

6 현대 대안 — Saddlepoint Approximation

6.1 Saddlepoint 의 우월성

Daniels (1954) 의 saddlepoint approximation 이 Edgeworth 의 주요 대안:

\[ f_n(x) \approx \frac{1}{\sqrt{2\pi n K''(\widehat t)}} \exp(nK(\widehat t) - n \widehat t x). \]

\(K\) = cumulant generating function, \(\widehat t\) = saddlepoint (안장점).

6.2 두 근사 비교

측면 Edgeworth Saddlepoint
중심 정확도 좋음 매우 좋음
꼬리 정확도 부족 (음수 밀도 가능) 뛰어남
유도 복잡도 간단 비교적 복잡
Non-regular 분포 제한적 넓게 적용
계산 비용 매우 낮음 낮음

Saddlepoint 의 결정적 우위: relative error 가 uniformly \(O(n^{-1})\) — Edgeworth 가 꼬리에서 실패하는 곳에서도 정확.

6.3 Edgeworth 가 여전히 유용한 이유

  1. 단순성: 공식이 명시적, 수계산 가능.
  2. Bartlett 유도: Bartlett 조정이 Edgeworth 로부터 도출.
  3. 분석적 통찰: 각 항이 cumulant 의 직접 기여 보여줌.
  4. 빠른 근사: 한 번의 다항식 평가.

실무 규칙: 중심 확률 (median 근처) 은 Edgeworth, 꼬리 확률 은 saddlepoint.

7 GLM 에서의 Edgeworth 활용

7.1 1. Bartlett 조정 (§15.3)

McCullagh (1987) 이 Edgeworth 확장으로 Bartlett 인수 \(b_p\) 를 유도:

\[ \epsilon_p = \text{linear combination of 6 invariants (15.9)}. \]

(15.9) 의 각 invariant 가 Edgeworth 전개의 특정 cumulant 항에서 나온다.

7.2 2. Score 검정의 정확도 개선

Score 검정 통계량의 분포 근사에 Edgeworth 사용. 작은 표본에서 \(\chi^2\) 근사 보다 정확한 p-value.

7.3 3. 신뢰구간 커버리지 보정

고차 정확 신뢰구간 (high-order accurate CI). 표준 Wald CI 의 커버리지 오차 \(O(n^{-1/2})\) → Edgeworth 기반 CI 오차 \(O(n^{-1})\).

예: exact 또는 second-order accurate CI 계산 패키지들이 Edgeworth 사용.

7.4 4. Bootstrap 의 점근적 정당화

Bootstrap 의 이론적 근거 가 Edgeworth 확장에서 나온다. Hall (1992) “The Bootstrap and Edgeworth Expansion” 이 표준 참고서.

Bootstrap 이 왜 CLT 보다 정확한가? Edgeworth 확장의 첫 두 항 을 자동으로 맞추기 때문. Hall 의 정리.

8 Python 시뮬레이션 — Edgeworth vs CLT

8.1 이항 분포 예제

import numpy as np
from scipy import stats, special
import matplotlib.pyplot as plt

def F_edgeworth_binomial(y, m, pi):
    """이항 분포의 Edgeworth 근사 (B.3 + Sheppard)."""
    sigma = np.sqrt(m * pi * (1 - pi))
    z = (y - m * pi + 0.5) / sigma
    tau = 1 + 1 / (24 * m * pi * (1 - pi))

    rho3 = (1 - 2*pi) / sigma
    rho4 = (1 - 6*pi*(1-pi)) / (m * pi * (1-pi))

    x = tau * z
    Phi = stats.norm.cdf(x)
    phi = stats.norm.pdf(x)

    # Hermite H_2, H_3, H_5
    H2 = x**2 - 1
    H3 = x**3 - 3*x
    H5 = x**5 - 10*x**3 + 15*x

    correction = (rho3 * H2 / 6
                  + rho4 * H3 / 24
                  + rho3**2 * H5 / 72)

    return Phi - phi * correction

def F_clt_binomial(y, m, pi):
    """단순 CLT 근사 (연속성 보정 포함)."""
    sigma = np.sqrt(m * pi * (1 - pi))
    z = (y - m * pi + 0.5) / sigma
    return stats.norm.cdf(z)

def F_exact_binomial(y, m, pi):
    """정확한 이항 분포 함수."""
    return stats.binom.cdf(y, m, pi)

# 비교
m, pi = 20, 0.3  # small m, asymmetric → CLT 부정확
y_values = np.arange(0, m+1)

F_ex = np.array([F_exact_binomial(y, m, pi) for y in y_values])
F_cl = np.array([F_clt_binomial(y, m, pi) for y in y_values])
F_ed = np.array([F_edgeworth_binomial(y, m, pi) for y in y_values])

print(f"{'y':>3} {'Exact':>10} {'CLT':>10} {'Edgeworth':>12} {'CLT err':>10} {'Edge err':>10}")
for y in y_values:
    y_idx = y
    print(f"{y:3d} {F_ex[y_idx]:10.4f} {F_cl[y_idx]:10.4f} {F_ed[y_idx]:12.4f} "
          f"{F_cl[y_idx]-F_ex[y_idx]:+10.5f} {F_ed[y_idx]-F_ex[y_idx]:+10.5f}")

기대 출력: Edgeworth 오차가 CLT 의 1/10 ~ 1/100. 특히 꼬리에서 차이 두드러짐.

8.2 시각화

fig, axes = plt.subplots(1, 2, figsize=(12, 5))

axes[0].plot(y_values, F_ex, 'ko-', label='Exact', markersize=6)
axes[0].plot(y_values, F_cl, 's-', label='CLT', alpha=0.7)
axes[0].plot(y_values, F_ed, 'r^-', label='Edgeworth', alpha=0.7)
axes[0].set_xlabel('y'); axes[0].set_ylabel('F(y)')
axes[0].set_title(f'Binomial(m={m}, π={pi}) 분포 함수 근사')
axes[0].legend(); axes[0].grid(alpha=0.3)

# 오차
err_cl = F_cl - F_ex
err_ed = F_ed - F_ex
axes[1].plot(y_values, err_cl, 's-', label='CLT error', alpha=0.7)
axes[1].plot(y_values, err_ed, 'r^-', label='Edgeworth error', alpha=0.7)
axes[1].axhline(0, color='k', ls='--')
axes[1].set_xlabel('y'); axes[1].set_ylabel('근사 오차')
axes[1].set_title('근사 오차 비교')
axes[1].legend(); axes[1].grid(alpha=0.3)

plt.tight_layout()
plt.show()

8.3 다양한 \((m, \pi)\) 에서 최대 오차

configs = [(10, 0.5), (10, 0.2), (20, 0.3), (50, 0.3), (100, 0.1)]

print(f"\n{'m':>4} {'π':>5} {'mπ(1-π)':>9} {'max|err CLT|':>12} {'max|err Edge|':>13} {'비율':>6}")
for m, pi in configs:
    y_values = np.arange(0, m+1)
    F_ex = np.array([F_exact_binomial(y, m, pi) for y in y_values])
    F_cl = np.array([F_clt_binomial(y, m, pi) for y in y_values])
    F_ed = np.array([F_edgeworth_binomial(y, m, pi) for y in y_values])

    max_cl = np.max(np.abs(F_cl - F_ex))
    max_ed = np.max(np.abs(F_ed - F_ex))

    print(f"{m:4d} {pi:5.2f} {m*pi*(1-pi):9.2f} {max_cl:12.5f} {max_ed:13.5f} {max_cl/max_ed:6.1f}x")

기대: “비율” 이 5 ~ 50 배 — Edgeworth 가 CLT 보다 그만큼 정확.

8.4 \(\pi = 0.5\) 에서의 특수 비교

m, pi = 30, 0.5
y_values = np.arange(0, m+1)
F_ex = np.array([F_exact_binomial(y, m, pi) for y in y_values])
F_cl = np.array([F_clt_binomial(y, m, pi) for y in y_values])
F_ed = np.array([F_edgeworth_binomial(y, m, pi) for y in y_values])

print(f"\nπ = 0.5 (대칭) 경우 m={m}:")
print(f"CLT 최대 오차: {np.max(np.abs(F_cl - F_ex)):.5f}")
print(f"Edgeworth 최대 오차: {np.max(np.abs(F_ed - F_ex)):.5f}")
print("(대칭에서는 ρ_3 = 0 이므로 차이 작음)")

9 요약 — Appendix B 의 네 가지 교훈

9.1 교훈 1 — Edgeworth = CLT + cumulant 보정

정규 밀도에 Hermite 다항식 기반 보정 추가. \(\rho_3, \rho_4\) 가 클수록 큰 개선.

9.2 교훈 2 — 각 보정항은 점근 차수로 분류

  • \(\rho_3/\sqrt n\): 1차 보정 (skewness).
  • \(\rho_4/n\): 2차 보정 (kurtosis).
  • \(\rho_3^2/n\): 2차 보정 (skewness 의 제곱).

차수가 낮을수록 더 큰 기여 — 왜도 보정이 첫 개선.

9.3 교훈 3 — Lattice 분포는 연속성 + Sheppard 보정 필수

이산 분포 (\(B(m,\pi)\) 등) 에 Edgeworth 를 직접 적용하면 \(O(n^{-1/2})\) 실패. 연속성 교정 + Sheppard \(\tau = 1 + 1/(24 n\sigma^2)\) 가 필수.

9.4 교훈 4 — Saddlepoint 와 역할 분담

  • 중심 (median 근처): Edgeworth 우수.
  • 꼬리 (극단 p-value): Saddlepoint 필수.
  • Bartlett 조정 유도: Edgeworth 의 역할.
  • Bootstrap 이론: Edgeworth 기반.

10 관련 주제

선행 지식

관련 개념

참고 문헌

  • Edgeworth, F. Y. (1905). “The law of error.” Trans. Cambridge Phil. Soc. 20: 35-65. 원 논문.
  • Esseen, C. G. (1945). “Fourier analysis of distribution functions.” Acta Math. 77: 1-125. — 엄밀한 오차 경계.
  • McCullagh, P. (1987). Tensor Methods in Statistics. Chapman & Hall. — GLM 맥락의 Edgeworth.
  • Daniels, H. E. (1954). “Saddlepoint approximations in statistics.” Ann. Math. Stat. 25: 631-650. — Saddlepoint 대안.
  • Hall, P. (1992). The Bootstrap and Edgeworth Expansion. Springer. — Bootstrap 이론적 근거.
  • Barndorff-Nielsen, O. E. & Cox, D. R. (1989). Asymptotic Techniques for Use in Statistics. Chapman & Hall.

후속 주제

Subscribe

Enjoy this blog? Get notified of new posts by email: