HAZEL

데이터리안 세미나 후기 : 데이터 실험 문화의 핵심 : A/B 테스트 본문

DATA ANALYSIS/Analysis

데이터리안 세미나 후기 : 데이터 실험 문화의 핵심 : A/B 테스트

Rmsid01 2022. 11. 23. 22:33

세미나 주제 : 데이터 실험 문화의 핵심 : A/B 테스트

주최 : 월간 데이터리안

일시 : 2022.11.08 화 7시-9시

세미나 자료 ( 아래 이미지 출처 ) : https://www.datarian.io/blog/slide-webinar-nov

<목차>

  1. 직관만 믿고 까물었다가 망한 PM의 사연
  2. 알아두면 쓸데있는 잡다한 A/B테스트 이야기

 

1. 직관만 믿고 까물었다가 망한 PM의 사연

참고 : 당근마켓 기술 블로그

A/B 테스트 없이 '키워드 알림 등록 버튼을 변경하는 기획 진행

당근마켓 ( 중고거래 특성상 ) 원하는 매물을 찾기까지 유저가 많은 탐색을 하는 특성을 가지고 있으며, 일반 유저들이 글을 쓰기 때문에 제목 또한 불친절합니다. 그래서 검색관점에서 난이도가 높은 도메인입니다.  해당 PM의 경우 검색을 쉽게 하기 위해서 UI를 같이 개선하기 위해 키워드 알람 버튼이 있는 위치로 필터를 옮기는 작업을 하기로 하였습니다.  그리고 키워드 알림 등록 버튼은 아래로 변경하였습니다.

결론은 '키워드 알람수가 큰폭으로 하락' 하였습니다. 뿐만 아니라 '관심버튼 클릭' '채팅' 까지 하락하게 되었습니다. 추가 분석을 진행 한 결과, 안드로이드 보다 iOS에서 큰폭으로 떨어진 것을 확인 할 수 있었습니다.

그 원인 분석으로 안드로이드가 하단 네비게이션이 존재하여 시선이 아래로 갈 수 있지만, iOS의 경우는 시선이 아래로 가지 않기 때문에 유저들이 인지하지 못한것으로 해석하였습니다.

전사에 실수를 공유하고 수습 진행

연사의 경우 실패했을때 숨기고 싶었으나, 넷플릭스의 공유하는 문화를 담은 책인 '규칙없음' 을 보고 인상깊었으며앞으로 나아가기 위해서는 실수를 공유하고 수습하는게 중요하다고 판단하였다고 합니다.

( 전사의 반응은 걱정과 다르게 공유해주어 고맙다는 피드백을 받았다고 합니다. )

실험과 결과 그리고 느낀점..

대조군 대비 실험군C 의 키워드 알림 등록 전환율은 171.4% 높았으며, 처음 배포했던 B안이 제일 좋지 않은 전환율을 가지고 있었습니다.

연사는 해당 경험을 통해서 "실패했을 때 빠르게 인정하고 적극적으로 공유하며 대응한 것이 좋은 선택이었어요. 그리고 그렇게 했을 때 신뢰하고 격려해 주는 좋은 동료들과 함께 하고 있다는 것도 한번 더 느낄 수 있었어요" 라고 말했습니다.

직관과 데이터 사이

데이터 분석가 출신이라 '데이터가 중요하지' 라고만 생각했으나, 당근마켓에서 일하면서 직관이 좋은 친구들을 보면서 '좋은 직관이 중요하구나'를 알 수 있었다고 합니다.

연사 say "데이터는 과거와 현재만 알 수 있기 때문에 미래가 다른 흐름을 하고 있다면 직관이 필요합니다. 직관은 새로운 그림을 그리는 용기같습니다. 데이터와 직관은 서로 반대되는 것이 아닌 상호보완 관계라고 생각합니다. 데이터를 많이 알아야 좋은 직관을 알수 있고 좋은 직관은 데이터를 잘 해석하는데 도움이 된다고 생각합니다. 전체적인 큰 그림은 pm의 직관이 중요하고 그 큰그림을 그리는 과정에서 작은 부분에 대해서는 데이터를 바라보는게 중요하다고 생각합니다. "

