1 개요 — Ch.8 의 마지막 네 절
Ch.8 § 8.7~8.10 은 앞 여섯 절의 언어가 결측·검열·절단 의 세밀한 분류에서 어떻게 작동하는지 (\(\S 8.7\)), 전체 원칙을 한 문단으로 요약 (\(\S 8.8\)), 현대 인과 추론 문헌의 계보를 제시 (\(\S 8.9\)), 17 문제의 연습으로 핵심을 반복 (\(\S 8.10\)) 한다.
| 절 | 역할 | 한 줄 |
|---|---|---|
| 8.7 | 결측 메커니즘 분류의 6 변종 | 같은 \(n = 91\) 관측이 어떻게 6 가지 사후를 만드는가 |
| 8.8 | 전체 원칙 요약 | “수집 방법이 최소 모델링 수준을 결정” |
| 8.9 | 문헌 좌표계 | Rubin (1976) 부터 Frangakis-Rubin (2002) 까지의 지도 |
| 8.10 | 연습문제 | 개념 정의·적용·반례 생성을 통한 반복 |
Overview (01-8-0) 와 § 8.1~8.3 (01-8-1), § 8.4~8.6 (01-8-2) 의 마무리편이다.
2 § 8.7 — 검열과 절단의 여섯 변종
2.1 공통 설정
한 물체의 무게 \(\theta\) 를 저울로 \(N = 100\) 번 측정한다 가정. 측정 모형:
\[ y_i \sim \mathrm{N}(\theta, 1), \quad i = 1, \ldots, N \]
사전은 균등 (noninformative): \(p(\theta) \propto 1\). 100 번 중 91 개만 보고됨 (\(n = 91\)). 관측 평균은 \(\bar{y}_{\mathrm{obs}}\).
결정적 질문: 왜 9 개가 빠졌는가? 같은 91 개 수치여도 결측 메커니즘에 따라 사후가 다르다. 여섯 변종이 그 미묘함을 드러낸다.
§ 8.1 의 주사위 세 경우가 “다른 수집 규칙 → 다른 우도” 를 보였다. § 8.7 은 그 교훈의 정밀 분해. 기반이 되는 모형 \(p(y \mid \theta)\) 은 모두 \(\mathrm{N}(\theta, 1)\) 로 같다. 달라지는 건 오직 \(p(I \mid y, \phi)\) — 관측 여부 규칙.
이 예제의 교육적 가치: “결측 메커니즘 모형” 이 추상 개념이 아니라 실제 계산 결과를 바꾸는 구체적 인자 임을 보이는 것. 6 변종을 차례로 풀며 언어가 수치로 나타나는 과정을 본다.
2.2 변종 1 — MCAR, 알려진 결측 확률
저울이 무작위로 (확률 \(0.1\)) 값을 출력하지 못함. \(\pi = 0.9\) 고정·공개.
포함 모형:
\[ I_i \sim \mathrm{Bernoulli}(0.9), \quad I \perp y \]
\(y\) 와 독립 → MCAR. \(\phi = 0.9\) (고정) → known. 따라서 ignorable:
\[ p(\theta \mid y_{\mathrm{obs}}, I) = p(\theta \mid y_{\mathrm{obs}}) = \mathrm{N}(\theta \mid \bar{y}_{\mathrm{obs}}, 1/91) \]
“\(n = 91\) 이 사전에 고정” 된 경우와 같은 사후. 이항 분포로 \(n\) 이 랜덤이 됐지만 \(\theta\) 사후에는 흔적 없음.
2.3 변종 2 — MCAR, 알려지지 않은 결측 확률
같은 상황, 그러나 \(\pi\) 미지. 포함 모형은:
\[ I_i \mid \pi \sim \mathrm{Bernoulli}(\pi), \quad I \perp y \mid \pi \]
결합 사후:
\[ p(\theta, \pi \mid y_{\mathrm{obs}}, I) \propto p(\theta, \pi) \cdot \mathrm{N}(\theta \mid \bar{y}_{\mathrm{obs}}, 1/91) \cdot \mathrm{Bin}(n \mid 100, \pi) \]
Distinct parameters 여부가 결정적.
- \(\theta \perp \pi\) (사전 독립) → ignorable. 변종 1 과 같은 사후.
- \(\theta \not\perp \pi\) 면 ignorable 아님. 극단적으로 \(\pi = \theta / (1 + \theta)\) 같이 결정적 관계가 있다면 \(n/N = 91/100\) 자체가 \(\theta\) 를 식별.
두 번째 경우의 사후:
\[ p(\theta \mid y, I) \propto \mathrm{N}(\theta \mid \bar{y}_{\mathrm{obs}}, 1/91) \cdot \mathrm{Bin}(n \mid 100, \theta/(1+\theta)) \]
측정값 91 개 우도 + “91 개 중 몇 개가 기록되었나” 의 우도 가 함께 들어감. 그리드에서 \(\theta\) 에 대해 수치 계산 가능.
일반적으로 “9 개 빠짐” 이라는 사실은 \(\theta\) 와 무관. 그러나 결측률이 \(\theta\) 에 의존한다면 그 빠진 숫자 자체가 \(\theta\) 의 정보원.
이것이 § 8.2 에서 말한 “MAR 만으로는 부족, distinct parameters 도 필요” 의 구체 예. MAR 은 만족 (\(I\) 는 \(y\) 와 독립) — 그런데 \(\theta, \pi\) 의 사전 결합으로 “\(\pi\) 에 대한 정보가 \(\theta\) 로 새어 나옴”.
2.4 변종 3 — 알려진 검열점
저울은 항상 값을 출력하지만 상한 200 kg. 200 초과는 “too heavy” 로 보고. 정확 수치 91 개 + “too heavy” 9 개.
포함 모형:
\[ \Pr(I_i = 1 \mid y_i) = \begin{cases} 1 & y_i \le 200 \\ 0 & y_i > 200 \end{cases} \]
\(I\) 가 \(y\) 에 의존 → MAR/MCAR 아님. Nonignorable. 그러나 검열점 200 이 알려져 있으므로 known.
사후 유도:
\[ p(\theta \mid y_{\mathrm{obs}}, I) \propto p(\theta) \prod_{i=1}^{91} \mathrm{N}(y_{\mathrm{obs}, i} \mid \theta, 1) \prod_{i=1}^{9} \Phi(\theta - 200) \]
\(\Phi(\theta - 200) = \Pr(y_i > 200 \mid \theta)\) (정규 CDF). 검열된 9 개 각각이 “\(y > 200\) 일 확률” 기여.
\[ p(\theta \mid y_{\mathrm{obs}}, I) \propto \mathrm{N}(\theta \mid \bar{y}_{\mathrm{obs}}, 1/91) \cdot [\Phi(\theta - 200)]^9 \]
수치 계산 + inverse CDF 로 \(\theta\) 샘플 추출. 우도가 \(\theta\) 를 200 방향으로 끌어당긴다 — “\(y > 200\) 이 9 번 일어났으니 \(\theta\) 가 너무 작을 리 없다”.
2.5 변종 4 — 알려지지 않은 검열점 (식 8.20)
검열점 \(\phi\) 가 미지. 9 개의 “too heavy” 기여가 \(\Phi(\theta - \phi)\).
완전 데이터 우도:
\[ p(y \mid \theta) = \prod_{i=1}^{100} \mathrm{N}(y_i \mid \theta, 1) \]
포함 모형:
\[ p(I \mid y, \phi) = \prod_{i=1}^{100} \begin{cases} 1 & (I_i = 1 \land y_i \le \phi) \lor (I_i = 0 \land y_i > \phi) \\ 0 & \text{otherwise} \end{cases} \]
\(y_{\mathrm{mis}}\) 를 적분해 관측 데이터 우도를 얻는다:
\[ \begin{aligned} p(y_{\mathrm{obs}}, I \mid \theta, \phi) &= \int p(y, I \mid \theta, \phi) \, dy_{\mathrm{mis}} \\ &= \prod_{i: I_i = 1} \mathrm{N}(y_i \mid \theta, 1) \prod_{i: I_i = 0} \int_{\phi}^{\infty} \mathrm{N}(y_i \mid \theta, 1) \, dy_i \\ &= \prod_{i=1}^{91} \mathrm{N}(y_{\mathrm{obs}, i} \mid \theta, 1) \cdot [\Phi(\theta - \phi)]^9 \\ &\propto \mathrm{N}(\theta \mid \bar{y}_{\mathrm{obs}}, 1/91) \cdot [\Phi(\theta - \phi)]^9 \end{aligned} \tag{8.20} \]
결합 사후:
\[ p(\theta, \phi \mid y_{\mathrm{obs}}, I) \propto p(\phi \mid \theta) \cdot \mathrm{N}(\theta \mid \bar{y}_{\mathrm{obs}}, 1/91) \cdot [\Phi(\theta - \phi)]^9 \cdot 1_{\phi > \max(y_{\mathrm{obs}})} \]
지시자 \(1_{\phi > \max(y_{\mathrm{obs}})}\): 관측된 값 중 최대가 검열점보다 크면 불가능 — 관측됐다면 \(\phi\) 이하여야. 이것이 \(y_{\mathrm{obs}}\) 로부터 \(\phi\) 에 대한 정보.
\(\theta\) 와 \(\phi\) 가 사전에서 독립이어도 사후에선 상관. 이유: \([\Phi(\theta - \phi)]^9\) 이 \(\theta\) 와 \(\phi\) 의 상호작용을 포함. 그리드 / MCMC 필수.
변종 3: 검열점 200 고정. 9 개의 “초과 관측” 이 \(\theta\) 에 대한 직접적인 정보 (“\(y > 200\) 이 9/100 = 0.09 확률” → \(\theta\) 가 200 보다 약 ~1.34σ 아래에 있어야 맞음).
변종 4: 검열점이 미지. “9 개 초과” 와 “관측된 값들의 범위 상한” 이 \(\theta\) 와 \(\phi\) 를 동시에 제약. 둘을 marginalize 해야 \(\theta\) 사후가 나옴 → 불확실성이 더 커짐.
일반 법칙: 수집 과정의 모수를 모를수록 \(\theta\) 사후가 넓어진다. \(\phi\) 에 대한 정보성 사전이 있다면 그만큼 좁아짐.
2.6 변종 5 — 절단 데이터 (Truncated Data)
누군가가 91 개 관측값을 보고하지만 전체 시도 횟수는 숨김. 200 초과는 자동 버려짐 (검열처럼 “too heavy” 도 기록되지 않음).
검열 vs 절단의 핵심 차이:
| 검열 | 절단 | |
|---|---|---|
| 초과 값 | “too heavy” 로 카운트됨 | 존재 자체를 모름 |
| 시도 횟수 | 알려짐 | 모름 |
| \(y > \phi\) 확률 정보 | 9/100 로 직접 | 간접·약함 |
\(N\) 자체가 미지. 결합 사후:
\[ p(\theta, N \mid y_{\mathrm{obs}}, I) \propto p(\theta, N) \binom{N}{91} \mathrm{N}(\theta \mid \bar{y}_{\mathrm{obs}}, 1/91) [\Phi(\theta - 200)]^{N - 91} \]
\(N\) 을 적분해 \(\theta\) marginal 을 얻는다. \(p(\theta, N) \propto 1/N\) 사전 (Jeffreys 유형) 가정 시:
\[ p(\theta \mid y_{\mathrm{obs}}, I) \propto \mathrm{N}(\theta \mid \bar{y}_{\mathrm{obs}}, 1/91) \sum_{N=91}^{\infty} \frac{1}{N}\binom{N}{91}[\Phi(\theta - 200)]^{N-91} \]
합이 음이항 분포의 정규화 꼴 (\(\alpha = 91\), 성공 확률 \(\Phi(\theta - 200)\) 로 해석):
\[ \sum_{N=91}^{\infty} \binom{N-1}{90}[\Phi(\theta - 200)]^{N-91} = [1 - \Phi(\theta - 200)]^{-91} \]
따라서:
\[ p(\theta \mid y_{\mathrm{obs}}, I) \propto \mathrm{N}(\theta \mid \bar{y}_{\mathrm{obs}}, 1/91) \cdot [1 - \Phi(\theta - 200)]^{-91} \]
절단 분포 로도 직접 얻을 수 있다:
\[ p(y_{\mathrm{obs}, i} \mid \theta) = \frac{\mathrm{N}(y_{\mathrm{obs}, i} \mid \theta, 1)}{\Phi(200 - \theta)} \]
91 개 곱하면 위 식과 일치. 두 경로 (결측 메커니즘 명시 vs 직접 절단 분포) 가 같은 결과.
2.7 변종 6 — 알려지지 않은 절단점
절단점 \(\phi\) 도 미지. 사후:
\[ p(\theta, \phi, N \mid y_{\mathrm{obs}}, I) \propto p(\theta, \phi, N) \binom{N}{91} \mathrm{N}(\theta \mid \bar{y}_{\mathrm{obs}}, 1/91) [\Phi(\theta - \phi)]^{N-91} \]
\(p(N \mid \theta, \phi) \propto 1/N\) 하에서:
\[ p(\theta, \phi \mid y_{\mathrm{obs}}, I) \propto p(\theta, \phi) \mathrm{N}(\theta \mid \bar{y}_{\mathrm{obs}}, 1/91) [1 - \Phi(\theta - \phi)]^{-91} \]
문제: 균등 사전 하에서 \(\phi\) 의 주변 사후가 부적절 (improper). \(\phi \to \infty\) 일 때 \([1 - \Phi(\theta - \phi)]^{-91} \to 1\) — 적분 발산.
결과적으로 \(\theta\) 의 주변 사후는 변종 1 과 같음:
\[ p(\theta \mid y_{\mathrm{obs}}) = \mathrm{N}(\theta \mid \bar{y}_{\mathrm{obs}}, 1/91) \]
절단 분포는 관측된 값들의 분포만 “정상화” 할 뿐, “몇 개가 절단됐는지” 에 대한 정보가 없다. \(\phi\) 에 정보적 사전이 없으면, 극단적으로는 “\(\phi\) 가 무한대” 라는 가설도 허용 — 그러면 절단이 전혀 없는 셈.
사후는 “\(\phi\) 가 매우 큼 + 절단 없음” 시나리오에 지배되어 MCAR 처럼 동작. 이것이 §8.7 의 미묘한 교훈: “모른다” 는 것의 비용이 수식에 녹아 있음. \(\phi\) 에 대한 사전 정보가 있어야만 (예: “\(\phi \in [150, 250]\)”) 제대로 된 추론이 가능.
2.8 여섯 변종의 비교 표
| 변종 | 메커니즘 | \(\phi\) | Ignorable? | \(\theta\) 사후 |
|---|---|---|---|---|
| 1 | MCAR | known | O | \(\mathrm{N}(\bar{y}_{\mathrm{obs}}, 1/91)\) |
| 2 | MCAR | unknown | 조건부 O | distinct 면 변종 1 과 같음 |
| 3 | Censoring | known (200) | X | \(\mathrm{N}(\cdot) \cdot [\Phi(\theta - 200)]^9\) |
| 4 | Censoring | unknown | X | 결합 사후 \(p(\theta, \phi)\) |
| 5 | Truncation | known (200) | X | \(\mathrm{N}(\cdot) \cdot [1 - \Phi(\theta - 200)]^{-91}\) |
| 6 | Truncation | unknown | X | 비정보 사전 하 변종 1 과 같음 (사후 improper) |
2.9 더 복잡한 결측 패턴
Ch.8 § 8.7 말미의 확장 (p.228). 실제 데이터는 단순 0/1 이 아니라:
- Rounded data — 키를 인치 단위로 반올림, 나이를 년 단위로 내림.
- Binned data — 소득을 구간으로만 보고.
- Coarse categorical data — “기독교” 라고만 응답, 개신교/가톨릭 미분류.
일반화: 포함 지시자 \(I_i\) 가 단순 0/1 이 아니라 “\(y_i\) 가 속하는 부분집합” 의 지표. 관측 정보가 집합 \(A_i \subset \mathcal{Y}\) 여서 \(y_i \in A_i\) 임을 안다는 형태. 우도는:
\[ p(y_{\mathrm{obs}, i} \mid \theta) = \int_{A_i} p(y_i \mid \theta) \, dy_i \]
Ch.18.6 이 이 확장을 깊이 다룬다.
3 § 8.8 — Discussion 의 한 문단
Ch.8 § 8.8 의 핵심 한 문장:
데이터 수집 방법은 valid Bayesian 분석에 필요한 최소 모델링 수준을 규정한다.
세부 원칙 네 가지.
- 설계 변수를 조건부에 포함. 표본 조사의 층·군집, 실험의 블록을 \(x\) 에 넣으면 ignorable.
- Ignorable 이면 \(I\) 를 분석에서 무시 가능 — 그러나 모델 점검 단계에서는 \(I\) 가 여전히 필요 (사후 예측 replication 이 원래 설계를 따라야).
- 공변량에 기록된 모든 설계 정보를 활용하면 Ch.14~16 의 회귀·GLM 표준 도구를 그대로 적용 가능. Ch.8 는 그 전제를 깔아 준다.
- 계층 모형이 베이즈의 핵심 이점. 다중 모수 불확실성 + 수집 과정과 과학적 과정을 함께 계층화.
이 네 원칙이 § 8.1~8.7 의 모든 결과를 한 문장으로 요약한다.
저자가 강조하는 지점: 충분한 공변량이 있으면 “복잡한” 포함 모형을 안 써도 된다. 즉, 데이터 수집의 복잡함을 공변량 \(x\) 로 흡수하는 것이 베이즈 접근의 요체.
반대로, 공변량이 부실하면 \(p(I \mid y, \phi)\) 를 명시 모형화해야 하고, 이는 모델 민감도를 키운다. 이 때문에 “공변량을 많이 기록” 이 실험/조사 설계의 일반 원칙이 된다. 분석 단계가 아닌 설계 단계에서 ignorability 를 확보하는 게 훨씬 경제적.
4 § 8.9 — Bibliographic Note 의 지도
Ch.8 § 8.9 의 참고문헌은 베이즈 인과 추론의 지적 계보도. 핵심 좌표를 추린다.
4.1 기초 프레임의 창시
- Neyman (1923) — potential outcomes 개념의 원저 (무작위 실험 맥락).
- Rubin (1974b, 1976) — potential outcomes 를 관찰 연구로 확장, ignorability/MAR/distinct parameters 공식 정의.
- Rubin (1978a) — 처치 배정을 결측 데이터 메커니즘으로 보는 베이즈 통합.
- Rubin (1980a, 1987a, 1990) — stability 가정 정교화.
4.2 인과 추론의 비베이즈 병행 체계
- Robins 학파 — 그래프·marginal structural model.
- Pearl (2010) — do-calculus 와 backdoor criterion.
- Greenland, Robins, Pearl (1999) — 세 관점 통합 논의.
- Imbens & Angrist (1994) — LATE 의 IV 해석 (Ch.8.6 의 베이즈 대응).
4.3 Propensity Score 와 Principal Stratification
- Rosenbaum & Rubin (1983a) — propensity score 원저, “strongly ignorable” 용어 도입.
- Rosenbaum & Rubin (1983b) — nonignorable 모형 감도 분석.
- Frangakis & Rubin (2002) — principal stratification 원저.
- Imbens & Rubin (1997) — vitamin A 예제의 principal stratification + IV 통합.
4.4 Sequential Design
- Anscombe (1963), Edwards-Lindman-Savage (1963), Pratt (1965) — 순차 실험의 우도 원리 논쟁.
- Berger (1985 Ch.7) — 의사결정 이론 관점.
- Berry et al. (2010) — 현대 베이즈 실무.
4.5 결측 데이터·Censoring
- Little & Rubin (2002) — 결측 데이터 표준 참고서.
- Heckman (1979) — 경제학의 selection model.
- Heitjan & Rubin (1990, 1991) — rounding·coarse data 일반화.
4.6 Survey·Hierarchical
- Scott & Smith (1969), Little (1991, 1993) — 계층 표본조사 모형.
- Gelman & Carlin (2001), Gelman (2007a) — survey weight 와 계층 모형의 연결.
이 참고문헌들은 Ch.18 (결측), Ch.14~16 (회귀·GLM), Ch.15 (계층) 의 기초를 구성한다.
5 § 8.10 — 연습문제 심화 풀이
17 개 문제 중 개념적 핵심 8 개를 풀이 요지로.
5.1 문제 1 — Randomization vs Exchangeability vs Ignorability 교차표
여섯 명제의 진위와 “kernel of truth” 를 평가. 세 개념의 관계를 교차 정리.
| 명제 | 진위 | Kernel |
|---|---|---|
| (a) Randomization \(\Rightarrow\) exchangeability | ✗ | 데이터 분포가 교환 가능하려면 단위가 교환 가능해야 하는데 이는 사전 신념 기준. 무작위화는 이 조건을 촉진 하되 보장은 안 함 |
| (b) Randomization \(\Leftarrow\) exchangeability | ✗ | 교환 가능 가정은 비무작위 설계에서도 사전 신념에 따라 유효. 예: 관찰 연구의 i.i.d. 모형 |
| (c) Randomization \(\Rightarrow\) ignorability | ✓ | 무작위화가 \(I \perp y \mid \phi\) 를 보장. Ignorability 의 충분 조건 |
| (d) Randomization \(\Leftarrow\) ignorability | ✗ | Ignorability 는 “결정적 규칙 \(I\) \(\mid\) \(x\)” 에서도 성립 — 예: “\(x > c\) 면 전원 감사” |
| (e) Ignorability \(\Rightarrow\) exchangeability | ✗ | 두 개념이 다른 차원을 규정. Ignorability 는 메커니즘, exchangeability 는 단위 분포 |
| (f) Ignorability \(\Leftarrow\) exchangeability | ✗ | 교환 가능한 단위도 비무작위·nonignorable 수집될 수 있다 |
교환 가능성 은 “단위 \(i\) 와 \(j\) 를 구별할 사전 이유가 없다” (de Finetti 조건). Ignorability 는 “수집 규칙이 추론을 왜곡하지 않는다” (\(p(I \mid y, \phi) = p(I \mid y_{\mathrm{obs}}, \phi) + \text{distinct}\)). Randomization 은 “수집 규칙이 난수 생성기에서 나온다” (physical/epistemic).
세 개념이 자주 혼동되는 이유: 무작위화가 실제로 세 조건 모두를 편리하게 만든다. 그러나 논리적으로 분리. 연습문제 1 의 목적은 이 분리를 수치·예시 수준에서 확인하는 것.
5.2 문제 4 — SUTVA 위반: 비료 침투
농업 실험, 20 plot 에 두 비료 각 10 plot 랜덤 배정. 이웃 plot 으로 비료 침투.
(a) 완전 데이터 구조. 잠재 결과를 단순 \((y_i^A, y_i^B)\) 로 쓰면 SUTVA 가정 — 실패. 정확한 표기:
\[ y_i(T_1, T_2, \ldots, T_{20}) \quad \text{for each treatment assignment vector} \]
현실적 단순화: 각 plot 은 자신 + 양옆 두 plot 의 처치에만 의존. 즉 \(y_i(T_{i-1}, T_i, T_{i+1})\) — 각 \(y_i\) 의 잠재 결과가 \(2^3 = 8\) 차원.
(b) Ignorable? 완전 무작위 배정이 \(T\) 와 \(y\) 간 독립을 보장 → ignorable. 단, 완전 데이터 \(y\) 를 \(2^{20}\) 차원이 아닌 “이웃 3 plot 모델” 로 좁힌 경우에 국한.
(c) Finite-population estimand. “\(A\) vs \(B\) 의 평균 효과” 를 어떻게 정의할지 모호. 대안들:
- Pure effect: 모든 이웃이 같은 처치일 때의 효과. \(y_i(A, A, A) - y_i(B, B, B)\).
- Marginal effect: 무작위 이웃 분포 하 기대 효과.
(d) 확률 모형. 이웃 처치의 영향을 선형 가중으로:
\[ y_i = \alpha + \beta T_i + \gamma (T_{i-1} + T_{i+1}) + \epsilon_i \]
\(\beta\) = direct effect, \(\gamma\) = spillover. Spillover 모형화로 SUTVA 위반을 복구.
5.3 문제 5 — Penicillin Randomized Blocks (Table 8.6)
4 처치 × 5 블록 × 각 블록 내 무작위 배정. 20 관측.
(a) 표기. \(x\) = 블록 지시자 (20 × 5 행렬). \(y_{\mathrm{obs}}\) = 20 개 관측, \(y_{\mathrm{mis}}\) = 4 처치 × 5 블록 = 20 칸 중 관측 외 60 개. \(N = 80\), \(n = 20\), \(I\) 는 20 × 4 (각 행에 정확히 하나의 1).
(b) \(I\) 의 분포. Randomized block 이므로:
\[ p(I \mid x) = \prod_{\text{block } j} \frac{1}{4!} \]
블록별 독립 무작위 배정. Ignorable given \(x\) (strongly ignorable). Known (명시적 규칙). Propensity score \(\pi_{ij} = 1/4\) for all — 충분 요약.
(c) 정규 모형.
\[ y_{\mathrm{obs}, ij} \sim \mathrm{N}(\mu + \alpha_j + \beta_{k(i,j)}, \sigma^2) \]
\(\alpha_j\) = 블록 효과 (\(j = 1, \ldots, 5\)), \(\beta_k\) = 처치 효과 (\(k = 1, \ldots, 4\)), \(\sum \alpha_j = \sum \beta_k = 0\) 제약.
(d) Superpopulation estimand. 블록 조건부 평균 \(\mu + \beta_k\) 를 \(\alpha_j\) 분포에 대해 평균:
\[ \bar{y}_{\mathrm{pop}, k} = \mu + \beta_k \]
블록이 교환 가능이라면 \(\mathbb{E}[\alpha_j] = 0\) 이므로 처치별 모집단 평균은 \(\mu + \beta_k\).
5.4 문제 11 — Capture-Recapture
\(N\) 마리 물고기. 100 마리 표시 후 풀어줌. 재포획: 20 표시 + 70 미표시 = 90 마리.
(a) \(N\) 사후. 균등 사전 \(p(N) \propto 1\) (또는 \(\propto 1/N\)). 재포획 우도 — hypergeometric:
\[ p(\text{20 tagged in 90} \mid N) = \frac{\binom{100}{20}\binom{N - 100}{70}}{\binom{N}{90}} \]
\[ p(N \mid \text{data}) \propto \frac{\binom{N - 100}{70}}{\binom{N}{90}} \]
(b) 적절성. \(p(N) \propto 1\) 하에서 사후는 \(N \to \infty\) 로 발산 여부 점검 필요. \(\binom{N-100}{70} / \binom{N}{90} \sim N^{-20}\) (대략) — proper.
(c) 다음 물고기가 표시될 확률. 예측 분포:
\[ \Pr(\text{next tagged} \mid \text{data}) = \mathbb{E}\!\left[\frac{100 - 20}{N - 90} \mid \text{data}\right] = \int \frac{80}{N - 90} p(N \mid \text{data}) \, dN \]
\(N\) 의존성이 사라진 형태로 표현하려면 적분 결과가 수치. 핵심: posterior predictive 는 posterior 로부터 자동 도출.
(d) “20 중 15 확실, 5 불확실”. Compliance 와 같은 구조 — 5 개의 tagged 상태가 결측. 확장 사후:
\[ p(N, k \mid \text{data}) \propto p(N) \cdot \Pr(\text{15 definitely tagged, 5 uncertain} \mid N, k) \]
\(k\) = 5 중 실제 tagged 수. \(k \sim \mathrm{Hypergeometric}\) 로 모형화.
5.5 문제 12 — PPS with Phone Lines (Table 8.7)
가구의 응답 확률이 전화선 수에 비례. 관측: preference × phone lines 테이블.
(a) 모형화. 두 층:
- \(p(\text{preference} \mid \text{lines})\): 각 phone line 카테고리별 multinomial.
- \(p(\text{lines in pop})\): 모집단에서 phone line 분포.
파라미터화 (8.8) 적용:
\[ \alpha_{1L} = \frac{\theta_{1L}}{\theta_{1L} + \theta_{2L}}, \quad \alpha_{2L} = 1 - \theta_{3L} \]
(b) 가정. 전화선 0 개 가구 (응답 불가) 는 ignorable 로 가정 또는 모집단 조사로 보완.
(c) 결합 사후. Dirichlet × Dirichlet 형태.
(d-e) 시뮬레이션. PPS 가중 후 Bush-Dukakis 격차 히스토그램이 § 3.4 (단순 SRS 가정) 결과와 차이. 가중 후 격차가 약간 좁아지거나 이동 — 많은 phone line 가구가 과대 표집됐기 때문.
5.6 문제 15 — Biased-Coin Sequential
Efron (1971) 의 biased-coin. 이전 단위들의 배정 비율이 균등하면 확률 \(1/2\), 아니면 적게 배정된 처치에 확률 \(p \in (1/2, 1]\).
(a) 필수 공변량. 진입 순서 (entry order) 와 이전 단위들의 배정 \(T_{1:i-1}\). 이걸 기록하면 ignorable.
(b) 분석 개요. 회귀 모형 \(y \mid T, \text{order}, \text{history}, \theta\). 배정 메커니즘 자체는 무시 (ignorable) 하되, 진입 시점의 환경 변화를 공변량으로.
(c) 모델 민감도. 시간에 따른 처치 효과 변화를 놓치면 편향. 예: 실험 후반에 의료진의 숙련도 향상이 효과를 증폭.
(d) 대안 비교.
- \(p = 1/2\): 독립 randomization. Balance 보장 못 함 (소표본 편향).
- \(p = 1\): 완벽 balance, 하지만 결정론 → 예측 가능 → cheating 여지.
- \(p \in (1/2, 1)\): 절충. Strongly ignorable 아님 (past 에 의존) 이지만 ignorable.
5.7 문제 16 — Vitamin A IV (Table 8.5)
(a) Ignorable? 배정이 randomized 이므로 ignorable. Strongly ignorable: 배정이 \(y\) 는 물론 \(U\) (compliance) 와도 독립 (배정 전에 결정) → O. Known: 명시적 randomization → O.
(b) ITT 추정. 배정군 생존율 - 통제군 생존율. 이전 포스트 § 8.6 의 수치: \(\approx 0.0026\).
(c) IV estimate:
\[ \widehat{\mathrm{CACE}} = \frac{\bar{y}_1 - \bar{y}_0}{\hat{p}_c} \approx \frac{0.0026}{0.8} \approx 0.0033 \]
(d) 완전 compliance 알 때의 우도.
\[ L(\theta) = \prod_{\text{complier}} p(y_i \mid T_i, \theta_c) \prod_{\text{never-taker}} p(y_i \mid \theta_n) \]
Complier 와 never-taker 각각의 파라미터 \(\theta_c, \theta_n\) 분리. 실제로는 통제군의 compliance 가 미관측 → latent 변수로 추정.
5.8 문제 17 — Cell Culture Data Structure
2 처치 × 각 5 dish × dish 당 6 culture. 두 분석:
- \(n = 30\) per treatment, dish 간 독립 가정.
- \(n = 5\) per treatment, dish 평균 사용.
정답. 둘 다 완전하지 않다.
- (i): 종속성 무시 — dish 내 culture 들이 공통 조건 공유 (배지·온도) 하므로 독립 아님. 실효 표본 크기 과대 → 신뢰구간 너무 좁음.
- (ii): 정보 낭비 — 6 개 culture 가 서로 독립 정보를 주는데 평균으로 압축.
올바른 접근: 계층 모형.
\[ y_{ijk} \sim \mathrm{N}(\mu + \beta T_i + \alpha_{ij}, \sigma^2) \]
\(\alpha_{ij} \sim \mathrm{N}(0, \tau^2)\) — dish 효과.
\(\tau^2\) 가 dish 간 분산, \(\sigma^2\) 가 dish 내 분산. 계층 모형이 (i) 와 (ii) 의 양극단을 내삽하며 dish 내 상관을 올바르게 반영.
계층 모형의 정수는 pooling 의 양을 데이터가 결정한다는 것.
- \(\tau \to 0\): dish 효과 무시. 분석 (i) 와 같음.
- \(\tau \to \infty\): dish 간 완전 차이. 분석 (ii) 와 같음.
실제 \(\tau\) 는 데이터 우도로 추정 — 중간값. 이것이 § 8.3 의 CBS 16 strata 계층 모형이 극단 대신 shrinkage 를 주는 메커니즘과 동일. 문제 17 은 이 원리가 실험 설계 분석에도 적용됨을 확인.
6 Ch.8 전체 정리 — 5 포스트의 논리 흐름
Ch.8 심화 시리즈 5 편이 어떻게 한 논리 체계를 구성하는지.
| 포스트 | 역할 | 핵심 메시지 |
|---|---|---|
| 01-8-0 Overview | 지도 | 수집 과정이 모형의 일부 |
| 01-8-1 §8.1~8.3 | 언어 + 표본조사 | \((y, I)\) 분해, ignorable 유도, SRS/stratified |
| 01-8-2 §8.4~8.6 | 실험·관찰 연구 | Potential outcomes, randomization 이득, principal stratification |
| 01-8-3 §8.7~8.10 (본편) | 결측 분류·정리 | 6 변종, discussion, 연습 |
| (미작성) Ch.9 | 다음 단계 | 수집 비용을 효용으로 변환 |
Ch.8 의 한 문장:
같은 관측값도 수집 규칙이 다르면 다른 사후를 준다. 모형에 수집을 포함시키는 기준은 ignorability + distinct parameters 이며, 이 조건이 충족되면 \(I\) 를 무시해도 되고 충족 안 되면 수집 메커니즘 자체를 모형화해야 한다.
이 한 문장이 § 8.1 의 주사위부터 § 8.7 의 6 변종, § 8.6 의 vitamin A, § 8.4 의 Latin square까지 관통한다.
7 코드 — Censoring 4 변종 시뮬레이션
Gelman weighing 예제를 PyMC 로 직접 구현.
7.1 공통 데이터 생성
import numpy as np
import pymc as pm
import arviz as az
rng = np.random.default_rng(87)
# 참 모수
theta_true = 199.5 # 실제 무게 (검열 경계 근처로 극적)
N = 100
# 완전 데이터
y_full = rng.normal(theta_true, 1, size=N)
print(f"완전 데이터 평균: {y_full.mean():.3f}")
print(f"완전 데이터 > 200: {(y_full > 200).sum()} 개")
# 검열점
phi = 200
observed = y_full[y_full <= phi]
n_obs = len(observed)
n_mis = N - n_obs
print(f"관측: {n_obs}, 검열: {n_mis}")\(\theta_{\mathrm{true}} = 199.5\) 로 설정 — 대략 50% 확률로 \(y > 200\) 이므로 검열 효과 뚜렷.
7.2 변종 1 — MCAR naive
검열을 무시하고 관측값만 정규 가정.
with pm.Model() as m1_naive:
theta = pm.Flat("theta")
pm.Normal("y", mu=theta, sigma=1, observed=observed)
idata_1 = pm.sample(2000, tune=1000, random_seed=87)
print("변종 1 (naive MCAR):")
print(az.summary(idata_1, var_names=["theta"], round_to=3))사후 평균이 \(\bar{y}_{\mathrm{obs}} \approx 199.1\) 근처. 참값 \(199.5\) 보다 작음 — 검열된 9 개가 평균을 끌어올렸다는 정보를 잃음.
7.3 변종 3 — Known Censoring at 200
Ch.8 § 8.7 식 (8.20) 을 PyMC 의 Censored 또는 직접 로그 우도로 구현.
with pm.Model() as m3_censored:
theta = pm.Flat("theta")
# 관측값 기여
pm.Normal("y_obs", mu=theta, sigma=1, observed=observed)
# 검열된 n_mis 개 각각: log(1 - Phi(200 - theta)) = log(Phi(theta - 200))
# pm.Potential 로 사후에 추가
log_cens = n_mis * pm.math.log(
1 - pm.math.exp(pm.logcdf(pm.Normal.dist(mu=theta, sigma=1), 200))
)
pm.Potential("censored_contrib", log_cens)
idata_3 = pm.sample(2000, tune=1000, random_seed=87)
print("변종 3 (known censoring at 200):")
print(az.summary(idata_3, var_names=["theta"], round_to=3))사후 평균이 참값에 더 가까움 — 9 개의 “\(> 200\)” 정보가 \(\theta\) 를 올바른 방향으로 끌어당김.
7.4 변종 5 — Truncated Data (절단점 200 알려짐)
절단 분포를 직접 사용. PyMC 의 Truncated.
with pm.Model() as m5_trunc:
theta = pm.Flat("theta")
truncated_normal = pm.Truncated(
"y",
pm.Normal.dist(mu=theta, sigma=1),
upper=200,
observed=observed
)
idata_5 = pm.sample(2000, tune=1000, random_seed=87)
print("변종 5 (truncation at 200):")
print(az.summary(idata_5, var_names=["theta"], round_to=3))변종 3 (censoring) 보다 불확실성이 큼 — “몇 개가 잘렸는지” 모르니 정보가 적음.
7.5 세 사후 비교
sd_1 = float(idata_1.posterior["theta"].std())
sd_3 = float(idata_3.posterior["theta"].std())
sd_5 = float(idata_5.posterior["theta"].std())
mean_1 = float(idata_1.posterior["theta"].mean())
mean_3 = float(idata_3.posterior["theta"].mean())
mean_5 = float(idata_5.posterior["theta"].mean())
print(f"참값: {theta_true}")
print(f"변종 1 (naive): mean={mean_1:.3f}, sd={sd_1:.4f}")
print(f"변종 3 (censor): mean={mean_3:.3f}, sd={sd_3:.4f}")
print(f"변종 5 (truncate): mean={mean_5:.3f}, sd={sd_5:.4f}")예상 출력 패턴:
- 변종 1: 평균이 참값에서 편향.
- 변종 3: 평균이 참값에 가장 근접, sd 최소 (가장 많은 정보).
- 변종 5: 평균이 참값 근접, sd 가 변종 3 보다 큼 (\(N\) 미지로 인한 추가 불확실성).
이 세 결과가 § 8.7 의 이론적 유도가 수치적으로 정확함을 확인.
8 실전 체크리스트 — Ch.8 결산
§ 8.1~8.10 의 모든 교훈을 한 장 체크리스트로.
설계 단계
- 수집 규칙 문서화 — 누가·어떻게·왜 관측? \(I\) 를 명시 수식으로.
- 설계 변수를 공변량으로 — 층·블록·cluster·시간을 기록.
- 가능하면 무작위화 — ignorable 자동 획득, cheating 방지.
- SUTVA 점검 — spillover/간섭 가능성 평가. 있으면 구조 확장.
분석 단계
- Ignorability 판정 — MAR + distinct parameters 두 조건 모두 점검.
- \(x\) 조건부 분석 — 회귀·계층 모형으로 설계 정보 흡수.
- 결측 비율 확인 — 50% 이상이면 감도 분석 필수.
- Propensity overlap — 관찰 연구면 support 겹침 시각화.
점검 단계
- \(y^{\mathrm{rep}}\) 은 원래 \(I\) 를 따라야 — Ch.6 의 점검이 설계를 반영.
- 비정보 사전 + 미지 \(\phi\) 조합 주의 — 변종 6 처럼 improper 가능.
- 감도 분석 — 선형 vs 비선형, ignorable vs nonignorable 선택 모형.
- Principal stratification — 중간 결과가 있으면 \(C_{\mathrm{obs}}\) 를 covariate 취급 금지.
보고 단계
- Finite vs Superpopulation 구분 — 결론의 범위 명시.
- ITT 와 CACE 를 모두 — 정책·생리 효과 분리.
- 가정 표 제시 — MAR, exclusion restriction, SUTVA 의 타당성 근거.
9 관련 주제
선행 지식
- Ch.8 Overview (01-8-0) — § 8.1~8.7 전체 지도
- § 8.1~8.3 심화 (01-8-1) — 수집 모델 언어와 표본 조사
- § 8.4~8.6 심화 (01-8-2) — 실험·무작위화·관찰 연구
Ch.8 관련 확장
- Ch.9 Decision Analysis — 정보의 가치, 추가 관측의 효용
- Ch.14 Introduction to Regression Models — § 8.8 의 “회귀가 표준 도구” 구체화
- Ch.15 Hierarchical Linear Models — § 8.3 의 계층 표본조사 상세
- Ch.18 Missing Data — § 8.7 의 복잡한 결측 패턴 전개, multiple imputation
관련 개념
- Rubin (1976), Inference and missing data — ignorability/MAR/distinct parameters 삼위의 원저
- Rubin (1978a), Bayesian inference for causal effects — 처치 배정 = 결측 메커니즘
- Rosenbaum & Rubin (1983a) — propensity score, “strongly ignorable”
- Frangakis & Rubin (2002) — principal stratification
- Imbens & Rubin (1997) — vitamin A IV + principal stratification 통합
- Heitjan & Rubin (1990, 1991) — rounding·coarse data 일반화
- Little & Rubin (2002), Statistical Analysis with Missing Data — 실무 표준 참고서
- Pearl (2010), Causality — 베이즈 인과 추론의 비-잠재결과 병행 체계