Julie의 Tech 블로그

A/B Test in Data Science - (3) 샘플 크기는 얼마나 해야할까? 검정력 분석(Power Analysis) 본문

Tech/ML, DL

A/B Test in Data Science - (3) 샘플 크기는 얼마나 해야할까? 검정력 분석(Power Analysis)

Julie's tech 2022. 4. 5. 18:20
728x90

A/B테스트를 진행하다 보면 한 가지 의문점이 떠오르게 된다 - 실험을 얼마 동안 진행해야할까?

이 질문은 '얼마 만큼의 데이터를 모아야하는가'와 결국 동일한 질문이다.

통계학적으로 접근하자면, 가설검정의 결과는 p-value에 의해 결정된다.

두 집단의 검정통계량 차이가 크면 클수록(p-value가 클수록) 두 집단은 이질적인 집단으로 분류된다.

즉 우리는 샘플 사이즈를 정하기에 앞서 어떤 통계학적 테스트를 이용하여 결과를 볼 것인지 정해야한다.

그 후 최소한의 수준을 정해야한다. 예를 들어 x만큼의 차이가 있는 것으로 밝혀졌을 때, 그 x가 얼마나 큰 것인지를 비교할 수 있는 수준말이다.

그 최소한의 수준(Minimum Detectable Effect, MDE)를 찾아낼 확률을 계산한 뒤, 그 확률만큼을 감안하여 샘플 크기를 결정하면 된다.

이를 해결해주는 기법이 검정력 분석(Power Analysis)이다.

여기서 검정력(Power)이란 대립가설이 사실일때 귀무가설을 기각할 확률, 즉 대립가설이 사실임을 인정해줄 수 있는 정도를 의미한다.

검정력 분석은 아래 4가지 중 3가지가 정해져있을 때 나머지 하나의 값을 구하는 분석이다.

1) 표본수(sample size) - 주어진 검정력을 보장하기 위해 필요로 하는 샘플 사이즈 수
2) 유의 수준(significance level) - 귀무가설이 사실임에도 기각할 확률
3) 효과 크기(effect size) - 비교하려는 집단사이에 얼마나 차이가 있는지 나타내주는 지표
4) 검정력(power) - 대립가설이 사실일때 귀무가설을 기각할 확률

우리는 표본수를 알아내야하니 2), 3), 4)를 정해야한다.

일반적으로 검정력을 0.8 수준으로 정한다고 한다.

이 때 0.8의 검정력이란 100번의 테스트를 했을 때 80번은 A와 B가 유의미하게 차이를 보여주었을 경우, B를 채택한다는 것이다.

즉 n번의 테스트 중 몇 번의 테스트를 통과해야 그 결과를 신뢰할 수 있는지를 의미한다.

유의수준은 5%인 0.05로 보통 정한다. 이 뜻은 A안이 더 좋지만 100번 중에 5번이 B안이 좋다고 나온다면 B안을 채택한다는 의미이다.

즉 이 때 통계적 유의성은 95% 수준인 것이다.

효과 크기는 실험하고자 하는 환경에 따라 크게 달라진다. 비즈니스적인 아이디어도 필요한 구간인데, 트래픽이 꽤 되는 웹사이트라고 한다면 1%의 전환율 차이도 굉장히 유의미한 차이일 것이지만, 반대로 작은 규모의 웹사이트는 10% 차이는 발생해야 유의미한 차이라고 볼 수 있을 것이다.

따라서 효과 크기는 측정하고자 하는 주제, 환경에 따라 달라지게 된다.

웹사이트에서 A/B테스트를 진행한다고 하자. A안은 103회의 방문동안 총 10번의 전환율을 기록했다. 이 때 전환율은 9.71%이다.

B안은 97회의 방문 동안 6번의 전환율이 기록되어 6.19%의 전환율을 기록한다.

이 데이터에 따르자면 A안은 B안 대비 9.71/6.19 - 1 = 57% 더 높은 전환율을 기록할 것이라고 말한다.

여기서 57%가 effect size인 것이다. 둘 간의 상대적인 통계량차인 것이다.

여기서 우리는 57%가 유의미하게 큰 차이인 것인지, 아닌지를 판단해야한다.

이 때 MDE(Minimum Detectable Effect)를 기준으로 57%가 유의한 수준인지를 판단한다.

만약 MDE가 35%였다면, 위 결과는 A안이 B안에 비해 상당히 우수한 대안임을 알 수 있다.

이처럼 3가지 데이터를 결정하였을 때, 우리는 어느 분포에서 어떤 문제를 볼 것인지를 결정해야한다.

예를 들어 0또는 1로 결정되는 Binary 분류 문제라면 이항분포를 분포도로 설정할 수 있다.

이 때 주어진 Baseline과 유의수준 0.05로 정해지면 MDE로 p-value가 유의수준 이내인 분포도의 표본 수를 구할 수 있고,

검정력 0.8로 지정하게 된다면, 해당 표본 수의 0.8을 나누어 실험에 필요로 하는 최종 표본수를 산출할 수 있다.

실제 A/B테스트 샘플수 구하는 웹사이트,  https://www.evanmiller.org/ab-testing/sample-size.html
 


반응형