학습 주제
- 가상 데이터 기반 A/B 테스트 분석
주요 학습 내용
- 95% 신뢰도 이외의 신뢰도도 사용하느냐?
- 온라인 회사에서 테스트는 대부분 95%
- 신뢰도를 높이는 것(95% -> 99%) 보다는 샘플크기를 늘리는 것이 더 좋음
- 95% 신뢰도로 가면 대부분 동일하다고 나오지 않느냐
- 기능에?차이가 있고 샘플 크기가 충분하면 다르다고 나옴 (경험상)
- 단 테스트를 얼마나 돌려야한다는 점에서는
- 결과가 나쁜 경우의 임계치를 정하고
- 통계적으로 의미있는 결과가 나올만큼 샘플이 커질 때까지 기다려야함
- Don’t do data peeking
- 이상 데이터 처리는 보통 어떻게 하는가?
- 일반적으로 outlier 분석과 그를 기반으로한 필터링이 필요함
- 이는 A/B 테스트마다 임의적으로 실행하기 보다는 모든 A/B 테스트에 적용하는 것이 필요
- Bot 감지와 제거
- Whale user 감지와 제거
- Normalization도 필요 (click과 impression 예)
- 예외적인 필터링이 필요한 경우 A/B 테스트 분석시 분명하게 언급이 되어야함
- Two sample T-Test
1. X는 각 집단의 표본 평균입니다. 2. n은 각 집단의 표본 크기입니다. 3.s는 두 집단의 표본 분산을 결합한 추정치입니다.
- Two Sample T-Test 계산을 위의 지표에 반복
- A와 B별로 위의 평균 값을 보여주고 B쪽 값의 경우 t-score값을 바탕으로 컬러코딩
- A/B 테스트 분석은 어떻게 구현이 되나?
- OLAP Cube와 대시보드 사용: Tableau
- 동적으로 SQL을 생성하여 사용: Looker
- 여기서 어려운 점은?
- 선택된 필터에 따라 z-score 계산이 이뤄져야 한다는 점
- 지표, 날짜, 데모그래픽 조건 - 먼저 선택된 필터에 맞춰 raw data 수집이 이뤄져야함
- 아니면 모든 가능한 조합에 대해 미리 수집을 해놓고 필터 선택에 따라 지표들을 aggregate
- 이는 어떤 대시보드를 사용하느냐에 따라 다름- 어느 대시보드도 A와 B 양쪽의 매출액 리스트를 읽어와서 z-score를 계산하지 않는다.
- 모든 대시보드도 A와 B 양쪽에서 아래 3개 정보를 각각 가지고와서 z-score를 계산
- 샘플 수
- 매출의 합
- 매출 제곱의 합
이를 읽어오는 방법은 크게 두 가지
- 모든 필터 조합에 대해 미리 계산 (Ex: Tableau)
- 동적으로 SQL을 실행해서 계산 (Ex: Looker)
- 선택된 필터에 따라 z-score 계산이 이뤄져야 한다는 점
- OLAP Cube란?
- Tableau를 사용한다면 미리 모든 조합에 대해 데이터를 수집
- A와 B별로 impression/click/purchase/paidamount에 대해 가능한 모든 date, age, gender 조합에 대해
아래를 미리 계산- 샘플 수
- 매출의 합
- 매출 제곱의 합
- 계산을 바탕으로 t-score 계산을 수행
- 장점: 속도가 빠름 (데이터를 매번 읽어올 필요가 없음)
- 단점: 필터가 변경될 때마다 데이터 수집 방법도 바뀌어야함
- 이렇게 미리 모든 조합에 대해 계산된 데이터를 OLAP Cube라고 부름
반응형
'데이터분석' 카테고리의 다른 글
데이터 분석에서 자주 사용되는 대표적인 Use_Case(1) (3) | 2024.10.22 |
---|---|
로그변환(Log Transformation) (0) | 2024.10.16 |
67-(3). A/B Test (0) | 2024.04.09 |
67-(2). A/B Test (0) | 2024.04.09 |
66-(1). A/B test (4) | 2024.03.05 |