Skip to content

8회 · 추론의 기초 · 노트

7 부숴보기 — 원하는 결과가 나올 때까지 ​

정리 4.2는 미리 정한 하나의 검정에 대한 정리다. 검정을 여러 번 하거나, 결과를 보면서 언제 멈출지 정하거나, 근사가 맞지 않는 곳에서 쓰면 “5%”는 5%가 아니다.

7.1 스무 번 검정하면 ​

귀무가설이 모두 참인 독립 검정 20개를 각각 5%로 하면, 하나라도 유의할 확률은 1−0.9520=0.641-0.95^{20}=0.64이다. 연구자가 그 하나만 보고하면 독자는 “5%”의 증거를 본다. 결과 변수를 바꿔 보기, 이상값을 빼 보기, 공변량을 넣어 보기 같은 흔한 선택들을 합친 시뮬레이션에서 거짓 양성의 비율은 60%를 넘었다(Simmons, Nelson, Simonsohn 2011). 이것을 pp-해킹이라 한다. 검정 하나하나는 옳지만, 검정을 고르는 과정이 정리의 가정(“미리 정한”)을 깬다.

7.2 결과를 보며 멈추기 ​

예제 7.1 (선택적 멈춤) Xi∼iidN(0,1)X_i\iid\N(0,1) (H0H_0가 참)을 10개씩 모으며 매번 z=nXˉnz=\sqrt n\bar X_n을 보고, ∣z∣>1.96|z|>1.96이면 “유의”로 멈춘다. 최대 1,000개까지 모으면 거짓 양성의 확률은 0.37이다(노트북). 멈출 기회가 무한하면 그 확률은 1이다.

증명 없이 쓰는 사실 (반복 로그의 법칙) iid, 평균 0, 분산 1이면 확률 1로 다음이 성립한다(Khinchin 1924, Kolmogorov 1929).

lim sup⁡n→∞Sn2nlog⁡log⁡n=1\limsup_{n\to\infty}\frac{S_n}{\sqrt{2n\log\log n}}=1

2log⁡log⁡n\sqrt{2\log\log n}은 아주 느리지만 끝없이 자라므로 ∣zn∣=∣Sn∣/n|z_n|=|S_n|/\sqrt n은 언젠가 반드시 1.96을 넘는다.

7회의 Lazzarini(1901)가 이 함정의 고전적인 예다. “355/113이 나오면 멈춘다”는 규칙 아래에서 보고된 값의 오차를 미리 정한 nn의 표준오차로 말하는 것은 틀렸다(7회 연습 4.4). 결과를 보면서 멈추려면 처음부터 그것을 허용하도록 만든 순차 검정(Wald 1945)이나 기준을 쓴다.

7.3 비율의 Wald 구간 ​

예제 7.2 (명목 95%가 22%) p^±1.96p^(1−p^)/n\hat p\pm1.96\sqrt{\hat p(1-\hat p)/n}의 실제 포함확률은 이항분포의 합으로 정확히 계산된다(∑k(nk)pk(1−p)n−k1{p∈구간(k)}\sum_k\binom nkp^k(1-p)^{n-k}1\{p\in\text{구간}(k)\}). n=50n=50이면 p=0.005p=0.005에서 0.220.22, p=0.01p=0.01에서 0.390.39, p=0.1p=0.1에서 0.880.88이다. pp가 작으면 p^=0\hat p=0이 자주 나오고, 그때 구간은 폭이 0인 {0}\{0\}이 되어 참값을 놓친다. 더 놀라운 것은 pp가 크지 않아도 nn에 따라 들쭉날쭉하다는 것이다. p=0.005p=0.005에서 n=592n=592이면 0.79다(Brown, Cai, DasGupta 2001). 같은 자료로 만든 Wilson 구간(예제 3.6)은 대부분의 pp에서 0.95 근처다.

그림 7.1. n=50에서 비율의 95% 구간의 실제 포함확률. Wald(파랑)는 양 끝에서 무너지고 가운데서도 진동한다. Wilson(빨강)은 진동하지만 0.95 근처에 머문다. 진동은 p̂가 k/n의 값만 가지는 이산성 때문이다.
그림 7.1 n=50n=50에서 비율의 95% 구간의 실제 포함확률. Wald(파랑)는 양 끝에서 무너지고 가운데서도 진동한다. Wilson(빨강)은 진동하지만 0.95 근처에 머문다. 진동은 p^\hat p가 k/nk/n의 값만 가지는 이산성 때문이다.

대표본 정리(정리 2.4)는 n→∞n\to\infty에서의 말이다. n=50n=50은 큰가? npnp가 작으면 아니다. 정리가 말해 주지 않는 것은 얼마나 커야 하는가이고, 그것은 계산해 보아야 안다.

