A/B 테스트 결과 해석에서 자주 발생하는 12가지 함정들

Bonnie BK
BON DATA
Published in
26 min readMar 4, 2021

--

Common Metric Interpretation Pitfalls in A/B Test

01 소개

일반적인 A/B 테스트 결과 분석

일반적인 A/B 테스트 결과 분석은, 위의 이미지와 같이 A그룹과 B그룹 간의 metric의 통계적 유의성을 검정합니다. A/B 테스트 결과 해석에서 유의해야 할 점들 12가지를 소개합니다.

Microsoft Data Analysis & Experimentation team Data Scientist Somit GuptaKDD2017에서 발표한 논문입니다. 유튜브에서 21분 가량의 발표논문 원문(A Dirty Dozen: Twelve Common Metric Interpretation Pitfalls in Online Controlled Experiments)을 참고하여 아래 내용을 작성하였습니다.

02 Metric Taxonomy

Microsoft에서는 메트릭 해석의 함정에 빠지지 않도록 도와주는 것이 Metric Taxonomy라고 합니다. 한 실험의 결과를 분석할 때, 100개 이상의 메트릭을 계산하고 분석합니다. 이 다수의 메트릭은 아래 4가지의 카테고리로 분류될 수 있습니다.

Data Quality Metrics

  • “결과가 신뢰할만한가?”
  • 실험군:대조군 비율, 실험군과 대조군이 동일한 모집단에서 랜덤 샘플링 되었는지 여부

Overall Evaluation Criteria (OEC) Metrics

  • “처치가 성공적이었는가? 어느 정도의 효과를 보였는가?”
  • 실험에서 최적화하려는 지표이며, 프로덕트의 장기적인 목표와 align되는 단 하나의 지표입니다. 한 프로덕트 내에서 진행되는 다수의 실험이 공통의 OEC 지표를 가지기도 합니다.

Guardrail Metrics

  • “처치가 비즈니스 주요 메트릭에 감당할 수 없는 수준의 피해를 미쳤는가?”
  • Bing, MSN과 같은 홈페이지의 경우 Page Load Time(PLT)

Local Feature and Diagnostic Metrics

  • “OEC와 가드레일 지표가 왜 변화하거나 변화하지 않았는가?”
  • 개별 프로덕트의 사용량, CTR, 퍼널에서의 전환율
  • Local metric에서의 향상은 주로 좋은 신호이지만, 대부분 연관된 다른 local metrics에서의 저해가 따라옵니다. 예를 들어서, 하나의 홈페이지에서 특정 카테고리의 CTR이 오르면 다른 카테고리의 CTR은 감소하게 되어 있습니다.
  • 유저의 행동을 세밀한 수준에서 트래킹합니다. 예를 들어, 프로덕트의 어떤 부분을 클릭했으며 유저가 재방문했는가? 이러한 수치들은 다양한 레벨에서 aggregate됩니다. 세밀한 수준에서 살펴 보아야 OEC Metric, Guardrail Metric의 변화를 해석할 수 있다고 합니다.

03 Metric Interpretation Pitfalls

마이크로소프트의 실제 실험 예시와 함께 12가지 함정을 이해하고, 각기 함정에 어떤 대책들이 있는지 알아봅시다.

#1. Metric Sample Ratio Mismatch (실험군, 대조군 비율 차이)

MSN homepage

가설: 링크를 새로운 탭에서 띄우는 것은 홈페이지 로드 타임을 증가시킬 것이다. (Opening links in a new tab increased home page load time.)

  • Treatment: MSN 홈페이지에서 클릭된 어느 링크든, 새로운 탭으로 페이지가 뜬다.
  • Control: MSN 홈페이지에서 클릭된 어느 링크든, 오픈되어 있는 탭에서 링크로 이동된다.

결과: 실험군에서 PLT(Page Load Time)가 8.32% 증가했다.(기대 이상으로 지나치게 큰 증가)

