huny.log

Uplift modeling 핵심 계보 — 누구를 타겟할 것인가의 학계 뿌리

쿠폰·리타겟 예산을 반응할 사람이 아니라 설득될 사람에게 쓰는 법. net lift부터 meta-learner·Qini·증분이익 컷오프까지 1차 연구와 합성 예시로 연결합니다.

· · · 18분 읽기 · uplift-modelingcausal-inferencemeta-learnerincrementalityresearch

Uplift 모델의 가치는 누가 살지를 맞히는 데 있지 않고, 누구에게 개입해야 증분이익이 남는지를 홀드아웃으로 증명하는 데 있습니다.

쿠폰을 받은 사람이 샀다고, 쿠폰이 사게 한 건 아니다

리타겟 배너를 본 유저가 다음 날 앱을 열어 결제했다. 광고 대시보드는 그 매출을 배너의 성과로 잡는다. 그런데 그 유저, 배너를 안 봤어도 어차피 결제했을 사람이라면?

전환 예측 모델은 “살 것 같은 사람”을 찾지만 uplift 모델은 “개입했을 때만 사는 사람”을 찾는다. 이미 살 사람에게 쿠폰을 주면 마진만 줄기 때문에, 둘의 랭킹은 예산 앞에서 전혀 다른 답이 된다.

그 답은 다이렉트 메일 시절의 net lift에서 meta-learner와 비용 제약 최적화로 이어졌다. 다섯 연구와 한 구현 도구를 따라가되, 마지막에는 실제 타기팅 컷오프를 남긴다.

먼저: 고객을 네 부류로 쪼개는 4분면

uplift를 이해하는 가장 빠른 길은 고객을 네 칸으로 나누는 것이다. 처치(쿠폰·광고 노출)를 했을 때와 안 했을 때, 각각 사느냐 안 사느냐로 갈린다.

유형처치 O처치 X마케팅 판단
Persuadables (설득 가능)산다안 산다여기에만 예산을 써야 함
Sure Things (어차피)산다산다쿠폰은 마진 낭비
Lost Causes (헛수고)안 산다안 산다뭘 해도 안 삼
Sleeping Dogs (역효과)안 산다산다건드리면 오히려 이탈

전환 예측 모델은 “산다”에 뜨는 사람을 좋아하니까 Sure Things와 Persuadables를 똑같이 높게 점수 매긴다. 하지만 예산 관점에서 Sure Things는 손해, Persuadables만 이득이다. 심지어 Sleeping Dogs는 리마인드 푸시가 잠자던 해지 욕구를 깨우는 것처럼, 건드리면 마이너스다.

uplift 모델의 목표는 딱 하나. 이 4분면 중 Persuadables를 골라내고 Sleeping Dogs를 피하는 것. 아래 논문들은 전부 이 목표를 어떻게 데이터로 달성하느냐에 대한 서로 다른 답이다.

핵심 연구와 구현 한눈에

#연구·구현 (연도)핵심 기여마케터가 얻는 것
1Radcliffe & Surry, Differential Response Analysis (1999)true response·net lift 개념의 원전”반응”과 “증분 반응”을 처음 분리
2Gutierrez & Gérardy, Causal Inference and Uplift Modelling (2017)uplift 방법론을 3계열로 통합 정리접근법 지도(뭘 언제 쓰나)
3Künzel et al., Metalearners (PNAS 2019)S/T/X-learner 정식화아무 ML 모델이나 uplift로 변환
4Nie & Wager, Quasi-oracle (Biometrika 2021)R-learner, 2단계 직교화 목적함수관측 데이터에서도 안정적 추정
5Uber CausalML (오픈소스, 2019~)meta-learner·Qini 평가 구현코드로 홀드아웃 평가 가능
6DoorDash·KDD 2025 프로모션 사례Double ML의 산업 성능 근거”실제로 먹히나”의 벤치마크

이 순서가 개념의 계보이지 성능 순위는 아니다. 어떤 모델이 맞는지는 처치 배정 방식과 홀드아웃 결과로 다시 결정해야 한다.

1. 뿌리: Radcliffe & Surry, true lift의 탄생

uplift의 초기 문헌은 다이렉트 메일 시대에서 나왔다. Radcliffe와 Surry는 1999년 “Differential Response Analysis: Modeling True Responses by Isolating the Effect of a Single Action”에서, 메일을 받은 사람의 반응률이 아니라 “메일이 만들어낸 순수 증분”을 모델링하자고 제안했다.

핵심 통찰은 이거였다. 응답 모델(response model)은 “메일 받고 산 사람”을 학습한다. 그런데 그중 상당수는 메일과 무관하게 살 사람이었다. 진짜로 알아야 할 건 처치군 반응률에서 대조군 반응률을 뺀 값, 즉 net lift다.

uplift modeling이 추정하려는 대상은 개인의 숨은 운명을 맞히는 값이 아니라, 특성이 인 집단의 평균 처치 효과다. 잠재 결과를 쓰면 CATE는 이렇게 정의된다.