프로덕트 매니저로서의 데이터 활용법

  1. 우선순위와 문제 정의하기
    • '동네생활 검색 고도화'의 우선순위를 의사결정하기 위한 분석
      1. 서비스의 이용자 대비 검색 이용자 수
      2. 당근마켓 다른 버티컬 서비스 대비 검색 후 CTR. 전환율 등
    • '동네 생활 검색의 문제'를 정의하기 위한 분석 : 검색이 유저들의 문제를 잘 해결하고 있는지!
      1. 인기검색어
      2. 검색 후 클릭 / 이탈 패턴 등등
  2. 검색 설계 가이드 ; 구체적인 문제 정의 :분석을 통해 경험 설계 가이드 제공
  3. 실험으로 결과 확인하기 : 동네 생활 검색 CTR 144.7% 상승

당근마켓의 실험 문화

참조 : 1주 1개 실험하는 프로덕트 팀이 되는 여정 - 당근마켓 팀블로그

당근마켓의 경우, 분석가의 가이드와 탬플릿을 채워가다보면 실험분석을 누구나 할 수 있게 되었다고 합니다. 각 팀이 쉽게 시작할 수 있고 승자를 배포할 수있습니다.이러한 모든 실험들은 한 공간에서 확인이 가능하고 전사적으로 공유하면서 실험을 통해 배운 것을 공유한다고 합니다. ( 레슨런만 따로 모아 볼 수 있는 공간도 존재합니다 )

아래는 실제로 중고거래팀이 실험을 하는 방법입니다. '사실을 알기 위해 실험을 하지만, 실험결과가 우리의 의사결정을 정해주는 것은 아니다' 라고 생각하며 의사결정을 할 때는 데이터 뿐만 아니라 다양한 요인들을 함께 고려해서 결정한다고 합니다.따라서 실험결과가 나왔더라도 바로 결과에 따라 배포하지 않고 팀이 함께 모여서 결과에 대해서 이야기를 하고 의사결정을 하게 된다고 합니다.

 

 

1부 세미나를 듣고 느낀점 / 배운점 / 벤치마킹 할 점
  • 연사의 경우 PM 이었으나 데이터 분석가에게도 가설을 세우고 실제로 분석했을 때 **'의미없는 결과'**가 나오는 경우가 왕왕 존재합니다.  이런경우 연사처럼 숨기지 말고 팀원과 실패도 공유해서 더 발전하고 배우는 계기로 가져가야겠다고 생각했습니다.
  • 저의 경우 PO분들처럼 직관이 부족하기 때문에 다양한 경험을 하면서 데이터로 제품을 보는 것이 아닌 PO분들의 생각도 쏙쏙 배워서 성장해야겠다고 생각했습니다
  • 당근마켓의 실험은 전사적으로 공유되고 처음한 사람도 쉽게 할 수 있도록 정형화된 가이드가 존재한다고 합니다. 저도 차근차근 야놀자에서  통계공부와..... a/b테스트 경험을 쌓으면서 다양한 기록을 만들어 두고 싶습니다

 

2. 알아두면 쓸데있는 잡다한 A/B 테스트 이야기

<세부 목차>

  • A/B 테스트란?
  • 왜 하는가?
  • 어떻게 하는가?
  • A/B 테스트시 주의할 점.

A/B 테스트란?

기존버전과 수정버전을 보여주고 어떤 성과가 더 나은지를 파악하는 정량적인 평가.

  1. 여기서 성과란, 개선된 서비스의 목표하는 바에 따라 달라짐. ex, 페이지 전환율, 전환율 , 회원가입률
  2. UI 변경이 있는 ab 테스트가 있는 것도 없는 것도 있음 ex, 알고리즘 변경

왜 하는가?