PLT 구성 분자, 분모
  • Treatment에서의 페이지 로드 수: ~ 8.4M
  • Control에서의 페이지 로드 수: ~ 9.2M

About the pitfall

실험군과 대조군에서 동일한 수준의 data points가 있어야 합니다. 이 조건을 만족하지 못했습니다.

왜 분모인 홈페이지 로드 수가 달라졌을까요?

  • 실험군에서 더 적은 홈페이지 로드 수를 보이는 것은, 실제 측정 결과가 confounding factor(교란 변수, 이미지 참고)에 의해서 영향을 받았기 때문입니다. (조건 불만족의 원인: 교란 변수)
교란 변수
  • 이 케이스에서의 confounding factor는 ‘홈페이지 탭이 미리 켜져 있어 reload하지 않아도 되는 상황’ 과 ‘대조군의 경우 브라우저에 남은 홈페이지 캐시’가 되겠습니다.
  • 실험군은 새로운 탭을 닫고, 켜져 있는 기존 홈페이지 탭으로 복귀하기 때문에 절대적으로 홈페이지를 reload하는 횟수가 적어집니다. 또한 대조군의 경우 뒤로 가기에 남아있는 홈페이지 캐시로, reload하는 시간이 더 짧아지고, 실험군은 뒤로 가기에 아무 것도 남아있지 않습니다.

How to avoid

  1. 이후에 goodness-of-fit-test를 진행하여,
  2. Metric SRM을 자동으로 감지하고 경고하게 합니다.
  3. Data quality metric을 잘 선정하여 추가합니다.
  4. 비율 지표를 분해(decompose, breakdown)하여 메트릭의 어느 부분에서 차이가 발생하는지 이해합니다. 비율 mismatch에 영향을 받지 않는, 실험군, 대조군 간의 동등하게 비교할 수 있는 subset을 찾아서 신뢰 가능한 결과를 분석합니다. 아래는 Metric breakdown 예시입니다.
Homepage PLT (페이지 로드 타임) can be decomposed into:1. Average homepage PLT per user 
a. Average homepage PLT per user with 1 homepage visit
b. Average homepage PLT per user with 2+homepage visits
2. Number of homepage loads per user
a. Number of back-button loads
b. Number of non-back-button loads
i. PLT for non-back-button loads

#2. Misinterpretation of Ratio Metrics (비율 지표의 함정)

MSN modules

MSN 메인 페이지에는 엔터테인먼트, 스포츠와 같은 토픽으로 구분된 다양한 module이 있습니다. 이런 모듈의 위치는 유저 경험 최적화를 위해서 종종 실험의 대상이 되는데요. 어떤 한 실험에서는 스크롤의 맨 밑에 있던 모듈을 최상단으로 옮겼습니다. 여기서, 평균 CTR이 40% 감소했습니다.

  • 가설: 모듈의 위치를 상단으로 옮기면 CTR이 상승할 것이다.
  • 결과: 실험군에서의 CTR이 40% 감소했다.

About the pitfall

이번 케이스에서 SRM 이슈는 발생하지 않았습니다. 하지만 비율 지표를 분해해서 봤을 때

  • 분모(impression user count)의 대조군 대비 증가율 200%
  • 분자(whole CTR)의 대조군 대비 증가율 74%
비율 지표 분자, 분모

CTR은 주로, 콘텐츠 또는 추천의 질을 측정하고자 할 때 사용됩니다. 하지만 노출되는 유저의 수가 크게 변했고 실제로 whole CTR은 flat한 상태일 때 평균 값으로 해석하면 올바르지 않게 됩니다. 즉 분모가 변하면 비율 지표는 유효하지 않을 수 있습니다.

비율 지표 계산법 2가지와 각 특성

  1. 비율의 평균(위 Avg CTR/User 케이스): AVG(SUM/SUM)
  2. 평균의 비율: AVG/AVG

(2) 보다 (1)이 실용적 장점이 더 많습니다.

