brunch

You can make anything
by writing

C.S.Lewis

by Rightbrain Lab May 12. 2023

신뢰도 높은 온라인 통제 실험 A/B테스트 - 2편

A/B Test - Part 2

1편에서 계속 - 이전글 바로 보기


4) 대조군과 실험군 생성

다음은  표본 즉, 가설 검증에 필요한 실험 참가자의 숫자를 정해야 합니다. 너무 적은 수의 관측치를 표본으로 추출할 경우  편향(bias)이 발생할 수 있으므로 최소 표본 크기를 결정하는 것이 중요한데요. 일반적으로는 표본의 크기가 클수록 검정력이  높아지나, 기업의 상황에 따라 그 크기는 달라질 수 있습니다.


예를 들어 사용자가 어떤 반응을 보일지 모르는 대규모 실험의 경우, 더 적은 비율의 사용자로 시작하는 것이 좋습니다. 


특히,  구글이나 빙과 같이 수십억 달러를 창출하는 기업은 0.01%만으로도 실험적 효과가 나타날 수 있으므로 샘플 크기 설정에 주의해야  합니다. 만약 고객 수가 100,000명인 기업은 전환율의 차이가 1%만 되어도 1,000명인데 반해 1,000명인 기업은  전환율의 차이가 5%에 달하더라도 50명에 그치겠죠? 이는 객단가 10,000원 기준 각 10억과 50만 원으로 무시할 수 없는  크기이기도 합니다.


이처럼  여러 상황을 고려하지 않은 채 무작정 많은 표본을 모으기 위해 리소스를 낭비하지 않으며, 기대하는 결과값에 따라 최소 표본을  설정하는 것은 매우 중요합니다. 최근에는 여러 사이트에서 검증하고자 하는 가설, 검정력, 유의 수준 등 실험 설계 조건을 입력하면  실험에 필요한 샘플 수를 계산해 주기도 하니 참고해 보시길 바랍니다.( https://www.evanmiller.org/ab-testing/sample-size.html)


그렇다면 샘플은 어떻게 추출하는 것일까요?


무작위  추출은 가장 일반적인 샘플링 기법 중 하나입니다. 이때, 모든 표본이 동일한 확률을 가진 상태에서 샘플을 추출하는 것이  중요한데요. 일부 표본이 실험에 사용되는 모든 지표에 영향을 미칠 수 있기 때문입니다. 즉, 단순히 회원번호, 홀짝 등과 같은  방법으로 실험군과 대조군을 나누는 것은 진정한 의미의 랜덤 추출이라 보기 어려운 것이죠.



사용자 수준에서의 샘플링 방식과 장단점을 살펴보겠습니다.


-      사용자 ID 또는 로그인을 기준으로 샘플링할 경우
 일반적으로 서비스에 등록된 ID는 플랫폼 변화뿐 아니라 장기적인 시간 변화를 필요로 하는 실험에서도 일관성을 유지합니다. 
 

-      쿠키에서 생성한 식별자를 기준으로 샘플링할 경우

대부분의  웹사이트에서는 사용자 방문 시, 식별자를 포함한 쿠키를 생성합니다. 네이티브 앱에서는 애플은 idFA나 idFV, 안드로이드는  광고 ID와 같은 쿠키를 제공하는데요. 이러한 식별자는 여러 플랫폼에서 호환되지 않으므로 동일한 사용자가 방문하더라도 서로 다른  ID로 간주합니다. 이러한 쿠키는 브라우저 또는 특정 장치의 OS를 테스트하기 용이하며, 일반적인 사용자 ID에 비해 장기적인  테스트에서는 취약하다는 특징이 있습니다.


-      특정 장치에 주어진 즉, 변하지 않는 ID를 기준으로 샘플링할 경우

이러한 ID는 장치 및 플랫폼 간 호환성은 떨어지지만 변경이 불가능하여 시간에 따라 변하지 않는 안정성을 갖습니다.



5) A/B테스트 집행 기간 결정

모든 준비가 끝나면 가설 검증에 필요한 데이터 수집 기간을 정해야 합니다. 이때, 테스트 결과에 대한 유의성을 잃지 않기 위해 샘플 사이즈, 기존 전환율, 희망 전환율, 일 평균 방문자 수를 포함한 아래 상황을 고려해야 하는데요.


-      과도한 테스트 기간 설정
 온라인상으로  테스트 기간이 길어질수록 표본 수는 증가하게 되고 이는 테스트의 검정력이 증가하게 되어 적은 차이로도 개선안이 유의미한 것으로  판단하게 됩니다. 다만 테스트를 오래 진행하게 될 경우 팀의 리소스와 트래픽 낭비와 같은 문제점이 발생할 수 있으니 유의해야  합니다.


-      초두 효과
 서비스  상황에 따라 테스트 초기 효과가 크거나 작은 경향이 있습니다. 이 경우 테스트가 안정화되기 전 즉, 표본 수가 아직 일정 수준이  도달되기 전 테스트가 종료될 경우 결과값에 대한 신뢰를 잃게 됩니다. 따라서 서비스 상황을 염두하며 일정 기간 테스트를 진행하여  유의성을 잃지 않도록 유의해야 합니다.
  

-      주간 또는 공휴일
 주말 또는 공휴일(크리스마스, 명절) 등과 같이 시기 상으로 사용자 행동에 영향을 끼치는 요인들이 있으니 기간 설정 시 고려되어야 합니다. 





