SlideShare a Scribd company logo
1 of 45
Download to read offline
실무에서 활용하는
A/B 테스트
권정민 (cojette@gmail.com)
Agenda
● A/B 테스트란?
● A/B 테스트 설계 - 실험 설계
● A/B 테스트 평가 - 결과 분석
● 주의사항 및 관련 정보
● Wrap Up 및 Q&A
이 강의에서 다루는 것
● A/B 테스트의 개념
● A/B 테스트 설계 및 관련 지식
● A/B 테스트 효과 분석 및 관련 팁
● A/B 테스트의 장단점
● 약간의 확률 통계, 약간의 컴퓨터 용어, 약간의 사회조사방법론
이 강의에서 다루지 않는 것
● A/B 테스트 구현
● A/B 테스트 자동화 툴 소개/구현
● 결과 분석 대시보드 만들기
● 복잡한 수식
● 빅데이터
A/B 테스트란?
고객 분석을 위한 테스트
고객분석 종단적 연구
횡단적 연구
코호트 분석
A/B 테스트
다변량 분석
(출처: 위키피디아 https://ko.wikipedia.org/wiki/A/B_%ED%85%8C%EC%8A%A4%ED%8A%B8)
A B
A/B 테스트
1. 실제 대상자를 반으로 나눈 후
2. 두 가지 포맷의 테스트 자료(버튼, 이미지 등을 바꿈)를 만들어서
3. 이를 A, B 그룹 각각에 제공
4. 이에 따라 각 그룹이 얼마나 반응했는지를 판단
5. 결과가 우수한 내용을 실전에 반영
A/B 테스트의 배경
● 내생성 vs. 외생성
○ 내생성: 해당 시스템 내에서 결정되거나 생성되는 것
○ 외생성: 시스템 밖의 요소로 결정되거나 생성되는 것
● 사용자의 행동
○ 많은 경우 여러 가지 요소가 복합적으로 작용함 -> 외생성 및 고려하는 변수의 영향으로 명확한 요인
및 원인 분석 어려움
○ 많은 실제 상황(실무)의 경우 내생성을 위한 시스템을 일부 요소만으로 구축하기 어려움
● 상관관계는 인과관계를 나타내지 않는다
○ 최대한 다른 요인을 제거함으로써 인과관계에 최대한 가까운 근거를 만들고자 함
A/B 테스트 실제 사용 사례
● Highrise
(출처: https://signalvnoise.com/posts/2977-behind-the-scenes-highrise-marketing-site-ab-testing-part-1)
기본편
A/B 테스트 설계
테스트 설계
실험 설계 (Experimental design)
● A/ B 테스트: 사용자의 반응도에 대한 실험 -> 사용자를 대상으로 한 실제
환경에서의 실험
사회조사방법론에서의 실험 설계
유사실험설계의 특징
● 사회 현상에서의 인과관계 판단용
● 순수실험설계만큼의 통제가 불가한 환경에서 대안적인 방식으로 통제 집단을
구성함
● 외생변수의 개입 가능성이 높음
● 실험에 대한 통제가 적으므로 외적 타당성이 상대적으로 높아 현실 문제 해결에
유용함
실험 설계 과정
● 대상선정: 연구대상을 선정
● 실험환경 선정: 실험실, 실험도구 등의 실험환경을 선정
● 무작위표집: 연구대상을 무작위로 표본추출
● 무작위할당: 추출된 표본을 무작위로 실험집단과 통제집단에 배치
● 사전검사: 두 집단에 종속변수에 대한 사전검사를 실시
● 실험조치: 실험집단에만 실험조치를 실시
● 사후검사: 두 집단에 종속변수에 대한 사후검사를 실시
● 비교 및 검증: 사전, 사후검사 결과 변수 간의 의미있는 변화를 비교
A/B 테스트 설계 과정
● 대상선정: 연구대상을 선정 -> 사용자 및 지표
● 실험환경 선정: 실험실, 실험도구 등의 실험환경을 선정 -> 실제/실제 예정 환경
● 무작위표집: 연구대상을 무작위로 표본추출 -> 사용자 무작위 선정
● 무작위할당: 추출된 표본을 무작위로 실험집단과 통제집단에 배치
● 사전검사: 두 집단에 종속변수에 대한 사전검사를 실시 -> 실험 환경 확인
● 실험조치: 실험집단에만 실험조치를 실시 -> 분기
● 사후검사: 두 집단에 종속변수에 대한 사후검사를 실시 -> 실험 환경 재확인
● 비교 및 검증: 사전, 사후검사 결과 변수 간의 의미있는 변화를 비교 -> 결과 분석
목적 지표 선정
● 가설 검정에 가장 직관적이면서 구하기 용이한 지표 선정
● 양적으로 확인 가능한 실질적 지표
○ 감정 정도(사용자 만족도 등) 같은 모호한 지표는 제외함
○ 실험을 통해서 기록되지 않는 데이터가 필요한 수치는 제외함
● 비율 : 사용 흐름상 전 후
○ 퍼널의 실험 참여 단계 -> 실험 결과 반응 단계
○ 예) CTR (Click-Through Rate) : 클릭 수 / 페이지 뷰 수
● 실험 대상 : 사람 -> 지표 대상도 사람이 되어야 보다 정확한 결과를 얻을 수 있음
○ 예: 클릭한 사용자 / 페이지를 본 사용자
지표 관련 대푯값
● 대푯값: 집단의 특성을 반영하는 요약값.
● 평균
○ 지표 생성 시 가장 많이 사용되는 값
○ 전체 집단에서의 분포상 기댓값
○ 소수의 이상치 값에 대한 민감도가 높음
● 중앙값
○ 전체 집단에서 중앙에 위치하는 값
○ 이상치 값에 대한 민감도가 낮음
○ 분포가 쌍봉형으로 되어 있는 경우 한 쪽에 치우쳐서 적당한 대푯값이 되지 않는 경우 발생
● 최빈값
○ 전체 집단에서 가장 많이 나타나는 값
○ 다양한 값을 가지는 경우 적절하지 못함
지표 관련 분포
● 히스토그램
○ 값의 분포를 막대그래프로 나타낸
것
○ 대푯값만으로 판단이 어려울 때
같이 확인할 수 있음
○ 이상치로 인해 대푯값이 기울어진
경우 파악 후 보정할 수 있음
A/B 테스트 평가
사용자 퍼널(Funnel)
목적 지표의 해석
● 비교 전 확인
○ 실험군과 대조군(A군과 B군)의 사용자 집합 크기가 동일한가?
○ 실험군과 대조군의 사용자 분포가 크게 다르지 않는가?
● 확인 방법
○ 집합 크기가 다름: 1:1 비교 대신 집합 크기를 통한 비교의 유의성 판단
○ 분포 파악: 성질이 다른 집합끼리의 비교는 무의미할 수 있음
● 유의 사항
○ 실험으로 얻은 값은 항상 그와 동일한 결과를 담보하는 것이 아님
○ 실험 크기가 통제가 되지 않을 경우에는 사후 추정으로 판단할 수 있음
이항 분포
● 이항 분포: 매회 사건 X가 일어날 확률이 동일한 독립시행의 경우에 있어서
확률변수X가 따르는 분포
● 클릭 등 간단한 단일 이벤트 대상 A/B 테스트의 경우 다른 서비스 내의 요인은
동일하게 통제된 상태로 사용하므로 해당 이벤트가 발생할 확률은 동일하다고
가정하고, 사용자는 모두 독립적으로 이에 반응한다고 할 때, 이는 이항 분포의
조건에 들어맞는다.
가설 검정
● 통계적 가설
○ 특정 주장을 특정 변수(모수)에 대해서 나타낸 것을 뜻함. (예: 이 수업을 듣는 사람들의 평균 만
나이는 28살이다)
● 절차
○ 귀무가설과 대립가설 설정, 유의수준 설정
○ 검정통계량 설정
○ 기각역 설정
○ 검정통계량 계산
○ 결과 기반 의사 결정
통계적 추측의 하나로서, 모집단 실제의 값이 얼마가 된다는 주장과 관련해, 표본의 정보를 사용해서 가설의
합당성 여부를 판정하는 과정
A/B 테스트에서의 가설 검정
● 귀무가설과 대립가설
○ 귀무가설(영가설): 실험군(Pexp)의 결과와 대조군(Pcont)의 결과의 차이가 없을 것이다.
○ 대립가설: Pexp <> Pcont / Pexp>Pcont (two-sided / one-sided )
● 유의수준
○ 95%의 경우 (일반적으로 많이 사용) (1-0.95) = 0.05가 유의수준이 됨
● 유의확률 (p-value)
○ 귀무가설이 맞을 경우에 얻을 수 있는 결과보다 더 극단적인 값이 관측될 확률.
○ P-value 가 작을 수록 귀무가설과 양립하는 데이터가 나타날 확률이 낮음
○ P-value가 작은 경우 귀무가설을 기각함.
○ P-value의 경우 표본 크기가 커짐에 따라 값이 달라지거나 특정 경우에 값이 커지는 등의 문제가
발생할 수 있음 -> 통계적 유의성과 현실 상에서의 문제를 고려해서 결과를 판단함.
결괏값 비교
● 이항 분포의 상태 비교
○ 해당 집단의 크기가 np>5, n(1-p)>5인지를 확인 (일반적으로 정규 분포에 적용하기에 무난한
정도의 확인)
● 비교군의 해당 지표에 대한 신뢰구간을 구한 뒤 실험군의 지표의 크기가 이 신뢰
구간에 들어가는지(유사), 벗어나는 지를 확인함
○ 간단하게 독립 t-검정 등을 사용해서 유의성 및 차이 비교 가능
○ R, 파이썬, Excel 등의 함수 사용 (t.test 등)
○ A/B test calculator 사이트들(예: https://neilpatel.com/ab-testing-calculator/) 에서는 기본적으로 이를
기반으로 함
Case Studies
Insurance Company Case
Online Education Case
(https://vwo.com/blog/10-kickass-ab-testing-case-studies/)
Shopping Mall Case
● 목적: 판매량 증대
● 가설: 구매 시점에 신뢰도 및 결제
정보 등을 사용자에게 제공하면
사용자가 더 구매를 하게 될 것이다
● A/B 테스트: 기존의 사이트와 신뢰
및 결제 정보를 구매 버튼 근처에
추가한 사이트를 사용자에게
임의로 제공
● 기간: 7일
심화편
실험 설계 시 유의점
● 목표와 가설의 애매함
○ A/B 테스트 같은 실제 환경에서의 실험에서는 실험 연구법과 같이 확정된 데이터와 연구환경이
존재하는 것이 아니라서 문제와 가설이 애매할 수 있음
○ 선행연구, 최대한 수치로 표현할 수 있는 정확한 목표 및 가설 설정, 관련 분야의 전문가의 자문 필요
● 데이터 수집
○ 사회윤리에 반하는 자료수집의 금지
○ 정확한 도구 제작의 어려움
○ 사회윤리에 반하지 않아도 사생활 관련 데이터 수집은 실험에 적절하지 않음
실험 설계 시 유의점
● 자료의 정리와 구조 설정
○ 데이터의 집계 기준을 실험 전에 명확하게 설정해 놓아야 함
○ 데이터의 사용 방식 및 수집 절차 등에 대한 명확한 정의 필요
● 해석설계의 문제
○ 실험 전에 해석 방식 및 기준을 명확하게 마련해 두는 것이 좋음
○ A/B 테스트를 반복할 수 있으면 반복하는 것이 좋으나 일반적으로는 어려움
○ 데이터 수집 후 해석 방식을 부득이하게 변경해야 하는 경우 최대한 원래 실험의 목적과 지표를
해치지 않는 선에서 활용
● 자료의 해석문제
○ A/B 테스트의 결과는 해당 시점에서의 결과일 뿐이므로 작은 숫자 등에 너무 집착하지 않는다
○ 서비스의 특성에 따른 시계열성이나 사용자 특징 등을 고려해서 결과를 해석
○ 최종 결과는 서비스의 목적이나 운영 방식 등을 반영해서 사용한다.
서비스 실험 설계 시 사용자 대상 주의점
1. 사용자에게 서비스에서 기본적으로 주어지는 것 이상의 위험을 감수하게 해야 할
가능성이 있는가?
a. 건강, 재정, 심리적, 사회적 불이익의 가능성이 있는 실험 요소는 배제되어야 함
2. 사용자가 해당 서비스 및 실험을 통해 어떤 데이터가 수집되고 있는 지를 이해하고
있는가?
a. 사용자 고지 의무
3. 실험 사용자 데이터가 식별 가능한가?
a. 개인 식별이 아니라 서비스 내에서의 사용자 식별도 실험 윤리에 어긋날 수 있음
4. 데이터는 어떤 식으로 처리되고 있는가?
a. 공개 범위 및 사용 범위 명시 및 관리
실험 후 서비스 운영시 주의점
● 실험 관련 내용은 기록으로 남겨두도록 함
● 한 번에 과하게 많은 실험은 가능한 한 피하도록 함
○ 실험 간에 영향을 미칠 수 있음
○ 데이터 기록에 문제가 생길 수 있음
○ 사용자를 모두 구분하는 경우 모수가 불충분한 경우가 발생할 수 있음
● 사용성이 불안정적이 되지 않도록 유의함
● 이후 여러 데이터 분석 시에 이전 실험 내용으로 인한 영향이 미치지 않도록 함
○ 실험 사용자는 따로 목록을 만들어 둔 후 이후에도 확인할 수 있도록 함
○ 사용자에 대한 추적 분석을 통해서 이후 사용성에도 실험 내용이 영향을 미칠 수 있는 지를 확인해
두는 것 필요
● A/B 테스트를 자주 할 경우 관련 API 등을 구성해 두는 것도 필요
다변량 테스트
● 여러 옵션을 한 번에 테스트하고 싶을 때 활용
MAB 알고리즘
● 강화학습의 하나로, 결과를 보면서 집단을 선택적으로 조절하는 알고리즘
● Exploration-Exploitation Trade off 문제를 위해 성과와 테스트 효과 모두를
최적으로 가져올 수 있게 하는 방법론 및 알고리즘을 총칭함
● A/B 테스트에서의 집단의 크기를 지속적으로 조율함
MAB 알고리즘
● ε-greedy
○ MAB 알고리즘 중 가장 직관적이어서 널리 쓰이는 알고리즘
○ 1−ε의 확률로 지금까지 관측한 arm 중에 가장 좋은 arm을 고르고 (exploitation), ε의 확률로
나머지 arm 중에서 임의로 arm을 골라서 실행하는 (explore) 알고리즘
■ 1−var(ε)의 확률로 지금까지 empirical reward가 가장 좋은 arm을 고른다.
■ var(ε)의 확률로 임의의 나머지 arm을 고른다.
○ 알고리즘을 수정해서 활용 가능
● UCB
○ empirical mean이 가장 좋은 arm을 실행하는 대신, 시간 t마다 과거의 관측결과와 확률 계산을
토대로 구한 각각의 arm i의 upper confidence bound (UCB)를 구하고 이것이 가장 좋은 arm을
고르는 알고리즘
■ i=arg maxi
μi
+Pi
. 에 해당하는 arm i를 고른다.
■ Pi
에 따라 UCB가 다양하게 만들어짐
MAB 알고리즘
● Thompson Sampling
○ Probability matching이라고도 하며, GA의 MAB 기능에서 사용되는 알고리즘
○ 각각의 시간 t마다 정책에 따라 action a를 선택하고, 그에 상응하는 reward r을 받는다고 가정했을
때, 관측값 observation (at
,rt
)과 parameter θ를 사용해 likelihood function Pr[r | a,θ]를 설계한
다음, prior를 가정해 MAP 문제를 해결
■ Maximize 𝔼[r | a]=∫𝔼[r | a,θ]Pr[θ | D]dθ.
○ m-1개의 arm은 empirical result가 제일 좋은 arm을 고르고, 마지막 m번째 arm만 Thompson
sampling으로 푸는 방법 등 여러 arm을 고르는 방식으로 확장 가능
Summary
● A/B 테스트란?
● A/B 테스트를 사용한 주변 사례
● A/B 테스트 설계 (유사실험설계 중) 방법
○ 주제 선정 -> 지표 및 관련 기준 설정 -> 실험 환경 설정 -> 사용자 분기 및 데이터 수집 -> 지표 확인
● A/B 테스트 결과 확인
○ 이벤트의 형태 및 분포 확인
○ 퍼널을 통한 지표값 수집 -> 집계 -> 가설 검정을 통한 확인
● 유의사항
○ 실험 설계 및 사용자 대상 유의사항, 서비스 운영 시의 유의사항 확인
● 그 외 테스트
○ MAB 알고리즘, 다변량 테스트
실무에서 활용하는 A/B테스트

More Related Content

What's hot

Causal Inference : Primer (2019-06-01 잔디콘)
Causal Inference : Primer (2019-06-01 잔디콘)Causal Inference : Primer (2019-06-01 잔디콘)
Causal Inference : Primer (2019-06-01 잔디콘)Minho Lee
 
로그 기깔나게 잘 디자인하는 법
로그 기깔나게 잘 디자인하는 법로그 기깔나게 잘 디자인하는 법
로그 기깔나게 잘 디자인하는 법Jeongsang Baek
 
[PAP] 실무자를 위한 인과추론 활용 : Best Practices
[PAP] 실무자를 위한 인과추론 활용 : Best Practices[PAP] 실무자를 위한 인과추론 활용 : Best Practices
[PAP] 실무자를 위한 인과추론 활용 : Best PracticesBokyung Choi
 
실전 스타트업 데이터분석: 소셜데이팅 이음은 이렇게 한다
실전 스타트업 데이터분석: 소셜데이팅 이음은 이렇게 한다실전 스타트업 데이터분석: 소셜데이팅 이음은 이렇게 한다
실전 스타트업 데이터분석: 소셜데이팅 이음은 이렇게 한다승화 양
 
[MLOps KR 행사] MLOps 춘추 전국 시대 정리(210605)
[MLOps KR 행사] MLOps 춘추 전국 시대 정리(210605)[MLOps KR 행사] MLOps 춘추 전국 시대 정리(210605)
[MLOps KR 행사] MLOps 춘추 전국 시대 정리(210605)Seongyun Byeon
 
[팝콘 시즌1] 이윤희 : 다짜고짜 배워보는 인과추론
[팝콘 시즌1] 이윤희 : 다짜고짜 배워보는 인과추론[팝콘 시즌1] 이윤희 : 다짜고짜 배워보는 인과추론
[팝콘 시즌1] 이윤희 : 다짜고짜 배워보는 인과추론PAP (Product Analytics Playground)
 
그로스해킹 기초
그로스해킹 기초그로스해킹 기초
그로스해킹 기초keunbong kwak
 
린분석 with 레진코믹스 ( Lean Analytics with Lezhin Comics )
린분석 with 레진코믹스 ( Lean Analytics with Lezhin Comics )린분석 with 레진코믹스 ( Lean Analytics with Lezhin Comics )
린분석 with 레진코믹스 ( Lean Analytics with Lezhin Comics )정혁 권
 
스타트업은 데이터를 어떻게 바라봐야 할까? (개정판)
스타트업은 데이터를 어떻게 바라봐야 할까? (개정판)스타트업은 데이터를 어떻게 바라봐야 할까? (개정판)
스타트업은 데이터를 어떻게 바라봐야 할까? (개정판)Yongho Ha
 
하이퍼커넥트에서 자동 광고 측정 서비스 구현하기 - PyCon Korea 2018
하이퍼커넥트에서 자동 광고 측정 서비스 구현하기 - PyCon Korea 2018하이퍼커넥트에서 자동 광고 측정 서비스 구현하기 - PyCon Korea 2018
하이퍼커넥트에서 자동 광고 측정 서비스 구현하기 - PyCon Korea 2018승호 박
 
서비스 기획자를 위한 데이터분석 시작하기
서비스 기획자를 위한 데이터분석 시작하기서비스 기획자를 위한 데이터분석 시작하기
서비스 기획자를 위한 데이터분석 시작하기승화 양
 
서비스 기획자의 데이터 분석
서비스 기획자의 데이터 분석서비스 기획자의 데이터 분석
서비스 기획자의 데이터 분석YOO SE KYUN
 
데이터가 흐르는 조직 만들기 - 마이리얼트립
데이터가 흐르는 조직 만들기 - 마이리얼트립데이터가 흐르는 조직 만들기 - 마이리얼트립
데이터가 흐르는 조직 만들기 - 마이리얼트립승화 양
 
[NDC 발표] 모바일 게임데이터분석 및 실전 활용
[NDC 발표] 모바일 게임데이터분석 및 실전 활용[NDC 발표] 모바일 게임데이터분석 및 실전 활용
[NDC 발표] 모바일 게임데이터분석 및 실전 활용Tapjoy X 5Rocks
 
Data Engineering 101
Data Engineering 101Data Engineering 101
Data Engineering 101DaeMyung Kang
 
오늘 밤부터 쓰는 google analytics (구글 애널리틱스, GA)
오늘 밤부터 쓰는 google analytics (구글 애널리틱스, GA) 오늘 밤부터 쓰는 google analytics (구글 애널리틱스, GA)
오늘 밤부터 쓰는 google analytics (구글 애널리틱스, GA) Yongho Ha
 
[DevGround] 린하게 구축하는 스타트업 데이터파이프라인
[DevGround] 린하게 구축하는 스타트업 데이터파이프라인[DevGround] 린하게 구축하는 스타트업 데이터파이프라인
[DevGround] 린하게 구축하는 스타트업 데이터파이프라인Jae Young Park
 
활성 사용자(Active user) 개념잡기
활성 사용자(Active user) 개념잡기활성 사용자(Active user) 개념잡기
활성 사용자(Active user) 개념잡기와이즈트래커
 
[우리가 데이터를 쓰는 법] 좋다는 건 알겠는데 좀 써보고 싶소. 데이터! - 넘버웍스 하용호 대표
[우리가 데이터를 쓰는 법] 좋다는 건 알겠는데 좀 써보고 싶소. 데이터! - 넘버웍스 하용호 대표[우리가 데이터를 쓰는 법] 좋다는 건 알겠는데 좀 써보고 싶소. 데이터! - 넘버웍스 하용호 대표
[우리가 데이터를 쓰는 법] 좋다는 건 알겠는데 좀 써보고 싶소. 데이터! - 넘버웍스 하용호 대표Dylan Ko
 
[팝콘 시즌1] 박동혁 : 마케터에게 필요한 Data Literacy
[팝콘 시즌1] 박동혁 : 마케터에게 필요한 Data Literacy[팝콘 시즌1] 박동혁 : 마케터에게 필요한 Data Literacy
[팝콘 시즌1] 박동혁 : 마케터에게 필요한 Data LiteracyPAP (Product Analytics Playground)
 

What's hot (20)

Causal Inference : Primer (2019-06-01 잔디콘)
Causal Inference : Primer (2019-06-01 잔디콘)Causal Inference : Primer (2019-06-01 잔디콘)
Causal Inference : Primer (2019-06-01 잔디콘)
 
로그 기깔나게 잘 디자인하는 법
로그 기깔나게 잘 디자인하는 법로그 기깔나게 잘 디자인하는 법
로그 기깔나게 잘 디자인하는 법
 
[PAP] 실무자를 위한 인과추론 활용 : Best Practices
[PAP] 실무자를 위한 인과추론 활용 : Best Practices[PAP] 실무자를 위한 인과추론 활용 : Best Practices
[PAP] 실무자를 위한 인과추론 활용 : Best Practices
 
실전 스타트업 데이터분석: 소셜데이팅 이음은 이렇게 한다
실전 스타트업 데이터분석: 소셜데이팅 이음은 이렇게 한다실전 스타트업 데이터분석: 소셜데이팅 이음은 이렇게 한다
실전 스타트업 데이터분석: 소셜데이팅 이음은 이렇게 한다
 
[MLOps KR 행사] MLOps 춘추 전국 시대 정리(210605)
[MLOps KR 행사] MLOps 춘추 전국 시대 정리(210605)[MLOps KR 행사] MLOps 춘추 전국 시대 정리(210605)
[MLOps KR 행사] MLOps 춘추 전국 시대 정리(210605)
 
[팝콘 시즌1] 이윤희 : 다짜고짜 배워보는 인과추론
[팝콘 시즌1] 이윤희 : 다짜고짜 배워보는 인과추론[팝콘 시즌1] 이윤희 : 다짜고짜 배워보는 인과추론
[팝콘 시즌1] 이윤희 : 다짜고짜 배워보는 인과추론
 
그로스해킹 기초
그로스해킹 기초그로스해킹 기초
그로스해킹 기초
 
린분석 with 레진코믹스 ( Lean Analytics with Lezhin Comics )
린분석 with 레진코믹스 ( Lean Analytics with Lezhin Comics )린분석 with 레진코믹스 ( Lean Analytics with Lezhin Comics )
린분석 with 레진코믹스 ( Lean Analytics with Lezhin Comics )
 
스타트업은 데이터를 어떻게 바라봐야 할까? (개정판)
스타트업은 데이터를 어떻게 바라봐야 할까? (개정판)스타트업은 데이터를 어떻게 바라봐야 할까? (개정판)
스타트업은 데이터를 어떻게 바라봐야 할까? (개정판)
 
하이퍼커넥트에서 자동 광고 측정 서비스 구현하기 - PyCon Korea 2018
하이퍼커넥트에서 자동 광고 측정 서비스 구현하기 - PyCon Korea 2018하이퍼커넥트에서 자동 광고 측정 서비스 구현하기 - PyCon Korea 2018
하이퍼커넥트에서 자동 광고 측정 서비스 구현하기 - PyCon Korea 2018
 
서비스 기획자를 위한 데이터분석 시작하기
서비스 기획자를 위한 데이터분석 시작하기서비스 기획자를 위한 데이터분석 시작하기
서비스 기획자를 위한 데이터분석 시작하기
 
서비스 기획자의 데이터 분석
서비스 기획자의 데이터 분석서비스 기획자의 데이터 분석
서비스 기획자의 데이터 분석
 
데이터가 흐르는 조직 만들기 - 마이리얼트립
데이터가 흐르는 조직 만들기 - 마이리얼트립데이터가 흐르는 조직 만들기 - 마이리얼트립
데이터가 흐르는 조직 만들기 - 마이리얼트립
 
[NDC 발표] 모바일 게임데이터분석 및 실전 활용
[NDC 발표] 모바일 게임데이터분석 및 실전 활용[NDC 발표] 모바일 게임데이터분석 및 실전 활용
[NDC 발표] 모바일 게임데이터분석 및 실전 활용
 
Data Engineering 101
Data Engineering 101Data Engineering 101
Data Engineering 101
 
오늘 밤부터 쓰는 google analytics (구글 애널리틱스, GA)
오늘 밤부터 쓰는 google analytics (구글 애널리틱스, GA) 오늘 밤부터 쓰는 google analytics (구글 애널리틱스, GA)
오늘 밤부터 쓰는 google analytics (구글 애널리틱스, GA)
 
[DevGround] 린하게 구축하는 스타트업 데이터파이프라인
[DevGround] 린하게 구축하는 스타트업 데이터파이프라인[DevGround] 린하게 구축하는 스타트업 데이터파이프라인
[DevGround] 린하게 구축하는 스타트업 데이터파이프라인
 
활성 사용자(Active user) 개념잡기
활성 사용자(Active user) 개념잡기활성 사용자(Active user) 개념잡기
활성 사용자(Active user) 개념잡기
 
[우리가 데이터를 쓰는 법] 좋다는 건 알겠는데 좀 써보고 싶소. 데이터! - 넘버웍스 하용호 대표
[우리가 데이터를 쓰는 법] 좋다는 건 알겠는데 좀 써보고 싶소. 데이터! - 넘버웍스 하용호 대표[우리가 데이터를 쓰는 법] 좋다는 건 알겠는데 좀 써보고 싶소. 데이터! - 넘버웍스 하용호 대표
[우리가 데이터를 쓰는 법] 좋다는 건 알겠는데 좀 써보고 싶소. 데이터! - 넘버웍스 하용호 대표
 
[팝콘 시즌1] 박동혁 : 마케터에게 필요한 Data Literacy
[팝콘 시즌1] 박동혁 : 마케터에게 필요한 Data Literacy[팝콘 시즌1] 박동혁 : 마케터에게 필요한 Data Literacy
[팝콘 시즌1] 박동혁 : 마케터에게 필요한 Data Literacy
 

Similar to 실무에서 활용하는 A/B테스트

Chapter 11 Practical Methodology
Chapter 11 Practical MethodologyChapter 11 Practical Methodology
Chapter 11 Practical MethodologyKyeongUkJang
 
[IMR2014]WEEK10
[IMR2014]WEEK10[IMR2014]WEEK10
[IMR2014]WEEK10JY LEE
 
연구학교 데이터분석
연구학교 데이터분석 연구학교 데이터분석
연구학교 데이터분석 성훈 김
 
AB Test Platform 우종호
AB Test Platform 우종호AB Test Platform 우종호
AB Test Platform 우종호Torres Woo
 
AB Test Platform - 우종호
AB Test Platform - 우종호AB Test Platform - 우종호
AB Test Platform - 우종호Jongho Woo
 
230601이종기-시장조사론특강교안-신뢰성과 타당성-요인분석-최종.pdf
230601이종기-시장조사론특강교안-신뢰성과 타당성-요인분석-최종.pdf230601이종기-시장조사론특강교안-신뢰성과 타당성-요인분석-최종.pdf
230601이종기-시장조사론특강교안-신뢰성과 타당성-요인분석-최종.pdfJong-Ki Lee
 
6월 9일 발표자료_최종.pptx
6월 9일 발표자료_최종.pptx6월 9일 발표자료_최종.pptx
6월 9일 발표자료_최종.pptxssuserd4afad
 
10.단일표본 평균 모비율
10.단일표본 평균 모비율10.단일표본 평균 모비율
10.단일표본 평균 모비율Yoonwhan Lee
 
Statistics for psychology, Inferential Statistics and Hypothesis Testing
Statistics for psychology, Inferential Statistics and Hypothesis TestingStatistics for psychology, Inferential Statistics and Hypothesis Testing
Statistics for psychology, Inferential Statistics and Hypothesis TestingMinyeong Seo
 
Machine Learning Foundations (a case study approach) 강의 정리
Machine Learning Foundations (a case study approach) 강의 정리Machine Learning Foundations (a case study approach) 강의 정리
Machine Learning Foundations (a case study approach) 강의 정리SANG WON PARK
 
Plab pm5 2019 v0.9 - slide share
Plab   pm5 2019 v0.9 - slide sharePlab   pm5 2019 v0.9 - slide share
Plab pm5 2019 v0.9 - slide shareJason TaeHyoung Yun
 
boosting 기법 이해 (bagging vs boosting)
boosting 기법 이해 (bagging vs boosting)boosting 기법 이해 (bagging vs boosting)
boosting 기법 이해 (bagging vs boosting)SANG WON PARK
 
제 15회 보아즈(BOAZ) 빅데이터 컨퍼런스 - [리뷰의 재발견 팀] : 이커머스 리뷰 유용성 파악 및 필터링
제 15회 보아즈(BOAZ) 빅데이터 컨퍼런스 - [리뷰의 재발견 팀] : 이커머스 리뷰 유용성 파악 및 필터링제 15회 보아즈(BOAZ) 빅데이터 컨퍼런스 - [리뷰의 재발견 팀] : 이커머스 리뷰 유용성 파악 및 필터링
제 15회 보아즈(BOAZ) 빅데이터 컨퍼런스 - [리뷰의 재발견 팀] : 이커머스 리뷰 유용성 파악 및 필터링BOAZ Bigdata
 
앙상블 학습 기반의 추천시스템 개발
앙상블 학습 기반의 추천시스템 개발앙상블 학습 기반의 추천시스템 개발
앙상블 학습 기반의 추천시스템 개발Jungkyu Lee
 
알고리즘 마케팅 CH5
알고리즘 마케팅 CH5알고리즘 마케팅 CH5
알고리즘 마케팅 CH5kyuchul kim
 
[홍대 머신러닝 스터디 - 핸즈온 머신러닝] 1장. 한눈에 보는 머신러닝
[홍대 머신러닝 스터디 - 핸즈온 머신러닝] 1장. 한눈에 보는 머신러닝[홍대 머신러닝 스터디 - 핸즈온 머신러닝] 1장. 한눈에 보는 머신러닝
[홍대 머신러닝 스터디 - 핸즈온 머신러닝] 1장. 한눈에 보는 머신러닝Haesun Park
 
빅데이터 윈윈 컨퍼런스-데이터수집 및 정제
빅데이터 윈윈 컨퍼런스-데이터수집 및 정제빅데이터 윈윈 컨퍼런스-데이터수집 및 정제
빅데이터 윈윈 컨퍼런스-데이터수집 및 정제ABRC_DATA
 
강화학습 기초부터 DQN까지 (Reinforcement Learning from Basics to DQN)
강화학습 기초부터 DQN까지 (Reinforcement Learning from Basics to DQN)강화학습 기초부터 DQN까지 (Reinforcement Learning from Basics to DQN)
강화학습 기초부터 DQN까지 (Reinforcement Learning from Basics to DQN)Curt Park
 

Similar to 실무에서 활용하는 A/B테스트 (20)

Chapter 11 Practical Methodology
Chapter 11 Practical MethodologyChapter 11 Practical Methodology
Chapter 11 Practical Methodology
 
[IMR2014]WEEK10
[IMR2014]WEEK10[IMR2014]WEEK10
[IMR2014]WEEK10
 
연구학교 데이터분석
연구학교 데이터분석 연구학교 데이터분석
연구학교 데이터분석
 
AB Test Platform 우종호
AB Test Platform 우종호AB Test Platform 우종호
AB Test Platform 우종호
 
AB Test Platform - 우종호
AB Test Platform - 우종호AB Test Platform - 우종호
AB Test Platform - 우종호
 
230601이종기-시장조사론특강교안-신뢰성과 타당성-요인분석-최종.pdf
230601이종기-시장조사론특강교안-신뢰성과 타당성-요인분석-최종.pdf230601이종기-시장조사론특강교안-신뢰성과 타당성-요인분석-최종.pdf
230601이종기-시장조사론특강교안-신뢰성과 타당성-요인분석-최종.pdf
 
6월 9일 발표자료_최종.pptx
6월 9일 발표자료_최종.pptx6월 9일 발표자료_최종.pptx
6월 9일 발표자료_최종.pptx
 
10.단일표본 평균 모비율
10.단일표본 평균 모비율10.단일표본 평균 모비율
10.단일표본 평균 모비율
 
Statistics for psychology, Inferential Statistics and Hypothesis Testing
Statistics for psychology, Inferential Statistics and Hypothesis TestingStatistics for psychology, Inferential Statistics and Hypothesis Testing
Statistics for psychology, Inferential Statistics and Hypothesis Testing
 
Machine Learning Foundations (a case study approach) 강의 정리
Machine Learning Foundations (a case study approach) 강의 정리Machine Learning Foundations (a case study approach) 강의 정리
Machine Learning Foundations (a case study approach) 강의 정리
 
180725
180725180725
180725
 
Plab pm5 2019 v0.9 - slide share
Plab   pm5 2019 v0.9 - slide sharePlab   pm5 2019 v0.9 - slide share
Plab pm5 2019 v0.9 - slide share
 
boosting 기법 이해 (bagging vs boosting)
boosting 기법 이해 (bagging vs boosting)boosting 기법 이해 (bagging vs boosting)
boosting 기법 이해 (bagging vs boosting)
 
제 15회 보아즈(BOAZ) 빅데이터 컨퍼런스 - [리뷰의 재발견 팀] : 이커머스 리뷰 유용성 파악 및 필터링
제 15회 보아즈(BOAZ) 빅데이터 컨퍼런스 - [리뷰의 재발견 팀] : 이커머스 리뷰 유용성 파악 및 필터링제 15회 보아즈(BOAZ) 빅데이터 컨퍼런스 - [리뷰의 재발견 팀] : 이커머스 리뷰 유용성 파악 및 필터링
제 15회 보아즈(BOAZ) 빅데이터 컨퍼런스 - [리뷰의 재발견 팀] : 이커머스 리뷰 유용성 파악 및 필터링
 
앙상블 학습 기반의 추천시스템 개발
앙상블 학습 기반의 추천시스템 개발앙상블 학습 기반의 추천시스템 개발
앙상블 학습 기반의 추천시스템 개발
 
알고리즘 마케팅 CH5
알고리즘 마케팅 CH5알고리즘 마케팅 CH5
알고리즘 마케팅 CH5
 
표집
표집표집
표집
 
[홍대 머신러닝 스터디 - 핸즈온 머신러닝] 1장. 한눈에 보는 머신러닝
[홍대 머신러닝 스터디 - 핸즈온 머신러닝] 1장. 한눈에 보는 머신러닝[홍대 머신러닝 스터디 - 핸즈온 머신러닝] 1장. 한눈에 보는 머신러닝
[홍대 머신러닝 스터디 - 핸즈온 머신러닝] 1장. 한눈에 보는 머신러닝
 
빅데이터 윈윈 컨퍼런스-데이터수집 및 정제
빅데이터 윈윈 컨퍼런스-데이터수집 및 정제빅데이터 윈윈 컨퍼런스-데이터수집 및 정제
빅데이터 윈윈 컨퍼런스-데이터수집 및 정제
 
강화학습 기초부터 DQN까지 (Reinforcement Learning from Basics to DQN)
강화학습 기초부터 DQN까지 (Reinforcement Learning from Basics to DQN)강화학습 기초부터 DQN까지 (Reinforcement Learning from Basics to DQN)
강화학습 기초부터 DQN까지 (Reinforcement Learning from Basics to DQN)
 

More from JeongMin Kwon

눈 먼 지표의 비밀 / Metrics revisited
눈 먼 지표의 비밀 / Metrics revisited눈 먼 지표의 비밀 / Metrics revisited
눈 먼 지표의 비밀 / Metrics revisitedJeongMin Kwon
 
기술 용어 번역하기
기술 용어 번역하기기술 용어 번역하기
기술 용어 번역하기JeongMin Kwon
 
R에서 데이터 허드렛일 줄이기
R에서 데이터 허드렛일 줄이기R에서 데이터 허드렛일 줄이기
R에서 데이터 허드렛일 줄이기JeongMin Kwon
 
AI와 데이터의 윤리_181110
AI와 데이터의 윤리_181110AI와 데이터의 윤리_181110
AI와 데이터의 윤리_181110JeongMin Kwon
 
잉여의 잉여력 관리
잉여의 잉여력 관리잉여의 잉여력 관리
잉여의 잉여력 관리JeongMin Kwon
 
Measuring the benefit effect for customers with Bayesian predictive modeling
Measuring the benefit effect for customers with Bayesian predictive modelingMeasuring the benefit effect for customers with Bayesian predictive modeling
Measuring the benefit effect for customers with Bayesian predictive modelingJeongMin Kwon
 
Command Line으로 분석하는 사용자 패턴
Command Line으로 분석하는 사용자 패턴Command Line으로 분석하는 사용자 패턴
Command Line으로 분석하는 사용자 패턴JeongMin Kwon
 
R & big data analysis 20120531
R & big data analysis 20120531R & big data analysis 20120531
R & big data analysis 20120531JeongMin Kwon
 
Offering 효과 분석-시계열 예측 모델 활용
Offering 효과 분석-시계열 예측 모델 활용Offering 효과 분석-시계열 예측 모델 활용
Offering 효과 분석-시계열 예측 모델 활용JeongMin Kwon
 
METRIC - 린 분석의 데이터 사용법
METRIC - 린 분석의 데이터 사용법METRIC - 린 분석의 데이터 사용법
METRIC - 린 분석의 데이터 사용법JeongMin Kwon
 
Lean Analytics_cojette
Lean Analytics_cojetteLean Analytics_cojette
Lean Analytics_cojetteJeongMin Kwon
 

More from JeongMin Kwon (11)

눈 먼 지표의 비밀 / Metrics revisited
눈 먼 지표의 비밀 / Metrics revisited눈 먼 지표의 비밀 / Metrics revisited
눈 먼 지표의 비밀 / Metrics revisited
 
기술 용어 번역하기
기술 용어 번역하기기술 용어 번역하기
기술 용어 번역하기
 
R에서 데이터 허드렛일 줄이기
R에서 데이터 허드렛일 줄이기R에서 데이터 허드렛일 줄이기
R에서 데이터 허드렛일 줄이기
 
AI와 데이터의 윤리_181110
AI와 데이터의 윤리_181110AI와 데이터의 윤리_181110
AI와 데이터의 윤리_181110
 
잉여의 잉여력 관리
잉여의 잉여력 관리잉여의 잉여력 관리
잉여의 잉여력 관리
 
Measuring the benefit effect for customers with Bayesian predictive modeling
Measuring the benefit effect for customers with Bayesian predictive modelingMeasuring the benefit effect for customers with Bayesian predictive modeling
Measuring the benefit effect for customers with Bayesian predictive modeling
 
Command Line으로 분석하는 사용자 패턴
Command Line으로 분석하는 사용자 패턴Command Line으로 분석하는 사용자 패턴
Command Line으로 분석하는 사용자 패턴
 
R & big data analysis 20120531
R & big data analysis 20120531R & big data analysis 20120531
R & big data analysis 20120531
 
Offering 효과 분석-시계열 예측 모델 활용
Offering 효과 분석-시계열 예측 모델 활용Offering 효과 분석-시계열 예측 모델 활용
Offering 효과 분석-시계열 예측 모델 활용
 
METRIC - 린 분석의 데이터 사용법
METRIC - 린 분석의 데이터 사용법METRIC - 린 분석의 데이터 사용법
METRIC - 린 분석의 데이터 사용법
 
Lean Analytics_cojette
Lean Analytics_cojetteLean Analytics_cojette
Lean Analytics_cojette
 

실무에서 활용하는 A/B테스트

  • 2. Agenda ● A/B 테스트란? ● A/B 테스트 설계 - 실험 설계 ● A/B 테스트 평가 - 결과 분석 ● 주의사항 및 관련 정보 ● Wrap Up 및 Q&A
  • 3. 이 강의에서 다루는 것 ● A/B 테스트의 개념 ● A/B 테스트 설계 및 관련 지식 ● A/B 테스트 효과 분석 및 관련 팁 ● A/B 테스트의 장단점 ● 약간의 확률 통계, 약간의 컴퓨터 용어, 약간의 사회조사방법론
  • 4. 이 강의에서 다루지 않는 것 ● A/B 테스트 구현 ● A/B 테스트 자동화 툴 소개/구현 ● 결과 분석 대시보드 만들기 ● 복잡한 수식 ● 빅데이터
  • 6. 고객 분석을 위한 테스트 고객분석 종단적 연구 횡단적 연구 코호트 분석 A/B 테스트 다변량 분석
  • 8. A/B 테스트 1. 실제 대상자를 반으로 나눈 후 2. 두 가지 포맷의 테스트 자료(버튼, 이미지 등을 바꿈)를 만들어서 3. 이를 A, B 그룹 각각에 제공 4. 이에 따라 각 그룹이 얼마나 반응했는지를 판단 5. 결과가 우수한 내용을 실전에 반영
  • 9.
  • 10. A/B 테스트의 배경 ● 내생성 vs. 외생성 ○ 내생성: 해당 시스템 내에서 결정되거나 생성되는 것 ○ 외생성: 시스템 밖의 요소로 결정되거나 생성되는 것 ● 사용자의 행동 ○ 많은 경우 여러 가지 요소가 복합적으로 작용함 -> 외생성 및 고려하는 변수의 영향으로 명확한 요인 및 원인 분석 어려움 ○ 많은 실제 상황(실무)의 경우 내생성을 위한 시스템을 일부 요소만으로 구축하기 어려움 ● 상관관계는 인과관계를 나타내지 않는다 ○ 최대한 다른 요인을 제거함으로써 인과관계에 최대한 가까운 근거를 만들고자 함
  • 11. A/B 테스트 실제 사용 사례 ● Highrise (출처: https://signalvnoise.com/posts/2977-behind-the-scenes-highrise-marketing-site-ab-testing-part-1)
  • 12.
  • 16. 실험 설계 (Experimental design) ● A/ B 테스트: 사용자의 반응도에 대한 실험 -> 사용자를 대상으로 한 실제 환경에서의 실험
  • 18. 유사실험설계의 특징 ● 사회 현상에서의 인과관계 판단용 ● 순수실험설계만큼의 통제가 불가한 환경에서 대안적인 방식으로 통제 집단을 구성함 ● 외생변수의 개입 가능성이 높음 ● 실험에 대한 통제가 적으므로 외적 타당성이 상대적으로 높아 현실 문제 해결에 유용함
  • 19. 실험 설계 과정 ● 대상선정: 연구대상을 선정 ● 실험환경 선정: 실험실, 실험도구 등의 실험환경을 선정 ● 무작위표집: 연구대상을 무작위로 표본추출 ● 무작위할당: 추출된 표본을 무작위로 실험집단과 통제집단에 배치 ● 사전검사: 두 집단에 종속변수에 대한 사전검사를 실시 ● 실험조치: 실험집단에만 실험조치를 실시 ● 사후검사: 두 집단에 종속변수에 대한 사후검사를 실시 ● 비교 및 검증: 사전, 사후검사 결과 변수 간의 의미있는 변화를 비교
  • 20. A/B 테스트 설계 과정 ● 대상선정: 연구대상을 선정 -> 사용자 및 지표 ● 실험환경 선정: 실험실, 실험도구 등의 실험환경을 선정 -> 실제/실제 예정 환경 ● 무작위표집: 연구대상을 무작위로 표본추출 -> 사용자 무작위 선정 ● 무작위할당: 추출된 표본을 무작위로 실험집단과 통제집단에 배치 ● 사전검사: 두 집단에 종속변수에 대한 사전검사를 실시 -> 실험 환경 확인 ● 실험조치: 실험집단에만 실험조치를 실시 -> 분기 ● 사후검사: 두 집단에 종속변수에 대한 사후검사를 실시 -> 실험 환경 재확인 ● 비교 및 검증: 사전, 사후검사 결과 변수 간의 의미있는 변화를 비교 -> 결과 분석
  • 21. 목적 지표 선정 ● 가설 검정에 가장 직관적이면서 구하기 용이한 지표 선정 ● 양적으로 확인 가능한 실질적 지표 ○ 감정 정도(사용자 만족도 등) 같은 모호한 지표는 제외함 ○ 실험을 통해서 기록되지 않는 데이터가 필요한 수치는 제외함 ● 비율 : 사용 흐름상 전 후 ○ 퍼널의 실험 참여 단계 -> 실험 결과 반응 단계 ○ 예) CTR (Click-Through Rate) : 클릭 수 / 페이지 뷰 수 ● 실험 대상 : 사람 -> 지표 대상도 사람이 되어야 보다 정확한 결과를 얻을 수 있음 ○ 예: 클릭한 사용자 / 페이지를 본 사용자
  • 22. 지표 관련 대푯값 ● 대푯값: 집단의 특성을 반영하는 요약값. ● 평균 ○ 지표 생성 시 가장 많이 사용되는 값 ○ 전체 집단에서의 분포상 기댓값 ○ 소수의 이상치 값에 대한 민감도가 높음 ● 중앙값 ○ 전체 집단에서 중앙에 위치하는 값 ○ 이상치 값에 대한 민감도가 낮음 ○ 분포가 쌍봉형으로 되어 있는 경우 한 쪽에 치우쳐서 적당한 대푯값이 되지 않는 경우 발생 ● 최빈값 ○ 전체 집단에서 가장 많이 나타나는 값 ○ 다양한 값을 가지는 경우 적절하지 못함
  • 23. 지표 관련 분포 ● 히스토그램 ○ 값의 분포를 막대그래프로 나타낸 것 ○ 대푯값만으로 판단이 어려울 때 같이 확인할 수 있음 ○ 이상치로 인해 대푯값이 기울어진 경우 파악 후 보정할 수 있음
  • 26. 목적 지표의 해석 ● 비교 전 확인 ○ 실험군과 대조군(A군과 B군)의 사용자 집합 크기가 동일한가? ○ 실험군과 대조군의 사용자 분포가 크게 다르지 않는가? ● 확인 방법 ○ 집합 크기가 다름: 1:1 비교 대신 집합 크기를 통한 비교의 유의성 판단 ○ 분포 파악: 성질이 다른 집합끼리의 비교는 무의미할 수 있음 ● 유의 사항 ○ 실험으로 얻은 값은 항상 그와 동일한 결과를 담보하는 것이 아님 ○ 실험 크기가 통제가 되지 않을 경우에는 사후 추정으로 판단할 수 있음
  • 27. 이항 분포 ● 이항 분포: 매회 사건 X가 일어날 확률이 동일한 독립시행의 경우에 있어서 확률변수X가 따르는 분포 ● 클릭 등 간단한 단일 이벤트 대상 A/B 테스트의 경우 다른 서비스 내의 요인은 동일하게 통제된 상태로 사용하므로 해당 이벤트가 발생할 확률은 동일하다고 가정하고, 사용자는 모두 독립적으로 이에 반응한다고 할 때, 이는 이항 분포의 조건에 들어맞는다.
  • 28. 가설 검정 ● 통계적 가설 ○ 특정 주장을 특정 변수(모수)에 대해서 나타낸 것을 뜻함. (예: 이 수업을 듣는 사람들의 평균 만 나이는 28살이다) ● 절차 ○ 귀무가설과 대립가설 설정, 유의수준 설정 ○ 검정통계량 설정 ○ 기각역 설정 ○ 검정통계량 계산 ○ 결과 기반 의사 결정 통계적 추측의 하나로서, 모집단 실제의 값이 얼마가 된다는 주장과 관련해, 표본의 정보를 사용해서 가설의 합당성 여부를 판정하는 과정
  • 29. A/B 테스트에서의 가설 검정 ● 귀무가설과 대립가설 ○ 귀무가설(영가설): 실험군(Pexp)의 결과와 대조군(Pcont)의 결과의 차이가 없을 것이다. ○ 대립가설: Pexp <> Pcont / Pexp>Pcont (two-sided / one-sided ) ● 유의수준 ○ 95%의 경우 (일반적으로 많이 사용) (1-0.95) = 0.05가 유의수준이 됨 ● 유의확률 (p-value) ○ 귀무가설이 맞을 경우에 얻을 수 있는 결과보다 더 극단적인 값이 관측될 확률. ○ P-value 가 작을 수록 귀무가설과 양립하는 데이터가 나타날 확률이 낮음 ○ P-value가 작은 경우 귀무가설을 기각함. ○ P-value의 경우 표본 크기가 커짐에 따라 값이 달라지거나 특정 경우에 값이 커지는 등의 문제가 발생할 수 있음 -> 통계적 유의성과 현실 상에서의 문제를 고려해서 결과를 판단함.
  • 30. 결괏값 비교 ● 이항 분포의 상태 비교 ○ 해당 집단의 크기가 np>5, n(1-p)>5인지를 확인 (일반적으로 정규 분포에 적용하기에 무난한 정도의 확인) ● 비교군의 해당 지표에 대한 신뢰구간을 구한 뒤 실험군의 지표의 크기가 이 신뢰 구간에 들어가는지(유사), 벗어나는 지를 확인함 ○ 간단하게 독립 t-검정 등을 사용해서 유의성 및 차이 비교 가능 ○ R, 파이썬, Excel 등의 함수 사용 (t.test 등) ○ A/B test calculator 사이트들(예: https://neilpatel.com/ab-testing-calculator/) 에서는 기본적으로 이를 기반으로 함
  • 34. Shopping Mall Case ● 목적: 판매량 증대 ● 가설: 구매 시점에 신뢰도 및 결제 정보 등을 사용자에게 제공하면 사용자가 더 구매를 하게 될 것이다 ● A/B 테스트: 기존의 사이트와 신뢰 및 결제 정보를 구매 버튼 근처에 추가한 사이트를 사용자에게 임의로 제공 ● 기간: 7일
  • 36. 실험 설계 시 유의점 ● 목표와 가설의 애매함 ○ A/B 테스트 같은 실제 환경에서의 실험에서는 실험 연구법과 같이 확정된 데이터와 연구환경이 존재하는 것이 아니라서 문제와 가설이 애매할 수 있음 ○ 선행연구, 최대한 수치로 표현할 수 있는 정확한 목표 및 가설 설정, 관련 분야의 전문가의 자문 필요 ● 데이터 수집 ○ 사회윤리에 반하는 자료수집의 금지 ○ 정확한 도구 제작의 어려움 ○ 사회윤리에 반하지 않아도 사생활 관련 데이터 수집은 실험에 적절하지 않음
  • 37. 실험 설계 시 유의점 ● 자료의 정리와 구조 설정 ○ 데이터의 집계 기준을 실험 전에 명확하게 설정해 놓아야 함 ○ 데이터의 사용 방식 및 수집 절차 등에 대한 명확한 정의 필요 ● 해석설계의 문제 ○ 실험 전에 해석 방식 및 기준을 명확하게 마련해 두는 것이 좋음 ○ A/B 테스트를 반복할 수 있으면 반복하는 것이 좋으나 일반적으로는 어려움 ○ 데이터 수집 후 해석 방식을 부득이하게 변경해야 하는 경우 최대한 원래 실험의 목적과 지표를 해치지 않는 선에서 활용 ● 자료의 해석문제 ○ A/B 테스트의 결과는 해당 시점에서의 결과일 뿐이므로 작은 숫자 등에 너무 집착하지 않는다 ○ 서비스의 특성에 따른 시계열성이나 사용자 특징 등을 고려해서 결과를 해석 ○ 최종 결과는 서비스의 목적이나 운영 방식 등을 반영해서 사용한다.
  • 38. 서비스 실험 설계 시 사용자 대상 주의점 1. 사용자에게 서비스에서 기본적으로 주어지는 것 이상의 위험을 감수하게 해야 할 가능성이 있는가? a. 건강, 재정, 심리적, 사회적 불이익의 가능성이 있는 실험 요소는 배제되어야 함 2. 사용자가 해당 서비스 및 실험을 통해 어떤 데이터가 수집되고 있는 지를 이해하고 있는가? a. 사용자 고지 의무 3. 실험 사용자 데이터가 식별 가능한가? a. 개인 식별이 아니라 서비스 내에서의 사용자 식별도 실험 윤리에 어긋날 수 있음 4. 데이터는 어떤 식으로 처리되고 있는가? a. 공개 범위 및 사용 범위 명시 및 관리
  • 39. 실험 후 서비스 운영시 주의점 ● 실험 관련 내용은 기록으로 남겨두도록 함 ● 한 번에 과하게 많은 실험은 가능한 한 피하도록 함 ○ 실험 간에 영향을 미칠 수 있음 ○ 데이터 기록에 문제가 생길 수 있음 ○ 사용자를 모두 구분하는 경우 모수가 불충분한 경우가 발생할 수 있음 ● 사용성이 불안정적이 되지 않도록 유의함 ● 이후 여러 데이터 분석 시에 이전 실험 내용으로 인한 영향이 미치지 않도록 함 ○ 실험 사용자는 따로 목록을 만들어 둔 후 이후에도 확인할 수 있도록 함 ○ 사용자에 대한 추적 분석을 통해서 이후 사용성에도 실험 내용이 영향을 미칠 수 있는 지를 확인해 두는 것 필요 ● A/B 테스트를 자주 할 경우 관련 API 등을 구성해 두는 것도 필요
  • 40. 다변량 테스트 ● 여러 옵션을 한 번에 테스트하고 싶을 때 활용
  • 41. MAB 알고리즘 ● 강화학습의 하나로, 결과를 보면서 집단을 선택적으로 조절하는 알고리즘 ● Exploration-Exploitation Trade off 문제를 위해 성과와 테스트 효과 모두를 최적으로 가져올 수 있게 하는 방법론 및 알고리즘을 총칭함 ● A/B 테스트에서의 집단의 크기를 지속적으로 조율함
  • 42. MAB 알고리즘 ● ε-greedy ○ MAB 알고리즘 중 가장 직관적이어서 널리 쓰이는 알고리즘 ○ 1−ε의 확률로 지금까지 관측한 arm 중에 가장 좋은 arm을 고르고 (exploitation), ε의 확률로 나머지 arm 중에서 임의로 arm을 골라서 실행하는 (explore) 알고리즘 ■ 1−var(ε)의 확률로 지금까지 empirical reward가 가장 좋은 arm을 고른다. ■ var(ε)의 확률로 임의의 나머지 arm을 고른다. ○ 알고리즘을 수정해서 활용 가능 ● UCB ○ empirical mean이 가장 좋은 arm을 실행하는 대신, 시간 t마다 과거의 관측결과와 확률 계산을 토대로 구한 각각의 arm i의 upper confidence bound (UCB)를 구하고 이것이 가장 좋은 arm을 고르는 알고리즘 ■ i=arg maxi μi +Pi . 에 해당하는 arm i를 고른다. ■ Pi 에 따라 UCB가 다양하게 만들어짐
  • 43. MAB 알고리즘 ● Thompson Sampling ○ Probability matching이라고도 하며, GA의 MAB 기능에서 사용되는 알고리즘 ○ 각각의 시간 t마다 정책에 따라 action a를 선택하고, 그에 상응하는 reward r을 받는다고 가정했을 때, 관측값 observation (at ,rt )과 parameter θ를 사용해 likelihood function Pr[r | a,θ]를 설계한 다음, prior를 가정해 MAP 문제를 해결 ■ Maximize 𝔼[r | a]=∫𝔼[r | a,θ]Pr[θ | D]dθ. ○ m-1개의 arm은 empirical result가 제일 좋은 arm을 고르고, 마지막 m번째 arm만 Thompson sampling으로 푸는 방법 등 여러 arm을 고르는 방식으로 확장 가능
  • 44. Summary ● A/B 테스트란? ● A/B 테스트를 사용한 주변 사례 ● A/B 테스트 설계 (유사실험설계 중) 방법 ○ 주제 선정 -> 지표 및 관련 기준 설정 -> 실험 환경 설정 -> 사용자 분기 및 데이터 수집 -> 지표 확인 ● A/B 테스트 결과 확인 ○ 이벤트의 형태 및 분포 확인 ○ 퍼널을 통한 지표값 수집 -> 집계 -> 가설 검정을 통한 확인 ● 유의사항 ○ 실험 설계 및 사용자 대상 유의사항, 서비스 운영 시의 유의사항 확인 ● 그 외 테스트 ○ MAB 알고리즘, 다변량 테스트