A/Bテストの進化

http://developers.lyst.com/data/2014/05/10/bayesian-ab-testing/

2 comments | 1 point | by WazanovaNews 3年弱前 edited


Jshiike 3年弱前 edited | ▲upvoteする | link

Airbnb: 最も利用されている機能がベストだとは限らない」を紹介した際に、疑問として残っていたポイントについて、その後フォローアップの情報になるブログがいくつか続いています。

まずは、Airbnbのブログで、信頼性を表すP値が5%以内では安定せず、かつ中期的な予約率改善率の計測でも効果はニュートラルと出た(計測結果のグラフ)価格帯スライダーバーを、最終的には変更すると判断をしたのは、予想とおり「高い価格帯を検索して予約をするユーザがいたから」、つまり総手数料売上があがるという別のKPIを考慮しての判断でした。

また、Airbnbの場合は、「個人オーナーへの宿泊申込 -> 了解 -> ユーザの予約」というコミュニケーションを挟むため、予約率の変化を判断するには一定の日数が必要。そこで、P値を適正と判断する閾値は、A/Bテスト開始から短い期間では厳しくみているとのこと。実際のP値閾値のテーブルはこちら

依然、はっきりしないのは、P値を信頼性の指標としているが、P値が期待する範囲で安定しないからといって、全てのA/Bテストを棄却しているわではなさそう。じゃあ何のためにP値を使っているのかというところがすっきりしません。「色んな数値とか周辺状況を勘案して文脈で判断すべき。」ということを言っていて、それはそうだと思うのですが、そうすると担当する人がセンスあるかどうかで結論がかなり左右される職人技ということになりかねません。本当にそうなのか?

Evan Millerのブログには、「ベイジアンデザインであれば、どのタイミングでもテストを終了でき、かつ適正な推論を取得できる。ウェブのリアルタイム性を考慮すると、ベイジアンデザインがこれから進むべき道。」とあります。

Chris Stucchioのブログによると、

If you read the mathematical details, you’ll see that the computations involved in the Bayesian A/B test require evaluating a 2-dimensional numerical integral. Using a 1024x1024 computational grid, that’s over 1 million data points on which a computation needs to be run.

とありますので、現在は問題ないですが、かつては計算コストが高かったのでポピュラーな手法になれなかったとのこと。

Chrisが実際にニュースサイトのメールの最適化に利用したPythonのスクリプトが紹介されています。

また、Bayesian A/B Test Calculatorを提供しているLystのブログによると、標準のKPI値と最大ありそうな改善数値を決めて、後はシミュレーションしていく仕組みのようですから、結果も直感的にわかりやすそうです。

今後はトレンドとしては、ベイジアンの採用に移行していくのでしょうか。

また、以下がその他でA/Bテストにおいて参考になりそうなツールです。


大手からオープンソースとして提供されているA/Bのテストフレームワーク

適正なサンプル数を計算してくれる Sample Size Calculator


#airbnb

Jshiike 3年弱前 | ▲upvoteする | link

http://nerds.airbnb.com/experiment-reporting-framework/

昨日のAirbnbのブログに、A/Bテスト結果の内訳が表示されたダッシュボードが掲載されてました。

これによると、P値が満足に得られた内訳データを、結果が良いもの(green)と悪いもの(red)に分類し、判断しているようです。つまり、内訳データの中でP値が閾値を超えるものはあまり考慮に入れずに、ちょっと歯抜け状態でも信頼できるものを中心に結論づけようとしているみたいですね。

Back