1. 유저들의 개인 특성과 관계 없이 전체를 묶어 비율을 내기 때문에 아웃라이어에 탄력성이 높습니다.
2. Since the denominator of method A is the number of users which is one of the controlled quantities in an experiment, it is less likely to suffer from having a metric-level SRM
3. 유저 전체에서 평균을 내기 때문에, 분산을 더 간결하게 계산합니다.

How to avoid

비율 지표 옆에 분자와 분모도 반드시 명시합니다.

#3. Telemetry Loss Bias (클라이언트의 이벤트 로그 유실)

Telemetry = 무선 및 유선으로 디지털 신호 데이터를 측정, 변환, 전송 + 축적, 분석하는 기술을 의미

Skype iOS notification

가설: iPhone Skype notification에 사용하는 protocol을 바꾸었을 때, 통화 품질 지표(call quality metrics)를 변화시킬 것이다.

  • Treatment: VolP protocol 사용
  • Control: 다른 protocol 사용

결과: 일부 통화 관련 지표에서 예상치 못한 강한 변동이 있었다. 다른 지표들은 변화가 없었다.

  • 가드레일 메트릭, 로컬 메트릭을 통해서 강한 변동을 빠르게 파악하고 대응이 가능했다.

About the pitfall

  • 실험군에서 사용한 protocol의 경우. 푸시를 받고 데이터를 batch 형태로 모아서 보내기까지 몇 초 더 대기합니다. 기술적인 이슈가 실험의 결과를 해석하는 데에 편향을 줍니다.
  • 이 케이스의 경우, 클라이언트 event based, click based metric은 전부 신뢰성을 잃게 됩니다.

How to avoid

  1. 클라이언트에서의 call event 수, 서버에서의 call event 수를 비교하고 loss rate를 Data Quality Metric으로 포함합니다.
  2. 클라이언트에서 할당하는 이벤트의 sequence number 사이에 빈틈이 있는지 파악합니다.
  3. 메트릭들은 가능하다면 클라 사이드 이벤트보다 서버 사이드의 이벤트 기반으로 카운트 되어야 합니다. less lossy, more uniform합니다.

#4. Assuming Underpowered Metrics had no Change (검정력의 부족으로 임팩트 감지 불가)

(이미지 레퍼런스)

MSN 홈페이지에서 일어나는 실험들 중에서, total number of page views per user 은 중요한 OEC metric입니다. 특정 실험에서 대조군 대비 실험군에서 0.5%의 metric 향상이 있었다고 합시다.

  • P-value가 통계적으로 유의하지 않았습니다.
  • 하지만 mature 단계에 있는 MSN과 같은 온라인 비즈니스에서는 0.5%의 향상도 비즈니스에 큰 임팩트로 해석됩니다.

About the pitfall

검정 과정을 살펴보니 신뢰 구간을 계산하는 데에 사용한 검정력(power)가 80%를 사용했습니다. 이 케이스에서의 실험군, 대조군 샘플 수와 power = 80% 의 조건에서는, 대조군과 실험군이 7.8% 이상의 차이가 나야 p-value가 통계적으로 유의하다고 나옵니다. 성숙한 비즈니스에서 7.8% 이상의 차이를 내기는 쉽지 않습니다.

즉, 샘플 수를 power analysis를 통해 결정하지 않았기 때문에 발생한 문제입니다.

검정력: 대립가설이 사실일 때, 이를 사실로서 결정할 확률

EX) 검정력이 0.8이라면, 대립가설이 사실임에도 불구하고 귀무가설을 채택할 확률(2종 오류)은 20%입니다.

0.80 ~ 0.95가 리서치에서 가장 합리적인 값입니다.

- 0.8 = good for studies that are important but maybe not life-and-death decisions

- 0.95 = used for critical studies that may have life-and-death decisions (need LARGER SAMPLES)

