A/B 테스트 실험 설계



본 내용은 A/B테스트 기법 2강 - A/B테스트 실험 설계 강의를 정리한 내용입니다.


A/B 테스트 실험 설계

A/B 테스트도 실험 중 하나이고, 사용자가 어떤 식으로 반응하는지에 대한 실험이기에 실험 설계의 범주에 포함된다. 그래서 실험 설계에 관한 방법론이나 실험에서 고려해야 하는 것들을 참고하면 올바르고 좋은 실험 설계를 할 수 있다.

실험 설계(Experimental Design)

  • 실험계획법 (농업용어사전: 농촌진흥청)

    실험에 대한 계획방법으로, 해결하는 문제에 대하여 실험방법, 데이터 수집, 통계분석들을 통하여 최소의 실험 횟수로 부터 최대의 정보를 획득하도록 계획하는 것.

  • 영국의 농학자/통계학자 로널드 피셔(Ronald Fisher)가 농업 실험에서 영감을 얻어 실험계획법 발전시킴
    • 로널드 피셔가 1935년도에 쓴 ‘The design of experiments’ 내용에 따르면, ‘Lady tasting tea’ 실험에서 귀무 가설의 개념이 도입되고, 시험 설계의 기초가 됨
    • ‘Lady tasting tea’ 실험: ‘차를 넣고 우유를 넣는게 맛있다.’ vs ‘우유를 넣고 차를 넣는 것이 맛있다.’
  • A/B 테스트: 사용자의 반응도에 대한 실험이기에 사용자를 대한으로 하는 실제 환경에서의 실험으로 계획 필요


사회조사방법론에서의 실험 설계

실험 설계는 기본적으로 연구실에서 쓰는 논문을 위한 실험을 기반으로 실험 설계 이론들이 나와있다. 그런데 A/B 테스트는 사용자를 대상으로 실제 서비스에서 운영하고, 그 환경에서 실험하게 된다. 그렇기 때문에 이런 연구를 많이 하는, 실제 사람들을 대상으로 관찰하는 식으로 연구하는 사회조사연구(사회조사방법론)의 실험 설계 범주를 참고하게 된다. 사회조사방법론에서는 크게 3가지 설계방법이 있는데, 순수실험조사설계, 유사실험조사설계, 전실험조사설계이다. (실제로는 굉장히 많은 방법이 있다.) A/B 테스트는 유사실험조사설계 중 “비동일 통제집단 전후 비교설계”에 포함된다.


  순수실험조사설계 유사실험조사설계 전실험조사설계
 통제집단  O O X
 무작위 배정  O X X
 내적 타당도  높음 낮음 낮음
 외적 타당도  일반화하기 어려움 어느 정도 확보함 낮음
 현실성    어려움, 비용이 많이 듦   가능함 쉬움
 유형    통제집단 전후 비교설계     비동일통제집단 전후 비교설계    단일집단 전후 비교설계 
    통제집단 후 비교설계   시계열설계  단일집단 후 비교설계 
    솔로몬 4집단 비교설계   복수시계열설계   비동일집단 후 비교설계  


(아래 내용은 강의 + 블로그 참고 - 출처:좋아서 하는 사회복지 블로그 / 11.실험설계)

  • 실험 설계의 3가지 요건 (기본 요소) : 독립변수 조작, 외생변수 통제, 실험대상 무작위화
  1. 순수실험조사설계
    • 3가지 실험 요건을 모두 갖춘 조사설계
      • 실험환경을 만들어 사람들이 거기에서 어떻게 변하는지 보는 것
      • 환경도 통제, 사람도 통제에서 뽑아서 사람들의 행동이 어떻게 달라지는지를 보는 것
      • 예) 밀그램실험: 감옥에서 폭력적인 성향이 얼마나 많아지는가


  2. 유사실험조사설계
    • 실험 설계 요건 중 한 개 이상의 요소가 결여된 조사설계
    • 실험변수와 통제변수의 무작위화가 불가능한 상황에서 외생변수를 통제하고 실험변수의 효과를 검증하고자 할 때 주로 사용
      • 실험 환경에 대해서는 최대한 셋팅해놓고, 외적타당도가 얼마나 개입되는지 확보한 상태에서 실험
      • 사용자 집단을 다르게 하여, 다른 집단 둘이 어떤 환경에서 행동이 달라졌는지를 비교
    • 실험설계 2가지를 만족하지 못해, 진짜 실험설계과 구분하여 ‘유사’실험설계라 함
      • 실험집단과 통제집단의 무작위 할당: X / 엄격한 통제집단 활용: X


    • 유사실험조사설게는 타당성이나 신뢰도면에서 떨어지기 때문에 가능하면 안하는 것이 좋은 편
    • 하지만 실무 환경에서는 실험 환경을 갖추기 어렵기 때문에 이 조사 설계를 이용
    • ‘비동일통제집단 전후 비교설계’의 약식 버전 중 하나가 A/B 테스트
    • 시간이 변해가면서 변하는 것에 대해서는 통제가 가능하기에 A/B 테스트를 실무에서 많이 사용


  3. 전실험조사설계 (원시실험설계)
    • 실험설계 요건 3가지가 갖춰지지 않았거나, 미미하게 갖춘 조사 설계
      • 무작위 할당에 의해 연구대상을 나누지 않고, 비교집단 간 동질성이 없으며, 독립변수의 조작에 따른 변화의 관찰이 제한된 경우에 실시하는 설계


    • 엄격한 의미에서는 실험 설계라고 볼 수 없음
      • 설계에 대한 근거가 별로 없고, 내적타당도가 낮아서 실험이라고 하기에 애매한 면이 있음
    • 인과적 추론이 어려워 내적 타당도와 외적 타당도를 거의 통제하지 못하는 실험 설계
    • 예) 업데이트 했더니 업데이트 전보다 사용자들이 어떻게 달라졌다 이런 분석 비교
      • 무엇 때문에 차이가 있는지는 정확히 알지 못함
    • 가설 검정보다는 문제 도출 또는 문제를 명확히 규명하기 위한 전 탐색적 연구와 같은 설계
      (순수실험설계 수행 전 선행되는 방법)


