1 도입 — 검정 분포를 어디서 가져올 것인가
가설검정의 결론은 항상 “관측된 통계량보다 더 극단적인 결과가 우연만으로 얼마나 자주 나오는가” 라는 확률에 의존한다. 이 확률은 검정 통계량의 분포 에서 나온다. 그런데 그 분포는 어디에서 오는가? 두 가지 출처가 있다.
- 분포 가정 — 모집단이 정규라고 가정하고, t·F 표를 참조한다.
- 무작위 배정 — 실제 실험에서 라벨이 어떻게 무작위로 배정될 수 있었는지 직접 열거한다.
Maxwell Ch.2 는 후자가 원형 이라고 본다. 분포 가정은 후자에 대한 근사로 정당화된다. 이 글은 두 가지 사례 — Fisher 의 차 맛보기 실험과 쌍둥이 Bayley 자료의 무작위 배정 검정 — 를 통해 그 원형을 보여 준다 (Maxwell & Delaney, 2004, Ch.2).
이항·다항형 표 (예: \(2 \times 2\) 분할표) 에서, 주변합 (marginal totals) 을 고정한 채 가능한 모든 분할의 확률을 조합론적으로 직접 계산하여 유의성을 평가하는 검정이다 (Fisher, 1935/1971, Ch.II).
- 표본 크기에 관계없이 정확한 (exact) p 값을 준다
- 분포 가정 (정규성·이항 근사) 을 요구하지 않는다
- 계산은 단순한 조합론 (\(\binom{n}{r}\)) 으로 환원된다
연속 측정 자료에서, 귀무가설 (“처치 효과 없음”) 하에 각 관측값의 라벨이 무작위로 바뀔 수 있다 는 사실로부터 검정 통계량의 분포를 직접 구성하는 검정이다 (Edgington, 1995).
- 분포 가정 없이 정확한 p 값을 준다
- 짝을 이룬 자료에서는 부호 (+/-) 의 가능한 모든 배열 (\(2^n\)) 을 열거한다
- 독립 표본에서는 라벨 (treatment vs control) 의 모든 재배치 (\(\binom{n}{n_1}\)) 를 열거한다
2 Lady Tasting Tea — 조합론으로 검정 만들기
Fisher 의 1935 년 The Design of Experiments 첫 장은 영국 부인의 주장으로 시작한다.
“한 부인이 우유와 차가 섞인 찻잔을 맛보면, 우유를 먼저 부었는지 차를 먼저 부었는지를 구별할 수 있다고 주장한다. 이 주장을 검정할 실험을 어떻게 설계할 것인가?” (Fisher, 1935/1971, p. 11)
2.1 실험 설계
부인에게 8 잔의 차를 제공한다. 4 잔은 우유 먼저 (milk first, MF), 4 잔은 차 먼저 (tea first, TF) 이다. 부인은 이 8 잔을 두 그룹으로 나누어, 4 잔은 MF 라고 4 잔은 TF 라고 분류한다. 부인이 8 잔의 분류를 모두 맞추면 우연인지 변별 능력 때문인지 어떻게 판단하는가?
핵심은 다음 확률을 계산하는 것이다.
\[ \Pr(\text{모두 맞춤} \mid \text{변별 능력 없음}) = \frac{\text{정답인 분할 수}}{\text{가능한 분할 수}} \]
2.2 가능한 분할의 수
8 개에서 4 개를 고르는 서로 다른 조합 의 수를 구한다. 단계별로 풀어 본다.
1 단계 — 순서를 고려한 선택: 첫 번째 MF 라벨을 붙일 잔을 고르는 방법은 8 가지다. 두 번째는 남은 7 잔 중에서 고르므로 7 가지. 이런 식으로 4 잔을 고르면 \(8 \times 7 \times 6 \times 5 = 1680\) 가지의 순서 있는 선택이 가능하다.
2 단계 — 순서 중복 제거: 그러나 우리는 “어느 4 잔이 MF 인가” 만 관심이 있지, “그 4 잔을 어떤 순서로 골랐는가” 는 무관하다. 동일한 4 잔이 \(4! = 4 \times 3 \times 2 \times 1 = 24\) 가지 순서로 등장하므로, 1680 을 24 로 나눈다.
\[ \binom{8}{4} = \frac{8 \times 7 \times 6 \times 5}{4 \times 3 \times 2 \times 1} = \frac{1680}{24} = 70 \]
정답인 분할은 단 1 개이므로 모두 맞출 확률은 \(1/70 \approx 0.0143\) 이다. 사전에 정한 유의 수준 \(\alpha = 0.05\) 보다 작으므로, 부인이 모두 맞추면 변별 능력이 없다는 귀무가설을 기각할 근거가 된다.
이 70 가지는 부인이 변별 능력이 없을 때 일어날 수 있는 모든 시나리오 이다. 그중 정답인 1 가지에 부인의 응답이 우연히 떨어질 확률이 \(1/70\) 이다.
여기서 검정은 “정규 분포 표를 참조” 같은 추상적 단계 없이, 세는 행위 만으로 완료된다. 자료 구조 (8 잔, 4-4 분할) 자체가 70 개의 칸을 가진 분포를 만들어 내고, 부인의 응답은 그 칸들 중 하나에 떨어진다. Fisher 가 1935 년에 보여 준 통찰의 본질은 이것이다 — 분포는 자료에서 만들어진다. 검정에 추가로 요구되는 가정은 “변별 능력이 없으면 모든 분할이 동등하게 가능하다” 는 단순한 명제 하나뿐이다.
2.3 한 잔 틀린 경우
8 잔 중 1 잔만 틀리는 경우는 어떠한가? 한 MF 잔을 TF 로 잘못 분류하면, 동시에 한 TF 잔을 MF 로 잘못 분류한 셈이 된다 (4-4 분할이라 한쪽이 틀리면 다른 쪽도 틀린다). 따라서 이런 시나리오는 “MF 4 잔 중 어느 1 잔을 빠뜨리는가” \(\times\) “TF 4 잔 중 어느 1 잔을 잘못 넣는가” 로 분해된다.
\[ \binom{4}{3} \cdot \binom{4}{1} = 4 \cdot 4 = 16 \]
가지 방식이 가능하다. 이 결과의 확률은 \(16/70 \approx 0.229\) 이다. “정확히 맞춤” 이상의 누적 확률은 \((1 + 16)/70 \approx 0.243\) 이다. 한 잔 틀려도 우연 가설로 충분히 설명되므로, 변별 능력의 증거가 되지 못한다.
이 결과는 실험 설계 원리 를 시사한다. 8 잔만으로는 “거의 다 맞춤” 을 통계적으로 입증할 수 없다. 부인의 변별 능력이 실제로 약간 있더라도, 8 잔 표본에서는 대부분 7 점 또는 6 점 (8 점 만점 환산) 의 결과가 나올 텐데 이 결과들은 모두 우연으로 설명된다. 즉 표본 크기가 작은 실험은 작은 효과를 잡지 못한다. Maxwell 의 표 2.3 이 뒤에서 보여 줄 1024 가지 부호 배열 시뮬레이션은 이 검정력 (power) 의 한계를 정량화한 것이다. 표본 크기와 검정력의 정량적 관계는 후속 글 A-WOO8-* 에서 다룬다.
2.4 일반화 — 조합 수식
크기 \(n\) 의 집합에서 \(r\) 개를 고르는 조합의 수는
\[ \binom{n}{r} = \frac{n!}{r! (n-r)!} \]
이 수식이 Fisher’s exact test 의 계산 토대이며, 이후 모든 분할표 (contingency table) 분석의 원형이 된다 (Bishop, Fienberg, & Holland, 1975).
2.5 Fisher’s exact test 의 다른 사례 — 1934 Criminal Twins
Fisher 가 1934 년 Royal Statistical Society 첫 발표에서 인용한 자료가 흥미로운 응용 사례다.
30 명의 남성 범죄자들을 식별하고 각각의 동성 쌍둥이 형제를 추적했다. 쌍둥이는 일란성 (monozygotic) 또는 이란성 (dizygotic) 으로 분류했고, 각 형제의 범죄 전력을 조사했다 (Fisher, 1934).
자료는 다음과 같다.
| 일란성 | 이란성 | 합 | |
|---|---|---|---|
| 형제도 유죄 | 10 | 2 | 12 |
| 형제 무죄 | 3 | 15 | 18 |
| 합 | 13 | 17 | 30 |
질문: 일란성과 이란성 간 형제 유죄율 차이 (10/13 = 77 % vs 2/17 = 12 %) 가 우연만으로 설명될 수 있는가?
Fisher’s exact test 는 주변합 (13, 17, 12, 18) 을 고정한 채 모든 가능한 표를 열거하여 관측된 표만큼 극단적인 표의 비율을 계산한다. 이 사례에서 p 값은 약 \(10^{-5}\) 수준이라, 유전 요인이 범죄 행동에 영향을 줄 가능성이 강하게 시사된다 (단, 인과 해석은 환경 요인 통제가 부족해 신중해야 한다).
이 사례가 보여 주는 것은 Fisher’s exact test 가 작은 표본 과 극단적 비율 에서 특히 유용하다는 점이다. 이항 근사 또는 카이제곱 근사는 표본이 작을 때 부정확해지지만, exact test 는 표본 크기에 무관하게 정확하다.
부인이 우유 먼저인지 차 먼저인지 전혀 구별하지 못한다고 가정 하자. 그렇다면 부인의 답은 8 잔 중 어떤 4 잔을 MF 로 고를지에 대한 임의 선택 일 뿐이다. 가능한 선택지가 70 가지이고 정답이 1 가지이니, 모두 맞출 확률은 \(1/70\) 이다.
여기서 검정 분포는 모집단이 정규 이거나 표본이 크다 는 가정 없이 도출된다. 분포는 8 잔이라는 유한한 자료 구조 자체에서 나온다. 이것이 Fisher 가 통계 추론에 일으킨 혁명이다.
3 Randomization Test — 연속 자료로의 확장
차 맛보기는 이산 (discrete) 분류 자료였다. 실제 실험에서는 점수·시간·매출 같은 연속 측정값을 다룬다. Fisher 는 같은 원리를 어떻게 확장했는가?
3.1 사례 — 쌍둥이 Bayley 검사
Maxwell Ch.2 는 발달심리학 사례를 든다. 2 세 쌍둥이 10 쌍 중 한 명에게 인지 과제 영상을 보여 주고 (treatment), 다른 한 명은 대조군 (control) 으로 둔다. 이후 Bayley Mental Scale 점수 (단위: 개월) 를 측정한다.
| 쌍 | Treatment | Control | 차이 (T − C) |
|---|---|---|---|
| 1 | 28 | 32 | \(-4\) |
| 2 | 31 | 25 | \(+6\) |
| 3 | 25 | 15 | \(+10\) |
| 4 | 23 | 25 | \(-2\) |
| 5 | 28 | 16 | \(+12\) |
| 6 | 26 | 30 | \(-4\) |
| 7 | 36 | 24 | \(+12\) |
| 8 | 23 | 13 | \(+10\) |
| 9 | 23 | 25 | \(-2\) |
| 10 | 24 | 16 | \(+8\) |
| 합 | 267 | 221 | +46 |
10 쌍의 차이 합은 \(+46\) 이다. 이 값이 우연만으로 나올 확률을 어떻게 계산하는가?
3.2 검정 논리
귀무가설 하에서, 처치는 점수에 영향이 없다. 따라서 각 쌍에서 누가 treatment 였고 누가 control 이었는지는 순전히 무작위 배정의 결과 이다. 만약 쌍 1 에서 무작위 결과가 반대였다면 차이는 \(-4\) 가 아닌 \(+4\) 였을 것이다. 절댓값은 동일하지만 부호만 바뀐다.
10 쌍 각각에 대해 부호가 \(+\) 일지 \(-\) 일지의 이진 결정이 무작위로 일어났으므로, 가능한 부호 배열의 수는
\[ 2^{10} = 1024 \]
이다. 이 1024 가지 배열에 대해 차이 합을 계산한 분포가 바로 검정 분포 이다. 관측된 합 \(+46\) 이 이 분포의 어느 위치에 있는지가 p 값을 준다.
10 쌍의 차이를 다음과 같이 떠올린다.
- 각 쌍의 절댓값 은 두 쌍둥이 사이의 내재적 차이 다 (예: 쌍 1 은 4 점 차이, 쌍 5 는 12 점 차이). 이 절댓값은 처치 효과가 있든 없든 동일했을 것이다.
- 부호 는 무작위 배정 결과다 (treatment 가 더 높으면 +, control 이 더 높으면 −). 처치 효과가 0 이라면 부호는 동전 던지기와 같다.
따라서 검정의 본질은 “10 개의 동전을 던졌을 때, 각 동전에 정해진 가중치 (\(|d_i|\)) 를 곱해서 더하면, 그 합이 +46 만큼 한쪽으로 기울 확률이 얼마인가” 를 묻는 것과 같다. \(2^{10} = 1024\) 는 동전 배열의 모든 경우의 수다.
만약 처치 효과가 있다면, 동전이 공평하지 않다 — 양수 쪽으로 더 자주 떨어진다. 따라서 관측된 합이 분포의 극단에 있다는 것은 동전이 공평하지 않다는 (즉 처치 효과가 있다는) 증거가 된다.
3.3 분포 구성
실제로 1024 가지를 일일이 계산할 필요는 없다. 절댓값 \(|d_i| \in \{2, 2, 4, 4, 6, 8, 10, 10, 12, 12\}\) 의 합은 70 이고, 부호 한 개를 음수로 바꾸면 합이 \(2|d_i|\) 만큼 감소한다. 합 \(\geq 46\) 이 되려면 부호가 음수인 항의 절댓값 총합이 \((70 - 46)/2 = 12\) 이하여야 한다.
체계적으로 세면 다음 표가 된다.
| 음수 개수 | 가능한 조합 수 | 합 \(\geq 46\) 인 조합 수 |
|---|---|---|
| 0 | 1 | 1 |
| 1 | 10 | 10 |
| 2 | 45 | 18 |
| 3 | 120 | 10 |
| 4 | 210 | 1 |
| 5 이상 | 638 | 0 |
| 합 | 1024 | 40 |
따라서
\[ p_{\text{one-sided}} = \frac{40}{1024} \approx 0.039 \]
\(\alpha = 0.05\) 단측 기준에서 귀무가설을 기각한다. 양측 검정으로 바꾸면 \(p \approx 0.078\) 이 되어 기각하지 못한다. 검정의 방향성은 사전에 명시해야 한다.
3.4 t 검정과의 비교
같은 자료에 대해 paired t 검정을 적용하면 \(t = 2.14\), \(df = 9\), \(p \approx 0.031\) 이 된다. Randomization 검정의 \(0.039\) 와 차이가 약 \(0.008\) 에 불과하다. 이 근사가 우연이 아니라는 점이 Pitman (1937) 과 Wald & Wolfowitz (1944) 의 정리이다.
| 검정 | p 값 | 가정 |
|---|---|---|
| Randomization (정확) | 0.039 | 무작위 배정만 |
| Paired t 검정 | 0.031 | 차이가 정규 분포 |
직관적으로 두 p 값의 작은 차이 (\(0.008\)) 는 근사 오차 이다. t 검정이 사용하는 t 분포는 부드러운 종 모양이지만, 실제 randomization 분포는 1024 점으로 이루어진 이산 막대 그래프이다. 이산 분포를 연속 곡선으로 매끈하게 펴면 약간의 어긋남이 생긴다. 표본이 커질수록 이산 분포의 점들이 촘촘해져 t 곡선과 정확히 일치하는 방향으로 수렴한다 (다음 글 A-MAX2-3 의 표 참조).
귀무가설 하에서 처치가 점수에 영향이 전혀 없다면, 각 쌍의 두 점수는 어느 쪽이 treatment 든 동일 했을 것이다. 차이의 절댓값은 두 사람의 내재적 차이일 뿐이다. 부호는 무작위 배정 동전 뒤집기의 결과일 뿐이다.
따라서 우리는 관측된 절댓값 을 그대로 두고, 모든 가능한 부호 배열 에 대해 합을 계산한다. 이 분포가 바로 “처치 효과 없음 + 무작위 배정” 시나리오에서 발생할 수 있는 합의 분포이다. 관측된 \(+46\) 이 이 분포의 상위 \(4 \%\) 에 위치하므로, 우연만으로는 설명되기 어렵다고 결론낸다.
이 논리에서 모집단에 대한 어떤 가정도 사용되지 않았음을 주목한다. 자료 자체가 검정 분포를 만든다.
4 코드 예시 — Python 으로 두 검정 직접 구현
import numpy as np
from itertools import product
from scipy.stats import fisher_exact, ttest_rel
# Lady Tasting Tea — Fisher's exact (one-sided)
table = [[4, 0], # 정답 MF | 정답 TF
[0, 4]]
_, p_fisher = fisher_exact(table, alternative='greater')
print(f"Fisher's exact one-sided p = {p_fisher:.4f}") # 0.0143
# Bayley twin 데이터 — randomization test
diffs = np.array([-4, 6, 10, -2, 12, -4, 12, 10, -2, 8])
observed = diffs.sum() # +46
# 가능한 모든 2^10 부호 배열에 대해 합 계산
all_signs = np.array(list(product([1, -1], repeat=len(diffs))))
all_sums = (all_signs * np.abs(diffs)).sum(axis=1)
p_rand_one = (all_sums >= observed).mean()
p_rand_two = (np.abs(all_sums) >= observed).mean()
# 비교: paired t 검정
t_stat, p_t = ttest_rel(diffs, np.zeros_like(diffs))
p_t_one = p_t / 2 if t_stat > 0 else 1 - p_t / 2
print(f"Randomization one-sided p = {p_rand_one:.4f}") # 0.0391
print(f"Randomization two-sided p = {p_rand_two:.4f}") # 0.0781
print(f"Paired t one-sided p = {p_t_one:.4f}") # 0.03095 Darwin 의 식물 실험 — Fisher 의 또 다른 randomization 사례
Charles Darwin 이 1876 년 The Effects of Cross- and Self-Fertilisation in the Vegetable Kingdom 에서 보고한 자료를 Fisher 가 1935 년 책에서 randomization 검정 사례로 인용했다 (Maxwell Ch.2 의 운동 11번).
5.1 실험 설계
Darwin 은 같은 부모로부터 나온 옥수수 (zea mays) 모종을 자가 수정 (self-fertilized) 과 교배 수정 (cross-fertilized) 두 그룹으로 나누어 같은 화분에 심었다. 환경을 최대한 통제한 후 11 년에 걸쳐 식물 키를 측정했다.
15 쌍 중 13 쌍에서 교배 수정 식물이 더 컸다. 자가 수정이 더 큰 경우는 2 쌍에 불과했다.
5.2 검정 논리
귀무가설: 교배 수정과 자가 수정은 키에 차이가 없다. 이 경우 각 쌍의 부호 (어느 쪽이 더 큰가) 는 동전 던지기와 같다. 15 번의 동전 던지기에서 13 번 이상 한쪽이 나올 확률은
\[ \Pr(\text{한쪽이 13~15 번}) = \frac{\binom{15}{13} + \binom{15}{14} + \binom{15}{15}}{2^{15}} \cdot 2 \approx 0.0074 \]
(양측 검정에 \(\times 2\)). 5 % 수준에서 귀무가설을 명확히 기각한다.
5.3 함의
Fisher 가 이 사례를 인용한 이유는 단순한 부호 검정 (sign test) 만으로도 강한 결론에 도달할 수 있음을 보여주기 위해서였다. 즉 자료의 정확한 수치값 을 사용하지 않고 부호 만 사용해도 통계적 추론이 가능하다. 이는 비모수 검정 (Wilcoxon signed-rank, sign test) 의 출발점이 됐다.
또한 Galton 이 자료를 순위 재배열 로 분석한 시도에 대해 Fisher 는 비판했다. Galton 은 화분 내 짝짓기 정보를 잃는 방식으로 자료를 재배열했는데, 이는 블록 정보 (같은 화분 내 비교) 를 무시하는 것이라 검정력이 떨어진다. Fisher 의 비판이 블록 설계 와 paired analysis 의 중요성을 부각시킨 결정적 순간이었다.
6 응용 — 현대 A/B 테스트의 Permutation 분석
A/B 테스트에서 두 변형 (variant) 의 매출 평균을 비교한다고 하자. 매출은 흔히 강한 우편향 (lognormal-like) 분포라 정규 가정이 약하다. 이때 가능한 분석 경로는 세 가지이다.
| 방법 | 가정 | 계산 | 사용 시점 |
|---|---|---|---|
| Welch t 검정 | 정규 (CLT 의존) | 매우 가벼움 | \(n\) 큼·중간 분포 비대칭 |
| Permutation 검정 | 무작위 배정만 | 무거움 (Monte Carlo) | \(n\) 작음·강한 비대칭 |
| Bootstrap CI | 표본이 모집단 대표 | 중간 | 효과 크기 구간 추정 |
대규모 A/B 테스트 (\(n > 10^5\)) 에서는 CLT 가 강하게 작동하므로 Welch t 가 안전하다. 그러나 segmented analysis (특정 사용자 군의 분석) 에서 표본이 작을 때, permutation 검정은 분포 가정 없이 정확한 p 값을 준다. Kohavi, Tang, & Xu (2020, Ch.17) 도 robustness check 로 permutation 검정의 사용을 권장한다.
또한 randomization 검정의 논리는 A/A 테스트 의 통계적 정당성과도 직결된다. A/A 테스트는 처치 효과가 0 인 상황에서 검정의 false positive 분포를 경험적으로 측정하는 절차인데, 이는 무작위 배정 자체가 검정 분포를 만든다는 Fisher 의 통찰의 직접적 적용이다.
7 Permutation 검정의 현대적 변형
Fisher 의 1935 년 randomization test 는 현대에 와서 여러 변형으로 발전했다.
7.1 Monte Carlo Permutation
표본이 커서 모든 부호 배열을 열거할 수 없을 때 (예: \(n = 30\) 이면 \(2^{30} \approx 10^9\) 회), 무작위로 \(B\) 회의 배열만 추출한다. 일반적으로 \(B = 10000\) 이면 p 값 추정 표준 오차가 약 \(\sqrt{p(1-p)/B} \approx 0.005\) (\(p = 0.05\) 기준) 로 충분히 작다.
import numpy as np
def mc_permutation_test(diffs, n_perm=10000, two_sided=True):
"""차이 점수에 대한 Monte Carlo permutation test"""
obs = diffs.sum()
abs_diffs = np.abs(diffs)
n = len(diffs)
extreme = 0
for _ in range(n_perm):
signs = np.random.choice([-1, 1], size=n)
perm_sum = (signs * abs_diffs).sum()
if two_sided:
if abs(perm_sum) >= abs(obs):
extreme += 1
else:
if perm_sum >= obs:
extreme += 1
return extreme / n_perm7.2 Stratified Permutation
층화 무작위 배정 자료에서는 층 (stratum) 내에서만 라벨을 섞는다. 이는 층 사이의 자연스러운 차이를 검정 분포에서 제거하여 검정력을 높인다.
7.3 Block Permutation (시계열 자료)
시계열 자료에서는 단순 permutation 이 시간 의존성을 깨뜨린다. 대안은 블록 단위로 라벨을 섞는 것이다. 블록 크기는 자기상관 구조에 따라 정한다 (Politis & Romano, 1994).
7.4 Paired vs Unpaired
Bayley twin 사례는 paired 구조라 부호만 섞는다 (\(2^n\)). 만약 두 그룹이 paired 가 아닌 독립 표본 이라면, \(n_1 + n_2\) 개의 관측값을 두 그룹으로 재배치한다 (\(\binom{n_1 + n_2}{n_1}\) 가지). 두 절차는 검정의 가설이 약간 다르다.
| 구조 | Permutation 형태 | 검정 가설 |
|---|---|---|
| Paired | 부호 섞기 (\(2^n\)) | “차이 점수의 분포가 0 중심 대칭” |
| Unpaired | 그룹 라벨 재배치 (\(\binom{n_1+n_2}{n_1}\)) | “두 그룹이 같은 모집단에서 추출” |
7.5 실무 라이브러리
Python 에서 permutation 검정을 수행하는 라이브러리는 다음이 있다.
scipy.stats.permutation_test(1.8+) — 일반적 permutation 검정mlxtend.evaluate.permutation_test— 두 그룹 비교에 특화statsmodels.stats.weightstats.permutation_test— 분산분석 호환
이 도구들로 t 검정 결과를 robustness check 하는 것이 현대 권장 관행이다 (Kohavi, Tang, & Xu, 2020).
8 Randomization vs Bootstrap — 비슷해 보이지만 다른 절차
Randomization 검정과 부트스트랩은 둘 다 “자료에서 분포를 만든다” 는 점에서 비슷하지만, 목적과 가정 이 다르다.
| 항목 | Randomization | Bootstrap |
|---|---|---|
| 핵심 절차 | 라벨/부호 재배치 (resampling without replacement) | 표본에서 복원 추출 (resampling with replacement) |
| 가설 | “두 분포 동일 (귀무가설)” | “표본이 모집단을 대표” |
| 출력 | p 값 (검정용) | 신뢰 구간·표준 오차 (추정용) |
| 가정 | 무작위 배정 | 표본의 모집단 대표성 |
| 사용 시점 | 가설 검정 | 추정 + 불확실성 정량화 |
이 둘은 대체재 가 아니라 보완재 다. Randomization 으로 효과의 유의성을 검정하고, bootstrap 으로 효과 크기의 신뢰 구간을 보고하는 것이 현대 권장 관행이다 (Davison & Hinkley, 1997).
부트스트랩의 디테일은 후속 글 A-BUI7-* 와 A-WOO14-* 시리즈에서 자세히 다룬다.
9 한계와 후속
Randomization 검정의 한계는 두 가지이다.
- 계산 비용: \(n = 30\) 만 되어도 \(2^{30} \approx 10^9\) 이라 정확 계산이 어렵다. 이때 Monte Carlo permutation (예: 10000 회 무작위 부호 배열) 으로 근사한다.
- 가설의 좁음: Randomization 검정은 “두 그룹이 동일한 분포에서 추출되었는가” 를 검정하지, 모집단 평균에 대한 모수 추정 (예: 신뢰 구간) 을 직접 주지 않는다. 모수 추론에는 분포 가정 또는 부트스트랩이 필요하다.
이 두 한계가 z·t·F 분포 기반 검정으로의 전환을 동기 부여한다. 다음 글 A-MAX2-3 에서 다룬다.
1930 년대 통계학자가 randomization 검정을 권장하지 못한 이유는 컴퓨팅 때문이다. 손계산으로 \(2^{10} = 1024\) 개 합을 계산하는 것은 한 시간이면 가능하지만, \(2^{20} = 10^6\) 개는 거의 불가능했다. 따라서 Fisher 는 randomization 의 논리 를 정립한 후, 실용적으로는 정규 이론 검정 (z, t, F) 을 가르쳤다.
2020 년대에는 정반대다. 컴퓨터로 1 초에 \(10^7\) 회 permutation 이 가능하다. 따라서 randomization 검정이 다시 표준 후보가 됐다 (Higgins, 2003). 그러나 t·F 검정은 수식 형태로 신뢰 구간과 효과 크기를 직접 제공 하는 장점이 있어, 두 접근이 공존하는 시대가 되었다.
이 역사적 곡선은 통계 절차의 선택이 수학적 정당성 만이 아니라 기술적 가용성 에도 의존함을 보여 준다.
10 관련 주제
선행 지식
- Fisher 전통 개관 — Ch.2 의 4 단계 흐름
- 순열 p 값 — Casella 수리통계 lens
후속 주제 (Phase A)
다른 카테고리 연결
- A/B 테스트 메커니즘 — 무작위 배정의 IT 구현
- 부트스트랩 표준 오차 — 모수 추정의 비모수적 보완