How to avoid

  • Priori power analysis을 진행하여, OEC와 가드레일 메트릭에서 비즈니스에서 충분히 크다고 판단되는 임팩트(%)를 감지할 수 있을 샘플 사이즈를 선정합니다.
  • (참고) Post-hoc power analysis는 사후 검정력 분석으로, power를 비우고 sample size, effect, alpha를 넣고 power를 계산하는 방식입니다.
  • (참고) 임팩트의 크기 를 고정된 것으로 간주한다는 점에서 ‘교과서적인 방식’입니다만 현실에서 이 가정이 성립되기 쉽지 않습니다. 이 단점을 극복하기 위해 나온 방식도 존재합니다. ‘Bayesian-classical hybrid power analysis’ (레퍼런스)

#5. Claiming Success with a Borderline P-value (0.05에 가까운 p-value로 성공의 확신)

Bing.com

마이크로소프트의 또다른 웹 페이지 Bing.com 에서 실험 A를 진행했습니다. 실험군, 대조군 간의 OEC metric 증분을 검정한 결과 0.029의 p-value가 나왔습니다.

  • 이 OEC metric은 유저의 만족도 지표고, 유저의 잔존에 직결되는 leading indicator입니다. 대부분의 실험이 이 metric을 개선하는 데에 성공하지 못했습니다.
  • P-value로 실험 A의 성공을 확신하지 않고, 검증용으로 동일한 실험을 독립적으로 시행했습니다. 실험군, 대조군 트래픽을 2배로 늘려서 실험을 시행한 결과, 동일한 OEC metric 증분을 검정했지만 통계적으로 유의하지 않았습니다.

About the pitfall

P-value가 0.05에 가까운 boundary에 있을 때, 다른 추가 근거를 고려하지 않고 귀무가설을 단순하게 기각하는 경우 발생합니다. Borderline p-value(0.05의 경계에 가까운 값)을 보일 때, 1종 오류(False Positive)의 경고일 수 있습니다.

How to avoid

  1. P-value가 0.05의 경계에 가깝지 않은 OEC metric에 더 중점을 두고 실험을 평가합니다.
  2. 실험군, 대조군 유저 수 트래픽을 키워서 동일한 실험을 새로운 유저들에게 시행합니다.
  3. 두 가지 방법이 다 불가능하거나 2번을 시행해도 여전히 borderline p-value가 나온다면 Fisher’s Method를 활용합니다. (샘플 수가 적거나, 카테고리가 많고 범주형 자료일 때 사용하는 검정법)

#6. Continuous Monitoring and Early Stopping (지속 관찰과 조기 종료)

전형적인 A/B 테스트 모니터링 대시보드
두 가지 케이스를 들겠습니다.

EXP-01, EXP-02 두 상황에 대한 대답은 모두 NO입니다. KDD2015에서 A/B 테스트를 12년간 운영한 Microsoft의 다른 엔지니어가 위와 같은 상황에서 early stopping, extending을 해도 괜찮다고 발표한 바가 있지만, 이 논문에서는 당당하게 이 글을 인용하며 이런 이야기를 담아 발표를 할 수 있을 정도로 쉽게 실수할 수 있는 부분이라고 합니다.

About the pitfall

지속적으로 결과를 체크하고, 통계적 유의성을 확보한 순간 실험을 종료하는 것은 1종 오류(False Positive)의 발생 가능성이 높아집니다. 1종 오류가 발생한 채 의사 결정을 내릴 경우, 실제로 지표를 개선시키지 못하는 기능을 ship하게 됩니다.

False Positive = 두 집단의 차이가 없는데, 차이가 있다고 판정하는 것

How to avoid

  1. 실험 소유자들(experiment owners)가 이 함정에 대해 인지하게 하고, 특정 시점에만 의사 결정을 하도록 가이드라인을 확립합니다.
  2. Sequential Hypothesis Testing을 통해 p-value를 조정합니다.
  3. Bayesian testing을 진행하면, 자연적으로 지속적인 모니터링 기반의 optional stopping이 가능하다고 합니다.

