Value per User: GMV, ARPU(Average Revenue Per User)와 같은 연속형 데이터. MDE=(Zα/2+Zβ)⋅ncontrolσ2+nvariantσ2
구분
MDE를 미리 정하는 경우
MDE를 계산으로 추정하는 경우
기준
비즈니스 목표와 실질적 유의미성에 기반
데이터 특성과 샘플 크기에 기반
사용 시점
명확한 목표가 있는 경우
목표가 없거나 기존 데이터로 추정할 때
결과 해석
목표 효과를 달성하기 위해 샘플 크기 계산
현재 샘플 크기로 탐지 가능한 최소 효과 계산
1.5 실험 설계에서 MDE 활용
비즈니스 목표 기반 MDE 설정
실험 전 비즈니스 목표를 정의:
GMV가 최소 $30 증가해야 ROI가 충분하다고 가정
사전 정의된 MDE를 기준으로 샘플 크기와 실험 기간 계산
사전 정의된 MDE는 실질적 유의미성 기준을 반영해야 함
데이터 기반 MDE 추정
기존 데이터의 표준 편차와 샘플 크기를 기반으로 MDE 계산:
GMV 데이터의 변동성이 큰 경우, 탐지 가능한 MDE가 커질 수 있음
계산된 MDE를 기준으로 실험 감지 능력 평가:
“현재 조건에서 $50 이하의 변화는 감지 불가능하다”는 결론 도출
데이터 기반 MDE는 실질적 유의미성 기준보다 높을 수 있음
2. Power
MDE 를 계산할때 아래와 같은 파라미터를 설정했습니다:
Zα/2: 유의 수준 (Significance Level)
일반적으로 α = 0.05 (95% 신뢰 구간)
Zα/2 = 1.96 (표준 정규분포에서 95% 신뢰 구간 기준)
Zβ: 검정력 (Power)
일반적으로 β = 0.2 (80% 검정력)
Zβ = 0.84 (표준 정규분포에서 80% 기준)
ncontrol, nvariant: 샘플 크기
실험의 각 그룹에서 필요한 사용자 수
2.1 [Review] p-value란?
정의: 귀무가설(H_0)이 참일 때, 관찰된 데이터가 나타날 확률
쉽게 말하면: “이런 결과가 우연히 나올 가능성이 얼마나 될까?”
1종 오류(Type 1 Error):
p-value는 1종 오류를 허용할 최대 확률(보통 5%)을 나타냅니다.
예: 효과가 없는데 있다고 잘못 판단하는 경우
p-value < 0.05이면 귀무가설을 기각 → “효과가 있다”고 결론
2.2 Power 정의
정의: 귀무가설이 거짓일 때, 이를 올바르게 기각할 확률.
쉽게 말하면: “효과가 있을 때 그 효과를 제대로 감지할 능력.”
2종 오류(Type 2 Error):
Power는 2종 오류(효과를 놓치는 오류, β)와 반비례 관계.
Power=1−β: 검정력이 높을수록 효과를 놓칠 가능성이 줄어듦.
2.3 P-value와 Power의 차이
P-value: 결과가 우연일 확률(귀무가설 참일 때)
Power: 실험이 효과를 제대로 감지할 확률(귀무가설 거짓일 때)
실제 상태
실험 결과: H_0 기각
실험 결과: H_0 유지
설명
H_0 참 (효과 없음)
1종 오류 (Type 1)
올바른 판단
잘못된 긍정, p-value와 관련
H_0 거짓 (효과 있음)
올바른 판단
2종 오류 (Type 2)
잘못된 부정, Power와 관련
비유
상황
1종 오류 (False Positive)
2종 오류 (False Negative)
A/B 테스트: 새로운 결제 방식
Toss Pay가 효과가 없는데 도입 (결제 전환율 변화 없음)
Toss Pay가 효과가 있는데 도입하지 않음 (기회 손실)
제품 변경: 새로운 디자인
새로운 디자인이 전환율에 차이가 없는데도 도입 (리소스 낭비)
새로운 디자인이 전환율을 높이는데도 기존 디자인 유지
추천 시스템 개선
추천 알고리즘이 기존과 차이가 없는데 변경 (리소스 낭비)
추천 알고리즘이 더 나은데 기존 알고리즘 유지 (기회 상실)
1종 오류를 줄이려면:
엄격한 기준 적용 (예: p-value < 0.01)
다중 테스트 보정(예: Bonferroni correction)
하지만 2종 오류(Type 2)는 증가 가능 → 효과를 놓칠 확률 증가
2종 오류를 줄이고 Power를 높이려면:
샘플 크기 증가 → 비용 증가
데이터 변동성 감소(정확한 측정)
MDE, Power, Significance Level, Baseline Conversion 기반으로 샘플 크기 계산 (Python)
from statsmodels.stats.power import TTestIndPower
# 실험 설정
baseline_conversion =0.03
mde =0.005
daily_users =10000# 효과 크기 계산
effect_size = mde /(baseline_conversion *(1- baseline_conversion))**0.5# 필요한 샘플 크기 계산
analysis = TTestIndPower()
sample_size = analysis.solve_power(effect_size, alpha=0.05, power=0.8)# 실험 기간 계산
experiment_days = sample_size / daily_users
print(f"필요한 샘플 크기: {int(sample_size)}")print(f"예상 실험 기간: {int(experiment_days)}일")
3. A/B 테스트 분석 Framework
A/B 테스트는 다음 세 단계를 통해 구조적으로 진행합니다.
가설 수립(Hypothesis Formation):
명확하고 측정 가능한 가설 정의
북극성(목표)지표와 가드레일 지표 설정
실험 설계(Experiment Setup):
사용자 무작위 할당 (Randomization)
샘플 크기 및 실험 기간 계산
결과 분석 및 커뮤니케이션(Result Analysis & Communication):
통계적 검정(p-value, power)과 세분화 분석
결과를 이해관계자와 명확히 공유
3.1 가설 수립: 명확한 목표 설정
사례: Toss Pay 도입
가설:
Toss Pay 도입으로 인해 결제 전환율이 기존 방식보다 유의미하게 증가할 것이다.
북극성(목표) 지표:
결제 전환율 = 결제를시작한사용자수결제를완료한사용자수
가드레일 지표:
결제 오류율 = 결제시도수결제시도중오류발생수
3.2 실험 설계
실험 조건 정의
랜덤화 단위(Randomization Unit):
사용자 단위로 무작위 할당
노출 지점(Exposure Point):
결제 플로우 진입 시 Toss Pay 표시 여부 결정
대상 조건(Eligibility):
iPhone 사용자만 포함(Android 사용자는 실험 대상 제외)
3.3 샘플 크기 및 실험 기간 계산
Required Parameters:
기존 전환율 (Baseline Conversion Rate): 3%
최소 검출 가능한 효과 크기(MDE): 0.5%
유의 수준(Significance Level): 보통 95%
검정력(Power): 보통 80%
일일 사용자 수: 10,000명
from statsmodels.stats.power import TTestIndPower
baseline_conversion =0.03# 기존 전환율
desired_effect =0.005# 최소 효과 크기 (0.5%)
alpha =0.05# 유의 수준
power =0.8# 검정력
effect_size = desired_effect /((baseline_conversion *(1- baseline_conversion))**0.5)
analysis = TTestIndPower()
sample_size = analysis.solve_power(effect_size, alpha=alpha, power=power)print(f"필요한 샘플 크기: {int(sample_size)}")
daily_users =10000
experiment_days = sample_size / daily_users
print(f"예상 실험 기간: {int(experiment_days)}일")
3.4. 결과 분석 및 커뮤니케이션
결과 분석
주요 지표 평가:
결제 전환율 변화 확인
p-value가 0.05 미만이면 통계적으로 유의미한 차이로 판단
실질적으로 유의미한지 판단
가드레일 지표 평가:
결제 오류율 증가 여부 확인
오류율이 증가하면 문제 원인 분석 및 해결
Segmentation 분석
주요 그룹별 분석:
신규 사용자 vs 기존 사용자
iPhone 모델별 성능 차이
지역별 반응
결과 보고
결과 요약:
목표 지표와 카운터 지표 변화
비즈니스 영향:
추가 매출 또는 비용 감소 효과 추산
후속 조치:
Toss Pay 전체 배포 여부 결정
장기적 유지 효과 모니터링
TL;DR
MDE(Minimum Detectable Effect), p-value, Power의 관계와 계산 방법 이해