유사 실험 설계의 특징

  • 사회 현상에서의 인과관계 판단
  • 순수실험설계만큼의 통제가 불가한 환경에서 대안적인 방식으로 통제 집단 구성
  • 외생변수의 개입 가능성 높음
    • 예) 시간이 지나거나 장애 발생, 주중/주말 차이 등
    • 하지만 A/B 테스트는 동시 시간대에서 비교를하니까 시간 관련 외생 변수 개입이 덜함
  • 실험에 대한 통제가 적으므로 외적 타당성이 상대적으로 높아 현실 문제 해결에 유용
    • 실험 환경에서 이루어진 실험은 실제와 다르다고 얘기할 수 있지만, 유사 실험 설계(A/B 테스트)는 실제 환경에서 한 것이기에 결과로 실질적인 문제를 해결할 때 도움이 됨


유사 실험 설계 과정

단계   유사 실험
   대상선정      연구대상을 선정
  실험환경선정     실험실,실험 도구 등의 실험 환경을 선정
   무작위표집      연구대상을 무작위로 표본추출
   무작위할당      추출된 표본을 무작위로 실험집단과 통제집단에 배치   
   사전검사      두 집단에 종속변수에 대한 사전검사를 실시
   실험조치      실험집단에만 실험조치를 실시
   사후검사      두 집단에 종속변수에 대한 사후검사를 실시
  비교 및 검증     사전, 사후검사 결과 변수 간의 의미있는 변화를 비교   


A/B 테스트 설계 과정

단계   A/B TEST  비고
   대상선정      사용자 및 지표   버튼에 따른 클릭률
  실험환경선정     실제/실제 예정 환경   특정 페이지, 마케팅 문자 내용 등
  무작위표집      사용자 무작위 선정   인위적으로 모집 불가, 무작위 선정됨 
 (앱-푸쉬할 순있지만 강제적이지 않기에)
  무작위할당      추출된 표본을 무작위로 실험집단과 통제집단에 배치   회원의 난수화된 id값의 짝홀 등 
   사전검사      실험 환경 확인   오늘 해당 페이지 들어온 사용자 수, 구매율 등
   실험조치      분기   바란버튼/녹색버튼 - 일주일정도 노출
   사후검사      실험 환경 재확인   결과 차이에 대해 확인
  비교 및 검증     결과 분석  


목적 지표 선정

어떤 숫자를 가지고 결과를 내교 비교할 건인지, 어떤 숫자를 측정할 것인지를 보는 과정이기에 중요하다. 하지만 실제로는 사람들이 잘 하지 않는 과정이기도 하다. 하지만 목적 지표 선정은 이 실험을 왜 하고, 실험 후에 얻고자 하는게 무엇인지를 정의하는 과정이다. 그러나 실험 결과에 대해서 지표를 여러 개로 가져간다면 (클릭률, 재방문률), 실험 이유와 가장 중요한 목적 지표를 잃게 된다. 실험의 목적과 목제에 맞는 지표를 선정하는 것은 굉장히 중요하다.

  • 가설 검정에 가장 직관적이면서 구하기 용이한 지표 선정

  • 양적으로 확인 가능한 실질적 지표

    • 감정 정도(사용자 만족도 등)같은 모호한 지표는 제외함
    • 실험을 통해서 기록되지 않는 데이터가 필요한 수치는 제외함
    • 예) 버튼 변경 후 클릭률, 이미지를 바꾼 후 페이지에 머무르는 시간 증가률


  • 비율: 사용 흐름상 전 후 변화량
    • 퍼널의 실험 참여 단계 → 실험 결과 반응 단계
      • 마케팅 퍼널(marketing funnel): 매출 왜 발생하는지 분석하고 이해하는 것, 마케팅 깔대기라고도 한다. (출처: 위키백과)
        • 예) 유져들이 우리 서비스에 들어온 시점부터, 서비스를 나가는 시점까지를 구간에 대한 데이터를 분석하여 그들이 나가는 시점과 이유를 밝히는 것 (출처: 비전공자의 데이터 공부법 10화)
    • A/B 테스트에서는 단순한 수치보다 비율을 보는 것이 좋음
    • 실험에 대한 모수를 정할 수 없고, 모수가 달라졌다면 정확한 비교가 되지 않기에
      • 예) ‘3000번 클릭/1만 명 vs 5000번 클릭/5만 명’에서 클릭수만 보면 잘못된 해석
    • 예) CTR(Click-ThroughRate): 클릭 수/페이지뷰 수


  • 실험 대상: 사람 → 지표 대상도 사람이 되어야 보다 정확한 결과를 얻을 수 있음
    • 비율을 사용할 때도 각각의 단위에 따라 어떤 비율을 쓰는가도 중요
      • 예) 비회원도 방문 가능한 홈페이지에 한사람이 3번 보는 것과 3사람이 3번 보는 것 구별 어려움
      • → 사람별, 디바이스별 이런식으로 구분 필요
      • 예) 클릭한 사용자/페이지를 본 사용자