#7. Assuming the Metric Movement is Homogeneous (모든 상황에서 동질의 효과 가정)

가설: Bing.com 에서 새로운 광고 경매 및 배치 알고리즘을 통해 매출을 상승시킬 수 있을 것이다.

  • 또한 광고의 퀄리티 즉, 페이지별 광고의 개수를 동일하게 유지할 수 있을 것이다.

결과: 매출을 2.3% 상승시키면서, 페이지별 광고의 개수가 0.6% 감소함

About the pitfall

광고가 뜨는 페이지를 세그먼트내보았을 때, 결과가 달라집니다.

  • 첫 페이지(original page): # of ads per page 0.3% 증가
  • 뒤로 가기한 페이지(dup page): # of ads per page 2.3% 감소

원인은, 뒤로 가기 할 경우, 첫 페이지에서 뜨는 광고와 다른 광고가 떠야 합니다. 아마 빠르게 다른 광고로 스위치하면서, 충분한 광고가 로딩 되지 않아서 감소하지 않았나 예상합니다.

따라서 original page 케이스가 전체 페이지 수에서 차지하는 비중은 컸지만, dup page 케이스에서의 드라마틱한 delta로 전체 결과에서 0.6% 감소로 이끌었습니다.

이렇게 페이지를 쪼개어서 확인해본 결과, 사실상 중요한 것은 첫 페이지(original page)이지만, 첫 페이지의 경우 OEC metric이 증가하지 않았기 때문에 실험은 성공하지 못했습니다.

즉, 이 함정은 ‘처치 효과가 모든 유저와 상황에서 동질할 것이라고 가정할 경우’를 의미합니다. 다양한 상황에서 처치 효과에 대한 OEC metric의 반응이 달라질 수 있습니다.

나라별 유저

특정 브라우저의 특정 버전

How to avoid

  1. 하나의 기능을 ship하는 것은 전반적인 유저 경험을 향상시키지만, 대체로 특정 유저 그룹의 경험은 저해하게 됩니다. 이 사실을 인지하고, 주요한 세그먼트는 쪼개어서 분석합니다.
  2. 수백개의 metric을 다양한 세그먼트 별로 쪼개어 보면서 이질적인 처치 효과(heterogenous treatment effect)가 있는지 확인하는 것은 manual analysis로는 불가능합니다.
  3. 따라서 automated tool이 필요합니다.

#8. Segment Interpretation (Simpson’s Paradox, 심슨의 역설)

아래는 Bing.com 에서 seattle seahawks라는 키워드를 검색했을 때 ranking algorithm 기반으로 결과가 뜬 이미지입니다.

논문의 Figure1

가설: Bing에서 새로운 ranking algorithm을 런칭했을 때, Sessions per User가 상승할 것이다.

세그먼트 쪼개기:

  • 위의 이미지에서 News, Schedule, Centurylink Field, Videos 항목을 눌러서 본 여부에 따라 세그먼트를 나눴습니다.
  • 눌러서 본 유저 = U1
  • 눌러보지 않은 유저 = U2
  • 전체 유저 = U1 + U2

결과:

  • 실험군 U1가 대조군 U1에 대비하여 통계적으로 유의하게 Sessions per User 향상
  • 실험군 U2가 대조군 U2에 대비하여 통계적으로 유의하게 Sessions per User 향상
  • 실험군 전체가 대조군 전체에 대비하여 통계적으로 유의한 변화 없었음. (심슨의 역설)
  • 또한 실험군에서의 U1의 비중이 대조군에서의 U1의 비중보다 컸음 (실험군, 대조군 비율 불일치)

About the pitfall

Segmentation은 디버깅에 효과적인 툴입니다. 예를 들어, KPI가 감소했을 때 원인 진단을 위해서 세그먼트를 쪼개어서 두드러지게 감소하는 세그먼트를 찾습니다. 또한 #6에서 봤듯이 세그먼트로 쪼개어서 이질적인 효과를 발견할 수 있습니다.

