Codeit Sprint/Weekly_Paper

위클리 페이퍼 #10 - A/B Test, Event Taxonomy(이벤트 데이터 로그 설계)

ko_sick 2024. 10. 10. 22:56

중간 프로젝트가 끝이나고. 다시 시작된 코드잇 스프린트의 위클리페이퍼이다.

 

금주의 주제는 3가지로

1) A/B 테스트의 장점과 단점, 그리고 단점을 해결하기 위한 방안들을 설명해 주세요.

2) A/B 테스트 결과에서 한 버전이 통계적으로 유의미하게 더 나은 결과를 보여주지 않는다면, 이를 어떻게 해석하고 다음 단계는 무엇인가요?

3) 이벤트 데이터 로그 설계(Event Taxonomy)의 주요 구성 요소는 무엇이며, 각 요소가 어떤 역할을 하는지 설명해 주세요.

1. A/B 테스트의 장점과 단점, 그리고 단점을 해결하기 위한 방안

  • A/B 테스트
    • 웹 사이트 방문자를 임의로 2개의 집단으로 나누고, 한 집단에게는 기존 사이트를 보여주고 다른 집단에게는 새로운 사이트를 보여준 다음, 어떤 집단이 높은 성과를 보이는지에 대해서 측정한 값을 기준으로 하여, 새 사이트가 기존의 사이트보다 어떤 부분이 좋은지 정량적으로 평가하는 방법이다. 
  • A/B 테스트의 주의점
    • A/B 테스트를 통해서 인과관계를 찾기 위해서는 두 집단을 임의적으로 나눠야 하는데 이를 임의적 할당(random assignment)라고 한다. 임의적이지 않은 방법으로 두 집단을 나누는 경우에 집단의 차이가 어떠한 원인에 의해서 야기되는지에 대한 분별력이 떨어진다. 그리고 애초에 결과가 범용성을 지니기 위해서는 실험에 참가한 집단이 모집단을 대표해야 한다. 이를 임의적 추출(random sampling)이라고 한다.
  • A/B 테스트의 장점
    • 두 가지의 이상의 버전을 실제 사용자에게 노출시켜서 직접적으로 성과를 비교 할 수 있다. 이를 통해 선호하는 디자인, 기능, 메세지등의 부분에서 직관적으로 파악이 가능하다.
    • 실제 사용자 데이터를 기반으로 결정을 내릴수 있어 데이터 기반 의사결정이 가능하다.
    • 전체적인 시스템을 변경하지 않은 상태로 특정 기능과 요소에 대해서 독립적으로 측정하여 테스트가 가능하다.
  • A/B 테스트의 단점
    • 테스트를 많이/자주 하는경우에 단기적인 손해로 이어질 수 있다.
    • 계절 변화와 트랜드의 변화등 시간의 흐름에 따라 바뀔수 있다. 
  • A/B 테스트 단점 해결 방안
    • 전체 사용자 집단이 아닌 특정 세그먼트(연령, 성별, 지역 등)를 대상으로 테스트를 진행하여 결과를 도출 한다.
    • 위의 단점을 해결하기 위해서 멀티아머드 밴딧 알고리즘을 사용한다. A/B 테스트와 달리 탐색-활용 균형을 유지하며 최적의 버전을 찾는 방법이다. 자세한 내용은 아래의 링크를 통해서 확인이 가능하다. 이름에서 알 수 있듯이 슬롯머신과 관련된 알고리즘으로 핵심 문제는 탐색과 활용(Exploration and Exploitation)이다.
\[Q_t(a) \doteq \frac{\sum_{i=1}^{t-1} R_i \cdot \mathbb{1}_{A_i=a}}{\sum_{i=1}^{t-1} \mathbb{1}_{A_i=a}} \text{ \ \ (이 슬롯머신으로 받은 보상의 합 / 전체 슬롯머신 시도 횟수)}\]\[A_t \doteq \arg\max_a Q_t(a) \text{ \ \ (기대 보상을 최대화 만들어주는 슬롯머신을 선택)}\]

 

2. A/B 테스트 결과에서 통계적으로 유의미한 차이가 없을 때의 해석과 다음 단계

해석

  • 개선된 버전이 이전버전보다 나은 결과를 보이지 않는 경우, 해당 변경된 사항이 사용자 행동에 영향력이 없다는 뜻일 수 있다.
  • 유의미한 차이가 나지 않는다면, 측정된 샘플수가 적을 수 있다.
  • 변경사항이 너무 적어 사용자가 인지하지 못했거나, 핵심적인 지표에 영향을 주지 않았을 가능성이 존재한다.

다음 단계

  • 샘플의 크기가 충분했는지에 대해서 확인하고, 샘플이 부족하다면 테스트의 기간을 늘려서 데이터를 수집한다.
  • 기존의 가설을 기반으로 하지않고, 새로운 가설을 세워 A/B 테스트를 설계한다.

 

3. 이벤트 데이터 로그 설계(Event Taxonomy)의 주요 구성 요소와 역할

이벤트 택소노미는 크게 '이벤트 유형(Event Category)', '이벤트(Event)', '속성(Property)'의 3가지 항목으로 구성된다. '이벤트 유형'은 유저의 최종 행동 목적이며, '이벤트'는 이러한 목적을 달성하기 위한 주요 액션들의 묶음, '속성'은 이벤트 내에는 이벤트 발생시 추가적으로 수집하고 싶은 정보이다. 이러한 이벤트와 목적을 특정 규칙에 따라 분류한 데이터 분류 체계를 Taxonomy라고 부른다. 서비스 분석에 필요한 이벤트를 식별하고. 이벤트별 어떠한 속성이 들어가는지에 대해서 고민하여 데이터를 설계하는 작업이다.

 

이벤트 유형(Event Category)

  • '이벤트 카테고리'란 이벤트의 유형을 정하기 위한 단위로, 유사한 이벤트들을 하나로 묶어서 관리할 때 유용한 요소이다. 최종 전환 이벤트로 정의되어 전환까지의 하나의 퍼널을 총칭한다.

이벤트(Event)

  • '이벤트'란 사용자가 프로덕트를 사용하는 과정에서의 행동이나 그 결과로 발생하는 사건을 가르킨다. 예를 들어서 '관심 상품 추가', '구매 완료'와 같은 사용자 행동이 해당된다. 그외의 주문까지의 로딩시간, 서버의 api 처리 시간과 같은 부분도 이벤트로 볼 수 있다.

속성(Property)

  • '프로퍼티'란 웹 문서의 동적인 객체 속성을 뜻하고, 사용자 혹은 이벤트가 가진 동적인 특성을 의미하며 사용자 행동에 대한 세부 분석을 위해서 이벤트와 함께 수집된다. 회원가입일자, 회원가입방법 등의 속성값들이 이에 해당된다.

 

 

 

 

 

A/B테스트 : https://datarian.io/blog/a-b-testing

멀티아머드 밴딧 알고리즘 : https://brunch.co.kr/@chris-song/62 

이벤트 택소노미 : https://brunch.co.kr/@soxxun/7