통계적 가설 검정
A/B 테스트에서는 사용되는 검정 방식에 따라 빈도주의(Frequentist) A/B 테스트와 베이지안(Bayesian) A/B 테스트로 구분할 수 있어요. 이 가이드에서는 그중 빈도주의 A/B 테스트에서 사용되는 통계적 가설 검정을 중심으로 다뤄요.
빈도주의 A/B 테스트에서는 대조군(A)과 변형군(B)의 차이가 우연에 의한 결과인지, 아니면 실제 효과에 따른 차이인지를 판단하는 것이 핵심이에요. 이를 위해 귀무가설, 대립가설, P-value, 유의 수준과 같은 통계적 개념을 사용해요. 이 개념들은 실험 결과를 해석하고, 테스트 결과를 어느 수준까지 신뢰할 수 있는지를 판단하는 기준이 돼요.
다만 Optilify에서는 이러한 개념을 사용자가 직접 계산하거나 해석하지 않아도, 실험 결과를 바탕으로 성과 인사이트를 자동으로 제공해요. 그래서 아래 내용은 Optilify의 결과를 해석하는 데 필요한 개념적 배경을 이해하기 위한 참고용 학습 자료로 읽어도 충분해요.
귀무가설과 대립가설
빈도주의 A/B 테스트에서 가설 검증은 두 가지 가설을 설정하는 것에서 시작해요.
이 두 가설은 실험 결과를 해석할 때 사용되는 판단의 기준점이에요.
참고:
빈도주의 A/B 테스트에서는 귀무가설이 참이라는 가정을 전제로 실험 결과를 해석해요.
귀무가설 (H₀)
두 그룹 간에 차이가 없다고 가정하는 기준 가설이에요.
빈도주의 A/B 테스트에서는 이 가설을 출발점으로 삼아, 실험 결과가 우연으로 설명 가능한 범위에 있는지를 판단해요.
예시:
대조군(A)과 변형군(B)의 전환율에는 차이가 없다.
대립가설 (H₁)
귀무가설과 대비되는 가설로, 두 그룹 간에 차이가 존재한다고 가정하는 가설이에요.
빈도주의 A/B 테스트에서 실험은 이 가설이 참임을 직접 증명하기 위한 것이 아니라, 귀무가설을 기각할 수 있는지 여부를 판단하기 위해 설계돼요.
예시:
대조군(A)과 변형군(B)의 전환율에는 차이가 있다.
P-value
P-value는 귀무가설이 참이라고 가정하고, 현재와 같거나 더 극단적인 결과가 관측될 확률을 의미해요. 즉, 관측된 결과가 우연으로 설명되기 얼마나 어려운지를 수치로 나타낸 값이에요
P-value는 단독으로 해석되지 않고, 사전에 설정한 유의 수준과의 비교를 통해 판단에 사용돼요.
- p-value가 유의 수준보다 작거나 같은 경우, 현재와 같은 결과는 우연으로 발생했을 가능성이 낮다고 해석할 수 있어요.
- p-value가 유의 수준보다 큰 경우, 관측된 결과는 우연으로도 충분히 발생할 수 있는 범위에 있다고 해석할 수 있어요.
참고:
이러한 기준에 따라, 빈도주의 A/B 테스트에서는 P-value가 유의 수준보다 작거나 같을 때, 귀무가설을 기각하고 두 버전 간에 차이가 있다고 판단할 수 있어요.
이는 결과가 “반드시 차이가 있다”고 단정하는 것이 아니라, 우연이라고 보기 어렵다는 의미예요.
유의 수준
유의 수준(significance level)은 P-value와 비교하기 위해 사전에 정해 두는 판단 기준이에요. 빈도주의 A/B 테스트에서는 이 값을 기준으로 “어디까지를 우연으로 볼 것인지”를 미리 정해요.
빈도주의 A/B 테스트에서는 보통 0.05(5%)를 사용해요. 이는 P-value가 5% 이하라면, 귀무가설을 기각하겠다는 판단 기준으로 이해할 수 있어요.
다르게 말하면, 유의 수준은 “귀무가설이 실제 참이라도, 우리가 틀리게 기각할 가능성을 이 정도까지는 감수하겠다”는 의미를 가져요.
참고:
- 유의 수준이 낮을수록, 우연으로 보지 않는 기준이 더 엄격해져요.
- 유의 수준이 높을수록, 우연으로 보는 기준이 완화돼요.
테스트 결과 해석
빈도주의 A/B 테스트에서 테스트 결과 해석은 통계적으로 우연으로 발생했을 가능성과 그 차이가 실제로 얼마나 도움이 되는지를 해석하는 과정이에요.
이 두 단계는 서로 다른 질문에 답해요.
- 통계적 유의성을 판단: P-value와 유의 수준을 비교해 관측된 차이를 우연으로 보기 어려운지, 즉 귀무가설을 기각할 수 있는지를 판단해요.
- 효과의 크기(Effect Size) 해석: 관측된 차이가 얼마나 달라졌는지, 그리고 그 변화가 실제 의사결정에 얼마나 도움이 되는지를 해석해요.
예시:
다음과 같은 테스트 결과가 있다고 가정해요.
- 유의 수준: 0.05(5%)
- P-value: 0.03(3%)
이 경우, P-value가 유의 수준보다 작기 때문에 통계적으로는 귀무가설을 기각하고 두 버전 간에 차이가 있다고 판단할 수 있어요.
이제 다음과 같은 질문들이 필요해요.
- “이 차이가 실제로 얼마나 매출에 도움이 되는가?”
- “개발/운영 비용을 감당할 만큼 가치가 있는가?”
- “장기적으로 유지할 만한 개선인가?”
이러한 관점을 함께 고려해 해석하면, 전환율이 0.1%p 증가했다면 통계적으로는 유의하지만 트래픽 규모나 비용 등을 고려했을 때 실제 의사결정에 미치는 영향은 크지 않을 수도 있어요.
반대로, 전환율이 5%p 이상 증가했다면 통계적으로도 유의하고 의사결정에 영향을 줄 수 있는 변화로 해석할 수 있어요.
이처럼 A/B 테스트 결과는 “차이가 있는가”와 “그 차이가 얼마나 도움이 되는가”를 함께 놓고 해석할 때 실제 판단에 도움이 돼요.
통계적 가설 검정 결과의 구조
통계적 판단은 항상 네 가지 경우 중 하나로 정리돼요.
귀무가설 기각 | 귀무가설 기각 실패
| |
|---|---|---|
귀무가설이 참 | 거짓 양성(False Positive)
| 진짜 음성(True Negative)
|
귀무가설이 거짓
| 진짜 양성(True Positive)
| 거짓 음성(False Negative)
|
이 표는 통계적 판단이 항상 실제 효과의 유무와 완전히 일치하지는 않는다는 점과, “기각”이나 “기각 실패”가 곧 정답이나 실패를 의미하지는 않는다는 점을 보여줘요.
검정력과 검정력 부족
검정력(Power)은 실제로 효과가 있어 귀무가설이 거짓일 때, 이를 놓치지 않고 귀무가설을 기각할 수 있는 확률을 의미해요. 즉, 실제 변화가 존재할 때 차이를 발견할 수 있는 가능성이에요.
하지만 표본 수가 충분하지 않은 경우, 실제로 의미 있는 변화가 있음에도 테스트 결과가 “통계적으로 유의하지 않음”으로 나타날 수 있어요.
이러한 상황을 검정력 부족(Low Statistical Power)이라고 하며, 이는 효과가 있음에도 이를 발견하지 못하는 제2종 오류(Type II Error)에 해당해요.
예시:
기존 전환율이 5%인 버튼에서 최소 10%의 상대적 개선(전환율 5.5%)을 감지하려면, 빈도주의 A/B 테스트에서는 약 59,000명 이상의 표본이 필요할 수 있어요.
이처럼 검정력이 충분하지 않은 환경에서는 “유의하지 않다”는 결과가 효과가 없다는 의미인지, 아니면 발견하기에 충분하지 않았다는 의미인지를 구분하기 어려워요.
실무 환경에서는 수천 명에서 수만 명 단위의 표본을 확보해 단일 실험으로 통계적 유의성을 판단하기가 현실적으로 어려운 경우가 많아요.
이러한 이유 때문에 Optilify는 통계적 가설 검정 대신 베이지안 결정 이론을 활용한 성과 인사이트를 제공하고 있어요.
주의 사항
- P-value는 효과의 크기를 의미하지 않아요.
P-value는 관측된 차이가 우연으로 보기 얼마나 어려운지를 판단하는 지표일 뿐, 그 차이가 얼마나 큰지, 얼마나 도움이 되는지를 설명하지는 않아요.
따라서 테스트 결과는 항상 효과의 크기와 함께 해석할 필요가 있어요. - 통계적으로 의미를 판단하기 어렵다고 해서 실험이 실패한 것은 아니에요.
이는 효과가 없다는 결론이 아니라, 추가 실험을 진행하거나 조건을 변경해 다시 검증할 수 있는 중요한 근거가 될 수 있어요. - 충분한 표본 수가 필요해요.
표본 수가 충분하지 않으면 P-value가 높게 측정되어, 통계적으로 의미를 판단하기 어려울 수 있어요. - 올바른 실험 설계가 전제되어야 해요.
표본 수가 충분하지 않거나, SRM(표본 비율 불일치), 트래픽 편향, 실험 중 조건 변경 등이 존재하면 테스트 결과와 해석이 왜곡될 수 있어요.