하지만 세그먼트를 분류해서 통계적 유의성 검사를 할 때, Simpson’s paradox와 Sample Ratio Mismatch를 경계해야 합니다. 또한 실험 소유자들은 기대하는 효과, 즉 통계적 유의성을 확보할 수 있을 때까지 세그먼트를 쪼개어 분석하는 경향도 있습니다.

How to avoid

  1. 세그먼트 분류 기준이 실험의 처치에 영향을 받는 영역이 아니어야 합니다. → SRM 테스트를 통해 검증할 수 있습니다.
  2. Multiple testing problem(다중 비교) → Bonferroni correction으로 1종 오류를 보정하는 과정을 거칩니다.

Bonferroni correction: 다수를 비교할 때 발생하는 오류를 보정하는 통계추론 방법 중 하나

#9. Impact of Outliers (이상치의 영향)

동일하게 MSN 홈페이지 케이스입니다. 여성의 얼굴이 있는 곳을 Carousel 및 Infopane 이라고 합니다.

MSN homepage

가설: Carousel에 더 많은 슬라이드를 보여줄수록 user engagement metric이 증가할 것이다.

  • Treatment: 16 slides in the carousel
  • Control: 12 slides in the carousel

결과: 2가지 측면

  • user engagement metric이 실험군에서 통계적으로 유의한, 급격한 상승을 보였다.
  • 또한 실험은 SRM을 보유했다. (SRM test p value ~ 1e-6) 실험군 유저 수가 더 적었다.

About the pitfall

웹 페이지에서 Bot filtering 알고리즘이 있는데, 알고리즘에서 봇으로 판단하는 기준 중 하나가 # of distinct actions user takes 였습니다.

  • Carousel에서 슬라이드를 넘기는 행동을 과도하게 많이 한 일부 outlier 유저들이 봇으로 판단되어, 실험군 유저 수에서 자동으로 배제되었습니다.
  • Bot filtering 알고리즘을 수정하니 SRM도 사라졌습니다.

이처럼, 아웃라이어는 지표 값을 skew할 수 있고, 이 경우 지표의 분산이 커져 통계적으로 유의성을 내기에 더 어려워집니다.

How to avoid

  1. Trimming: 아웃라이어 제거하기
  2. Capping: 아웃라이어를 특정 고정된 값으로 대체하기
  3. Windsorizing: 아웃라이어를 특정 percentile 값으로 대체하기
  4. Data Quality metric으로 위 bot filtering 과 같은 케이스 피하기
  5. 지표의 평균이 아닌, 25, 50, 75, 95% 값을 보기
  6. 로그를 취해 변환하기

#10. Novelty and Primacy Effects (신기 효과와 초두 효과)

Edge 브라우저는 새로운 탭을 켰을 때 유저가 가장 많이 방문한 frequently visited TOP SITES 섹션이 있습니다. 쓰는 유저들은 잘 쓰지만 안 쓰는 유저들은 아예 안 써서, 사용을 유도하기 위해 coach mark를 추가했다고 합니다.

Edge browser Top sites

가설: Coach mark를 추가했을 때 top sites 페이지 클릭 수가 증가할 것이다.

실험 진행 기간: 4주

결과:

  • 실험군 전체 페이지 클릭 수에서 0.96% 향상
  • 실험군 top sites 페이지 클릭 수에서 2.07% 향상

이슈:

  • how durable is the effect?
  • Will it lead to long term increase in user engagement?

About the pitfall: Novelty Effect

세그먼트를 나누어서 봅니다.

  • 유저의 첫 coach mark 페이지 방문
  • 이후 방문: 이후 방문에서는 페이지 클릭 수가 유의하게 상승하지 않음

따라서, 처치 효과는 첫 방문 이후로 지속되지 않았습니다.

