Tae Hyun Kim (Lowell)

CATE (Conditional Average Treatment Effect)

4분 읽기 #causal-inference#cate#hte

정의

CATE는 공변량(covariate) X=xX=x가 주어졌을 때의 평균 처치효과(treatment effect)를 가리킨다.

τ(x)=E[Y(1)Y(0)X=x]\tau(x) = E[Y(1) - Y(0) | X = x]

여기서 각 항은 다음과 같다.

  • Y(1)Y(1): 처치(treatment)를 받았을 때의 잠재결과(potential outcome)
  • Y(0)Y(0): 처치를 받지 않았을 때의 잠재결과
  • XX: 처치 이전에 관측된 공변량(특성 변수)

관련 용어

  • HTE: CATE와 같은 뜻으로 쓴다.
  • ITE: 개인 단위 처치효과 τi=Yi(1)Yi(0)\tau_i = Y_i(1) - Y_i(0)로, 직접 관측할 수 없다.

직관적 이해

핵심 질문은 다음과 같다.

“특정 특성을 가진 사람에게 처치가 얼마나 효과적인가?”

ATE vs CATE

QuantityDefinitionQuestion
ATEE[Y(1)Y(0)]E[Y(1) - Y(0)]”평균적으로 효과가 있는가?”
CATEE[Y(1)Y(0)X=x]E[Y(1) - Y(0) \| X=x]”이 특성을 가진 사람에게 효과가 있는가?”

예시

  • 신약의 평균 효과는 양수지만(ATE > 0),
  • 65세 이상 환자에게는 효과가 없거나 오히려 해롭다(τ(xage65)0\tau(x_{age \geq 65}) \leq 0).
ATE = E[τ(X)] = ∫ τ(x) dP(x)  (CATE의 평균)

핵심 성질

인과추론의 근본 문제

개인 수준에서 Y(1)Y(1)Y(0)Y(0)를 동시에 관측할 수 없다.

  • 실제로 관측하는 값은 Y=AY(1)+(1A)Y(0)Y = AY(1) + (1-A)Y(0)이다.
  • 반사실(counterfactual)은 항상 결측이다.

식별 가정

CATE를 식별(identification)하는 데 쓰는 표준 가정은 다음과 같다.

  1. SUTVA (Stable Unit Treatment Value Assumption)

    • 무간섭(no interference): 타인의 처치가 내 결과에 영향을 주지 않는다.
    • 일관성(consistency): Y=Y(A)Y = Y(A)
  2. 무교란성(Unconfoundedness, Ignorability) Y(0),Y(1)AXY(0), Y(1) \perp A | X

    • XX가 주어지면 처치 배정이 잠재결과와 독립이다.
  3. 양수성(Positivity, Overlap) 0<P(A=1X=x)<1,xX0 < P(A=1|X=x) < 1, \quad \forall x \in \mathcal{X}

    • 모든 공변량 값에서 처치를 받을 확률이 0과 1 사이에 있다.

CATE의 구조

CATE는 다음과 같이 분해할 수 있다. τ(x)=μ1(x)μ0(x)\tau(x) = \mu_1(x) - \mu_0(x)

여기서 μa(x)=E[YX=x,A=a]\mu_a(x) = E[Y|X=x, A=a]이다.

추정 방법

Meta-Learner

MethodDescriptionBest When
S-LearnerSingle model: μ^(x,a)\hat{\mu}(x,a), then τ^(x)=μ^(x,1)μ^(x,0)\hat{\tau}(x) = \hat{\mu}(x,1) - \hat{\mu}(x,0)Homogeneous effects
T-LearnerTwo models: μ^1(x)\hat{\mu}_1(x), μ^0(x)\hat{\mu}_0(x) separatelyDifferent response functions
X-LearnerTwo-stage imputation with propensity weightingUnbalanced treatment groups
R-LearnerResidualize then regress: minimize (Yiμ^(Xi)(Aiπ^(Xi))τ(Xi))2\sum(Y_i - \hat{\mu}(X_i) - (A_i - \hat{\pi}(X_i))\tau(X_i))^2Heterogeneous effects
DR-LearnerRegress doubly robust pseudo-outcome on XXDouble robustness desired