4. 테스트 수행


테스트를  수행하고 데이터를 수집한 후, A/B Testing Tool을 이용해 대조군과 실험군의 결과 차이가 통계적으로 유의한 지 여부를  확인할 수 있습니다. 대표적인 트래킹 Tool로 구글 애널리틱스(GA), 엠플리튜드, 믹스패널, 뷰저블, 옵티마이즐리가  있습니다.    

                

Google  Analytics
구글 애널리틱스는 가장 기본적인   트래킹 툴입니다. GA를 이용해 페이지에 추적코드를 설치하게 되면 사용자가 어떤 경로를 통해 들어오며   어떤 액션을 수행했는지 관련된 데이터들을 수집하고 분석하며 보고서를 생성할 수 있습니다.

                     

Mixpanel
믹스패널은  퍼널마다 사용자가   어떤 행동을 취했는지 퍼널 분석이 가능한 것이 가장 큰 특징입니다. 또한 특정 기간 동안 사용자   행동을  기준으로 그룹을 나눠 확인하는 코호트 분석이 가능합니다. 분석, 보고, 마케팅 등 다방면의 세부 기능들이 제공되고 있습니다.


Amplitude
엠플리튜드 역시 믹스패널과 동일하게   퍼널 분석 및 코호트 분석이 가능합니다. 보고서 생성 및 시각화에 더욱 특화되어 있는 것이 믹스패널과   차이로 볼 수 있습니다.


데이터  수집이 완료되었다면 앞서 설정해 두었던 가드레일 지표의 변화 유무를 통해 A/B테스트 결과의 적절성을 우선적으로 검사해야  합니다. 만약 가드레일 지표에 변화가 있을 경우 이외 다른 지표 결과의 신뢰성을 잃었다고 판단할 수 있습니다.


대표적으로는  SRM이 있습니다. SRM은 테스트 설계 시, 설정해 놓았던 실험군과 대조군의 비율이 테스트 종료 후, 실제 집단 간 비율과  차이가 발생한 경우를 의미합니다. SRM이 발생하게 되면 테스트 결과에서 지표에 대한 신뢰성을 잃게 되며 해당 결과는 비즈니스의  어떠한 결정을 내릴 때 사용되어선 안됩니다.


마지막  단계로 ‘p값’을 이용해 통계적 가설 검정을 진행합니다. p값은 실험군과 대조군의 결과값이 같다는 귀무가설 하에 표본을 추출할  경우 대조군의 결과값 또는 그보다 더 극단적인 값이 관찰될 확률을 의미합니다. 일반적으로 p값이 5% 미만일 경우 실험군과 대조군  차이가 유의미한 것으로 판단하며 귀무가설을 기각하고 대립가설을 채택합니다.


A/B  테스트의 목적은 프로젝트가 얼마나 효과가 있는지 살펴보기 위함이지 통계적 유의성만을 확보하기 위한 것은 아니므로 우리는  프로젝트가 비즈니스에 미치는 실질적 성과, 비용 등 종합적으로 고려하며 p값에 매몰되지 않도록 유의해야 합니다.





이 글을 마치며


A/B  테스트를 진행하고, 결과를 추출하여 답을 내리는 것은 매우 조심스럽고 신중해야 합니다. 연관분석을 통해 상관관계를 밝히고  인과성을 발견하는 것이 A/B테스트의 목적이기 때문에 그 설명력을 신뢰도 있는 것으로 바라보기 위해서는 많은 분석이 필요합니다.  테스트의 결과를 맹목적으로 믿고 그 결과를 실천에 옮기는 것은 위험합니다. 예를 들어 좋은 제품은 일관된 사용자 인터페이스, 색채  조합, 작동 방식을 가지고 있어야 하는데 사용자의 인터페이스의 모든 부분을 극소 단위로 최적화하기 위해 A/B 테스트를 무더기로  진행하면 일관되지 않은 디자인을 가진 제품이 탄생되기 때문입니다. 또한 변경사항이 도입되었을 때 사용자들은 이전의 방식이  익숙하기 때문에 새로운 방식에 적응하기까지 시간이 걸리기도 하고 (초두효과) 새로운 기능이나 눈길을 끌만한 기능을 도입했을 때는  관심을 보이는 듯 하지만 시간이 지남에 따라 관심이 빠르게 줄어들 수 도 있습니다(신기효과) 그렇기 때문에 일정 시간이 지나기  전까지 결과를 속단하는 것은 피해야 합니다. 특히 A/B 테스트에서는 절대적인 수치를 보기보다는 추세, 상관관계, 지표 개발,  검증 등을 활용하는 것이 중요합니다. 결과를 추출한다고 한들 데이터의 결과만으로 모든 것을 분석하는 것은 결국 답이 아니고 결국  분석을 하려면 객관과 직관이 모두 필요한 것 같습니다.




- 가치 UX그룹 장수아, 강민경, 박찬미




* 이 글은 론 코하비, 다이앤 탕, 야 쉬의 [A/B테스트-신뢰도 높은 온라인 통제 실험]을 인용한 내용입니다.

* 1편 바로보기 : https://brunch.co.kr/@rightbrain/206



브런치는 최신 브라우저에 최적화 되어있습니다. IE chrome safari