Novelty Effect

긍정적인 효과가 단기간에만 발생하고, 장기간으로는 flat한 효과를 보일 때 Novelty effect라고 합니다. Novelty effect를 짚어냄으로써 프로덕트팀이 더 많은 coach mark를 만드는 데에 리소스를 쓰지 않게 되었고, 유저들은 actual task로부터의 distraction을 줄 수 있는 coach mark를 더 이상 보지 않아도 되었습니다. 아래와 같은 예시가 이런 coach mark와 같은 케이스에 속합니다.

팝업 광고

급격히 변하는 UI 요소

About the pitfall: Primacy Effect

Novelty Effect와 정반대로, 초반에는 유저가 반응하지 않다가 시간이 지날수록 user learning이 발생하여 처치에 더 잘 적응하고, 반응하는 현상을 의미합니다. 아래와 같은 케이스들이 있습니다.

  • Ad blindness: 초반에는 유저가 광고를 무시하다가, 유저와 관련된 광고가 뜨기 시작하면서 user engagement가 상승합니다.
  • Content recommendation system: 유저의 정보 데이터가 쌓이면서, 더 양질의 콘텐츠를 추천해주며 user engagement가 상승합니다. 유저들도 익숙해집니다.

How to avoid

실험들은 주로 짧은 기간안에 종료되지만, 비즈니스와 유저에게 장기적인 영향을 측정하고자 할 때가 많습니다.

  1. Novelty Effect를 구분해서 보기 위해서는, A/B 테스트 각 그룹에서 신규 유저만 추출하여 A-신규/ B-신규를 구분해서 봅니다. 성공적인 A/B 테스트는 신규 유저를 대상으로 유의미한 효과를 보여야 합니다. 그렇지 않으면, 기존 유저들을 대상으로 최적화하여 로컬 옵티멈으로 수렴하며, 현재 주요 유저 베이스 밖에서의 기회를 놓치는 셈입니다.(참고: 노트북)
  2. 처치 효과를 실험의 다양한 일자 세그먼트별로 쪼개어서 봅니다. 또는 유저의 방문 회차 세그먼트로 쪼개어서 봅니다. 쪼개어 보며 장기에도 처치 효과가 유지되는지 봅니다.
  3. 실험을 장기로 진행합니다.

[참고] 프로덕트 소셜 bias(레퍼런스)

  • Early Adopters Bias (프로덕트의 신규 버전을 사용하는 초기 유저들은 전체 유저 인구와 성격이 다릅니다.)
  • Novelty Effect (신규 기능 및 기술이 출시되면, 실제 앱 학습과 성취에서의 개선때문이 아니라 신규 기능 및 기술에 대한 관심의 증가로 인해 performance가 초기에 개선되는 경향이 있습니다)
  • Default Effect (변화에 대한 적응에 노력이 필요하기 때문에’change aversion’ 유저들은 기본 세팅을 계속해서 사용하려고 할 것입니다.)

→ Solution: Balancing KPIs (여러 관점에서의 KPI를 함께 보아야 편향을 피할 수 있습니다.)

#11. Incomplete Funnel Metrics (퍼널 단계별 메트릭 부재)

가설: Xbox 제품 중에서 특정 프로모션 전략을 취했을 때, 매출이 상승할 것이다.

결과:

  • 결제 페이지 CTR: 실험군에서 통계적으로 유의하게 증가
  • 매출: 변화가 통계적으로 유의하지 않음

About the pitfall

온라인 유저 경험은 funnel process로 모델링됩니다. 가입부터 매출과 같은 최종 지점까지 다다르는 전환율은 1% 미만으로 작기도 합니다. 이러한 funnel based scenario에서는 각 퍼널들에서 실험군, 대조군의 변화를 측정하는 게 중요하다고 합니다.

How to avoid

  • Conditional success/ Unconditional success으로 구분해서 봅니다.

