Datadog Cumulative Impact vs holdout, A/B 테스트 누적 효과 측정법 비교
한마디로
여러 실험 승리안의 효과를 그냥 더하면 부풀려지는데 holdout과 Datadog Cumulative Impact로 바로잡을 수 있어요
한눈에
Datadog Cumulative Impact는 여러 A/B 테스트에서 나온 lift 추정치를 empirical Bayes shrinkage 기법으로 보정해서 하나의 누적 효과 숫자로 만들어주는 기능이에요. 실험 프로그램이 성숙해지면 그동안 출시한 변경사항들의 총 효과를 경영진이나 재무팀에 보고해야 하는데, 이때 각 실험의 관찰된 lift를 단순히 더하면 winner's curse 때문에 실제보다 부풀려진 숫자가 나옵니다. 이 문제를 직접 측정으로 해결하는 방법이 holdout이고, 기존 추정치를 통계적으로 보정해 해결하는 방법이 Cumulative Impact예요.
단순 합산이 왜 틀리나
실험 프로그램이 오래 운영되면 그동안 이긴 실험들의 lift를 다 더해서 총 임팩트를 보고하고 싶은 유혹이 생겨요. 하지만 A/B 테스트의 lift 추정치는 노이즈를 포함하고 있고, 유의성 검정은 진짜 효과가 아니라 추정치 자체를 기준으로 걸러냅니다. 그래서 노이즈가 우연히 위로 튀어서 유의성 기준을 통과한 실험들만 살아남고, 이 생존자 집합은 무작위 표본이 아니라 이미 위쪽으로 편향된 표본이 됩니다. 원문 예시를 보면 진짜 효과가 5%인 실험이 6% 이상 나와야 유의미하다고 판정될 때, 통과한 추정치들은 평균적으로 진짜 효과보다 부풀려져 있을 수밖에 없어요. 이걸 더하면 총합도 그대로 편향을 물려받는데, 이게 winner's curse입니다.
holdout으로 직접 측정하기
holdout은 유저를 세 그룹으로 나눠요. holdout 그룹은 holdout 시작 시점의 제품 화면을 그대로 보고 A/B 테스트 대상에서 제외되며, 보통 전체 트래픽의 1-5%예요. winners only 그룹도 A/B 테스트에서 제외되고 실험에서 결정된 승리 변형안들을 받는데 마찬가지로 1-5% 수준입니다. 나머지(remainder)는 실제로 A/B 테스트가 돌아가는 대상으로 보통 90-98%를 차지해요. holdout 그룹과 winners only 그룹을 비교하면 지금까지 출시한 모든 승리 변형안의 누적 효과를 직접 얻을 수 있고, 유의성으로 선별된 값이 아니라서 winner's curse에서 자유롭습니다. 다만 사전에 미리 세팅해야 하고 보통 분기 단위 이상 운영해야 해서 시간과 트래픽 비용이 크고, 이전에 holdout 없이 진행한 과거 실험들의 누적 효과는 측정할 수 없다는 한계가 있어요.
Cumulative Impact가 보정하는 방식
Datadog의 Cumulative Impact 기능은 후보 실험 목록을 받아 통계 모델을 적합시켜 각 실험의 효과 분포를 추정하고, 이를 바탕으로 각 실험의 보정된 추정치를 구한 다음 승리 변형안들을 합산해 하나의 누적 숫자를 냅니다. 이 보정은 empirical Bayes shrinkage 기법을 써서 여러 실험 사이에서 정보를 빌려와 각 추정치를 전체 분포 쪽으로 당겨줍니다. holdout처럼 트래픽을 분기 내내 떼어두지 않아도 이미 실행한 실험들만으로 누적 효과를 추정할 수 있고, 태그로 필터링해서 프로그램 전체나 특정 팀 실험만 따로 분석할 수도 있어요. 다만 세 가지 가정에 의존하는데, 실험들이 같은 분포(jar)에서 나왔다는 exchangeability 가정, 분석 기간 동안 그 분포가 바뀌지 않는다는 가정, 각 변경사항이 서로 독립적으로 작동한다는 가정이에요. 사소한 카피 수정과 대규모 리디자인을 같은 그룹으로 묶거나, 분석 중간에 전략이 바뀌거나, novelty 효과가 사라지기 전에 측정하거나, 두 실험이 같은 유저에게 겹쳐서 상호작용하는 경우에는 보정이 왜곡될 수 있습니다.
실무에서 뭘 골라야 하나
직접적인 무작위 실험으로 승리 변형안들의 결합 효과를 확인하고 싶거나 장기 효과까지 봐야 한다면, 그리고 holdout을 유지할 시간과 트래픽 여유가 있다면 holdout이 맞아요. 반면 오래된 feature flag를 계속 살려두거나 분기 단위로 기다릴 여유 없이 빠르게 누적 추정치가 필요하다면 Cumulative Impact가 적합합니다. 원문 기준으로 최소 5개 이상의 비교 가능한 실험이 있어야 Cumulative Impact를 쓸 수 있다는 점, 그리고 실험 프로그램의 ROI를 경영진에 보고할 때는 단순 합산이 아니라 이 두 방법 중 하나로 보정을 거쳐야 신뢰할 수 있는 숫자가 나온다는 점을 체크리스트로 챙기시면 됩니다.
자주 묻는 질문
ai governance란 실험 누적 효과 측정과 어떤 관련이 있나요
원문에는 ai governance에 대한 언급이 없어요. 다만 실험 결과를 경영진에 보고할 때 통계적으로 검증된 방법을 쓰는 것은 데이터 신뢰성과 거버넌스 관점에서 중요한 실무 기준이 될 수 있습니다.
holdout과 Cumulative Impact 중 어떤 걸 먼저 써봐야 하나요
이미 실행한 실험이 5개 이상 있고 빠르게 숫자가 필요하다면 Cumulative Impact부터 시도해볼 만해요. 장기 효과나 상호작용 효과까지 정확히 보고 싶고 시간과 트래픽 여유가 있다면 holdout을 별도로 세팅하는 게 낫습니다.
winner's curse는 왜 생기나요
유의성 검정이 진짜 효과가 아니라 관찰된 추정치를 기준으로 실험을 통과시키기 때문이에요. 노이즈가 우연히 위로 튄 추정치들만 기준을 넘어 살아남고, 이 값들을 더하면 편향이 그대로 총합에 반영됩니다.
실험 결과를 재무팀에 보고할 때 단순 합산하면 안 되는 이유는 뭔가요
단순 합산은 winner's curse 때문에 실제 효과보다 부풀려진 숫자가 나오기 때문이에요. holdout으로 직접 측정하거나 Cumulative Impact 같은 통계 보정 모델을 거쳐야 신뢰할 수 있는 ROI 숫자를 제시할 수 있습니다.
에디터 노트
실험 결과를 그냥 더해서 보고해온 팀이라면 이 노트가 짚는 winner's curse 문제를 한 번쯤 점검해볼 필요가 있어요. 다만 Cumulative Impact는 실험들이 같은 분포에서 나왔다는 가정에 기대는 만큼, 성격이 크게 다른 실험을 섞어서 보고하면 보정 자체가 왜곡될 수 있다는 점은 주의해야 합니다.
참고 출처 | 원문 보기
태그
- Datadog
- 데이터독
- AB테스트
- A/B 테스트
- 실험분석
- 실험 분석
- 마케팅자동화툴
- 마케팅 자동화 툴
이 노트는 자동 검증을 거쳐 발행되었습니다. 오류 제보는 편집팀이 즉시 확인합니다.
관련 마테크
- Datadog tail-based sampling으로 트레이스 볼륨 98% 줄이는 방법에러나 느린 요청만 남기고 나머지는 걸러내서 관측 비용을 크게 줄이는 Datadog 아키텍처 패턴이에요
- Datadog 데이터 파이프라인 모니터링이란 - 계층별 점검법과 마케팅 데이터 분석 툴 활용법데이터가 늦거나 사라지거나 틀어질 때 어느 계층을 봐야 하는지 Datadog이 정리한 실무 가이드예요
- Datadog Product Analytics 계정 세그먼트로 이탈 위험 분석하는 법유저 단위가 아니라 회사 단위로 묶어서 이탈 위험 계정을 찾아내는 Datadog 신기능이에요