안정화 IP 가중치와 Marginal Structural Model

Hernan Ch.12.3~12.4 — SW^A 의 효율성 + 잠재 결과 평균 모형

Hernan & Robins (2020) Ch.12.3~12.4 를 다룬다. 비안정화 가중치 \(W^A = 1/f(A|L)\) 와 안정화 가중치 \(SW^A = f(A)/f(A|L)\) 의 차이, 안정화가 분산을 줄이는 메커니즘, Marginal Structural Mean Model 의 정의, 이항·다범주·연속 처치에서의 MSM 적용, 그리고 가중 회귀 OLS 가 MSM 모수의 일치 추정량이 되는 이유를 정리한다.

Experimentation
Causal Inference
저자

Kwangmin Kim

공개

2026년 05월 08일

1 정의

정의: 안정화 IP 가중치 (Stabilized IP Weight)

\[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)\).

정의: Marginal Structural Mean Model (MSMM)

잠재 결과 \(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 에서 크게 벗어나면 두 가지 신호이다:

  1. 모형 misspecification: \(\widehat{f}(A|L)\) 가 진짜 분포와 다르다.
  2. 양의 확률 위반 또는 근접: 일부 \(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 의 안전 장치

Null Preservation Property

진짜 평균 인과 효과가 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 연속 처치에서 가중치 추정의 어려움

연속 처치 IPW 의 위험

연속 처치 \(A\) 에서 \(f(A|L)\) 는 확률 밀도 함수이다. 추정이 다음과 같이 어렵다.

  1. 분포 가정 필요 (보통 정규성).
  2. 평균과 분산 모두 모수 추정.
  3. 분포 가정이 약간만 어긋나도 가중치가 폭발할 수 있음.
  4. 추정값이 분포 모형 선택에 매우 민감.

연속 처치 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 가중 회귀의 분산 추정

신뢰구간 구성의 세 가지 옵션
  1. 분석적 SE (theory-based): Influence function 으로 계산. 정확하지만 코드 작성 필요.
  2. Bootstrap: 표본 재추출로 분포 추정. 가정 적고 정확. 계산 시간 큼.
  3. 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.003

8 일반 가중치 클래스 \(g(A)/f(A|L)\)

안정화 가중치의 일반화 (Hernan, Technical Point 12.2)

\(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 적합 영역과 외삽의 함정

MSM 은 데이터가 있는 처치 영역에서 적합된다. 데이터에 없는 처치 영역으로 외삽하면

  1. 양의 확률 위반 영역의 가중치 부정확.
  2. 함수 형태 가정이 외삽치를 결정 (Ch.11.5).
  3. 신뢰구간이 외삽 영역에서 매우 넓어지거나 잘못 좁아짐.

권장: 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 관련 주제

선행 지식

후속 주제

다른 카테고리 연결

Subscribe

Enjoy this blog? Get notified of new posts by email: