A/B 테스트, 종합 대조 실험을 대체,보완할 수 있는 수단 Part 3 + 4
by darami본 내용은 책 'A/B 테스트- 론 코하비,다이앤 탕,야 쉬 (일명 하마책)'를 읽고 개인적으로 정리한 내용입니다.
실험의 결과는 대부분 지표로 측정한다.
지표는 어떻게 분류할까?
지표는 목표 지표 (goal metrics)와 동인 지표(driver metrics) , 가드레일 지표 (guardrail metric) 으로 크게 나눌 수 있다.
목표 지표 (goal metrics)는 성공 지표 또는 북극성 지표 등으로도 불리며, 조직이 궁극적으로 무엇을 신경쓰는지를 보여준다. 회사가 성공하면 어떤 모습일까? 에 대해 답을 하다 보면 이 지표를 정의하기 용이하며, 회사의 미션에 대부분 결부된다.
동인 지표(driver metrics)란 목표 지표보다 단기적이고 빠르게 움직이며, 더 민감한 지표인 경향이 있다. 즉 성공 그 자체보다는 성공 요인이 어떤 가설을 반영하는가를 나타낸다. 이 프레임워크에는 AARRR, Funnel 등이 있다.
- 목표 지표와 동인 지표는 조작하기 어렵게 만들 필요가 있다. 예를 들어 가격을 올리거나 광고로 도배함으로써 매출을 올릴 수 있으나 고객 LTV가 감소하는 결과를 초래할 수 있다.
가드레일 지표(guardrail metric)는 가정을 위반하는 것을 방지하기 위한 것으로 비즈니스를 보호하는 지표 (조직 가드레일 지표)와 실험 결과의 신뢰성과 내적 타당성을 평가하는 지표가 있다.
- 특히 비즈니스를 보호하는 조직 가드레일 지표에는 지연 시간(latency)이 대표적이다.
3부 _ 종합 대조 실험에 대한 보완 및 대체 기법들
10장 보완 기법들
A/B 테스트를 더 잘 수행하기 위해서 로그 기반 분석, 사람의 평가, 사용자 경험 연구 (UER) , 포커스 그룹, 설문조사, 외부 데이터 등을 사용할 수 있다.
로그 기반 분석
신뢰할 수 있는 A/B 실험을 실행하기 위해서는 평가 지표를 계산 및 측정하는 도구를 확보해야 하고, 로그 분석도 마찬 가지이다. 로그 분석을 통해 아래와 같은 것들을 할 수 있다.
- 직관 확립
- 국가나 플랙폼과 같은 분류의 차이
- 분포는 시간에 따라 어떻게 변화하는지
- 시간에 따라 사용자는 어떻게 변화하는지
- 이러한 직관을 확립해야 실험과 무관하게 일어나고 있는 일, 어떤 크기의 변화가 중요한지 등을 알 수 있다.
- 잠재적 지표의 구체화
- 직관을 확립한 후 잠재적 지표를 구체화하여 이 지표가 과거의 실험에서 어떤 영행을 주었는지 이해하는 데에 도움을 줄 수 있다.
- 탐색한 데이터를 기반으로 A/B 실험 아이디어 창출
- 전환율이 크게 떨어지는 단계를 찾아내어 이를 실험할 수 있다.
- 자연 발생 실험
- 외부 버그 등
- 관측기반 인과 연구
- 준 실험 설계 등
다만, 이러한 로그 기반 분석의 한계점은 오직 과거에 일어났던 일을 바탕으로만 미래에 일어날 일을 유추할 수 있다는 점이다. 예를 들어서 현재 사용량이 적어서 신기능에 더이상 투자를하지 않기로 결정할 수 있지만, 현재의 사용량이 적은 것은 사용하기 불편하다는 사실에서 기인했을 수 있다. 따라서 이 로그 기반 분석을 사용자 및 시장 조사와 결합하면 보다 포괄적인 결론에 도달할 수 있다.
Action Item : 로그 분석하여 데이터 제시할 때 UT 등을 함께 결합하여 분석 결과를 제시하면 더 효과적일 수 있다.
사람의 평가
사용자가 아니라는 점에서 주의해야 하며, 사람의 평가를 로그 기반 분석과 결합하여 행동 패턴을 이해할 수 있다.
사용자 경험 연구 (UER)
포커스 그룹
- 목표
- 측정 장비로 측정할 수 없는 정보를 수집하고 설계 과정에 도움이 되도록 완전히 구성되지 않은 변경 사항에 대해 피드백을 얻는 것
- 편향에 빠질 수 있다는 점을 주의해야 함
설문 조사
- 데이터를 모을 수 없는 부분에 답변을 얻는 데서만 유용하다. 모집단을 대표하지 못할 가능성이 많다.
외부 데이터
- 실제 분석이 어떻게 수행됐는지 알 수 없기 때문에 절대적인 수치를 보기보다 추세, 상관관계, 지표 개발 검증 등에 활용하는 것이 좋다.
11장 관측 인과 연구
얄팍한 사람은 운을 믿는다. 심지가 굳은 사람은 원인과 결과를 믿는다.
- 랄프 왈도 에머슨
종합 대조 실험이 불가능한 경우
종합 대조 실험이 불가능한 경우, 그리고 방대한 양의 데이터를 수집하고 있는 경우 관측 인과 연구를 수행할 수 있다.
인과 추론의 기본 공식
실험군 결과 - 대조군 결과
= [실험군 결과 - 실험이 실행되지 않았을 경우 실험군 결과] +[실험이 실행되지 않았을 경우 실험군 결과 - 대조군 결과]
= [실험이 실험군에 미친 영향 + 선택편향]
예시)
= 매주 아이스크림을 먹은 한국인의 몸무게 - 매주 아이스크림을 먹지 않았을 경우 한국인 그룹 A의 몸무게
+ 매주 아이스크림을 먹지 않았을 경우 한국인 그룹 A의 몸무게 - 매주 아이스크림을 먹지 않았을 경우 한국인 그룹 B의 몸무게
= 매주 아이스크림을 먹은 것이 한국인 그룹 A에게 미친 영향 + 선택 편향
왜냐하면 아이스크림 먹지 말 "껄"할 때의 그 나는 없으니 이 것이 최선이다..!
여기서 종합 대조 실험은 인과 관계를 평가하기 위한 탁월한 표준인 것이, 변수에 단위를 무작위로 할당하면 선택편향은 0에 가까워 질 것이 때문이다.
다만 아래와 같은 이유들로 조직들은 종합 대조 실험을 제대로 수행할 수 없다.
- 테스트할 인과적 행동을 조직이 통제할 수 없는 경우
- 사건의 수가 너무 적은 경우
- 실험이 실행되지 않는 대조군을 설정하는데 너무 많은 기회비요이 드는 경우
- 예상되는 가치에 비해 변화의 비용이 높은 경우
- 실험 단위를 적절하게 무작위 추출할 수 없는 경우
- 실험 내용이 비윤리적이거나 불법적인 경우
관측 인과 연구 > 인과를 파악하기 위한 것에 가까움
후향적 데이터 분석 > 분포 요약, 지표 분석, 가설 테스트할 수 있는 패턴 찾기 등
목표가 다른 것을 이해해야 한다.
관측 인과 연구를 위한 설계
- 단절적 시계열 (ITS, Interrupted Time Series)
- Interrupted time series analysis (ITS), sometimes known as quasi-experimental time series analysis, is a method of statistical analysis involving tracking a long-term period before and after a point of intervention to assess the intervention's effects. The time series refers to the data over the period, while the interruption is the intervention, which is a controlled external influence or set of influences.[1][2] Effects of the intervention are evaluated by changes in the level and slope of the time series and statistical significance of the intervention parameters.[3] Interrupted time series design is the design of experiments based on the interrupted time series approach.
- 출처 : 위키피디아
- Interrupted time series analysis (ITS), sometimes known as quasi-experimental time series analysis, is a method of statistical analysis involving tracking a long-term period before and after a point of intervention to assess the intervention's effects. The time series refers to the data over the period, while the interruption is the intervention, which is a controlled external influence or set of influences.[1][2] Effects of the intervention are evaluated by changes in the level and slope of the time series and statistical significance of the intervention parameters.[3] Interrupted time series design is the design of experiments based on the interrupted time series approach.
Interrupted time series can be used when:
- we have data about an outcome over time (longitudinal data) AND
- we want to understand how and if the outcome has changed after an intervention, a policy, or a program that was implemented for the full population at one specific point in time.
Your data need to include observations before and after the intervention had occured. The more observations you have on both sides of the intervention the more robust your model will be (typically).
Interrupted Time Series
Packages The following packages are used in this lecture. library( "scales" ) # variable transforms, formatting tables library( "stargazer" ) # formatting regression output library( "dplyr" ) # data wrangling library( "pander" ) # nice tables library( "Wat
ds4ps.org
자세한 설명과 코드가 첨부되어있음
- 교차배치 실험 설계
- 검색 엔진 또는 웹사이트 검색과 같은 순위 알고리즘 변경을 평가하는데 사용되는 일반적인 설계
- * 무슨 말인지 잘 모르겠고 검색 결과도 잘 안나온다.
- 검색 엔진 또는 웹사이트 검색과 같은 순위 알고리즘 변경을 평가하는데 사용되는 일반적인 설계
- 회귀 불연속 설계 (RDD, Regression Discontinuity Design)
- 해당 임계값을 기준으로 임계값 바로 밑에 있는 모집단을 대조군으로 식별하고 임계값 바로 위에 있는 모집단을 실험군으로 비교해 선택 편향을 줄일 수 있다.
- 예시 : 21세의 사망위험 급증 원인이 광란의 생일파티라면 20번째 생일과 22번째 생일 이후에도 사망자가 급증할 것으로 예상되지만 그렇지 않다.
- 해당 임계값을 기준으로 임계값 바로 밑에 있는 모집단을 대조군으로 식별하고 임계값 바로 위에 있는 모집단을 실험군으로 비교해 선택 편향을 줄일 수 있다.
- 도구 변수(IV, Instrumental Variables) 및 자연 실험
- 도구 변수는 무작위 할당을 근사하는 기법.
- 예시 : 군대에 다녀온 사람과 그렇지 않은 사람들의 소득 차이를 분석하기 위해 개인의 군대 참여 여부를 추첨제로 결정하는 베트남 징병 추첨 같은 것을 도구 변수로 사용할 수 있고, 의학계에서 일란성 쌍둥이를 사용할 수 있다.
- 도구 변수는 무작위 할당을 근사하는 기법.
인과관계를 찾아서 3: 도구변수
danbi-ncsoft.github.io
- 성향 점수 매칭
- PSM 등이 있음
- 차이들의 차이 (DID, Difference In Differences)
- 실험군과 유사한 대조군을 식별한 후, 변수의 효과를 측정하는 일반적인 방법
- 일반적인 추세를 가정해서 차이들의 차이를 보는 것
- 관측 인과 연구의 함정
- 교란 요인(변수)
- 아래 교란 변수를 검증하기 위해서는? 종합 대조 실험을 해야 함
- 교란 요인(변수)
인과 추론을 어렵게 하는 요소(교란 변수)
앞의 포스팅을 읽고 오시는 것이 좋습니다 :) 인과 추론이 어려운 이유 동일 조건 맞추기? 자 어떤 상황을 생각해봅시다. 회사에서 매출 증대를 위해 프로모션 상품을 개시했다고 합시다. 여기서
everyday-tech.tistory.com
- 허위 상관
실험 플랫폼 구축을 위한 고급 주제
클라이언트 측 실험
서버와 클라이언트 측 실험의 차이점
1. 서버는 코드 업데이트가 비교적 쉽지만 클라이언트는 앱 배포를 해야하기 때문에 출시 프로세스에서 차이가 있다.
2. 클라이언트 - 서버간의 데이터 통신에 의해 실험이 영향 받을 수 있다.
- 인터넷 연결, 휴대전화 데이터 대역폭, 배터리, CPU, 메모리 및 스토리지 등
랜덤화 단위 선택
랜덤화 단위와 지표 분석 단위를 동일하게 하는 것이 좋다.
예를 들어 사용자를 랜덤화 하고, 사용자 별로 분석하면 페이지별 클릭률, 페이지 뷰 수 등을 분석하기 쉬워진다.
사용자 수준 랜덤화의 장점
- 일관된 사용자 경험을 제공할 수 있다.
- 리텐션 측정 등에도 좋다.
사용자 수준 무작위 추출을 사용할 때 고려할 몇가지 선택
- 등록된 사용자 ID 또는 로그인
- 다른 장치와 플랫폼간의 호환성이 있음으로 일관성이 필요하고 가능한 경우라면 사용자 ID가 최선의 선택
- 쿠키와 같은 가명 사용자 ID
- 사용자 온보딩 프로세스와 같이 로그인 경계를 넘나드는 프로세스 테스트의 경우 쿠키 또는 장치 ID
- 장치 ID
- IP 주소
- 권장 X , 최후의 수단
- 인프라의 변화를 분석하는 경우 유일한 옵션일 수 있음, 파편화 되기 쉽다.
- 권장 X , 최후의 수단
실험 노출 증가시키기 : 속도, 품질 및 위험의 트레이드오프
램핑(Ramping) - 실험 대상의 확대
- 실제로 실험은 새로운 기능 출시와 관련된 불확실한 위험을 통제하기 위해 램핑 프로세스 (단계적 확대 프로세스, 일명 통제된 노출)을 거치는 것이 일반적이다.
- 소수의 사용자에게만 변수를 노출해서 새로운 기능을 시작하고, 문제가 없다면 실험군이 원하는 노출 수준에 도달할 때 까지 트래픽을 증가시킨다.
램핑을 거치지 않았을 때 어떤일이 일어났을까? healthcare gov의 초기 출시 때 모두에게 공개했는데 사이트가 멈춰버렸다.
여기서 램핑 과정과 양을 결정하고 얼마나 오래 유지해야 하는지가 과제이다. 이를 위해 주로 램프업(ramp-up : 실험 대상의 확대) 과정에 중점을 두고, 램프다운(ramp-down) 과정은 일반적으로 나쁜 변수가 있을 때 사용되며 매우 빠르게 0으로 종료한다.
SQR 램핑 프레임워크
속도,품질 및 위험 SQR(Speed,Quality and Risk)의 균형을 맞추는 법은 뭘까?
오직 측정만을 위한 대조 실험을 할 경우 MPR(Maximum Power Ramp) 로 실험을 실행할 수 있다.
이는 실험군에 50%의 트래픽을 할당해서 가장 높은 통계적 민감도를 얻는 것이다. 하지만 위험을 완화하기 위해 MPR과 100% 사이의 중간 램핑 단계가 필요할 수 있다.
4개의 램핑 단계
램핑 1단계 : MPR 이전
위험이 적은지 안전하게 알아내어 빠르게 MPR로 확장하고자 하기 때문에 아래와 같은 방법을 사용할 수 있다.
1. 동질적 실험 집단을 꾸리고 확대된 실험 집단에서 서서히 적용해 나가기
- 첫번째 테스트 모집단은 트래픽이 충분하지 않기 때문에 대체로 정성적 피드백을 얻게 된다.
- 다음 테스트 모집단도 정량적 측정을 할 수는 있지만 통계적 유의성이 낮고 많은 버그가 있으며, 사용자가 내부자일 가능성이 높아 편향될 수 있다.
2. 원하는 할당량에 도달할 때까지 트래픽을 자동으로 조절함
3. 주요 가드레일 지표에 대한 실시간 OR 거의 실시간 측정
램핑 2단계 : MPR
일주일 동안 유지할 것을 적극 권장하고, 신기 효과나 초두 효과가 있을 경우 더 길게하도록 권장한다.
이 램핑 단계는 시간에 따른 영향을 파악할 수 있을 정도록 충분히 길어야 한다.
램핑 3단계 : MPR 이후
트래픽 감당 우려 등 운영 상의 우려가 없어야 하기 때문에 100%에 도달하기 전 추가적 램프 단계를 필요로 하는 경우, 이러한 단계는 하루안에 끝나야 하며 트래픽이 가장 많은 시간대를 모니터링해야 한다.
램핑 4단계 : 장기 홀드 아웃 또는 반복
필요한 경우에만 수행되면 된다.
스터디 발표 이후 회고
K
- 설명할 때 실생활의 예를 적용하여 설명한 것이 이해에도, 본인인의 기억에도 유용했던 것 같다.
- Ramp등의 용어가 나왔을 때 이 단어의 어원을 알고, 알려주고 이야기를 하면 한층 이해가 쉽다.
P
- 번역 오류등이 책에 있다..
- 아주 많은 개념과 내용을 한꺼번에 이해하려니 시간의 한계가 있다.
T
- 원어로 된 것 가져와서 참고하기!
- 반복 학습한다고 생각하기!
'인과 추론' 카테고리의 다른 글
인과추론의 데이터 과학 세션 7_ 인과 그래프 (0) | 2023.08.21 |
---|---|
인과추론의 데이터 과학 섹션 3,4_ 무작위 통제 실험, A/B Test (0) | 2023.08.01 |
인과추론의 데이터 과학 섹션 2 _ 실험, 준실험 (2) | 2023.07.25 |
인과 추론의 데이터 과학 섹션 1 _ 다양한 프레임워크 (0) | 2023.07.24 |
블로그의 정보
다람
darami