1 정의
\[SW^A = \frac{f(A)}{f(A|L)}\]
\(f(A)\) 는 \(L\) 에 의존하지 않는 처치의 marginal density 이다. 이항 처치에서 \(f(A=1) = \Pr(A=1)\), \(f(A=0) = \Pr(A=0) = 1 - \Pr(A=1)\).
잠재 결과 \(Y^a\) 의 모평균을 \(a\) 의 함수로 모형화한 등식.
\[\mathrm{E}[Y^a] = g(a; \boldsymbol\beta)\]
이항 처치의 saturated 형태: \(\mathrm{E}[Y^a] = \beta_0 + \beta_1 a\). 연속 처치의 비포화 형태: \(\mathrm{E}[Y^a] = \beta_0 + \beta_1 a + \beta_2 a^2\). 좌변이 잠재 결과의 함수이므로 일반 회귀로 직접 적합 불가 — IPW 가중 회귀가 일치 추정량.
직관 — “marginal” 이 의미하는 것: 공변량 \(L\) 에 대해 marginal — 즉 \(L\) 을 적분(평균) 한 후의 인과 효과를 묻는다. 이는 모집단 전체의 평균 효과 (ATE) 와 일치. 반면 conditional SMM 은 \(\mathrm{E}[Y^a | L] = g(a, L; \boldsymbol\beta)\) 처럼 \(L\) 의 부분군별 효과를 모형화 — 효과 수정을 다룰 때 사용.
2 12.3 안정화 IP 가중치
2.1 비안정화 vs 안정화 — 같은 답, 다른 분포
| 가중치 | 분자 | 평균 | 가상 모집단 크기 | 분산 |
|---|---|---|---|---|
| \(W^A = 1/f(A|L)\) | 1 | 2 | \(2n\) | 큼 |
| \(SW^A = f(A)/f(A|L)\) | \(f(A)\) | 1 | \(n\) | 작음 |
가상 모집단의 처치 분포가 다르게 정의됨에도 점추정 \(\widehat{\theta}_1\) 은 saturated 모형에서 같은 값을 준다 (NHEFS 사례 모두 3.4kg).
직관 — 같은 답인 이유: saturated 모형 \(\mathrm{E}[Y|A] = \theta_0 + \theta_1 A\) 의 가중 OLS 는 \(\widehat{\theta}_0 = \overline{Y}_{A=0}^{\text{weighted}}\), \(\widehat{\theta}_1 = \overline{Y}_{A=1}^{\text{weighted}} - \overline{Y}_{A=0}^{\text{weighted}}\) 를 준다. 가중 평균은 가중치의 비율이 같으면 같다 — 분자 \(f(A)\) 는 \(A\) 별로 일정해서 비율을 바꾸지 않으므로 같은 답이 나온다.
2.2 안정화가 분산을 줄이는 메커니즘
직관 — 가중치 분산이 추정 분산을 결정: 가중 회귀 추정량의 분산은 가중치 자체의 분산과 직접적으로 관련된다. 가중치 16.7 같은 극단치 한 명의 결과가 추정에 큰 영향을 주면 표본을 다시 뽑았을 때 추정값이 크게 흔들린다 = 큰 분산. 안정화 가중치는 같은 정보를 더 좁은 분포로 전달하므로 추정량의 분산이 작아진다.
NHEFS 사례에서 비안정화·안정화 가중치 분포 비교:
| 가중치 | 최소 | 최대 | 평균 | 표준편차 |
|---|---|---|---|---|
| \(W^A\) | 1.05 | 16.7 | 2.00 | 1.5 정도 |
| \(SW^A\) | 0.33 | 4.30 | 1.00 | 0.5 정도 |
직관 — 분포의 폭 차이: 비안정화는 4 배 넓다. 같은 환자에 대해 두 가중치가 비례적이지만 안정화 쪽이 평균 1 주변에 집중된다. 가중치 평균이 1 인 것이 sanity check — 가중 모집단 크기가 원 표본과 같다는 의미이다.
2.3 Saturated 모형에서는 같은 결과인 이유
이항 처치 + saturated 모형 \(\mathrm{E}[Y|A] = \theta_0 + \theta_1 A\) 에서
- 모수 2 개 (\(\theta_0, \theta_1\)) 가 두 그룹 평균 (\(\mathrm{E}[Y|A=0], \mathrm{E}[Y|A=1]\)) 을 정확히 결정.
- 데이터에 추가 제약이 부과되지 않음.
- 가중치의 분포 차이는 분산 추정에만 영향을 주고 점추정에는 영향이 없다.
직관 — 비포화 모형에서 안정화가 차이를 만드는 이유: 모수가 데이터에 제약을 부과하기 시작하면 (예: 연속 처치의 \(\theta_0 + \theta_1 A + \theta_2 A^2\)), 가중치 분포가 적합되는 곡선의 모양에 영향을 주기 시작한다. 이때 안정화 가중치가 더 좁은 분산으로 더 정확한 곡선을 그린다.
2.4 가중치 평균이 1 에서 벗어나면
\(\widehat{SW^A}\) 의 표본 평균이 1 에서 크게 벗어나면 두 가지 신호이다:
- 모형 misspecification: \(\widehat{f}(A|L)\) 가 진짜 분포와 다르다.
- 양의 확률 위반 또는 근접: 일부 \(L\) 영역에서 \(f(A=1|L) \approx 0\) 또는 \(1\).
NHEFS 사례에서 평균이 정확히 1.00 으로 추정되어 양호.
직관 — 평균 진단의 산술적 근거: \(\mathrm{E}[SW^A] = \mathrm{E}[\mathrm{E}[f(A)/f(A|L) | L]] = \mathrm{E}[\sum_a f(a) f(a|L) / f(a|L)] = \mathrm{E}[\sum_a f(a)] = 1\). 산술적으로 1 이 보장되는 양인데 표본에서 크게 어긋나면 모형 또는 양의 확률 문제이다.
3 12.4 Marginal Structural Mean Model
3.1 잠재 결과 모형의 정체
이항 처치 MSM:
\[\mathrm{E}[Y^a] = \beta_0 + \beta_1 a\]
- \(\beta_0 = \mathrm{E}[Y^{a=0}]\) — 모두가 비처치였을 때 평균 결과.
- \(\beta_1 = \mathrm{E}[Y^{a=1}] - \mathrm{E}[Y^{a=0}]\) — 평균 인과 효과 (ATE).
좌변의 \(Y^a\) 는 잠재 결과로 직접 관측 불가. 그러나 IPW 가중 회귀로 우변 모수가 추정 가능.
직관 — 같은 외형, 다른 의미: \(\mathrm{E}[Y|A] = \theta_0 + \theta_1 A\) (관측 회귀) 와 \(\mathrm{E}[Y^a] = \beta_0 + \beta_1 a\) (MSM) 은 수식이 거의 같지만 좌변의 의미가 본질적으로 다르다. 관측 회귀의 \(\theta_1\) 은 처치-결과 연관, MSM 의 \(\beta_1\) 은 인과 효과. IPW 가중이 둘을 같게 만들어준다 — 인과 식별의 핵심 trick.
3.2 IPW 가중 회귀가 MSM 의 일치 추정인 이유
조건부 교환가능성 \(Y^a \perp\!\!\!\perp A | L\) + 양의 확률 + 일관성 + 모형 옳음의 4 가정 아래
\[\mathrm{E}_{ps}[Y|A=a] = \mathrm{E}[Y^a]\]
가 성립한다 (Hernan & Robins, 2020, Technical Point 2.3). 가상 모집단(pseudo-population) 에서 \(Y\) 의 조건부 평균이 곧 잠재 결과 평균.
따라서 가중 회귀 \(\mathrm{E}[Y|A] = \theta_0 + \theta_1 A\) (가상 모집단에서) 는 MSM 의 모수 \(\beta_0 + \beta_1 a\) 를 일치 추정한다 — \(\theta = \beta\).
직관 — 가중치가 두 의미를 잇는 다리: 가중치 \(W^A\) 가 데이터를 \(L\)-편향 없는 가상 모집단으로 변환한다. 변환된 모집단에서는 처치-결과 연관 = 인과 효과 (왜냐하면 \(L \perp\!\!\!\perp A\)). 가중 회귀의 모수가 곧 인과 모수가 된다.
3.3 Null Preservation 의 안전 장치
진짜 평균 인과 효과가 0 이면 (\(Y^a\) 가 \(a\) 와 무관) MSM 이 어떤 함수 형태이든 항상 옳게 specified 된다. 예: \(\mathrm{E}[Y^a] = \beta_0 + \beta_1 a + \beta_2 a^2\) 모형은 \(\beta_1 = \beta_2 = 0, \beta_0 = \mathrm{E}[Y^a]\) 로 자동 옳음.
이 성질은 “효과 없을 때 효과 있다고 잘못 결론 내리지 않는다” 는 보호 장치.
직관 — 효과 없을 때만 옳음 보장: Null preservation 은 효과가 0 일 때만 작동하는 양면성. 효과가 있으면 함수 형태 가정이 정확해야 한다. 그러나 발견적 분석에서 “효과가 없을 가능성” 을 점검할 때 이 성질이 false positive 를 줄여준다.
3.4 다범주·연속 처치에서의 MSM
이항 처치는 saturated MSM 으로 충분하지만, 다범주·연속 처치는 비포화 MSM 이 필요.
연속 처치 사례 — 흡연량 변화: \(A\) = 1982 일일 흡연량 - baseline 흡연량 (kg 변화량 대신 개비 수).
\[\mathrm{E}[Y^a] = \beta_0 + \beta_1 a + \beta_2 a^2\]
NHEFS 의 1162 명 baseline 흡연량 25 개비 이하 부분 표본에서:
| 모수 | 추정값 |
|---|---|
| \(\widehat{\beta}_0\) | 2.005 (흡연량 변화 0 일 때 평균 체중 변화) |
| \(\widehat{\beta}_1\) | -0.109 |
| \(\widehat{\beta}_2\) | 0.003 |
\[\widehat{\mathrm{E}}[Y^{a=20}] - \widehat{\mathrm{E}}[Y^{a=0}] = 20 \widehat{\beta}_1 + 400 \widehat{\beta}_2 = -2.18 + 1.2 = -0.98 \text{ kg}\]
흡연량 20 개비/일 증가 시 평균 체중 -1.0kg (95% CI -3.7~1.5).
직관 — 연속 처치 MSM 의 함수 형태 선택: \(a, a^2\) 같은 다항 항을 어디까지 포함할지가 Ch.11 의 함수 형태 선택과 같은 트레이드오프. 더 유연하면 misspecification 위험 ↓ + 분산 ↑. Restricted cubic spline 같은 더 안정적인 평활 도구도 자주 사용.
3.5 연속 처치에서 가중치 추정의 어려움
연속 처치 \(A\) 에서 \(f(A|L)\) 는 확률 밀도 함수이다. 추정이 다음과 같이 어렵다.
- 분포 가정 필요 (보통 정규성).
- 평균과 분산 모두 모수 추정.
- 분포 가정이 약간만 어긋나도 가중치가 폭발할 수 있음.
- 추정값이 분포 모형 선택에 매우 민감.
연속 처치 IPW 는 신중히 사용해야 한다. 대안: g-formula (Ch.13), 도구변수 (Ch.16).
직관 — 왜 연속 처치 IPW 가 위험한가: 이항 처치에서는 \(f(A=1|L)\) 가 [0,1] 사이 확률이라 추정이 안정적이다. 연속 처치 \(f(A=a|L)\) 는 양의 무한대까지 갈 수 있는 밀도 — 분포 모형에 따라 매우 다른 값이 나오고, \(A\) 가 정규 가정에서 약간 벗어나면 큰 가중치가 생긴다.
3.6 이항 결과의 MSM — 로지스틱 형태
이항 결과 \(D \in \{0, 1\}\) (예: 사망) 에 대해 MSM 의 표준 형태:
\[\mathrm{logit}\, \Pr[D^a = 1] = \alpha_0 + \alpha_1 a\]
\(\exp(\alpha_1)\) 가 인과 odds ratio. NHEFS 에서 흡연 중단 → 1992 사망 odds ratio 추정값 \(\exp(\widehat{\alpha}_1) = 1.0\) (95% CI 0.8~1.4).
직관 — 인과 odds ratio 의 의미: “모두 금연 시 vs 모두 비금연 시” 의 사망 odds 비율. Logistic MSM 은 IPW 가중 logistic 회귀로 적합. 이항 결과에서는 odds ratio 보다 risk difference 또는 risk ratio 의 인과 의미가 더 직접적이라 Hernan 은 logistic MSM 을 자주 사용하지만, 결과 보고는 risk 척도로 변환 권장.
4 가중 회귀의 분산 추정
- 분석적 SE (theory-based): Influence function 으로 계산. 정확하지만 코드 작성 필요.
- Bootstrap: 표본 재추출로 분포 추정. 가정 적고 정확. 계산 시간 큼.
- Robust SE (sandwich): GEE 의 작업 상관 독립 + sandwich estimator. Conservative.
직관 — Conservative 의 의미: 명목 95% CI 가 실제로 95% 이상의 coverage 를 가진다 — 진짜 모수를 더 자주 덮는다. 단점은 너무 넓다 — 통계적 유의성을 놓칠 수 있다. 보수적 방향이라 결론의 robustness 에는 도움이 되지만 표본 효율은 낮다.
직관 — Bootstrap 이 권장되는 시나리오: 표본 크기가 작거나, 가중치 분포가 비대칭이거나, 모형이 복잡할 때. NHEFS 1566 명에서는 robust SE 와 bootstrap 결과가 거의 같지만, \(n=200\) 정도의 작은 표본에서는 bootstrap 이 더 정확.
5 왜 필요한가
| 상황 | 비안정화 \(W^A\) | 안정화 \(SW^A\) |
|---|---|---|
| 이항 처치, saturated 모형 | 같은 결과 | 같은 결과 |
| 다범주 처치, 비포화 MSM | 분산 큼 | 분산 작음 |
| 연속 처치 MSM | 매우 큰 가중치 | 가중치 폭 좁아짐 |
| 시간변동 처치 (Part III) | 곱으로 폭발 | 안정화 필수 |
직관 — 안정화의 가치는 모수 모형 복잡도에 비례: 단순 saturated 모형에서는 차이 없지만, 모형이 복잡해질수록 안정화의 효율 이득이 커진다. Part III 의 시간변동 g-방법에서는 가중치가 시점마다 곱해져 폭발하므로 안정화가 사실상 필수.
6 응용 분야
- 임상 코호트의 효과 수정 분석: MSM + product term
- 연속 처치 정책 평가: 처치 강도의 효과 곡선
- 이항 결과의 인과 odds ratio: 의료 위험 분석
- 비순응 처리: per-protocol 인과 효과
- Time-varying treatment: Part III 의 시간변동 g-formula
7 코드 — 안정화 가중치와 MSM
import pandas as pd
import numpy as np
import statsmodels.api as sm
import statsmodels.formula.api as smf
nhefs = pd.read_csv("nhefs.csv").dropna(subset=["wt82_71"]).reset_index(drop=True)
# Step 1: propensity score (denominator)
ps_formula = (
"qsmk ~ sex + race + C(education) "
"+ age + I(age**2) + smokeintensity + I(smokeintensity**2) "
"+ smokeyrs + I(smokeyrs**2) + C(exercise) + C(active) "
"+ wt71 + I(wt71**2)"
)
ps_model = smf.logit(ps_formula, data=nhefs).fit(disp=False)
nhefs["ps"] = ps_model.predict()
# Step 2: marginal probability (numerator)
p_a = nhefs["qsmk"].mean()
# Step 3: 안정화 가중치
nhefs["sw"] = np.where(
nhefs["qsmk"] == 1,
p_a / nhefs["ps"],
(1 - p_a) / (1 - nhefs["ps"]),
)
print(nhefs["sw"].describe()) # min ~0.33, max ~4.30, mean ~1.00
# Step 4: MSM — saturated linear model
X = sm.add_constant(nhefs["qsmk"])
msm = sm.WLS(nhefs["wt82_71"], X, weights=nhefs["sw"]).fit(cov_type="HC0")
print(msm.params) # const ~1.78, qsmk ~3.44
print(msm.conf_int(alpha=0.05)) # (~2.4, ~4.5)
# Step 5: 연속 처치 MSM — 흡연량 변화
nhefs_sub = nhefs[nhefs["smokeintensity"] <= 25].copy()
nhefs_sub["delta_smk"] = nhefs_sub["smkintensity82_71"] # 1982 - baseline 흡연량
# 분포 추정 (Gaussian)
density_model = smf.ols(
"delta_smk ~ sex + race + C(education) + age + I(age**2) "
"+ smokeintensity + I(smokeintensity**2) + smokeyrs + I(smokeyrs**2) "
"+ C(exercise) + C(active) + wt71 + I(wt71**2)",
data=nhefs_sub,
).fit()
sigma2 = density_model.resid.var()
mu_L = density_model.predict(nhefs_sub)
from scipy.stats import norm
f_a_given_L = norm.pdf(nhefs_sub["delta_smk"], loc=mu_L, scale=np.sqrt(sigma2))
mu_A = nhefs_sub["delta_smk"].mean()
sigma2_A = nhefs_sub["delta_smk"].var()
f_a = norm.pdf(nhefs_sub["delta_smk"], loc=mu_A, scale=np.sqrt(sigma2_A))
nhefs_sub["sw_continuous"] = f_a / f_a_given_L
print(nhefs_sub["sw_continuous"].describe()) # 평균 ~1, 범위 ~0.19~5.10
# 비포화 MSM
nhefs_sub["delta_smk2"] = nhefs_sub["delta_smk"] ** 2
X2 = sm.add_constant(nhefs_sub[["delta_smk", "delta_smk2"]])
msm_cont = sm.WLS(
nhefs_sub["wt82_71"], X2, weights=nhefs_sub["sw_continuous"]
).fit(cov_type="HC0")
print(msm_cont.params)
# const ~2.00, delta_smk ~-0.11, delta_smk2 ~0.0038 일반 가중치 클래스 \(g(A)/f(A|L)\)
\(g(A)\) 가 \(L\) 에 의존하지 않는 임의의 양함수이면 \(g(A)/f(A|L)\) 는 같은 인과 모수의 일치 추정을 준다. 안정화 가중치 \(SW^A = f(A)/f(A|L)\) 는 \(g = f\) 의 특수 경우이다. 다른 \(g\) 선택:
- \(g = 1\): 비안정화 \(W^A\)
- \(g = f(A|V)\): 효과 수정 분석에서 효율 ↑
- \(g = \Pr(A=1|L)\) 의 분자 형태: ATT 추정용
직관 — 가중치 분자의 자유도: 분모 \(f(A|L)\) 가 \(L\)-편향 제거의 핵심이고, 분자 \(g(A)\) 는 가상 모집단의 처치 분포만 결정한다. 분자에 어떤 \(L\)-비의존 함수를 두든 인과 식별은 보존되고, 효율(분산) 만 달라진다. 이 사실이 효과 수정 분석에서 더 좁은 가중치 분포를 만드는 비밀이다 (\(V\) 만 분자에 추가).
9 효과 수정 (effect modification) 의 미리보기
이항 처치 + 한 효과 수정 변수 \(V\) 의 경우
\[\mathrm{E}[Y^a | V] = \beta_0 + \beta_1 a + \beta_2 V a + \beta_3 V\]
\(\beta_2\) 가 효과 수정의 정도. 분자에 \(f(A|V)\) 를 두면 \(V\)-층화 효과 추정의 효율이 향상.
\[SW^A(V) = \frac{f(A|V)}{f(A|L)}\]
직관 — \(V\) 가 분자에 들어가는 이유: \(V\) 가 효과 수정 변수로 모형 안에 명시적으로 들어와 있으므로, 가중치는 \(V\) 외의 \(L \setminus V\) 부분의 영향만 제거하면 된다. 분자에 \(V\) 의 정보를 미리 끼워 넣으면 가중치가 \(L \setminus V\) 만의 함수가 되어 분포 폭이 좁아진다 — 11-3 의 주제.
10 처치-결과 관계의 추정 vs 외삽
MSM 은 데이터가 있는 처치 영역에서 적합된다. 데이터에 없는 처치 영역으로 외삽하면
- 양의 확률 위반 영역의 가중치 부정확.
- 함수 형태 가정이 외삽치를 결정 (Ch.11.5).
- 신뢰구간이 외삽 영역에서 매우 넓어지거나 잘못 좁아짐.
권장: MSM 적합 후 처치 분포의 5~95 percentile 범위 내에서만 결과 보고.
직관 — 외삽치의 위험: NHEFS 사례에서 baseline 흡연량 25 개비/일 이하 부분 표본을 사용했다. 이 표본에서 흡연량 변화 +50 같은 외삽치는 데이터가 거의 없는 영역이라 신뢰구간이 의미 없게 넓다. 추정 대상의 처치 분포 범위 확인이 결과 해석의 첫 단계.
11 한 줄 요약
안정화 가중치 \(SW^A = f(A)/f(A|L)\) 는 비안정화 \(W^A\) 와 점추정은 같지만 분산이 작다. Marginal Structural Mean Model 은 잠재 결과의 모평균을 처치 함수로 모형화한 등식이며, IPW 가중 회귀 OLS 가 MSM 모수의 일치 추정량이 된다. 이항 처치 saturated MSM 과 연속 처치 비포화 MSM 모두 같은 가중 회귀 절차로 추정 가능. Null preservation 이 효과 없을 때 false positive 를 줄여주는 안전 장치.
12 관련 주제
선행 지식
후속 주제
다른 카테고리 연결
- 로지스틱 회귀와 가중 회귀 — MSM 의 통계적 기초
- Bootstrap — 분산 추정