모던지 / 수학 / 통계학 8강. A/B 테스트 설계

통계학 8강. A/B 테스트 설계

실험을 언제 멈출지 미리 정하지 않으면, 원하는 결과가 나올 때까지 기다리게 됩니다.

풀고 시작

문제 1. A/B 테스트를 돌리다가 유의한 차이가 보이는 순간 실험을 멈추고 결론 내리면 어떤 문제가 생길까요?
계속 들여다보며 유의해지는 순간 멈추면, 우연히 선을 넘는 순간을 골라잡는 셈이 됩니다. 유의수준 5%로 설계했어도 실제 1종 오류율은 20~30%까지 오릅니다. 이것을 엿보기 문제라 부릅니다.

실험을 언제 멈출 것인가

버튼 색을 파랑에서 초록으로 바꾸면 클릭이 늘까요. 사용자를 반씩 나눠 각각 보여 주고 비교하면 됩니다. 이것이 A/B 테스트이고, 원리는 앞 강에서 본 무작위 대조 실험과 같습니다.

원리는 간단한데 현장에서는 거의 언제나 틀립니다. 가장 흔한 실패는 언제 멈출지 정하지 않고 시작하는 것입니다.

실험을 돌리며 대시보드를 계속 봅니다. 사흘째에 p값이 0.04로 떨어집니다. "유의하다, 초록이 이겼다" 하고 멈춥니다. 이것이 엿보기 문제(peeking problem) 입니다.

왜 문제일까요. p값은 표본이 쌓이는 동안 위아래로 흔들립니다. 차이가 전혀 없어도 언젠가는 우연히 0.05 아래로 내려가는 순간이 옵니다. 계속 보다가 내려간 순간 멈추면 그 순간을 골라잡은 것이죠. 유의수준 5%로 설계했어도 실제 1종 오류율은 20~30%까지 치솟습니다. 스무 번 중 한 번 틀리려던 것이 네댓 번 중 한 번 틀리게 됩니다.

해결은 단순합니다. 시작 전에 표본 크기를 정하고 거기까지 채운 다음 딱 한 번 본다. 중간에 꼭 봐야 한다면 순차검정처럼 엿보기를 감안해 기준을 조정하는 방법을 써야 합니다.

표본 크기는 네 가지가 정합니다

"몇 명이면 되나요"라는 물음에는 네 가지를 먼저 정해야 답할 수 있습니다.

정할 것 흔한 값
유의수준 α 차이가 없는데 있다고 할 위험 0.05
검정력 1-β 차이가 있을 때 잡아낼 확률 0.8
최소 탐지 효과 이 정도는 잡아내고 싶다는 크기 사업이 정함
기준 지표값 지금의 전환율 등 현재 데이터

이 중 최소 탐지 효과(MDE) 가 가장 중요하고 가장 자주 빠집니다. 전환율을 3%에서 3.1%로 올리는 변화를 잡으려면 수십만 명이 필요하고, 3%에서 4%로 올리는 변화라면 훨씬 적어도 됩니다. 잡고 싶은 차이의 크기를 정하지 않으면 필요한 인원도 정해지지 않습니다.

여기서 관계 하나를 기억해 두시면 감이 섭니다. 표준오차는 표본 크기의 제곱근에 반비례합니다. 정밀도를 두 배로 높이려면 표본은 네 배가 필요합니다. 작은 차이를 잡으려 할수록 비용이 제곱으로 늘어납니다.

검정력이 낮은 실험은 돌릴 값어치가 없습니다. 차이가 있어도 못 잡을 확률이 높으니 "차이 없음"이라는 결론을 신뢰할 수 없고, 어쩌다 유의하게 나온 결과는 효과 크기가 부풀려져 있습니다. 실험을 재현해 보면 효과가 쪼그라드는 현상이 여기서 옵니다.

유의성과 중요성은 다른 말입니다

표본이 충분히 크면 아무리 작은 차이도 통계적으로 유의해집니다. 100만 명을 모으면 전환율 3.00%와 3.02%의 차이도 p<0.05가 나오죠.

그래서 물어야 할 질문이 하나 더 있습니다. 그 차이가 사업적으로 의미가 있는가. 0.02%포인트를 올리려고 개발 인력 두 달을 쓸 값어치가 있는지는 통계가 답해 주지 않습니다.

이 때문에 요즘은 p값 하나로 판단하지 않고 신뢰구간을 함께 봅니다. "차이는 +0.3%포인트이고 95% 신뢰구간은 +0.05%p ~ +0.55%p"라고 말하면, 유의한지와 얼마나 큰지를 한 번에 알 수 있습니다.

실험을 망치는 흔한 것들

표본 비율 불일치. 50대 50으로 나눴는데 실제로는 52대 48이라면 배정 자체가 고장 난 것입니다. 이 경우 결과 해석을 시작하기 전에 원인을 찾아야 합니다. 봇 트래픽이나 특정 브라우저에서의 배정 실패가 흔한 범인입니다.

신규성 효과. 바뀐 화면이 처음에는 눈에 띄어 클릭을 끌지만 몇 주 지나면 사라집니다. 초기 며칠만 보고 결론 내리면 이 착시에 걸립니다.

간섭. 사용자끼리 영향을 주고받는 서비스(중고거래, 소셜, 배달)에서는 A 그룹의 행동이 B 그룹에 영향을 미쳐 두 집단이 독립이 아니게 됩니다. 이럴 때는 사용자가 아니라 지역이나 시간 단위로 나눠야 합니다.

지표를 여러 개 보는 것. 이 문제는 다음 강에서 따로 다룹니다.

인출 문제

문제 1. A/B 테스트의 표본 크기를 정할 때 반드시 미리 정해야 하는 것으로 옳지 않은 것은 무엇일까요?
p값은 실험 결과이지 설계 입력이 아닙니다. 유의수준, 검정력, 최소 탐지 효과, 그리고 현재 지표값 네 가지가 정해져야 필요한 표본 크기가 계산됩니다.
문제 2. 검정력이 낮은 실험의 결과를 신뢰하기 어려운 이유로 옳은 것은 무엇일까요?
검정력이 낮으면 "차이 없음"이라는 결론이 진짜 없어서인지 못 잡아서인지 구분되지 않습니다. 게다가 그런 상황에서 유의하게 나오려면 우연히 큰 값이 관측되어야 하므로 효과가 과대추정됩니다. 유의수준은 검정력과 별개로 정합니다.
문제 3. 표본이 매우 클 때 통계적 유의성 해석에서 주의할 점은 무엇일까요?
표본이 커지면 표준오차가 작아져 아주 작은 차이도 유의해집니다. 유의성은 "차이가 있는가"에 답할 뿐 "그 차이가 쓸모 있는가"에는 답하지 않으므로, 신뢰구간과 효과 크기를 함께 보고 사업적 판단을 얹어야 합니다.
문제 4. 사용자끼리 서로 영향을 주고받는 서비스에서 A/B 테스트를 할 때의 문제와 대응으로 옳은 것은 무엇일까요?
중고거래나 배달처럼 사용자가 같은 자원을 두고 만나는 서비스에서는 한쪽 집단의 행동이 다른 집단의 경험을 바꿉니다. 이 간섭은 통계적 보정으로 없앨 수 없고, 서로 영향을 주지 않는 더 큰 단위로 배정해야 합니다.

이전: 통계학 7강 · 다음: 통계학 9강

모던지 · 궁금하면 모던지 GitHub · 2026-09-10