A/B test and MAB
A/B Test
A/B 테스트는 두 가지 버전의 웹 페이지 또는 앱을 비교하여 어느 버전이 더 효과적인지 판별하는 실험적인 방법이다. 보통 사용자 경험, 구매율, 클릭율 등의 지표를 비교하여 어떤 버전이 더 성과가 좋은지를 알아낸다. A/B 테스트를 통해 사전에 검증을 거치고 최적의 디자인이나 기능을 적용하여 사용자들에게 더 나은 경험을 제공할 수 있다.
예를 들면,
다음과 같은 두 가지 시안의 배너를 각 접속자에게 무작위로 노출하여 더 높은 클릭률(Click-Thorugh-Rate, CTR)을 보이는 배너를 채택한다.
이 차이가 통계적으로 유의미한 차인인지는 Z-test나 T-test를 통해 검정한다.
A/B Test의 주제와 절차
- 웹사이트 내비게이션 배치와 문구 등 UI/UX 최적화
- 추천 콘텐츠 노출 리스트 최적화
- 상품 종류와, 가격, 노출 시이즈등 최적화
- 서비스 가입 경로 시나리오 최적호K어느 시점에 가입을 유도할 것인가?)
- 게임 아이템 드롭률 최적화
- 배녀/버튼의 위치, 사이즈, 색상 폰트 문구 등 최적화
- 검색엔진의 키워드 검색 결과 최적화

A/B Test의 주의사항과 단점
주의사항
1. 무작위 추출시 편향되지 않는 표본그룹 필요
- A 집단과 B 집단 간에는 콘텐츠 이외에는 차이가 없어야한다.
2. 일반적으로 1,000명 이상의 표본으로 테스트를 하는 것이 좋음
3. 각 집단의 반응률은 시간대, 요일 등에 차이가 있을 수 있으므로 되도록 24시간 이상 Test 진행
4. 기획 시, 사용자가 한 가지 변화만 경험하도록 설계해야 함.
- 폰트, 사이즈 등 여러 변화를 동시에 줄 경우, 효과 측정이 어려움
단점
1. 테스트 가능한 경우의 수는 매우 다양하기 때문에 최적의 조건을 찾을 때까지 오랜 시간과 비용이 필요하다는 것.
- 이에 따라 잠재적 손실 비용이 커져감(인원 비효율적 과다 배치 등)
2. 트렌드는 계속 변함
- 저번 달 까지 좋았던 내용이 현재와서 효과가 좋지 않을 수 있음.
--> A/B Test는 기회비용이 크고, 빠른 트렌드 변화에 둔감
이러한 단점을 보안한 방법이 MAB
MAB
여러 개의 손잡이가 있는 슬롯 머신을 뜻한다. 이 개념은 강화학습에서 많이 사용되며, 한정된 리소스 내에서 최대한의 보상을 받기 위한 전략을 학습하는 문제를 다룬다. 예를 들어, 여러 개의 선택지 중에서 최적의 선택을 하기 위해 시행착오를 거치는 과정을 최소화하면서 최대의 보상을 얻는 방법을 학습하는 것이다. MAB는 이러한 문제를 해결하는 알고리즘을 의미하기도 한다.
Exploration과 Exploitation
Exploration: 최적의 보상을 얻을 수 있는 방안을 찾기 위해 계속해서 실험하는 것
Exploitation: 선택한 최적의 방안을 계속 실행하여 이익을 최대화하는 것
Exploration과 exploitation은 trade-off 관계이기 때문에, 이 조합을 최적화하여 최대의 이익을 얻는 것이 MAB의 목적