트리 기반 방법

  • Causal Forest (Wager & Athey): CATE 추정에 맞게 변형한 Random Forest
  • BART (Bayesian Additive Regression Trees)
  • Causal MARS

딥러닝

  • CEVAE (Causal Effect VAE)
  • TARNet (Treatment-Agnostic Representation Network)
  • DragonNet

예시

의료 시나리오를 생각해 보자.

  • YY: 혈압 감소량
  • AA: 신약 투여 여부 (0/1)
  • XX: (나이, 성별, 기저 혈압, BMI, …)

τ(x)=E[혈압 감소신약]E[혈압 감소위약]given X=x\tau(x) = E[\text{혈압 감소}|\text{신약}] - E[\text{혈압 감소}|\text{위약}] \quad \text{given } X=x

해석은 다음과 같다.

  • τ(x)>0\tau(x) > 0: 이 특성의 환자에게 신약이 효과적이다.
  • τ(x)<0\tau(x) < 0: 이 특성의 환자에게 신약이 해롭다.
  • τ(x)0\tau(x) \approx 0: 이 특성의 환자에게 효과가 없다.

활용

처치 타겟팅(정책 학습)

다음과 같이 최적 처치 규칙을 학습한다. d(x)=1[τ(x)>0]d^*(x) = \mathbf{1}[\tau(x) > 0]

  • τ(x)>0\tau(x) > 0이면 처치한다.
  • τ(x)<0\tau(x) < 0이면 처치하지 않는다.

맞춤 의료

  • 환자 특성에 따라 치료를 맞춘다.
  • 부작용은 최소화하고 효과는 최대화한다.

정밀 마케팅

  • 고객별 마케팅 효과를 추정한다.
  • 프로모션을 개인화해 타겟팅(targeting)한다.

정책 평가

  • 하위 집단(subgroup)별로 정책 효과를 분석한다.
  • 효과의 이질성(heterogeneity)을 탐색한다.

평가 지표

참값 CATE를 관측할 수 없으므로 CATE 추정을 평가하기는 어렵다.

RCT가 있는 경우

  • PEHE (Precision in Estimation of HTE): E[(τ^(x)τ(x))2]\sqrt{E[(\hat{\tau}(x) - \tau(x))^2]}
  • ATE Error: τ^ATEτATE|\hat{\tau}_{ATE} - \tau_{ATE}|

관측 데이터

  • AUUC (Area Under Uplift Curve): 처치 타겟팅 성능
  • Qini Coefficient: uplift 모델링 평가

관련 개념

  • ATE - Average Treatment Effect (CATE의 평균)
  • ATT - Average Treatment on Treated
  • Propensity Score - 처치 배정 확률
  • DR-Learner - CATE 추정에 쓰는 이중 강건(doubly robust) 방법
  • Double-Debiased ML - 고차원(high-dimensional) CATE 추정
  • Causal Forest - 트리 기반 CATE 추정

참고 논문

  • kunzelMetalearnersEstimatingHeterogeneous2019 - Meta-learners (S, T, X-learner)
  • nieQuasiOracleEstimationHeterogeneous2020 - R-learner
  • kennedyOptimalDoublyRobust2023 - DR-learner, optimal rates
  • Wager & Athey (2018) - Causal Forests
  • chernozhukovDoubleDebiasedMachine2018 - DML for treatment effects

구현

Python (econml):

from econml.dml import CausalForestDML
from econml.dr import DRLearner

# Causal Forest
cf = CausalForestDML()
cf.fit(Y, T, X=X, W=W)
cate = cf.effect(X_test)

# DR-Learner
dr = DRLearner()
dr.fit(Y, T, X=X, W=W)
cate = dr.effect(X_test)

R (grf):

library(grf)
cf <- causal_forest(X, Y, W)
tau_hat <- predict(cf)$predictions

참고 문헌

  • kunzelMetalearnersEstimatingHeterogeneous2019
  • nieQuasiOracleEstimationHeterogeneous2020
  • kennedyOptimalDoublyRobust2023
  • chernozhukovDoubleDebiasedMachine2018
  • Wager & Athey (2018) - “Estimation and Inference of Heterogeneous Treatment Effects using Random Forests”

연결 그래프