データ分析エンジニアのブログ

日常のことからプログラミングや機械学習まで@六本木

シリコンバレーのIT企業が利用しているA/Bテスト手法まとめ

いま注目すべきシリコンバレーの有名なIT企業は新規のデザインや機能が有効かどうかを検証するためにA/Bテストを行っています。 その一方で、日本の企業も含め、A/Bテストを本番環境で導入している企業は非常に少ないです。 加えて、日本で言われているA/Bテストと海外で言われているA/Bテストは少々異なるものだと感じています。 日本のA/Bテストはフォームの最適化やデザインの修正にとどまっている一方で、海外のA/Bテストはプロダクト開発のサイクルの一部分となっています。

プロダクト開発のサイクルの一部としてA/Bテストを取り入れるためには、大量のテストを定常的に回していく仕組みが必要となってきます。 そこでデータドリブンであると言われているようなシリコンバレーのIT企業は自社でA/Bテストの基盤を作成しています。 今回は社内A/Bテスト勉強会で発表するために、シリコンバレーの有名IT企業がどのような手法でABテストを実施しているのかをまとめてみました。 ちなみに対象は以下の4社で、参考にしたのは各企業のブログがほとんどです。

発表したスライド

各企業のA/Bテスト基盤における主な機能

シリコンバレーの各IT企業のA/Bテスト基盤について調べた感想は、部分部分で違った機能を提供してはいるものの、コアとなるような主要な機能はどこもちゃんと取り入れているなという印象でした。

下の表が機能一覧と導入している企業についてまとめたものです。これらの機能がどういったものなのかを簡単に説明していこうと思います。

Metrics You FollowCustom MetricsはLinkedinでしか用いられていない機能なのでここでの説明は割愛します。気になる人はスライドをチェックしてみてください。

f:id:ishitsukajun:20160410230057p:plain

  • 自動集計
    • これは言わずもがなだと思います。手動での集計では手間がかかるため、どの企業もダッシュボードで数値を確認できるようになっていました。
  • コホート
    • コホートはダッシュボード上で確認できる指標を国や性別、OSなどの属性ごとに見ることができる機能です。数値が変化していたときにそれがどの属性やグループで起こっているものなのかを簡単に確認することができます。
  • Group Validation
    • Group Validationはテスト対象と比較対象のグループの割り振りが均等、もしくは意図した通りになっているかどうかをチェックするための機能です。裏側の仕組みにはカイ二乗検定が使用されています。
  • t検定
    • t検定も全てのA/Bテスト基盤に用いられていました。テスト対象と比較対象の指標の値とp値が時系列で確認できるようになっており、p値が0.05以下になると棒グラフのバーが色付けされるようになっているシステムもあります。
  • テスト期間
    • 検出力 (statistical power) が80%になるまでの期間を教えてくれる機能です。A/Bテストの終了までの期間をいつまでにするかの目安として役に立ちます。
  • A/Aテスト
    • A/Aテストはテスト対象と比較対象に全く同じパターンを出す手法です。同じものを見せることでどのくらい値がばらつくのか、誤差の範囲なのかを確認することができます。また、AirbnbではGroup Validationのようにテストの割り振りが上手くいっているかのチェックにもA/Aテストを使用しています。

最後に

今回は社内A/Bテスト勉強会で発表させていただいた内容をブログにさせてもらいました。

この発表は社内向けのものとなってしまったのですが、社内外問わずにA/Bテストの知見を共有したり、みんなでA/Bテストの闇(落とし穴)を共有したりできる場を作れたらいいなと思っているので、勉強会の開催やA/Bテストに興味があれば@ij_spitzまでご連絡下さい!