ε-greedy Algorithm
일정 확률로 대안을 무작위로 탐색하는 알고리즘
Greedy Algorithm
Greedy Algorithm은 미래를 생각하지 않고 각 단계에서 가장 최선의 선택을 하는 기법이다. 즉, 각 단계에서 최선의 선택을 한 것이 전체적으로도 최선이길 바라는 알고리즘이다. 물론 당연히 미래의 가치를 고려하지 않기 때문에 항상 최선의 결과를 반환하지는 않는다.
Exploration이 부족했던 Greedy Algorithm을 개선시킨 것이 ε-greedy Algorithm. 일정한 확률로 랜덤으로 선택함.
즉, 1-ε의 확률로 현재까지의 exploration했던 대안 중 가장 성과가 좋은 대안을 선택. 나머지 ε 값의 확률로 무작위 선택.
(단, 0<ε<1)
만약, ε=0.2 라면 80%확률로 나온 결과 중 가장 성과가 좋았던 대안을 선택해 실행.

UCB
대안의 결과가 불확실한 것을 우선순위로 탐색하는 알고리즘.
위의 ε-greedy 알고리즘을 보완하였다. ε-greedy 방식은 ε 값의 확률로 무작위로 대안을 선택하기 때문에 효과적이지 못한 단점이 있다. UCB는 대안 탐색 방식이 보다 합리적이다. 대안들 중에서도 최적의 수익을 낼 가능성이 더 높은,즉 불확실성이 강한 대안을 우선적으로 선택한다.

하지만 ε-greedy 보다 우수한 성능을 보이긴 하지만, 처음에 모든 대안들을 한 번씩 exploration을 해야만 하고, 매 시점마다 불확실성 수치를 계산해 줘야만 하는 단점이 존재한다.
Thompson sampling
대안의 결과에 대한 베타 분포를 계산하여 샘플링한 값 중 가장높은 대안을 탐색하는 알고리즘.
넷플릭스나 구글 애널리틱스에서 사용하는 알고리즘으로 최근 가장 좋은 성능을 보여 많이 사용된다. UCB는 예측한 그대로의 값을 통해 죄적의 수익률을 선택하는 결정론적 알고리즘이지만, 톰슨 샘플링은 Beta Distribution을 사용하여 확률적으로 수익을 추정하고 선택하는 확률적 알고리즘이다.
베타 분포는 0과 1 사이의 값을 가지는 확률 분포로, 0과 1을 포함한 구간에서 모든 값이 나올 수 있다. 이러한 분포를 통해 사전 수익률을 다시 추정한다. 그렇기 때문에 exploration을 적게 한 상태에서는 특정 대안이 수익률이 높게 나오더라도 베타 분포에 의해 추정되어 다른 대안을 선택할 수 있는 여지가 생긴다. 그리고 exploration 횟수가 많아질수록 베타 분포의 첨도가 높아져 최적의 대안을 지속적으로 선택하게 된다.
MAB의 활용분야
추천 시스템 모델을 예로들면, 일반적인 앙상블 방식은 대부분 태스트 데이터의 정확도를 가지고 모댈 결과를 가중 합 하여 사용한다. MAB를 적용하면 사용자의 실제 반응 정보를 바로 반영하여 실제 반응율이 가장 좋은 모델을 적용한 아이템 추천을 하여 반응률을 극대화할수있다.

