머신러닝을 활용한 웹 최적화 - A/B 테스트, 메타휴리스틱, 슬롯머신 알고리즘에서 베이즈 최적화까지
이쓰카 슈헤이 지음, 김연수 옮김 / 한빛미디어 / 2021년 6월
평점 :
장바구니담기


사용자에게 어떤 콘텐츠를 보여줘야 할지 고민될 때 어떻게 해야 할까? 예전에는 내부 의사결정자들에게 보고를 하고 결정했었다. 하지만 이제는 실제 사용자 반응을 기반으로 웹사이트 최적화를 진행할 수 있다. 이러한 데이터 기반의 의사결정을 방법론인 그로스 해킹 마케팅이 보편화되면서 A/B테스트를 진행하는 경우가 많아졌다.
실력 있는 마케터라면 A/B테스트로 대표되는 웹 최적화 테스트 실험 환경을 잘 설계하고, 결과를 제대로 분석할 수 있어야 한다. 안 그러면 과학적 실험을 한다는 착각 하에 잘못된 의사결정을 내릴 수도 있다. 그런 의미에서 어려운 통계지식을 실무자 관점에서 쉽게 설명해 주는 책이 나와서 정말 반가웠다.
이 책의 저자 이쓰카 슈헤이는 통계의 기본도 모르던 웹 엔지니어였다. 하지만, 사용자에게 더 나은 경험을 제공하겠다는 목표로 A/B테스트를 하면서 수리적인 가설 검증 방법을 스스로 연구하면서 터득했다. 이렇게 비전공자가 실무를 진행하면서 익혔던 주요한 통계 개념을 정리해 줬다는 점에서 매우 실용적이다.
이 책의 주요 독자는 '통계학이나 머신러닝에 입문하고 싶은 웹엔지니어'와 '웹 마케팅을 담당하는 마케터'이다. 그밖에도 머신러닝을 실무적으로 응용하는 방법에 관심이 있거나, 사용자와의 상호작용 데이터를 해석하는 방법에 흥미가 있는 분들에게도 유익할 것이다.
책의 주요한 목차를 훑어보면 아래와 같다.
[챕터 1] A/B 테스트부터 시작하자: 베이즈 통계를 이용한 가설 검정 입문
- 베이즈 추론을 기반으로 의사결정하는 방법과 실험 설계의 기본 원칙을 설명한다.
[챕터 2] 확률적 프로그래밍: 컴퓨터의 도움을 받자
- 마르코프 연쇄 몬테카를로 알고리즘을 사용해서 프로그래밍을 중심으로 베이즈 추론을 하는 방법을 소개한다.
[챕터 3] 조합 테스트: 요소별로 분해해서 생각하자
- A/B테스트 전개 후 그 대책이 가지고 있는 몇 가지 조합 구조를 설명한다. 선형 모델을 사용해 적은 수의 데이터로도 효율적으로 가설 검정을 하는 방법을 소개한다.
[챕터 4] 메타 휴리스틱: 통계 모델을 사용하지 않는 최적화 방법
- 특정한 모델을 가정하지 않는 접근 방식일지라도 높은 효율로 탐색이 가능함을 확인하고, 동시에 사람과 컴퓨터가 대화하면서 최적의 답을 발견해나가는 대화형 최적화 방안을 제시한다.
[챕터 5] 슬롯머신 알고리즘: 테스트 중의 손실에도 대응하자
- A/B테스트가 끝난 후에 의사결정을 하는 것이 아니라, 실험을 진행하면서도 순차적으로 의사 결정을 하는 발상 전환의 다중 슬롯머신 문제와 해법을 제시한다.
[챕터 6] 조합 슬롯머신: 슬롯머신 알고리즘과 통계 모델의 만남
- 순차적인 의사결정을 내리는 선형 모델을 도입한 슬롯머신 문제를 다룬다. 이는 보다 빠른 최적화, 개인화로 확장될 수 있음을 설명한다.
[챕터 7] 베이즈 최적화: 연속 값의 솔루션 공간에 도전하자
- 선형 모델을 한층 유연한 모델인 가우스 과정으로 확장함으로써 보다 복잡한 문제에도 슬롯머신 알고리즘을 적용할 수 있음을 보여준다. 그 결과 메타 휴리스틱 해법으로 베이즈 최적화에 거는 기대를 설명한다.
[챕터 8] 앞으로의 웹 최적화
- 웹 최적화로 해결되지 않은 남아있는 과제들에 대해서 설명한다.
이 책의 특징은 기본 개념을 분절화하여 각각을 쉽게 이해시킨 다음, 그다음 개념을 하나씩 얹어가는 설명 방식을 취하고 있다. 그래서, 잘만 따라가면 개념을 이해하기가 수월하다.
이 중에서도 가장 큰 도움이 되었던 부분은 [챕터 6] 6.5 LinUCB 알고리즘에 대한 설명이었다. 최근에 모두의연구소 BRS(Bandit Recommendation System) Lab에서 LinUCB 알고리즘을 공부했지만 잘 이해되지 않았다. 그러나, 이 책의 개념 분절화 방식을 통해서 쉽게 이해할 수 있었다. 예를 들면, 기댓값이 나타내는 '유망함'에 분산이 나타내는 '불확실함'을 추가하면 선형 회귀 모델 상의 UCB 알고리즘, 즉 LinUCB 알고리즘을 구상할 수 있음을 쉽게 이해할 수 있게 되었다.
또한 각 챕터의 맨 앞장에 '마케팅 회의'라는 섹션을 두어서, 독자들의 흥미를 유도하고 있다. 지금 챕터에서 설명하고자 하는 주요 개념이 실무에서 어떤 경우에 활용할 수 있는지 구체적으로 설명해 주고 있다. 이런 점에서 실제로 업무를 하는 웹 엔지니어와 웹 마케터 입장에서는 벌어진 상황이 실제 상황과 유사하므로 몰입이 잘 될 것이다. 또한 이를 풀어나가는 과정도 친근하게 설명해 주고 있으므로 쉽게 따라가면서 이해도를 높일 수 있다.
가장 좋았던 부분은 [챕터 8] 8.1 단기적인 평가와 장기적인 평가 부분이었다. 현실에서 단기 지표와 장기 지표의 충돌은 자주 발생한다. 그러므로, 장기적인 지표 개선을 위해서 단기 지표를 희생한다는 결정을 하더라도 이를 통해 장기적인 지표가 개선된다는 예측을 할 수 있는지가 관건이다. 이렇게 항상 고민되는 단기 지표와 장기 지표의 충돌 문제와 이에 대한 해결 방안 제시는 정말 신선했다. 이 문제를 해결한 논문의 저자들은 과거 100개 이상의 실험 결과를 이용해 단기적으로 측정할 수 있는 지표로부터 장기적인 광고 클릭률을 예측하는 머신러닝 모델을 구축했다고 한다. 이 머신러닝 모델을 도입하면 단기적으로는 수익성이 낮아질지 모르나 장기적으로는 좋은 효과를 가진 대책을 선택할 수 있게 된다.
마지막으로 인상적이었던 부분은 [챕터 8] 8.1.1 반복 사용자를 고려한 최적화 부분이었다. A/B테스트 의사결정이 내려져서 웹 서비스의 인터페이스를 바꾸기로 결정할 때, 우리가 간과하기 쉬운 점이 있다. 바로 기존의 반복 사용자들이 지불해야 하는 새로움에 대한 학습 비용이다. 신규 사용자들에게는 이전에 학습된 것이 없기 때문에 결정이 쉽게 날 수 있지만, 기존의 반복 사용자들에게는 익숙해진 불편함을 버리고, 낯선 편리함을 채택해야 한다. 이 결정이 옳은 것일까? 이 부분에 대한 솔루션으로 웹 최적화를 강화 학습으로 보고, 기존 사용자가 가진 상태를 다루는 기법을 제안하고 있다. 정말 신박한 아이디어라고 생각되었다.
이 책을 통해서 기존에 A/B테스트를 진행하면서 내가 뭘 모르고 있는지도 모르고 어설프게 알고 있는 방식의 실험만 반복했었다는 것을 알게 되었다. 저자의 다양한 경험을 통해서 스스로 공부하고 정리한 내용을 통해서 제대로 체계를 잡을 수 있어서 많은 도움이 되었다. 앞으로 다양한 실험 설계를 통해서 웹 최적화를 제대로 해 보고 싶은 웹 엔지니어와 웹 마케터라면 이 책을 천천히 정독하고 실제 업무에 적용해 보기를 추천한다.



댓글(0) 먼댓글(0) 좋아요(0)
좋아요
북마크하기찜하기 thankstoThanksTo