지표 관련 대푯값

  • 대푯값: 집단의 특성을 반영하는 요약 값
  • 평균
    • 지표 생성 시 가장 많이 사용되는 값
    • 전체 집단에서의 분포상 기댓값
    • 소수의 이상치 값에 대한 민감도가 높음
  • 중앙값
    • 전체 집단에서 중앙에 위치하는 값
    • 이상치 값에 대한 민감도가 낮음
    • 분포가 쌍봉형으로 되어 있는 경우 한쪽에 치우쳐서 적당한 대푯값이 되지 않는 경우 발생
  • 최빈값
    • 전체 집단에서 가장 많이 나타나는 값
    • 다양한 값을 가지는 경우 적절하지 못함


지표 관련 분포

  • 히스토그램
    • 값의 분포를 막대 그래프로 나타낸 것
    • 대푯값만으로 판단이 어려울 때, 같이 확인할 수 있음
    • 이상치로 인해 대푯값이 기울어진 경우, 파악 후 보정할 수 있음


실험 설계 실습

실습 1) 온라인 서점 사이트에서 ‘동영상으로 책 미리 보기’기능을 만들었지만, 사용자가 실제로 보는 비율이 낮다. 동영상 미리보기는 만드는 데에 비용도 많이 들었고 구매에도 유용할 것 같은데 보지 않는 이유는 버튼이 흰색 바탕이라 텍스트와 크게 구분이 되지 않는다고 생각했다. 그래서 버튼을 YouTube 썸네일로 변경하면 도움이 될까 생각했다. 다만 이 변경이 오히려 디자인만 해치고 사용자들이 몰라서 누르는 것이 아니라는 의견도 있다.

  • 이 내용을 A/B 테스트로 풀 수 있을까?
  • 풀 수 있다면 간단히 과정 및 설계 방식을 설명해보자.

    확인 ↓

  • 가설: “동영상 미리보기 버튼을 유튜브 모양으로 만들어두면 사람들이 더 많이 눌러 볼 것이다.”
  • 지표: ClickRate
  • A/B 테스트: 기존의 사이트와 버튼을 변경한 사이트 둘을 50%의 확률로 랜덤하게 노출시킴
  • 기간: 1주일
  • 지표확인
    • 7일간 일별로 클릭율을 집계한 후 각각 비교
    • → 각각 비교가 어렵거나 숫자가 작을 경우 평균값 비교


실습 2) 매번 간단한 규칙으로 만들어져서 풀면서 레벨을 올리는 캔디크러시 사가같은 퍼즐 게임을 풀 때, 레벨 40에서 사용자들이 어려워서 많이 이탈하는 것으로 보여서, 레벨 40을 새로 디자인했다. 다만 이 레벨 변경으로 사용자 이탈이 해결될지 아닐지 몰라서 A/B 테스트를 해보려고 한다.

  • 이 때 어떤 지표를 잡아야 할까?
  • 그리고 어떻게 테스트를 해야 할 지를 구체적으로 구상해보자.

    확인 ↓

  • 가설: “레벨 40의 난이도를 쉽게하면 사용자들이 덜 이탈할 것이다.”
  • 지표: 레벨 40을 1회 플레이한 후, 3일이내 다시 게임에 접속하는 사용자 비율
  • A/B 테스트: 레벨40의 판을 임의로 구분한 기준에 따라 사용자에게 제공 예) 사용자 번호가 끝자리 0~4까지는 기존판, 5~9까지는 새로운 판을 제공함
  • 기간: 21일
  • 지표 확인
    • 일별 레벨 40을 플레이한 사용자와 그 3일이내 재접속한 사용자의 수를 세서 그 비율을 구한다.
    • 전체 집계를 기본으로 사용하고 일별 비교, 주별 비교를 같이 사용해서 이상치가 있는지를 살펴본다.



Categories:

Updated:

Comments