인과관계를 찾아내기 위해서 함

  1. 상관관계는 인과관계를 대변하지 않는다. ex, 우산과 비는 상관관계는 있으나, 인과관계는 없다.
  2. 인과관계를 찾아내기 위함.
    1. 쉬운문제
      • 아이스크림 판매량 → 물놀이 사고 빈도 : 같은 트렌드를 발견함
      • 날씨 → 아이스크림 판매량 → 물놀이 사고 빈도 : 진정한 판단은 날씨
    2. 좀 더 어려운 무제
      • 디자인 변경 → 회원 가입 증가 한다고 말할 수 있는가? 경쟁 서비스의 변화, 다른 요인이 아닌 진정한 인과관계를 찾기 위함

어떻게 하는가?

테스트 목표 및 가설 설정 → 실험 설계 → 개발 → A/B 테스트 → 실험 결과 해석 → 의사 결정

  1. 테스트 목표 및 가설 설정
    • 실험을 하려는 이유 : 왜 실험을 해야하는지 고민하는단계 ( ex, 트윗 쓰기 기능을 많은 사람들이 경험 했으면 좋겠다. )
    • 실험 가설 : 예상하는 원인과 결과 ( ex, 화면 왼쪽에 있는 버튼을 오른쪽으로 옮기면 클릭률이 올라갈 것이다. )
  2. 실험 설계
    • 핵심지표 : 실험을 통해 개선하고 싶은 핵심 목표 ( ex, 트윗 작성 버튼 클릭률 )
    • 보조지표 : 핵심 지표 이외에 추가로 봐야하는 지표 ( ex, 트윗 작성률 )
      • 하나가 아니라 여러개가 될 수 있다.
    • 가드레일 지표 : 실험의 영향으로 떨어지면(혹은 올라가면) 안되는 주요지표 ( ex, 이탈률, Page Load Time(PLT) )
      • 오른쪽에 위치한 버튼은 실수로 클릭 할 수있는데, 그러면 사용자는 의도치 않은 동작을 방법해서 피로함 → 앱 종료함.
    • 실험을 위한 사전 작업 : 개발이 필요한지, 문구, 혹은 디자인만 필요한지 - 작업리스트 작성
    • 실험 대상 : 실험의 대상 정의 ( ex, 안드로이드 1.0.1 버전 / 특정 국가 등 )
      • 보통은 사용자가 작은 그룹을 테스트로 함
    • 실험 기간과 규모 : 테스트는 기회비용을 가지고 있다. 테스트가 길어지면, 기회 비용이 비싸다.
      • "표본이 많으면 많을 수록 좋은가?" ( p-value의 함정 .. )
      • MDE 를 통한 최소 효과 크기를 구해야한다.
  3. 개발
  4. A/B 테스트
    1. 테스트가 제대로 되고 있는가
      1. 실험군과 대조군이 랜덤하게 나누어지고 있나
      2. 실험을 하는 동안 사용자 경험은 어떤가
    2. 테스트를 하는 인간의 욕망
      1. 내가 원하는 결과를 봤을때 실험을 멈추고 싶다 ( peeking problem )
      2. 내가 원하는 결과를 보기까지 실험을 계속하고 싶다.
  5. 실험 결과 해석
    1. 실험 결과 : A,B 실험군의 수, 지표 평균, p-value 등 주요 실험 결과 정리
    2. 실험 결과 분석 : 사용자 군 별로 쪼개보거나 보조지표를 분석하는 등 상세 분석
    3. 실험을 통해 배운점 : 서비스의 사용자는 끊임없이 변한다. 서비스를 학습을 하면서 다르고, 경쟁 서비스도 발전하기 때문에 서비스의 사용자가 계속 변한다고 생각하면 좋다.
      1. A/B 의 결과가 언제까지 유용할 것인가?
      2. 이 실험을 통해 배운게 어디까지 보편적인가?
      '이 실험을 통해 배운 레슨런이 영원하지 않다' 는 것을 기억하기.
    4. 그래서 두가지 질문을 하는게 좋다.
  6. 의사결정
    1. 실험 결과 != 의사결정

 

