오늘은 과제 피드백 중 추천해주신 AB test 미리 공부해보았다
https://brunch.co.kr/@digitalnative/19
AB Test 기본부터 심화까지 -1편
AB Test에 기반한 전략적 의사결정으로 서비스 개선하기 | 저번 글 아마존, 에어비앤비, 넷플릭스의 AB테스트 결과 정리에 이어서, 이번 편에서는 서비스 기획자, 전략가, 프로덕트 오너라면 반드
brunch.co.kr
A/B Test 기본 개념과 사용자 분산 방식
1. A/B Test란?
- 정의: 디지털 환경에서 전체 실사용자를 대조군과 실험군으로 나누어 특정 UI나 알고리즘의 효과를 비교하는 데이터 기반 의사결정 방법론.
- 핵심 사례: 2008년 오바마 대선 캠프에서 500건의 A/B 테스트를 통해 기부 전환율 49% 증가, 이메일 수집률 161% 증가를 달성하며 대중적으로 확산됨.
2. A/B Test의 트래픽 분산 방식 3가지
실험 목적과 시스템 환경에 따라 적절한 분산 방식을 선택해야 데이터 왜곡을 막을 수 있다.
| 분산 방식 | 특징 | 장점 | 단점 / 주요 활용 |
| 노출 빈도 분산 | 페이지가 렌더링될 때마다 설정된 비율에 따라 무작위 노출 | 헤비 유저가 많아도 노출 빈도가 균등해 통계적 유의성이 높음 | 동일 유저에게 UI가 계속 바뀌어 혼란(Bias) 유발 가능 → 알고리즘 테스트에 적합 |
| 사용자 분산 | 유저 ID나 쿠키(UID) 기준으로 그룹을 고정하여 노출 | 유저에게 일관된 경험을 제공하여 혼란이 적음 | 특정 아웃라이어(헤비 유저)에 의해 결과가 왜곡될 위험이 있음 → UI/UX 테스트에 적합 |
| 시간대 분산 (시분할) | 초 단위, 분 단위, 혹은 시간 단위로 대역을 나누어 노출 | 시스템 구조상 노출/사용자 분산이 불가능할 때 우회책으로 활용 | 시간대별 유저 특성 변수를 통제하기 어려움 →금융/통신사 등 보안 환경에서 제한적 사용 |
- 궁금증: 사용자 분산 방식을 사용할 때 아웃라이어는 어떤 방식으로 고려하는지? box plot으로 파악해서 테스트에서 제외한다는 것인지? 아니면 결과 분석에서 제외한다는 것인지?
- 제미나이 답변:
- 사용자 분산 방식을 사용할 때 아웃라이어(Outlier, 예: 결제 금액이 일반 유저의 수백 배에 달하는 헤비 유저)를 처리하는 시점은 '테스트 단계(실험 대상 자체)'에서 제외하는 것이 아니라, '결과 분석 단계(통계적 처리)'에서 제외하거나 보정하는 것이 일반적입니다.실무에서 이를 어떻게 바라보고 처리하는지 구체적으로 정리해 드립니다.
- 1. 왜 '테스트' 단계가 아닌 '결과 분석' 단계일까?
사전 예측의 불가능성: 실험을 시작하는 시점(사용자를 대조군과 실험군으로 분산하는 단계)에는 이 유저가 이번 실험 기간 동안 아웃라이어 급의 행동을 할지 안 할지 완벽히 예측하기 어렵습니다.모집단 왜곡 방지: 만약 서비스의 헤비 유저들을 테스트 대상(모집단)에서 원천 배제해 버리면, 실험 결과가 '전체 유저'를 대변하지 못하고 '라이트 유저'만을 대변하는 반쪽짜리 실험이 될 수 있습니다.따라서: 우선 모든 유저를 무작위로 분산하여 실험을 진행한 뒤, 데이터 분석(통계 검증) 단계에서 이들의 영향력을 발라내는 작업을 합니다. - 2. 구체적인 아웃라이어 고려 및 처리 방식AB테스트 결과 분석 시 아웃라이어로 인한 왜곡을 막기 위해 다음과 같은 기법들을 사용합니다.
① 데이터 정제 (Filtering / Truncation)질문하신 Box Plot(상자 수염 그림)이나 백분위수(Percentile) 기준이 실제로 여기서 사용됩니다.IQR 방식 (Box Plot 활용): 전체 데이터의 Q3(상위 25%)와 Q1(하위 25%)의 차이인 IQR(Q3 - Q1)을 구한 뒤, Q3 + 1.5 I*QR을 초과하는 극단적인 값을 아웃라이어로 규정하고 분석 데이터셋에서 통째로 제외(Drop)합니다.상위 N% 자르기 (Trimming): 매출 데이터의 경우, 매출 상위 1% 또는 0.5% 유저의 데이터를 기계적으로 제외하고 나머지 99%의 데이터로만 P-Value를 계산합니다.
② 지표의 전환 (평균 대신 '중앙값' 또는 '전환율' 사용)평균(Mean)은 아웃라이어에 취약하지만, 다른 지표들은 아웃라이어에 강합니다.ARPU(유저당 평균 매출) → 구매 전환율(Conversion Rate): 대형 고래 유저 한 명이 매출 평균을 오염시키는 것을 막기 위해, '돈을 얼마나 썼는가' 대신 '구매 버튼을 눌렀는가(원하는 액션을 했는가)'라는 이진(Binary) 지표로 바꾸어 분석합니다.중앙값(Median) 비교: 평균값 대신 데이터의 정중앙에 위치한 값을 비교 지표로 삼습니다.
③ 통계 알고리즘 및 윈저라이징 (Winsorizing)윈저라이징(Winsorizing): 아웃라이어 데이터를 지우는 대신, 상위 1%의 값을 상위 1% 경계선에 있는 값으로 강제로 변경(치환)하는 방법입니다. 데이터의 총 샘플 수는 유지하면서 극단적인 값의 영향력만 억제할 수 있습니다.비모수 검정 (Non-parametric Test): 데이터가 정규분포를 따르지 않고 아웃라이어가 많을 때는 T-Test 대신 데이터의 순위(Rank)를 기반으로 하는 맨-화이트니 U 검정(Mann-Whitney U Test) 등을 활용해 결과를 분석합니다.
3. 결과의 신뢰도를 확보하는 방법
- A/A Test: A/B 테스트를 본격적으로 하기 전, 양쪽 그룹 모두에 동일한 안(Variation)을 보여주는 테스트. 여기서 두 그룹 간 결과 차이가 없어야 트래픽이 편중되지 않았음을 검증할 수 있음.
- P-Value (유의확률): 실험 결과가 우연히 일어났을 확률. 일반적인 유의수준인 0.05보다 낮아야 실험 결과가 유의미하다고 판단함. 만약 P-Value가 너무 높다면 실험 기간을 늘려 샘플 수를 확보하는 것이 일반적인 해결책임.
- 궁금증: 기간을 늘린다고 되는 것인지?? 기간을 늘려 샘플을 추가하려고 한다는 건 p-hacking 아닌가?? 학문 아닌 실무에서 주로 사용하는 접근법인지?
- 제미나이 답변: 대기업에서 Sequential A/B Testing 도입했다고 함. 실시간으로 데이터를 열어보고 실험 기간을 연장하더라도, 통계 알고리즘이 p-value를 실시간으로 보정하여 '가짜 성공(제1종 오류)'에 속지 않도록 제어해 주는 고도화된 통계 모델
- 넷플릭스
- https://netflixtechblog.com/sequential-testing-keeps-the-world-streaming-netflix-part-2-counting-processes-da6805341642
https://netflixtechblog.com/sequential-a-b-testing-keeps-the-world-streaming-netflix-part-1-continuous-data-cba6c7ed49df - 옵티마이즈리: A/B 테스팅 솔루션인 여기서 엔진 자체를 순차적 검정 기반으로 교체함.
- https://www.optimizely.com/insights/blog/how-to-choose-the-right-stats-engine/
Optimizely Stats Engine Whitepape
4. 대표적인 A/B 테스팅 툴
- Optimizely: A/B 테스팅의 시초. 깊이 있는 통계 분석 기능과 모바일 앱 테스팅 환경을 잘 지원함.
- Google Optimize: Google Analytics 및 GA 태그 매니저와의 연동 및 통합성이 뛰어남.
- 테크 기업의 경우 커스텀의 한계를 극복하기 위해 자체적인 A/B 테스팅 플랫폼을 구축하여 사용하기도.
https://www.oracle.com/kr/cx/marketing/what-is-ab-testing/
A/B 및 다변량 테스트의 정의, 필요성, 방법
A/B 테스트 및 이와 유사한 다변량 테스트를 사용하면 고객의 이메일 마케팅 캠페인, 웹사이트, 모바일 앱에서 효과를 거두는 부분과 그렇지 않은 부분을 알 수 있습니다. 여기서는 잠재고객의
www.oracle.com
1. A/B 테스트란?
- 정의: 기존 안(A, Control)과 변형 안(B, Variant) 두 가지 콘텐츠를 무작위로 사용자에게 보여준 뒤, 미리 설정한 주요 측정지표(전환율, 클릭률 등)를 기반으로 어떤 버전이 더 우수한 성과를 내는지 검증하는 방법.
- 주요 테스트 대상:
- 웹사이트: 텍스트, 이미지, 색상, CTA(Call To Action) 버튼 등
- 이메일 마케팅: 이메일 제목, 본문 이미지, 발신자 주소 등
- 콘텐츠/알고리즘: 편집자 추천 콘텐츠 vs. 알고리즘 기반 추천 콘텐츠의 참여도 비교
- (A/B/N 테스트): 변수가 2개 이상(A, B, C, D...)인 경우를 의미.
2. A/B 테스트의 프로세스 (9단계)
성공적인 테스트를 위해서는 직관이 아닌 잘 정의된 데이터 기반의 프로세스가 필요.
- 성과 기준 측정 및 검토 (기존 데이터 분석)
- 성과 기준을 바탕으로 명확한 테스트 목표 결정
- 성과를 개선할 수 있는 가설 설정
- 테스트 대상 또는 위치 식별
- 테스트할 A, B 버전 생성
- QA 도구를 통한 설정 검증
- 테스트 실행 (통계적 유의도를 달성할 때까지)
- 웹 및 테스트 분석 도구로 결과 추적 및 평가
- 결론을 서비스에 적용하여 고객 경험(CX) 개선
3. 다변량 테스트 (Multivariate Testing, MVT)
- 정의: 단일 요소만 바꾸는 A/B 테스트와 달리, 웹페이지나 이메일 내의 여러 요소(이미지, 텍스트, 색상 등)를 동시에 변경하여 조합된 최적의 버전을 찾는 테스트.
- 특징:
- 하나의 페이지 안에서 여러 변수들이 서로 어떻게 상호작용하는지 파악할 수 있음.
- 요소가 많아질수록 조합의 수(예: 10개 요소를 조합하면 수백만 개)가 기하급수적으로 늘어남.
- 따라서 이를 감당할 수 있는 압도적으로 높은 트래픽(방문자 수)이 필수적임.
4. A/B 테스트 vs 다변량 테스트 한눈에 비교
| 비교 항목 | A/B 테스트 | 다변량 테스트 (MVT) |
| 테스트 변수 | 단일 요소 (또는 완전히 다른 두 페이지) | 한 페이지 내의 여러 요소들의 조합 |
| 적합한 상황 | 디자인의 큰 변화, 명확한 두 가설 비교 | 세부 요소들의 시너지 효과 검증 |
| 필요 트래픽 | 상대적으로 적음 (비교적 빠른 결론 가능) | 매우 높음 (조합 수가 많기 때문) |
| 장점 | 이해하기 쉽고 직관적임 | 요소 간의 상호작용(시너지) 분석 가능 |
- 궁금증: 완전히 다른 두 페이지에 대해 AB test하는 이유가 뭔가? 변인 많아서 다변량 분석해야 되는 거 아님?
- 제미나이 답변:
- 1. 완전히 다른 두 페이지를 A/B 테스트하는 이유 (Concept Testing)
여기서의 A/B 테스트는 '버튼 색상', '폰트' 같은 자잘한 요소의 비교가 아니라 "페이지의 방향성(컨셉) 자체를 통째로 바꾸는 테스트"입니다. 이때 마케터나 기획자의 목적은 "어떤 요소가 효과적이었나?"가 아니라, "우리 고객들은 [긴 설명형]과 [짧은 카드뉴스형] 중 어떤 '컨셉'에 더 지갑을 열까?"를 빠르게 검증하는 것입니다. - 2. 왜 이때 다변량 테스트(MVT)를 하지 않을까?
다변량 테스트의 핵심 목적은 "한 페이지 안에서 여러 요소들이 자아내는 최적의 조합(시너지)을 찾는 것"입니다. 완전히 다른 두 페이지를 두고 다변량 테스트를 할 수 없는 이유는 다음과 같습니다.
-비교 기준의 부재: 다변량 테스트를 하려면 기준이 되는 레이아웃 안에서 '이미지 A/B', '타이틀 문구 A/B', '버튼 색상 A/B'를 조합해야 합니다. 그런데 두 페이지가 완전히 다르면(예: 하나는 스크롤이 긴 페이지, 하나는 탭 구조의 페이지) 변수를 서로 매칭하여 조합을 만들 수가 없습니다.
-조합의 폭발과 트래픽 한계: 두 페이지의 모든 차이점(요소 10~20개)을 변수로 쪼개어 다변량 분석을 하려면 수백만 개의 조합이 생깁니다. Oracle의 A/B 테스트 가이드에서도 언급하듯, 10개 요소만 조합해도 350만 개 이상의 조합이 생겨 전 세계 급의 트래픽을 가진 서비스가 아니고서야 통계적 유의성을 확보하는 것이 불가능합니다.
5. 모바일 환경(iOS/Android)에서의 중요성
- 모바일 커머스 시장은 급격히 성장하고 있지만, 화면이 작아 장바구니 포기율이 데스크톱(73%)보다 모바일(87%)에서 훨씬 높음.
- 따라서 모바일 앱 환경에서의 UI/UX 최적화는 매출에 직결되며, 이를 위한 정교한 타겟팅과 데이터 분석이 수반되어야 함.
오늘의 인사이트, 느낀 점
- 트래픽 분산 방식 결정은 시스템과 유저 경험 사이에서 타협점을 찾는 과정이다. 유저 경험의 일관성이 중요한 UI 테스트는 사용자 분산을, 유저가 인지하기 어렵고 독립적인 노출이 중요한 추천 알고리즘은 노출 빈도 분산을 선택해야 한다.
- 역시 대기업들은 영리하다! 실무자들의 data peeking 막기 위해서 순차적 검정이라는 새로운 실험 플랫폼 알고리즘을 만들어냈다.
- 실무 가면 어차피 회사마다 기본 실험 세팅이 다 있을 것으로 예상됨. 다만 이 내용 알아두는 게 실험 결과가 이상하거나 평소와 다를 때 원인을 추론하는 데에는 도움될 것 같긴 하다.