Conditional success: 특정 단계 퍼널에서 시작된 유저의 최종 액션까지 전환율

Unconditional success: 첫 단계 퍼널에서 시작된 유저의 최종 액션까지의 전환율

  • 퍼널의 각 단계에서 metric을 검정합니다.

#12. Failure to Apply Twyman’s Law (큰 수치 변화를 의심 없이 신뢰)

MSN another homepage

가설: MSN 홈페이지에 상단에 있는 기능 버튼을 mail 앱으로 변경할 경우 앱 클릭 수가 증가할 것이다.

  • Treatment: 위 이미지에서 빨간 네모가 mail 앱
  • Control: 위 이미지에서 빨간 네모가 outlook 앱

결과:

  • 빨간 네모에 있는 앱 클릭수가 28% 증가
  • 빨간 네모 앱 근처 버튼 클릭 수가 27% 증가
  • 실험군에서 전반적인 페이지 클릭 수가 4.7% 증가

About the pitfall

위와 같은 수치 변화는 Too good to be true라고 합니다. 여러 가지 metric을 함께 보았을 때, user retention & satisfaction 지표에는 변화가 없었다고 합니다. 또한 매일 앱 클릭수를 지켜보았는데 하루하루 급격히 감소했습니다.

논문 Figure2

즉, 실험군에서 유저들이 당연히 아웃룩이 있을 줄 알고 버튼을 클릭했는데 예상과 달리 메일 앱에 들어갔고, 그 안과 밖에서 헤매이며 탐색하느라 연관된 클릭 수가 증가했다는 결론입니다.

Twyman’s Law: 흥미롭거나 달라보이는 수치는 대부분 잘못되었다는 법칙

“the more unusual or interesting the data, the more likely they are to have been the result of an error of one kind or another”.

예상치 못한 지표 변화는 이슈가 있음을 의미하고, 긍정적인 지표 변화도 회의적으로 바라봐야 합니다.

How to avoid

  1. 포괄적이고 다양한 metric을 구비하고 함께 봅니다.
  2. 다양한 세그먼트로 쪼개어 봅니다.
  3. Microsoft에서는 예상치 못한 큰 범위의 metric movements가 발생할 경우, 긍정 부정 방향과 관계없이 경고 & 실험을 자동 종료하는 시스템이 있습니다.

04 Wrap Up

실험 플랫폼은..

이와 같은 자주 발생하는 함정을 감지할 수 있어야 하고, 경고하는 시스템을 포함해야 합니다. 또한 풍성한 Data quality metric, Diagnostic metric을 갖춰야 합니다. Microsoft는 hundreds of those metrics을 함께 본다고 해요.

실험자들은..

healthy skepticism을 통해서

데이터에서 결과를 재단해야 하며

OEC metric의 움직임을 Diagnostic metric을 기반으로 가설 형태로 설명할 수 있어야 하며

Twyman’s law를 적용하고

세그먼트로 drill down해서 볼 수 있어야 합니다.

소감을 정리하면..

  1. 단순히 숫자 두개로 비교될 수 있는 A/B 테스트 결과지만, 비판적으로 바라보며 더 치밀하게 검증해야 한다. (비판적으로 바라보는 방법은, 이 글을 참고하고 다른 리서치를 통해서 배운다. 이 글은 웹페이지 실험 케이스 위주라 아쉬운 점들이 있다.)
  2. 주어진 리소스(시간)안에서 적정한 레벨까지 치밀하게 검증해야 한다.
  3. 치밀하게 깊게 파고든 분석을 간결하게 커뮤니케이션 해야 한다.

위의 세 가지 이슈는 참 쉽지 않습니다 😄

--

--

Bonnie BK
BON DATA

옆 동네 데이터 분석가, 데이터로 유저의 행동을 이해하고 인과관계를 파악합니다. Contact me through 🔗 https://www.linkedin.com/in/b-choi/ 🗂 https://www.slideshare.net/choibokyung/presentations