실험 기간과 규모에 대하여...

  • 테스트는 기회비용을 가지고 있다. 테스트가 길어지면, 기회 비용이 비싸다.
    • "표본이 많으면 많을 수록 좋은가?" - No ( 그에 대한 자세한 답변은 >> p-value의 함정 확인 )
  • 실험 기간과 규모를 구하는 방법
    • 샘플사이즈 계산기를 이용한다.
    • 샘플사이즈를 계산하기 위해서는 MDE를 정해야한다...
    • 적절한 표본크기를 정하기 어려운 현실적인 문제들..
      1. 최소 효과 크기(MDE)를 정하기 쉽지 않음
      2. 서비스의 트래픽이 충분하지 않음
      3. 서비스의 트래픽은 충분하지만, 동시에 여러 실험을 한다면 한가지 실험에 할당할 수 있는 규모에 한계가 있음
      4. 특정 머신러닝 모델의 경우 학습을 위한 최소 트래픽이 필요한 경우도 있음
      5. 고객의 행동이 주기에 영향을 받음 ( ex, 주중과 주말의 행동이 다름. 따라서 최소한 일주일이 필요함 )
  • 보통은 데이터 분석가의 경험을 통해서 표본크기를 정한다. 꼼꼼한 부분보다 경험적으로 결정하는게 많다.

 

A/B 테스트시 주의할 점

  1. 실험 초반에 지표가 갑자기 많이 올라가는데 어떻게 해야 하나요?
    1. 신기 효과 ( Novelty Effect )
      1. 기존 사용자들은 단지 이 기능이 '새롭기' 때문에 사용해볼 수 있음
      2. 긍적적인 지표가 단기간 동안에만 지속됨
      3. 신기효과를 피하는 방법
        1. A/B 각 그룹에서 신규 사용자만 뽑아서 지표를 확인
        2. 실험 시작 이후 N회차 방문 별로 세그먼트를 쪼개어 데이터를 확인 ( 더이상 신규 기능이 새롭지 않게 됐을때에도 기능을 사용할 것인가를 보기 위함)
        3. 실험을 길게 진행
    2. 초두 효과 ( Primacy Effect )
      1. 사용자들이 새 기능에 적응하는데 시간이 걸릴 수 있음
      2. 시간이 지날수록 새 기능에 학습을 하기 때문에 반응을 하기 시작함
      3. 초두 효과를 피하는 법
        1. 신기효과 피하는 법과 동일
  2. 테스트를 하는 인간의 욕망
    1. 내가 원하는 결과를 봤을때 실험을 멈추고 싶다 ( peeking problem )
    2. 내가 원하는 결과를 보기까지 실험을 계속하고 싶다
  3. A와 B가 비슷하면 어떻게 해야 하나요?
    1. 근소한 차이가 중요한가?
      1. No
        1. 비슷하다고 결론을 낸다
        2. 다른실험을 시작한다
      2. Yes
        1. 통계적으로 유의성을 확보할때 까지 실험을 계속한다. ( x )
        2. 보조 지표를 확인한다 ( o )
        3. 고객 세그먼트를 나누어 지표를 분석한다 ( o )

 

2부 세미나를 듣고 느낀점 / 배운점 / 벤치마킹 할 점
  • 공부해도 휘발이 강한 애증의 통계에 대해 조금 더 깊게 공부 해야겠다 느꼈습니다.
  • 신기효과/초두효과를 피하는 방법을 늘 <오래 실험하기>로만 생각했는데, 그룹을 나누어 분석한다는 방법을 깨닫게 되었습니다.
  • 실험 결과와 의사결정이 같지 않다는 점을 더 명심하게 되었습니다.

'DATA ANALYSIS > Analysis' 카테고리의 다른 글

린분석 : PART 1. 눈가리고 아웅하지 말기  (1) 2022.11.27