見出し画像

ABテストと、アップリフトモデリングによる施策の精緻化

 こんにちは。エムスリーデータ分析グループの平です。私はm3.comプラットフォームのさらなる改善を目指した分析を担当しています。新たな施策の検討・実施に欠かせないのがABテストです。エムスリーにおけるABテスト方法と、アップリフトモデリングによるさらなる精緻化について、ご紹介します。


ABテストにおけるデータ分析グループの役割

 現在、エムスリーでは数多くのABテストを実施しています。多くの施策をスピーディーにテストできる環境が、エムスリーの強みとなっています。データ分析グループはテスト設計・効果検証に関わっています。元々は各テストについて、それぞれ分析を行っていました。しかし、多くの施策に対し、毎回アドホックで分析を行うのは時間がかかってしまいます。そこで、データ分析グループではABテストツールを整備し、事業担当者自ら分析を実施できる環境を整えています。

以下の流れでテスト設計から効果検証まで実施しています

テスト設計

 ユーザーをランダムに2群に分けます。この際、偶然、ユーザー属性が偏っていないことを確認しています。偏っている場合は、別の分け方を採用します。また、各施策のテスト群は、施策IDと紐づいており、同じテスト群を他の施策でも採用しないような仕組みになっています。このようなテスト設計を事業担当者自ら実施できるような環境をデータ分析グループは整備しています。

効果検証

 テスト期間終了後、効果検証を行います。テスト期間中のデータを集計し、評価指標について、テスト群/コントロール群で比較をします。有意な施策効果が認められた場合、施策をユーザー全体に展開します。こちらのプロセスに関しても、担当者自ら実施できるようツールを提供し、素早く意思決定ができるようにしています。特殊な施策に関しては、データ分析グループで対応する場合もありますが、多くの施策はツールで対応できている状況です。
 このような分析ツールを提供することで、データサイエンティストは、より複雑で難易度の高い分析に集中することができています

アップリフトモデリングによるさらなる精緻化

きっかけ


 これまでは主にユーザー全体やセグメント単位で、施策の展開可否を決定していました。そんな中、ある施策の検証結果についてプロダクトマネージャーと議論するなかで、「セグメントより、さらに精緻なターゲティングができないか?」というアイデアが生まれました。ある施策では特定のユーザーセグメントに絞って全面展開を進めようとしていました。しかし、セグメント単位で施策の展開を決めるのは、粒度が荒すぎるのでは?という意見が出ました。確かに同一セグメントでも、ユーザー単位で施策効果は異なるはずです。そこで個別ユーザー単位で施策効果を評価し、施策の展開可否を決めることを検討し始めました。

アップリフトモデリングによる精緻なターゲティング


 そこで、ユーザー単位での最適化を目指し、「アップリフトモデリング」を用いたターゲティングの検討を進めています。アップリフトモデリングでは、ユーザーごとに施策効果を予測します。施策効果とは、「施策を当てたときの売上」ー「施策を当てなかったときの売上」のようなかたちで表現されます。ユーザー全体での施策効果は、テスト群/コントロール群に分けることで測定できます。しかし、1人のユーザーに対し、「施策を当てたとき」・「当てなかったとき」を同時に用意することはできません。そこでデータ分析を活用し、この課題を解決します。

 アップリフトモデリングでは、予測モデルを作成することで、ユーザー単位での効果を推定します。アップリフトモデリングには、s-learnerやt-leanerなど様々な手法があります。現在、t-learnerという手法を採用し、テストを進めています。t-learnerでは、過去のABテストの結果をもとに2つのモデルを用意します。1つはコントロール群のデータをもとに学習したモデル・もう一方はテスト群のデータをもとに学習したモデルです。それぞれユーザー属性や過去の行動から、ユーザー行動を予測します。コントロール群ベースのモデルは、施策を当てなかったときのユーザー行動を予測し、テスト群ベースのモデルは施策を当てたときの予測をします。このように現実には存在しないもう一方のパターンでの行動を予測することが可能になります。そして、2つのモデルの予測結果の差分を取ることで、ユーザー個別に施策効果を予測することが可能になります。(参考記事:DataRobotを用いたアップリフトモデリング

本来、観測不可能なパターンの予測を行う

 そして施策効果がプラスと予測されたユーザーに対し、施策を展開することで、施策効果の最大化(≒ユーザー体験の最適化)を目指します。結果、ユーザーの好み・行動を考慮した、より便利なサイトを実現することができます。

 実際に予測モデルを開発し、改善効果を推計したところ、非常に大きなポテンシャルがあることが分かりました。現在、作成した予測モデルを用い、実際にテストを進めている段階です。


さらなる進化を目指して

「アップリフトモデリング」によるターゲティングに加え、さらなる改革を目指しています。

効果検証の自動化

 現在、ABテストにおける効果検証の自動化を検討しています。プロダクトマネージャーがテスト設定を入力すると、テスト終了のタイミングで自動で効果検証が実施され、メールやslackで通知が行くような仕組みです。このように検証方法を自動化することで、より良い方法を、短時間で、効果検証を実施できるようになります!

ABテストを知見として蓄積し、共有する

 ABテストの結果は各事業担当者ごとに管理・蓄積されています。一方で、各テストの結果を事業横断で蓄積し、誰もが閲覧できる状態にすることは非常に価値があります。共通化・自動化に加えて、同一のフォーマットで自動的に各事業のテスト結果を蓄積することを目指しています。過去の知見が新たな発想に繋がることを期待しています。

さいごに

 エムスリーの高速PDCAを支えるABテストに関してご紹介させていただきました。プロダクトマネージャーの方のデータ分析への理解も深く、楽しく議論を進められています。意思決定の質・スピードに直結するABテストに関しては、今後も継続的に改善を進めていきます!

 データ分析グループでは、新卒・中途ともにデータサイエンティストを募集中です!カジュアル面談やインターンシップも随時実施していますので、興味を持っていただけた方は下記リンクから是非ご応募下さい!