론 코하비, 다이앤 탕, 야 쉬, 『A/B 테스트 신뢰할 수 있는 온라인 종합 대조 실험』, 이기홍, 김기영, 에이콘출판사-MANNING(2022), p30-77.
1. 소개와 동기
- Bing의 헤드라인 표시법 변환: 타이틀 라인을 바로 밑 첫째 줄 문장과 합치기 → 매출 12% 증가
개념
- 종합 대조 실험 (controlled experiment)
- 실험: UI, 관련 알고리즘 (검색, 광고, 추천 등), 지연 시간/성능, 콘텐츠 관리 시스템, 고객 지원 시스템
- 채널: 웹사이트, 데스크톱 app, 모바일 app, 이메일 등
- 전체 평가 기준 (Overall Evaluation Criterion, OEC): 실험 목적의 계량적 지표 (ex. 사용자별 활동일 수)
- 단기적으로 측정 가능해야 함
- 장기적 전략 목표를 추진하는 원인이라고 믿을 수 있는 것이 되어야 함
- 변형군: 대조군, 실험군
대조 실험을 실행하기 위한 필요한 요소
- 변형군은 서로 간의 간섭 효과가 없어야 함
- 통제된 경험이 유용하려면 수천 개의 실험 단위를 권장
- 핵심지표(이상적인 OEC)가 측정하기 어렵다면, 대체 지표에 대해 합의하는 것이 중요
온라인 제어 실험을 위한 조직의 3가지 핵심 원칙
- 데이터 중심 결정을 내리고 OEC를 공식화
- 비교적 짧은 기간(1-2주)에 걸쳐 쉽게 측정할 수 있는 OEC를 정의해야 함
- 단기적에 측정되고, 장기 목표를 예측할 수 있는 지표를 찾아내는 것이 어려움 (ex. LTV)
- 종합 대조 실험을 실행하고 그 결과가 신뢰할 수 있는지 확인하기 위해 인프라와 실험에 기꺼이 투자
- 사용자를 안정적으로 랜덤화해 야함
- 종합 대조 실험은 애자일 소프트웨어 개발, 고객 개발 프로세스, MVP와 결합할 때 특히 유용함
- 실험에 대한 신뢰성을 확보하는 것이 중요
- 조직은 아이디어의 가치를 평가하는데 서툴다는 것을 인지
- 각 기능이 유용하다고 생각해서 개발하지만, 많은 곳에서 대부분의 아이디어는 핵심 지표를 개선하는 데 실패함 (ex. 마이크로소프트: 33.3%, 구글: 10~20%, 슬랙: 30%)
개선 사례
- 실제 주요 지표의 개선은 0.1%~2%의 수많은 작은 변화로 달성됨
- 많은 실험은 사용자들 일부에게만 영향을 미치기 때문 (ex. 10% 사용자에게 5% 개선) → 전체 관점에서 영향이 희석됨
- 구글 광고 사례
- 1년 이상의 점진적 개발 실험을 거쳐 향상된 광고 순위 메커니즘을 출시
- 광고주들에게 미치는 영향을 이해하기 위해 수백 개의 실험 실행
- Bing 관련성 팀 사례
- OEC 측정지표를 매년 2%씩 개선하는 수백 명의 사람들로 구성
- 수 천 개의 실험 진행 → 2%에 대한 공헌도는 반복 실험을 기반으로 부여
- 정밀한 공헌도 결정을 위해 베이지안 수축법을 사용하기도 함
- Bing 광고 팀 사례
- 꾸준히 연간 15% 매출을 성장시킴
- 매달 기준으로 보면 개선이 조금씩 이루어졌음
종합 대조 실험 사례
- 기대 결과와 실제 결과의 절대적 차이가 큰 실험
- 사용자 인터페이스 사례
- 구글 검색 결과 페이지에 대해 41개 색조의 파란색을 테스트 → 긍정적인 결과 발생
- 마이크로소프트 Bing 색상 조정 → 성공 시간 향상, 매출 연간 천만 달러 이상 향상
- 광범위한 색상이 테스트된 것을 감안하면, 추가 실험에서 색상 변경에 의해 큰 개선을 얻을 가능성은 낮아 보임
- 아마존 신용카드 제안 사례
- 홈페이지에서 홍보를 했는데, 수익성이 좋았지만 CTR이 낮았음
- 물품을 추가한 후, 사용자가 볼 수 있는 쇼핑 카트 페이지로 제안을 이동하는 실험을 진행했음 → 연간 수입 수천만 달러 증가
- 아마존의 개인화 추천
- 쇼핑 카트 아이템 기반 추천 기능 도입 → 현재는 여러 곳에서 사용 중
- Bing HTML 길이 감소 사례
- 성공률, 성공 시간과 같은 주요 사용자 지표를 상당히 개선했음
- 매 10밀리 초의 성능 개선 (눈 깜빡임 속도의 1/30)은 엔지니어의 1년 연봉에 상응하는 수익을 초과 창출
- Bing 악성코드 감소
- 악성코드로 인해 여러 개의 광고가 보이는 불편함을 해결
- 사용자 지표 개선
- 사용자들이 더 많은 검색을 했고, 연간 수익 수백만 달러 증가
- 백엔드 알고리즘 변화
- ex. 아마존의 추천 알고리즘
- X 품목을 산 사람은 Y 품목을 산다 → X 품목을 검색한 사람은 Y 품목을 산다
- 전체 매출 3% 증가
- ex. 아마존의 추천 알고리즘
전략, 전술과 실험의 관계
- 적절한 지표를 사용해 잘 실행된 실험은 비즈니스 전략, 제품 설계를 보완하고, 조직의 데이터 중심화를 통해 운영 효율성을 개선
- Scenario 1: 비즈니스 전략이 있고, 실험할 수 있는 충분한 사용자가 있는 제품이 존재
- 현재 전략과 제품에 기초해, 국지최적화를 달성하는 데 도움
- 적절한 OEC를 선정하여 전략을 명시적으로 만들고 기능을 전략과 일치시킴 → 전략 무결성
- Scenario 2: 제품과 전략이 존재하지만, 결과는 pivot을 검토할 필요가 있다는 것을 제시하는 상황
- 항상 아이디어 포트폴리오를 만드는 것을 권고
- 더 큰 성공으로 이어지려면, 급진적인 아이디어들이 시도돼야 함
- 에릭 리스 제안
- 진정한 실험은 과학적 방법을 따른다.
- 어떤 일이 일어날지 예측하는 명확한 가설에서 시작된다.
- 그러고 나서 실험은 그 예측들을 경험적으로 테스트한다.
- 종합 대조 실험을 실행할 수 있는 능력은 MVP를 시도하고, 데이터를 얻고, 반복함으로써 불확실성을 줄일 수 있게 해 준다.
2. 실험의 실행과 분석 - 엔드투엔드 예제
예제 설명
- 목적: 위젯의 할인 쿠폰 코드가 포함된 프로모션 이메일을 보내 판매량 증가
- 변화: 잠재적인 비즈니스 모델 변화 (이전에는 쿠폰 제공 X)
- 문제: 쿠폰 코드를 추가하고 상당한 수익을 잃은 레퍼런스 자료 참고
- 사용자가 쿠폰 코드 필드를 보는 것 자체가 속도가 저하됨
- 쿠폰 코드를 검색해야 하고 사용자가 이탈할 수 있는 우려도 존재
- 퍼널: 홈페이지 방문 > 위젯 브라우즈/검색 > 카트에 위젯 담기 > 구매 프로세스 시작 > 구매 프로세스 완료
A/B 테스트
- 1안:
- A: 과거 체크아웃 페이지
- B: 신용카드 정보 아래 쿠폰 or 기프트 코드 필드 추가
- 2안:
- A: 신용카드 정보 아래 쿠폰 or 기프트 코드 필드 추가
- B: 팝업으로 쿠폰 or 기프트 코드
가설 검정
- OEC: 사용자당 매출 증가
- 사용자 정의:
- 사이트 방문: 불필요한 노이즈가 추가됨 (체크아웃을 전혀 개시하지 않은 사용자 포함)
- 구매 프로세스 완료: 변화가 사용자당 구매액뿐만 아니라, 구매 완료 사용자 수에도 영향을 미치기 때문에 선택 X
- 구매 프로세스 시작: 변화가 퍼널 내에 있다는 전제하에 적절!
- 가설: 쿠폰 코드 필드를 체크아웃 페이지에 추가하면, 구매 프로세스를 시작하는 사용자에 대한 사용자당 수입이 저하한다. (대립)
- 통계적 유의도: 귀무가설을 가정할 때, 우연히 관찰한 결과 or 더 극단적인 결과가 발생할 수 있는 가능성을 측정
- 모든 통계적으로 유의한 결과가 실질적으로 의미가 있지는 않음
- 차이가 변경 비용을 지불할 가치가 있는지를 기반으로 실질적인 경계를 설정하는 것이 좋다.
- ex. google/bing: 0.2%, 스타트업: 10%
실험 설계
- Step
- 무작위 추출 단위는 무엇인가?
→ 사용자 - 무작위 추출 단위의 모집단을 어느 정도 대상으로 하고 싶은가?
→ 모든 사용자를 대상으로 체크아웃 페이지를 방문하는 사용자 분석 - 어느 정도 규모의 실험이 필요한가?
- 실험 크기(사용자 수)는 결과의 정밀도에 직접적인 영향을 미침
- 실험을 얼마나 오래 진행할 것인가?
→ 대조군/실험군 1/실험군 2 간에 최소 4일 동안 실험 실행
→ 요일 효과를 확실히 이해하기 위해 일주일 내내 실험 실행 (신기성 or 초두 효과 감지 시 더 오래 걸림)
- 무작위 추출 단위는 무엇인가?
- 고려 사항
- 변경사항 관련
- OEC를 구매 여부로 변경하면, 표준오차가 작아져 동일한 민감도를 얻기 위해 많은 사용자를 실험에서 사용할 필요가 없게 됨
- 실질적인 유의도 수준을 높인다면, 표본의 크기를 줄일 수 있음
- 귀무가설을 기각하기 전 변화가 발생했다는 것을 더욱 확신하기 위해, 낮은 p값 임계치를 사용하려면 표본 크기를 늘려야 함
- 실험 크기 결정 관련
- 실험이 얼마나 안전한가? → 대규모 변경의 경우, 적은 비율의 사용자로 시작하는 것이 좋음
- 다른 실험과 트래픽을 공유할 필요가 있는가?
- 다른 변경사항이 있다면, 동시에 실행하거나 순차적으로 실행하도록 선택할 수 있음
- 동시 테스트 간에 트래픽을 분할해야 하는 경우, 각 테스트는 더 적은 양의 트래픽으로 끝남
- 실험을 얼마나 오래 할 것인가
- 더 많은 사용자
- 오래 실행될수록 더 많은 사용자들이 실험 참여 → 통계적 검정력 증가
- 시간에 따른 사용자 누적률은 저선형이 될 가능성 높음 → 동일한 사용자가 돌아올 수 있음
- 주간 효과
- 평일과 주말에는 사용자 분포가 달라질 수 있음 (같은 사용자도 다르게 행동 가능)
- 최소 1주일 동안 실험하는 것이 좋음
- 계절성
- 공휴일과 같이 사용자의 행동이 달라지는 시기가 있을 수 있음
- 외적 타당성(external validity): 어떤 기간의 결과를 다른 기간에 일반화할 수 있는 정도
- ex. 기프트 카드 → 크리스마스 시즌에만 효과가 좋은 경우
- 초두 효과(primacy effect) 및 신기성 효과(novelty effect)
- 실험 초기의 효과는 정상보다 크거나 작은 경향이 있어서 효과의 안정화에 시간이 걸리는 실험이 존재
ex. 특정 버튼 클릭 수가 시간이 지나면서 줄어드는 경우
ex. 익숙해지는 것이 필요한 기능은 익숙해져서 효과가 나타나는 데 시간이 걸림
- 실험 초기의 효과는 정상보다 크거나 작은 경향이 있어서 효과의 안정화에 시간이 걸리는 실험이 존재
- 더 많은 사용자
- 변경사항 관련
결과
- 적절성 검사
- 가드레일 지표 or 불변성 지표 탐색
- 실험 효과를 무효로 할 수 있음
- 대조군과 실험군 사이에 변경돼서는 안 됨
ex. 대조군 및 실험군 샘플 크기가 실험 설정을 따르거나 캐시 적중률이 동일하다고 기대하는 신뢰 관련 가드레일 지표
ex. 많은 실험에서 불변할 것으로 예상되는 지연 시간과 같은 조직 가드레일 지표
- 가드레일 지표 or 불변성 지표 탐색
- 실험군 A/B 모두 귀무가설 기각 → UI에 쿠폰 코드 추가 시, 수익이 감소함 ⇒ 아이디어 폐기 + 시간 절약
반응형
'Causal inference' 카테고리의 다른 글
Part 1. 03~04 (1) | 2023.09.07 |
---|---|
[KSSCI 2021] 인과추론의 데이터 과학 - Session 11 (0) | 2023.09.05 |
[KSSCI 2021] 인과추론의 데이터 과학 - Session 9 (0) | 2023.08.29 |
[KSSCI 2021] 인과추론의 데이터 과학 - Session 7/8 보충 (0) | 2023.08.22 |
[KSSCI 2021] 인과추론의 데이터 과학 - 사전학습자료 (0) | 2023.08.15 |
댓글