여기서 은 같은 사람이 쿠폰을 받았을 때와 받지 않았을 때의 잠재 결과, 는 유저 특성이다. 처치가 무작위로 배정됐거나, 관측 로그에서 조건부 교환가능성·일관성·positivity가 성립할 때만 이 값은 관측된 처치군과 대조군의 조건부 평균 차이로 식별된다.

가 크면 그 특성 구간은 Persuadables가 많이 섞인 후보이고, 음수면 Sleeping Dogs 위험 구간이다. 다만 CATE는 집단 평균이라 특정 개인을 네 유형 중 하나로 확정하지 않는다. 홀드아웃에서 점수 구간별 평균 효과를 확인해야 하는 이유다.

2. 지도: Gutierrez & Gérardy, 세 갈래 접근법

Radcliffe 이후 20년간 방법이 우후죽순 쏟아졌다. 이걸 처음으로 하나의 틀에서 정리한 게 Gutierrez & Gérardy의 2017년 리뷰 “Causal Inference and Uplift Modelling: A Review of the Literature”(PMLR v67)다. 이들은 uplift 방법을 세 계열로 묶었다.

첫째, Two-Model(Two-Learner) 접근. 처치군용 모델과 대조군용 모델을 따로 학습하고, 예측을 빼서 uplift를 구한다. 직관적이고 구현이 쉽다. 단점은 두 모델의 오차가 따로 놀아서, uplift처럼 작은 신호가 두 큰 예측값의 차에 묻혀버린다.

둘째, Class Transformation(클래스 변환) 접근. 처치·결과를 하나의 새 라벨로 변환해서, 일반 분류 모델 하나로 uplift를 직접 학습한다. 처치·대조군 배정 확률이 50:50인 실험 데이터에서 우아하게 작동한다.

셋째, 직접 모델링. 트리 분기 기준 자체를 “uplift가 가장 크게 갈라지는 곳”으로 바꾼 uplift tree·causal forest 계열이다. 신호를 처음부터 uplift로 겨냥한다.

이 리뷰의 가치는 방법 나열이 아니라, 세 계열을 Rubin의 인과추론 프레임 하나로 비교 가능하게 만든 데 있다. 지금 실무에서 도구를 고를 때 여전히 이 세 갈래 지도가 기준이 된다.

uplift modeling 방법론의 세 갈래 접근을 보여주는 인포그래픽
Two-Model·Class Transformation·직접 모델링, Gutierrez & Gérardy가 정리한 세 계열. 최근 표준인 meta-learner는 이 지도 위에서 진화했다.

3. 현대의 표준: Meta-learners (S/T/X, 그리고 R)

Künzel et al.(PNAS 2019)은 일반 지도학습 모델을 CATE 추정기로 감싸는 S/T/X-learner를 정식화했다.

S-learner는 처치 여부 를 피처로 넣은 모델 하나에서 의 예측 차를 본다. 단순하지만 처치 신호가 약하면 모델이 를 무시할 수 있다.

T-learner는 두 집단의 모델을 따로 학습한다. 집단 크기가 크게 다르면 작은 쪽 오차가 uplift에 그대로 번진다.

X-learner는 반대 집단 모델로 반사실 효과를 채워 다시 학습하고, 두 추정을 성향점수로 합친다. 처치군과 대조군 크기가 불균형한 상황을 겨냥한 선택지다.

Nie & Wager의 R-learner는 결과 기대값과 처치 성향을 먼저 추정한 뒤, 두 잔차에서 uplift만 겨냥하는 목적함수를 세운다.

는 관측치 가 들어가지 않은 fold에서 학습한 결과 기대값, 는 같은 방식의 처치 성향점수다. 은 효과 함수의 복잡도를 누르는 정규화 항이다. 논문이 분석한 penalized kernel regression 조건에서는 이 cross-fitting 구조 덕분에 nuisance 추정치가 완벽하지 않아도 oracle과 같은 오차율을 달성한다. 랜덤 실험이 아닌 과거 처치 로그를 다룰 때 특히 중요한 구조다.

4. 어떻게 채점하나: Qini·Uplift curve와 산업 증거

개인의 진짜 uplift는 관측할 수 없으므로 accuracy 대신, 점수 상위부터 처치했을 때 증분이 얼마나 빨리 쌓이는지를 본다. 이 uplift curve를 랜덤 타기팅과 비교한 면적이 Qini다. Qini는 랭킹 지표일 뿐 원화 이익이 아니므로, 비용을 붙인 별도 손익 계산이 필요하다.

이 평가 체계와 meta-learner 구현을 한데 묶은 도구가 Uber의 오픈소스 CausalML이다. S/T/X/R-learner와 Qini 평가를 같은 인터페이스에서 비교할 수 있다.

