가장 정직한 평가는 실제 사용자에게서 나와
오프라인 평가는 평가 데이터셋에서 어떤 결과가 나오는지 알려줘. 온라인 A/B 테스트는 실제 사용자가 어떻게 행동하는지 알려줘. 둘 다 중요하지만, 온라인 평가는 정답에 가장 가까워. 참여도, 유지율, 수익화처럼 오프라인에서 레이블을 붙일 수 없는 항목을 측정하는 유일한 방법이기도 해.
온라인 A/B 테스트만 측정할 수 있는 것
- 참여도 — 사용자가 새 버전에서 대화를 더 오래 이어 가?
- 과제 완료 — 실제 목표를 완료한 사용자의 비율은 얼마야?
- 만족도 — 명시적인 좋아요·싫어요나, 후속 질문이 필요 없는지 같은 암묵적 신호를 확인해.
- 지연 시간 허용 범위 — 더 느려도 더 나은 응답을 기다려, 아니면 더 자주 이탈해?
- 장기 유지 — 사용자가 다시 돌아와?
방법론의 기본 원칙
- 사용자 수준의 무작위 배정 — 세션 수준이 아니야.
- 사전 등록된 지표 — 테스트를 시작하기 전에 주요 지표를 선언해. 그렇지 않으면 우연히 "이긴" 지표를 골라내게 돼.
- 표본 크기 계산 — 미리 검정력 분석을 하고, 중간 결과는 들여다보지 마.
- 신규성 효과를 포착할 만큼 충분한 기간 — 첫 주에 나타난 효과가 계속된다는 보장은 없어.
- 안전장치 지표 관찰 — 주요 지표가 좋아졌더라도 지연 시간, 오류율, 비용이 급증하지 않았는지 확인해.
원칙: 오프라인 평가는 후보를 제시하고, 온라인 A/B 테스트가 최종 판단을 내려. 오프라인 수치만 보고 대규모 변경 사항을 출시하면 안 돼.
방향뿐 아니라 통계적 유의성까지 봐
"버전 B가 2% 더 나았어"라는 말은 신뢰 구간이 없으면 의미가 없어. 실험군당 사용자가 1,000명이라면 대부분 지표가 잡음만으로도 ±5% 안팎 흔들릴 수 있어. 승자를 선언하기 전에 p값이나 신뢰 구간을 계산해. statsmodels, ABBA 또는 플랫폼의 내장 통계 기능에 계산을 맡길 수 있어.