inblog logo
|
hollyisyoon
    스터디

    [AB] Udacity A/B Test (1)

    Free-Screener 테스트를 실험설계서로 재정리해보자
    Jul 22, 2023
    [AB] Udacity A/B Test (1)
    Contents
    0. Background1. 실험을 하는 이유2. 실험 UI3. 실험 준비
    해당 캐글 파일을 참고하여, 내용을 실험 설계서의 포맷으로 재정리했습니다. 문제 정의에 사용된 일부 수치는 실험 설계의 타당성을 설명하기 위해 가정한 숫자들입니다.

    0. Background

    • Udacity는 교육 코스를 제공하는 온라인 플랫폼으로, 학생의 수강 완료율과 매출(free trial 연장)을 높이고자 한다.
    • Udacity는 다음과 같은 두 옵션을 제공한다
      • Free Trial : 결제 정보를 등록할 경우, 14일간 무료로 수업을 수강할 수 있고 해당 기간이 지나면 자동 결제가 진행됨
      • Access Course Materials : 무료로 동영상을 보고 퀴즈를 풀 수 있지만 코칭 지원, 인증된 인증서 발급, 최종 과제물 제출 불가함
     

    1. 실험을 하는 이유

    1.1. As-Is

    • Udacity는 Access Course를 통한 결제전환율(12%) Free Trial통한 결제전환율(10%)보다 높은 것을 발견한다. (참고 : Baseline Values)
    Free Trial
    Free Trial
    Access Course
    Access Course
    (* 표시는 가정한 데이터입니다. Daily AVG data를 바탕으로 Closed Funnel을 시각화했습니다.)
    • Udacity는 다음과 같은 특징이 있다.
      • 서비스의 Value인 인증서(Certificate)는 수강 완료한 학생들에 한 해 제공된다.
      • 실제로 무료로 수업을 수강을 하였더라도 인증서 발급, 최종 과제제출등 부가 서비스를 받기 위해 정식결제를 진행하는 사용자의 비중이 높다.(23%)

    1.2. To-Be

    • 무조건 Free Trial을 통해 결제수단을 등록하게 하는 것보다는, 명확한 기대치를 설정하여 무료 평가 기간동안 수업을 듣고 가치를 느끼는 학생들만을 결제수단을 등록하는 단계로 유도하고자 한다.
    • 이를 통해 Free Trial기간 동안 제대로 수업의 가치를 느끼지 못하고 Udacity를 떠나는 학생의 수를 줄임과 동시에, 무료 평가판을 계속 진행하고 결국 과정을 이수하는 학생의 수는 크게 줄일 수 있을 것이다.
    • 해당 가설이 제대로 작동한다면, Udacity는 전반적인 학생 경험을 개선하고 과정을 완료할 가능성이 있는 학생을 지원하는 코치의 역량을 향상시킬 수 있다.

    2. 실험 UI

    notion image
    • (개선안) 실험에서 Udacity는 학생들이 Free Trial버튼을 클릭하는 시점에서 '이 코스에 1주당 얼마만큼의 시간을 투입할 수 있습니까?' 라는 질문을 팝업 모달을 보게 된다.
      • 만약 학생이 주당 5시간 이상으로 기입하면 결제과정 관련한 페이지로 이동한다.(→ 수강 완료할 가능성이 높다고 인식한다)
      • 5시간 이하로 기입하면, (본 과정을 완료할 가능성이 낮다고 인식하여) Access Course로 이동하는 것을 권유하는 메시지를 띄운다.
     

    3. 실험 준비

    3.1. 용어 정리

    Sanity Check란?
    • 대조군과 실험군에 제대로 무작위하게 할당된 것이 맞는지 확인하는 과정이다. Sanity Check에서 이상이 발생했다면, 실험을 중지하고 설계 단계부터 재검토가 필요하다.
    notion image
    • ex) 다음과 같이 7일간의 실험, 대조군에 할당된 트레픽이 나왔다고 하자. 실험군에 배정된 횟수 x는 이항분포 x~B(n, p)를 따른다.
      • 표준편차(SD) 계산은 p=0.5 기준으로 계산 ()
      • z-score(유의수준 : 0.05)를 활용한 오차범위 추정
      • 신뢰 구간을 구하고, 해당 값이 신뢰 구간 안에 있는지 확인
    일자별로 breakdown해볼 경우, 문제의 원인을 더 구체적으로 확인해볼 수 있고, 개발팀에 해당일자에 특별한 이벤트가 발생했는지 물어봐야 한다.
    일자별로 breakdown해볼 경우, 문제의 원인을 더 구체적으로 확인해볼 수 있고, 개발팀에 해당일자에 특별한 이벤트가 발생했는지 물어봐야 한다.
     
    • 제대로 분배된 것이 맞는지 확인하는 과정 → SRM으로도 불림 (Sample Ratio Mismatch)
    The essential guide to Sample Ratio Mismatch for your A/B tests
    If you can’t trust the result of an experiment, you can’t trust the decisions you make based on it; and you’d be surprised how often you…
    The essential guide to Sample Ratio Mismatch for your A/B tests
    https://towardsdatascience.com/the-essential-guide-to-sample-ratio-mismatch-for-your-a-b-tests-96a4db81d7a4
    The essential guide to Sample Ratio Mismatch for your A/B tests
    Checking Invariants
    Checking Invariants
    https://youtu.be/7CVlKQ3UjUI
    Checking Invariants
    Checking Invariants, Part 2
    Checking Invariants, Part 2
    https://youtu.be/05jVh4kUbHU
    Checking Invariants, Part 2
    불변 지표(Invariant Metric)란?
    • Sanity Check를 위해 필요하며, 실험 전체에 잘못된 것이 없는지를 확인하는 지표
    • 실험 변경사항과 관련이 없는 지표를 선택해야 한다.
    • 실험분기 시점은 Free Trial버튼 클릭 이후임으로, 버튼을 누르는 시점까지의 데이터를 불변 지표로 활용할 수 있다.
    Choosing Invariants
    Choosing Invariants
    https://youtu.be/qCnbDgy2yHk
    Choosing Invariants
    Choosing Invariants
    Choosing Invariants
    https://www.youtube.com/watch?v=E1ePfjcVH3I&t=58s
    Choosing Invariants
    Choosing Invariants, Part 2
    Choosing Invariants, Part 2
    https://youtu.be/XqEQG4qo94I
    Choosing Invariants, Part 2
    Choosing Invariants, Part 2
    Choosing Invariants, Part 2
    https://youtu.be/lWjaCJazJE0
    Choosing Invariants, Part 2
    평가 지표(Evaluation Metric)란?
    • 실험을 통해 달성하고자 하는 지표. 각 평가 지표에는 MDE가 설정되어야 한다.
      • 핵심 지표 : 실험을 통해 변화를 이끌어내고자하는 지표
        • ex. 클릭>수업 등록 전환율, 등록>결제 전환율
      • 보조 지표 : 클릭>결제 전환율, 등록완료 페이지 진입 수
      • 가드레일 지표 : 전사적으로/서비스 도메인 별로 중요하게 보는 지표
        • ex. 결제 수(=매출)
    MDE(Minimum Detectable Effect)란?
    • 실질적 유의성을 나타내는 최소한의 변화
    • 실험결과의 지표 변화가 사전 설정한 MDE보다 작으면, 통계적으로 유의하더라도 실질적 유의성이 없는 것으로 판단한다.
    • MDE 계산 공식
      • 여행앱에서 여행자 보험 추가하는 MVP를 검증하고 있다고 하자.
      • 베이스라인 기존 Daliy 2000건 예약 발생(연간 730,000건)
      • 리소스 기능 구현 $75,000 소요 (개발자 시급 $500, 150시간 소요, 기회비용 고려 안함)
      • 목표치 보험에 대한 예상 순이익은 사용자당 3$, 연간 손익분기점을 맞추려면 25,000건 보험 판매 필요. 이는 예약의 3.42%에 해당
      • 따라서 해당 테스트의 MDE는 3.42%가 됨
    How to set the Minimum Detectable Effect in AB-Tests
    Demystifying the most elusive AB-Test Parameter
    How to set the Minimum Detectable Effect in AB-Tests
    https://towardsdatascience.com/how-to-set-the-minimum-detectable-effect-in-ab-tests-fe07f8002d6d
    How to set the Minimum Detectable Effect in AB-Tests
    사용자 식별자 - Cookie
    • 쿠키란 사용자가 웹사이트에 재방문했을 때 웹사이트를 빠르고 편리하게 사용할 수 있도록 저장한 작은 데이터 조각이다.
    • UA(구 GA)는 쿠키 기반 분석 도구. 그러나 정확도, 개인정보보호와 관련한 경각심이 높아지면서, 쿠키 신뢰도가 하락 → GA4부터는 이벤트 단위 분석으로 변경되었다.
    • 해당 케이스에서는 유입 Funnel에서 UI테스트임으로 정확한 사용자 단위로 A/B 테스트를 진행하지 않아도 괜찮기 때문에 쿠키 단위로 분기 및 분석을 진행하도록 한다.
    GA4가 사용자를 식별하는 방법과 사용자 ID(User ID) 수집하기
    구글 애널리틱스 4의 사용자 식별 방법을 이해하고 user_id를 수집하는 방법에 대해 안내합니다.
    GA4가 사용자를 식별하는 방법과 사용자 ID(User ID) 수집하기
    https://osoma.kr/blog/ga4-user-id/
    GA4가 사용자를 식별하는 방법과 사용자 ID(User ID) 수집하기
    야, 너도 GA 할 수 있어 ⑨: GA4를 알아두면 쓸데 있는 이유 | 요즘IT
    우리가 다뤄온 GA는 버전 3.0에 해당됩니다. 정식 명칭은 Universal Analytics이고, 이를 줄여 UA라고 많이 칭하며, 3번째로 나온 것이기 때문에 GA3라고 부르기도 합니다. 그런데 2020년 GA의 최신 버전인 GA4가 새롭게 등장합니다. 그렇다면 도대체 왜 이 시점에 GA4가 나온 것일까요? UA의 어떤 점이 문제였을까요? 그리고 GA4는 무엇이 달라졌을까요? 우리는 당장이라도 UA를 버리고 GA4로 갈아타야 하는 걸까요? 혼란 속에 빠진 분들도 있을 것 같습니다. 오늘은 GA4가 나온 배경과 UA보다 발전한 지점들, 그리고 우리가 어떻게 대처해야 할지에 대해 살펴보겠습니다.
    야, 너도 GA 할 수 있어 ⑨: GA4를 알아두면 쓸데 있는 이유 | 요즘IT
    https://yozm.wishket.com/magazine/detail/1237/
    야, 너도 GA 할 수 있어 ⑨: GA4를 알아두면 쓸데 있는 이유 | 요즘IT
     

    3.2. 실험 가설 : 팝업 모달을 띄울 때, 학생들에게 더 명확한 기대치를 제공할 수 있다

    • 시간이 충분치 않아 Free Trial을 그만두는 사용자를 줄이고, 코스를 완료하는 학생 수는 늘어날 수 있다.
    • 수업 수강에 충분한 시간을 할애할 수 있는 학생(주당 5시간 이상)위주로 결제페이지 유도 시, 수업등록 전환율과 결제 전환율이 증가할 것이다.
     

    3.3. 지표 설정

    • MDE 정하기
      • 베이스라인 : 일일 Free-trial >Payment로 전환이 350건 (해당 사이트 참고하여 일 매출 $96,250)
      • 리소스 : 기능 구현에 개발자 시급 $200, 50시간 소요된다고 가정하면 $10,000
      • 목표치 : 분기내 손익분기점을 맞추려면, 결제 건수가 최소 36건 이상 상승해야함(MDE)
      • notion image
    • 테스트에 활용할 지표
      • notion image
     

    3.4. 실험을 위한 사전작업

    • 팝업모달 및 추가 flow제작에 디자인과 개발 리소스 필요
    • 추가 이벤트 로깅(view_popup_modal, submit_popup_modal) 및 이벤트 QA
     

    T.B.U
     
    Share article
    Contents
    0. Background1. 실험을 하는 이유2. 실험 UI3. 실험 준비

    hollyisyoon

    RSS·Powered by Inblog