온라인 현장 실험 설계와 배포를 위한 PlanOut 언어와 관리 프레임워크

PlanOut은 실험 설계를 애플리케이션 로직과 분리하는 DSL로, A/B 테스트부터 복합 요인 설계, 다중 및 중첩 실험 단위까지 지원한다. 논문은 언어 설계, 구현 방식, 그리고 네임스페이스 기반 실험 관리 시스템을 소개하며, 페이스북에서 수행한 두 대규모 현장 실험 사례를 통해 실용성을 입증한다.

저자: Eytan Bakshy, Dean Eckles, Michael S. Bernstein

온라인 현장 실험 설계와 배포를 위한 PlanOut 언어와 관리 프레임워크
본 논문은 인터넷 서비스에서 흔히 사용되는 온라인 현장 실험을 보다 과학적이고 일반화 가능한 지식 생산 도구로 전환하기 위해 필요한 설계·배포·분석 인프라를 제안한다. 기존의 A/B 테스트는 두 가지 변형을 무작위로 할당해 단순히 “어떤 것이 더 좋은가”를 판단하는 데 초점이 맞춰져 있다. 그러나 제품 전략이나 사용자 행동 메커니즘을 이해하려면 복합 요인 설계, 조건부 할당, 다중 실험 단위 등 보다 정교한 실험이 요구된다. 현재 이러한 고급 실험을 지원하는 도구는 부족하고, 실험 로직이 애플리케이션 코드에 섞여 있어 유지보수와 오류 발생 위험이 크다. 이를 해결하기 위해 저자들은 **PlanOut**이라는 도메인‑특화 언어(DSL)를 개발하였다. PlanOut의 핵심 아이디어는 **모든 서비스 요소를 파라미터화하고, 실험은 파라미터에 값을 할당하는 스크립트**로 기술한다는 것이다. 파라미터는 UI 색상, 버튼 텍스트, 알고리즘 선택 등 어떤 형태든 될 수 있다. 실험자는 `uniformChoice`, `weightedChoice`, `bernoulliTrial` 같은 기본 할당 연산자를 조합해 **단순 A/B 테스트**, **완전 요인 설계**, **조건부 할당**, **다중·중첩 단위 실험**을 간결히 표현한다. 예를 들어, `collapse_story = bernoulliTrial(p=0.05, unit=

원본 논문

고화질 논문을 불러오는 중입니다...

댓글 및 학술 토론

Loading comments...

의견 남기기