1 정의
특정 공변량 값 \(L=l\) 의 부분군에서의 평균 인과 효과:
\[\mathrm{E}[Y^{a=1} - Y^{a=0} | L = l]\]
ATE = \(\mathrm{E}[Y^{a=1} - Y^{a=0}]\) 는 모집단 전체의 평균 효과; 조건부 효과는 \(L\) 의 함수. 효과 수정이 없으면 둘이 같지만, 효과 수정 (HTE) 이 있으면 다르다.
직관 — Marginal vs conditional 의 정책적 의미: ATE 는 “이 정책을 모집단 전체에 적용하면 평균 효과가 얼마인가?” 의 답. 조건부 효과는 “여성에게는, 노인에게는, 흡연자에게는 효과가 얼마인가?” 의 답. 개인화·정밀의학에서는 조건부가 더 중요하고, 정책 결정에서는 marginal 이 더 직관적.
2 14.1 인과 질문의 재정의
2.1 Marginal 효과 → Conditional 효과
Ch.12 의 IPW 와 Ch.13 의 표준화는 모집단 평균 인과 효과 (ATE) 를 추정. 같은 데이터에서 조건부 효과를 추정하려면
| 도구 | 조건부 효과 추정 방식 |
|---|---|
| IPW (MSM) | 공변량 product term 추가 |
| 표준화 | 부분 표본별 분석 또는 효과 수정 모형 |
| G-estimation | 본질적으로 조건부 효과를 추정 |
:::
직관 — G-estimation 이 조건부에 자연스러운 이유: SNMM 의 정의 자체가 \(L\) 에 조건부. \(\mathrm{E}[Y^a - Y^{a=0} | A=a, L] = \beta_1 a + \beta_2 a L\) 의 모수 \(\beta\) 가 직접 조건부 효과의 함수 형태. 모형 자체가 조건부 효과의 표현 도구다.
2.2 큰 데이터셋에서 조건부 효과 추정
Hernan 의 9 변수 NHEFS 에서 조건부 효과를 추정하려면 셀이 200 만 → 비모수 추정 불가. 모형 도입 필수.
| 접근 | 모형 |
|---|---|
| MSM with product terms | 모든 product term 포함된 marginal model + IPW |
| 표준화 with stratification | 부분 표본별 결과 모형 |
| 부분 모수 marginal model | \(V \subset L\) 의 일부만 모형에 표현 |
| SNMM + g-estimation | \(L\) 전체에 대한 조건부 효과를 직접 모형화 |
직관 — Faux marginal model 과의 연결: \(L\) 전체를 marginal model 에 넣으면 \(SW^A(L) = 1\) 이 되어 가중이 무의미 — Ch.12.5 의 faux MSM. 이 faux MSM 이 사실상 SNMM 과 동등 (Hernan, Fine Point 14.1). 두 도구의 수학적 일치성이 g-estimation 의 출발점.
3 14.2 교환가능성의 logistic 재표현
3.1 전통적 표현
조건부 교환가능성: \(Y^a \perp\!\!\!\perp A | L\), 양쪽 처치 수준 \(a \in \{0, 1\}\) 모두에서 성립.
3.2 G-estimation 의 표현
이항 처치 + \(a=0\) 의 잠재 결과에 집중하면 동등한 표현:
\[\Pr(A=1 | Y^{a=0}, L) = \Pr(A=1 | L)\]
“\(L\) 을 알면 \(Y^{a=0}\) 의 정보가 처치 확률 예측에 기여 안 함.”
직관 — 두 표현의 등가성: 조건부 독립이면 \(A \perp\!\!\!\perp Y^{a=0} | L\) → 베이즈 정리로 \(\Pr(A | Y^{a=0}, L) = \Pr(A | L)\). 독립을 회귀 모형의 계수 0 으로 표현 하는 형식적 변환.
3.3 Logistic 회귀 표현
\[\mathrm{logit}\, \Pr(A=1 | Y^{a=0}, L) = \alpha_0 + \alpha_1 Y^{a=0} + \alpha_2 L\]
조건부 교환가능성 아래 \(\alpha_1 = 0\).
이 사실이 g-estimation 의 추론 기반: - 만약 \(Y^{a=0}\) 의 후보 추정값 \(\widehat{Y}^{a=0}_\text{candidate}\) 에 대해 적합한 logistic 모형의 \(\widehat{\alpha}_1 = 0\) 이라면 그 후보가 진짜 \(Y^{a=0}\) 의 성질을 만족한다. - 다양한 후보를 시도해 \(\widehat{\alpha}_1 = 0\) 을 만족하는 후보를 찾으면 진짜 잠재 결과의 추정값.
직관 — 후보를 시도하는 게임: “잠재 결과를 모르므로 가능한 값들의 격자에서 후보를 시도. 후보가 \(A\) 와 독립이면 진짜 잠재 결과의 성질을 만족 → 그 후보가 진짜에 가장 가까움”. 잠재 결과의 추정을 회귀 계수의 0 검정으로 환원한 것이 g-estimation.
직관 — 동일한 logistic 의 다른 활용: Ch.12 의 propensity 모형 \(\mathrm{logit}\, \Pr(A=1|L) = \alpha_0 + \alpha_2 L\) 에 \(Y^{a=0}\) 한 변수를 추가한 형태. 동일한 도구 (logistic 회귀) 를 다른 목적 (가중치 추정 → 식별 검증) 으로 사용한다.
3.4 NHEFS 사례에서의 작동
g-estimation 의 절차 (다음 두 글에서 자세히):
- 후보 효과 \(\psi^\dagger \in \{2.0, 2.1, \ldots, 5.0\}\).
- 각 \(\psi^\dagger\) 에 대해 \(H(\psi^\dagger) = Y - \psi^\dagger A\) 계산 — 후보 \(\widehat{Y}^{a=0}\).
- Logistic 회귀: \(\mathrm{logit}\, \Pr(A=1 | H, L) = \alpha_0 + \alpha_1 H + \alpha_2 L\).
- \(\widehat{\alpha}_1 = 0\) 인 \(\psi^\dagger\) 찾기 → 그 값이 \(\widehat{\psi}_1\).
NHEFS 결과: \(\widehat{\psi}_1 \approx 3.45\) kg, IPW·표준화의 3.4~3.5kg 와 일치.
4 가정의 검증 vs 사용
G-estimation 은 조건부 교환가능성을 가정 하고 사용한다. 가정 자체를 데이터로 검증하지 않는다 — 그렇게 보일 수 있지만 다른 절차임에 주의.
만약 미관측 교란이 있어 진짜 \(\alpha_1 \neq 0\) 이라면, g-estimation 은 잘못된 “\(\widehat{\alpha}_1 = 0\) 가정” 으로 편향된 결과를 낸다.
직관 — Sensitivity Analysis 의 자연스러운 연결: 가정 \(\alpha_1 = 0\) 이 강한 가정이라면, “만약 \(\alpha_1 = 0.1\) (약한 미관측 교란) 이라면?” 으로 가정을 약화. 같은 절차로 다른 \(\psi^\dagger\) 가 도출된다 — sensitivity analysis 가 절차에 직접 통합. Ch.14.5 의 Fine Point 14.2.
5 도구 비교 — Marginal vs Conditional 효과
| 측면 | IPW MSM | 표준화 | G-estimation |
|---|---|---|---|
| 추정 대상 | Marginal ATE | Marginal ATE | Conditional 효과 |
| 모형 의존 | 처치 모형 | 결과 모형 | SNMM + 처치 모형 |
| 효과 수정 | Product term 추가 | 부분 표본 분석 | 자연스럽게 표현 |
| 미관측 교란 sensitivity | 별도 분석 | 별도 분석 | 절차에 통합 |
직관 — 도구의 적합 시나리오: ATE 만 필요 + 처치 모형 자신 → IPW. ATE + 결과 모형 자신 → 표준화. 조건부 효과 + sensitivity 가 중요 + 시간변동 처치 가능성 → g-estimation.
6 응용 분야
- 개인화 의료: 환자 특성별 처치 효과 추정
- A/B 테스트의 HTE: 사용자 세그먼트별 효과
- 약물역학: 미관측 교란 sensitivity 분석
- 임상시험의 부분군 분석: 조건부 효과의 명시적 추정
- 시간변동 처치: HIV·암 치료의 sequential 효과
7 코드 — Logistic α₁ = 0 검정
import pandas as pd
import statsmodels.formula.api as smf
nhefs = pd.read_csv("nhefs.csv").dropna(subset=["wt82_71"]).reset_index(drop=True)
# 한 후보 psi 에 대해 H 계산하고 logistic 회귀
def alpha1_for_psi(psi, data):
data = data.copy()
data["H"] = data["wt82_71"] - psi * data["qsmk"]
formula = (
"qsmk ~ H + sex + race + C(education) "
"+ age + I(age**2) + smokeintensity + I(smokeintensity**2) "
"+ smokeyrs + I(smokeyrs**2) + C(exercise) + C(active) "
"+ wt71 + I(wt71**2)"
)
m = smf.logit(formula, data=data).fit(disp=False)
return m.params["H"], m.pvalues["H"]
# 격자에서 alpha_1 가 0 에 가장 가까운 psi 찾기
import numpy as np
psis = np.arange(2.0, 5.0 + 0.001, 0.01)
results = [alpha1_for_psi(p, nhefs) for p in psis]
alphas, pvalues = zip(*results)
best_idx = np.argmin(np.abs(alphas))
print(f"G-estimate: psi = {psis[best_idx]:.3f}, alpha_1 = {alphas[best_idx]:.5f}")
# psi = 3.45, alpha_1 ~= 0
# 95% CI: p-value > 0.05 인 psi 들의 범위
within_ci = [p for p, pv in zip(psis, pvalues) if pv > 0.05]
print(f"95% CI: ({min(within_ci):.2f}, {max(within_ci):.2f})")
# (~2.5, ~4.5)직관 — α₁ = 0 검정의 P-value 의 미묘함: \(\alpha_1 = 0\) 가설 검정의 P-value 가 1 에 가까울수록 후보가 진짜에 가까움. 95% CI 는 P-value > 0.05 인 후보들의 범위 — 일반적인 신뢰구간의 정의의 역. 검정 결과 영역을 신뢰구간으로 사용 하는 inversion 절차.
8 한 줄 요약
조건부 효과 \(\mathrm{E}[Y^{a=1} - Y^{a=0} | L]\) 는 ATE 와 다르며 정밀의학·HTE 분석에 중요하다. 조건부 교환가능성을 logistic 회귀 \(\mathrm{logit}\, \Pr(A=1|Y^{a=0}, L)\) 의 계수 \(\alpha_1 = 0\) 으로 재표현하면 g-estimation 의 격자 검색 절차가 자연스럽게 도출된다. 미관측 교란 sensitivity 가 \(\alpha_1\) 의 가정 값 변경으로 직접 통합 — 다른 도구에는 없는 g-estimation 의 강점.
9 관련 주제
선행 지식
후속 주제
- SNMM 정의 + rank preservation — Ch.14.3-14.4
- G-estimation 절차 + 다중 모수 — Ch.14.5-14.6
- 성향점수 — Ch.15
- HTE 분석
다른 카테고리 연결
- 로지스틱 회귀 — 가설 검정 형식의 활용
- Sensitivity analysis