DoorDash의 KDD 2025 워크숍 논문은 이 비교를 실제 프로모션에 연결했다. 공개된 교차검증 표에서 DML의 out-of-sample Qini는 8.03%, Uplift@30은 1.11%로 네 후보 중 가장 높았다. 이어진 온라인 실험에서는 uniform targeting과 causal targeting의 order-rate lift가 각각 2.43%와 2.44%로 비슷했지만 cost index는 100과 55였다. 이 사례의 핵심은 주문 lift를 과장한 것이 아니라, 비슷한 lift를 더 낮은 비용으로 만든 데 있다.

코드로 보는 최소 예시

CausalML로 X-learner를 학습하고, 실제 홀드아웃의 결과·처치 여부·예측 점수를 한 데이터프레임에 넣어 Qini를 계산하는 최소 뼈대다.

import pandas as pd
from causalml.inference.meta import BaseXRegressor
from causalml.metrics import qini_score
from xgboost import XGBRegressor
# X: 유저 특성, treatment: 0/1 처치 여부, y: 구매액(또는 전환)
learner = BaseXRegressor(learner=XGBRegressor())
learner.fit(X=X_train, treatment=w_train, y=y_train)
# 홀드아웃의 개인별 uplift τ(x) 추정
tau_hat = learner.predict(X=X_valid).reshape(-1)
# 실제 결과 y, 무작위 처치 w, 모델 점수를 같은 행에 둔다
qini_input = pd.DataFrame({
"y": y_valid,
"w": w_valid,
"x_learner": tau_hat,
})
scores = qini_score(
qini_input,
outcome_col="y",
treatment_col="w",
treatment_effect_col=None,
)
print(scores["x_learner"])

이 계산은 w_valid가 무작위 배정된 홀드아웃이라는 전제가 있다. 관측 로그라면 점수 구간 안에서도 처치 편향이 남아 단순 처치군-대조군 차이가 Qini를 왜곡할 수 있다. 그 경우에는 cross-fitting한 doubly robust pseudo-outcome이나 TMLE 같은 보정 절차가 먼저다. 후보 모델은 학습 데이터 점수가 아니라 같은 out-of-sample 표에서 비교한다.

Qini를 증분이익 결정으로 바꾸기

먼저 문제 종류를 틀리지 않아야 한다. 셋은 이름이 비슷해도 답하는 질문이 다르다.

운영 질문맞는 도구
같은 처치의 평균 효과를 더 적은 표본으로 빨리 볼까CUPED 분산 감소
같은 처치가 누구에게만 효과가 있는가Uplift modeling
결과를 보며 트래픽을 더 좋은 안으로 옮길까MAB vs A/B

Uplift curve의 꺾임은 타기팅 후보를 보여줄 뿐, 손익분기선을 대신하지 않는다. 점수 구간 의 예상 증분이익은 다음처럼 계산할 수 있다.

는 타기팅할 사람 수, 는 홀드아웃에서 본 전환율 차이, 은 할인과 변동비를 뺀 전환 1건의 공헌이익, 는 한 사람을 처치하는 기대 비용이다. 쿠폰 비용이 사용 시점에만 생긴다면 그 확률까지 에 일관되게 반영한다.

아래는 특정 회사 데이터가 아닌 합성 예시다. 전환 1건의 공헌이익을 ₩25,000, 처치 비용을 1인당 ₩420으로 고정했다. 표의 95% 하한은 컷오프를 사전에 정하고, 모델 선택에 쓰지 않은 독립 최종 홀드아웃에서 계산한 단측 하한이라는 설정이다.

점수 구간추정 uplift95% 하한1인당 기대이익하한 기준 이익행동
상위 0~10%3.2%p2.3%p₩380₩155제한 확대
10~20%1.8%p0.7%p₩30-₩245홀드아웃 유지
20~30%0.7%p-0.4%p-₩245-₩520제외

점추정만 보면 20%까지 보낼 수 있지만, 하한까지 손익분기를 넘는 구간은 상위 10%뿐이다. 그래서 10~20%는 탐색 구간으로 남기고 무처치군을 유지한다. 다음 실험의 표본 크기와 대조군 비율은 incrementality 실험 결정 트리에서 정한 뒤, 모델 버전·점수 산출일·컷오프·비용 가정을 함께 고정한다.

같은 홀드아웃에서 여러 모델과 컷오프를 훑은 뒤 가장 좋아 보이는 구간을 골랐다면, 그 구간의 일반적인 95% 하한은 더 이상 95%를 보장하지 않는다. 이때는 후보 전체에 대한 동시 단측 신뢰하한을 쓰거나, 선택을 끝낸 뒤 새 홀드아웃에서 잠근 컷오프를 한 번만 평가한다.

마치며

Uplift modeling은 “쿠폰 받은 사람이 샀다”와 “쿠폰이 사게 했다”를 분리한다. 모델 선택은 Qini로 끝나지 않는다. 무작위 홀드아웃에서 랭킹을 검증하고, 공헌이익과 처치 비용을 붙이고, 불확실성 하한이 손익분기를 넘는 구간만 넓혀야 비로소 예산 규칙이 된다.

참고

마케팅 리서치·논문 카테고리의 다른 글

전체 보기 →