유의확률의 함정
p값이 0.05이하로 나오면 통계적으로 유의하다고 판단하는데 과연 정말 절대적으로 확실한 기준값일까?
p값은 표본의 크기가 커지면 점점 0으로 수렴하게 되는 특성이 있다. 표본의 크기가 커지면 표본 오차가 작아지고, 결과적으로 p값도 작아지게 되는 것이다.
과연 기부자 집단의 평균 연소득과 비기부자 집단의 평균 연소득이 실질적으로 차이가 있다고 할 수 있을까?
또한 실제로 많은 기존 연구들에서도 p값이 0.05 수준 안에 들어왔음에도 동일한 조건에서 반복검증결과 처음과 다른 결과가 나오기도 하였다. 이러한 재현성 위기에 따라, 일각에선 p값을 전면 금지하자는 주장도 나왔으며, 기준값을 0.005로 낮추자는 목소리도 나오고 있다.
분석가의 주관적 판단과 스토리텔링
AI와 딥러닝 등을 통해 고도로 복잡한 계산을 하여 뛰어난 결과를 얻어낼 수 있어도 결국엔 올바른 데이터를 선택하고 결론을 이끌어 내려면 사람의 지식과 상식, 그리고 창의성이 필요하다. 왜냐하면 데이터에서는 나타나지 않는 사람들의 심리적 요소가 있기 때문이다.
다음 그림은 어느 자동차 기업에서 멕시코 시장 점유율 확대를 위해 차종별 주요 타깃 고객을 정의하기 위한 자료이다. 그림을 보면 차종 C의 주 구매층은 50,60대 남성이었다. 하지만 C차종의 주 타겟층은 20~30대 여성층을 겨냥한 차종이었고, 실제로도 C 차종의 프로모션 반응이나 문의 기록 등에서는 20대가 높은 비중을 보였었다. 그래서 멕시코의 자동차 구입 문화를 알아본 결과, 보통 첫 차를 구입히는 시기에 부모나 할아버지가 자식이나 손자, 손녀의 자동차를 대신 구입해 주는 문화가 있었던 것이다.
이와 같은 사례같이 단순 통계적 수치 외에 분석가의 주관적 판단이 실제 분석 프로젝트에서 매우 중요하게 작용이 된다.
분석가의 올바른 주관적 판단을 위한 필수 요소
- 해당 분야의 풍부한 도메인 지식
- 통계적 지식을 기반으로 탐색적 데이터 분석(EDA)과 전처리
- 적극적인 커뮤니케이션과 데이터, 모델 검증
분석가의 스토리텔링
아무리 뛰어난 분석이어도 듣는 사람이 필요성을 느끼지 못하면 소용이 없다. 따라서 왜 이 분석 프로젝트가 필요한지 듣는 사람으로 하여금 흥미를 불러 일으켜야 한다.
스토리텔링을 할 때 주의할 점은 무미건조한 수식이나 복잡한 표는 최소화 해야 한다. 간혹 자신의 전문성을 어필하기 위해 필요 이상으로 어려운 용어나 수식 등을 나열히는 경우가 있다. 하지만 이는 듣는 이 로 하여금 흥미를 떨어뜨릴 뿐 아니라 이야기의 본질을 흐리게 한다.

스토리 텔링 후, 전체적인 내용을 한 문장으로 만들 수 있어야 한다. 일종의 로그라인(Log line)으로, 전체 스토리가 올바르게 구성됐는지 확인히는 가장 간단한 방법이다. 로그라인은 할리우드의 영화 스토리 시장에서 쓰이는 용어다. 작가가 자신의 시나리오를 소개하기 위해 작성하는 한 줄의 스토리 요약이다. 주어부에서 서론의 문제(위기)를 표현하고, 술어부에서 본론과 결론을 축약하여 말한다. 예를 들면 다음과 같다.
“5%의 불량률로 연간 100억 원의 손실이 발생하는 A 제품의 공정을, 센서 분석을 통해 개선하여 불량률 1%로 90억 원의 비용을 절감했다"
주어부에서 현재의 문제를 명확히 인지하고 술어부에서 어떻게 해결이 됐는지 알 수 있게 표현한 것이다. 이처럼 데이터 분석의 스토리텔링은 공감할 수 있는 문제를 어떻게 해결했는가를 핵심으로 이뤄진다. 데이터 분석가의 업무는데이터 수집, 가공, 분석뿐만 아니라 효과적인 결과 전달 과정까지 이뤄져야 비로소 완성되는 것이다.
'Etc > TAVE' 카테고리의 다른 글
Time Series analysis (0) | 2023.04.08 |
---|---|
Lec. 6-2: Softmax classifier 의 cost함수 (0) | 2023.03.26 |
Lec. 6-1 - Softmax Regression (0) | 2023.03.26 |
Lec. 7-2 Learning and test data sets (0) | 2023.03.25 |
Lab. 7-2 Learning and test data sets (0) | 2023.03.25 |