A/B testing
HIPPO
Randomized Controlled Trial
A/B testing RCT를 인터넷 마케팅에 적용한 것 실제 고객에게 무작위로 다른 디자인을 제시 목표 지표(예: 가입률)이 높은 디자인을 최종 선택
A/B 테스팅 사례
Long form
Long form
Person design
Person design
Person + Long
Person + Long
A/B 테스팅에서 이슈 얼마나 많이 테스트해야 하나? 통계적 가설검정 (t-검정, 카이제곱 검정 등) bootstrapping
카이제곱 검정 𝜒 2 = 𝑂−𝐸 2 𝐸 O: 실제 관찰된 값 E: 기대값 카이제곱을 계산 카이제곱분포에서 p값 계산 𝜒 2 = 𝑂−𝐸 2 𝐸 O: 실제 관찰된 값 E: 기대값 카이제곱을 계산 카이제곱분포에서 p값 계산 p < 0.05 유의수준 5%에서 통계적으로 유의미한 차이
통계적으로 유의미한 차이 현실적으로 유의미한 차이라는 뜻은 아님 실제로 차이가 없을 때 관찰된 차이가 나타날 확률이 낮음
카이제곱 검정의 문제 샘플 수가 적으면 카이제곱이 카이제곱 분포를 따르지 않음 부트스트래핑
부트스트래핑 분포를 가정하지 않음 데이터를 모두 섞음 무작위로 나눔 카이제곱 구함 위 과정을 반복해서 카이제곱의 분포를 구함 비모수적 방법론
A/B 테스팅 문제점 유의수준 5%는 충분한가? 테스트 비용 지속적인 변화 테스트를 60번 하면 적어도 1번은 잘못된 결론 가능성이 95% 이상 테스트 비용 열등한 옵션을 사용자에게 노출하면서 생기는 기회비용 지속적인 변화 계절 등에 따라 사용자의 행동이 변할 경우 기존 테스트는 무용지물 반복해서 테스트할 경우 테스트 비용 증가
탐색-활용 문제 exploration-exploitation problem 탐색(exploration) 답을 알기 위해 다양한 테스트를 시도하는 것 정확한 답을 이미 알고 있을 경우는 낭비 활용(exploitation) 이미 알고 있는 답을 활용하는 것 부정확한 답을 알고 있을 경우 손실
Multi-Armed bandit
Multi-Armed Bandit Bandit: 강도 One-Armed Bandit(외팔이 강도): 슬롯머신의 별칭 돈을 딸 확률이 다른 슬롯머신이 있을 때 어느 슬롯머신을 얼마나 당겨봐야 하는가?
Multi-Armed Bandit
용어 정리 행동(action): MAB에서 한 번의 선택(예: 3번 슬롯머신) 보상(reward): 한 행동의 결과(+500원) 가치(value): 한 행동의 보상의 평균(q) 추정 가치(estimated value): 지금까지 행동으로 추정한 가치(Q)
그리디 법 greedy method 초기 탐색 후 추정 가치가 가장 높은 방법을 활용 단순
입실론-그리디 법 epsilon-greedy method 기본적으로는 그리디 법과 동일 시간이 충분히 지나면 가장 좋은 답으로 수렴
입실론-그리디 법
이동평균법 추정 가치와 보상의 차이 기존의 추정 가치에 업데이트 n 대신 고정 비율 최근 결과에 가중치 가치가 변하는 경우에 유용
낙관적 초기화 Optimistic Initialization 초기값을 실제 가치보다 크게 설정 초반에는 가치를 과대 추정 활용이 실제로는 탐색처럼 됨 적게 탐색된 행동을 더 자주 탐색하도록 유도
낙관적 초기화
Upper Confidence Bound 입실론-그리디는 무작위 탐색을 하는 문제가 있음 설명 Qt(a): a 행동의 추정 가치 Nt(a): a 행동의 수 t: 총 행동 수 c: 탐색 정도를 제어하는 파라미터 추정 가치가 크면서 상대적으로 적게 탐색한(N) 행동을 선택
UCB
Gradient Bandit 추정 가치를 구하지 않는 방법 모든 행동에 확률을 할당 보상이 큰 행동의 확률은 증가, 다른 행동은 감소 입실론 그리디와 달리 입실론을 정하는 문제가 없음
Gradient Bandit Pr{At=a}: a 행동을 할 확률 Ht(a): a 행동에 대한 선호
비교