7.4 기대도수가 작은 χ2\chi^2 ​

칸 10개에 확률이 같고 n=20n=20(기대도수 모두 2)이면 5% 검정의 실제 크기는 0.051로 근사가 놀라울 만큼 잘 맞는다. 그러나 칸 6개 중 다섯이 기대도수 0.6이고 하나가 27이면 크기가 0.11로 두 배다. 작은 기대도수로 나누는 항이 드물게 크게 튀기 때문이다. 이럴 때는 칸을 합치거나, 귀무가설 아래에서 자료를 시뮬레이션해 X2X^2의 분포를 직접 만든다(Monte Carlo 검정). 시뮬레이션한 BB개의 통계량 가운데 관측값 이상인 것의 수를 RR이라 하면 p^=R+1B+1\hat p=\tfrac{R+1}{B+1}은 정확히 타당한 pp-값이다(연습 7.4, 8.2절의 순위 논증).

연습문제

연습 7.1 (스무 번의 검정 ★) 독립 검정 mm개를 각각 α\alpha로 할 때 하나라도 거짓 양성이 나올 확률을 구하고, 이것을 0.05 이하로 하려면 각 검정의 α\alpha를 얼마로 해야 하는가? (m=20m=20)

풀이

1−(1−α)m1-(1-\alpha)^m. m=20m=20에서 0.050.05 이하로 하려면 α≤1−0.951/20=0.00256\alpha\le1-0.95^{1/20}=0.00256(Šidák). Bonferroni의 0.05/20=0.00250.05/20=0.0025와 거의 같다.

연습 7.2 (선택적 멈춤 ★★) 예제 7.1을 노트북에서 최대 표본 크기 100, 1,000, 10,000으로 되풀이하라. 거짓 양성의 확률은 어떻게 자라는가?

풀이

10개마다 들여다보며 최대 100, 1,000, 10,000개까지 모으면 거짓 양성의 확률은 0.19, 0.37, 0.53이다. 들여다보는 횟수의 로그에 대략 비례해 자라고, 반복 로그의 법칙으로 결국 1이 된다.

연습 7.3 (정확한 포함확률 ★★) Wald 구간의 포함확률을 이항 확률의 합으로 쓰고, npnp가 작으면 포함확률이 거의 1−(1−p)n1-(1-p)^n임을 설명하라. (p^=0\hat p=0이면 구간이 {0}\{0\}이어서 놓치고, p^=1n,2n\hat p=\tfrac1n,\tfrac2n이면 작은 pp를 대개 포함한다.) n=50n=50, p=0.005p=0.005에서 계산해 0.22와 비교하라.

풀이

포함확률은 ∑k=0n(nk)pk(1−p)n−k1{p∈[p^k±1.96p^k(1−p^k)/n]}\sum_{k=0}^n\binom nkp^k(1-p)^{n-k}1\{p\in[\hat p_k\pm1.96\sqrt{\hat p_k(1-\hat p_k)/n}]\}이다. npnp가 작으면 KK는 대개 0, 1, 2다. K=0K=0이면 구간이 {0}\{0\}이어서 놓치고, K=1,2K=1,2이면 구간의 위쪽 끝 kn+1.96k(1−k/n)/n\tfrac kn+1.96\sqrt{k(1-k/n)}/n이 작은 pp보다 크고 아래쪽 끝은 0 근처이므로 대개 포함한다. 그래서 포함확률은 P(K≥1)=1−(1−p)nP(K\ge1)=1-(1-p)^n 근처다. n=50n=50, p=0.005p=0.005이면 1−0.99550=0.2221-0.995^{50}=0.222로 정확한 값 0.22와 같다.

연습 7.4 (Monte Carlo 검정 ★★) H0H_0 아래에서 관측 통계량 T0T_0와 시뮬레이션한 T1,…,TBT_1,\dots,T_B가 iid이고 연속이면, T0T_0의 순위가 {1,…,B+1}\{1,\dots,B+1\} 위에서 균등함을 보이고 P(R+1B+1≤α)≤αP\bigl(\tfrac{R+1}{B+1}\le\alpha\bigr)\le\alpha를 결론지어라.

풀이

T0,…,TBT_0,\dots,T_B가 iid 연속이면 교환가능하므로 보조정리 8.1로 T0T_0의 위에서부터의 순위 R+1R+1 (RR = T0T_0보다 큰 TbT_b의 수)은 {1,…,B+1}\{1,\dots,B+1\}에서 균등하다. P(R+1B+1≤α)=⌊α(B+1)⌋B+1≤αP\bigl(\tfrac{R+1}{B+1}\le\alpha\bigr)=\tfrac{\lfloor\alpha(B+1)\rfloor}{B+1}\le\alpha.

이 회차에서 읽은 절 0개 · 회차 차례