Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
GunosyにおけるABテストの全容
Search
Sponsored
·
Ship Features Fearlessly
Turn features on and off without deploys. Used by thousands of Ruby developers.
→
ij_spitz
October 23, 2019
Technology
2.3k
3
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
GunosyにおけるABテストの全容
ij_spitz
October 23, 2019
More Decks by ij_spitz
See All by ij_spitz
プロダクト改善のためのデータ分析入門
ij_spitz
1
110
これからの強化学習_3.1_3.2
ij_spitz
0
130
海外スタートアップにおけるA/Bテスト基盤の紹介
ij_spitz
9
17k
GunosyにおけるABテスト
ij_spitz
1
490
fitbitではじめるオープンデータ
ij_spitz
0
180
食べログデータから見る東新宿と西早稲田のランチ事情
ij_spitz
0
400
Linuxとファイル
ij_spitz
0
110
紳士なおじさんYeomanに学ぶ異性を落とす3つのテクニック
ij_spitz
0
220
Supporter Opinion
ij_spitz
0
82
Other Decks in Technology
See All in Technology
自宅NWにISR4331を導入してみた話
okaits
0
110
【CEDEC2026】Creative Approaches to Localizing the Dialects and Unique Speech of Umamusume: Pretty Derby Characters in English
cygames
PRO
3
25k
修正PRを食べてレビュースキルが賢くなる:Claude Codeによる自己改善サイクル
yuyaumetsu
6
1.6k
まちスペース®とデジタルツインと「まちづくり」
hiro_ogi
0
130
FPGAが実現する遠方宇宙の高空間分解能天体撮影 -大型地上望遠鏡の視力を補正する「補償光学」とは?-
komei_mt
0
430
Service Connect 上のサービスに ECS Service の外側から到達できなかった話
ota1022
1
270
エンドユーザー視点で見る SansanのMeraki活用と内製自動化
sansantech
PRO
0
110
トヨタ⽣産⽅式(TPS)⼊⾨
recruitengineers
PRO
3
1k
今こそ聞きたいソフトウェア設計 ドメイン駆動設計再入門
masuda220
PRO
17
7.6k
35分でわかるEffective Platform Engineering
nwiizo
4
390
同じWAFが、攻撃の“形”は弾く── 正当な“形”の不正は通す
kuroneko13
0
240
制約理論(ToC)入門 2026版
recruitengineers
PRO
8
2.6k
Featured
See All Featured
What the history of the web can teach us about the future of AI
inesmontani
PRO
1
660
The Illustrated Children's Guide to Kubernetes
chrisshort
51
53k
Designing Dashboards & Data Visualisations in Web Apps
destraynor
232
55k
Reflections from 52 weeks, 52 projects
jeffersonlam
356
21k
How to make the Groovebox
asonas
2
2.3k
A better future with KSS
kneath
240
18k
Effective software design: The role of men in debugging patriarchy in IT @ Voxxed Days AMS
baasie
0
480
Building Applications with DynamoDB
mza
96
7.2k
Easily Structure & Communicate Ideas using Wireframe
afnizarnur
194
17k
Are puppies a ranking factor?
jonoalderson
1
3.8k
Everyday Curiosity
cassininazir
0
290
The Mindset for Success: Future Career Progression
greggifford
PRO
0
450
Transcript
株式会社 Gunosy GunosyTechLab BIチーム 石塚 淳 2019年10月23日 GunosyにおけるA/Bテストの全容
(C) Gunosy Inc. All Rights Reserved. PAGE | 2 ▪
石塚 淳 ▪ 前職ではデータ分析基盤を開発 ▪ 2016年2月に株式会社Gunosyに入社 – グノシー事業のデータ分析、プロダクト 改善を担当 – 新規プロダクトのPM – GunosyTechLab BIチームにて社内を 横断した分析 自己紹介
(C) Gunosy Inc. All Rights Reserved. PAGE | 3 株式会社Gunosy
▪ 事業内容 – 情報キュレーションサービスその他メディアの開発 及び運営 ▪ 提供サービス – グノシー – ニュースパス – LUCRA – グノスポ – オトクル 企業理念「情報を世界中の人に最適に届ける」
(C) Gunosy Inc. All Rights Reserved. PAGE | 4 ▪
なぜA/Bテストが必要なのか ▪ 仮説立案 – 仮説の枠組み – 仮説を出すためのヒント ▪ テスト計画 – 拡大について – 事前計画 – サンプルサイズの計算 ▪ 割り当てロジック ▪ 効果測定 – Slack通知 – グラフによる可視化 目次
(C) Gunosy Inc. All Rights Reserved. PAGE | 5 ▪
答えはユーザーが知っている – 我々は何が優れたアイデアかを判 断できない ▪ 仮説→検証→計測のループを回すことに よって、誰でも運用できる再現性のあるノ ウハウを蓄積できる なぜA/Bテストが必要なのか
(C) Gunosy Inc. All Rights Reserved. PAGE | 6 ▪
時事性や季節の変動によらず効果計 測ができる – ニュースアプリは特に時期性や季 節の影響を受ける ▪ 意図しない数値の低下、ユーザビリ ティの低下を防げる – インフラの変更 – アプリのリリースには段階的リ リースを実施 なぜA/Bテストが必要なのか
(C) Gunosy Inc. All Rights Reserved. PAGE | 7 ▪
価値仮説シートを利用 – LEAN UXの仮説ステートメントのようなもの – 仮説の考慮すべきポイントの担保、メンバー全員が仮説を提案できる – コンフルやGithubのIssueでテンプレートを用意 ▪ 特定の大きな課題に紐づく場合もあれば、他アプリや他社の施策をヒント にしたジャストアイデアの場合もある 仮説立案 仮説の枠組み
(C) Gunosy Inc. All Rights Reserved. PAGE | 8 ▪
施策を行うためのヒントを事前の分析から得る – 現状の把握だけではなく、仮説・検証・意思決定も含んだ分析が大切 ▪ 失敗から学ぶ – 前回のA/Bテストの知見を活かす – 重要な数値をモニタリングし、下がった原因を探る ▪ 他プロダクト事例 – 他プロダクトのA/Bテストが100%適用になった、撤退した – 他プロダクトのアップデート内容 – ニュースパス、ルクラ、オトクル からの輸入 ▪ 大切な数値と相関の大きな数値 – ある行動の回数が高いと、重要な数値も高くなる傾向がある 仮説立案 仮説を出すためのヒント
(C) Gunosy Inc. All Rights Reserved. PAGE | 9 ▪
A/Bテストは1%から開始して、100%まで段階的に引き上げていく – いきなり50%などの大きな割合で開始してしまうと、数値が大きく毀損 してしまう可能性があるため ▪ 割合ごとに見るべき数値と期間は異なる – 1%: 1 ~ 3日 • 大幅な数値低下やバグはないか – 5 ~ 10%: 7日 • クリック数などのKPI – 20 ~ 50%: 14 ~ 21日 • 継続率 – 99%: 長期間 • 長期の継続率やその他のKPI テスト計画 拡大について
(C) Gunosy Inc. All Rights Reserved. PAGE | 10 ▪
必要となるログ – 新しく追加で実装が必要なログはないか ▪ ウォッチするKPI – A/Bテストの割合に応じて適切なKPIを設計する ▪ 撤退条件、拡大条件 – 基本的に継続率を下げるような施策は撤退する – その他施策に応じて撤退条件、拡大条件を先に決めておく ▪ 期間 – ウォッチするKPIとサンプルサイズから各フェーズにおいて必要となる 日数を計算(後述) テスト計画 事前計画
(C) Gunosy Inc. All Rights Reserved. PAGE | 11 ▪
テストの成否を決定するために、既存アルゴリズムと比較し、KPIに統計 的に有意な差があるかを検出する ▪ 過去の登録ユーザ数やDAUから逆算して必要な日数を算出 – 効果量、有意水準、検出力を与える – 詳しくはブログで • https://data.gunosy.io/entry/ab-test-sample-size テスト計画 サンプルサイズの計算
(C) Gunosy Inc. All Rights Reserved. PAGE | 12 ▪
A/BテストのIDとユーザーのIDを使ってハッシュ値を生成、それを10進数 に直して100で割った余りでグルーピングしている ▪ 以前はユーザーIDを20で割った余りを使用して5%ずつにグルーピングし ていた – A/Bテスト同士の影響が重ならないようにグループを選ばないといけ ない – グループが昔のテストの影響を受けていて、A/Bを開始した時にすで に差が存在しているある場合がある 割り当てロジック
(C) Gunosy Inc. All Rights Reserved. PAGE | 13 割り当てロジック
(C) Gunosy Inc. All Rights Reserved. PAGE | 14 ▪
結果は日次でSlackの部屋に通知している – テスト対象のKPI – 比較対象のKPI – テスト対象KPI / 比較対象のKPI – p値 • RR, CTRのみ 効果測定 Slack通知
(C) Gunosy Inc. All Rights Reserved. PAGE | 15 ▪
RedashというBIツールを使用 – 各テストで共通して見るKPIはダッシュボード化 – テスト固有のKPIなどは手動でクエリを書く ▪ なぜSlack通知だけではダメか – テスト前からグループ間で差が生じている場合がある – 確認するためにテスト開始前後でのKPIの差分を見ている • A/Aテスト 効果測定 グラフによる可視化
(C) Gunosy Inc. All Rights Reserved. PAGE | 16 ▪
A/Bテストによってユーザーに価値のある施策、機能開発をしよう ▪ 仮説→検証→計測のループを回して、ノウハウ・知見を学習していく – 得られたノウハウやユーザー理解が資産になる ▪ 誰もが仮説を提案し、検証できる文化を作る まとめ
情報を世界中の人に最適に届ける
(C) Gunosy Inc. All Rights Reserved. PAGE | 18 ▪
A/Bテストのベストプラクティスと落とし穴 ~KDD2019 レポート~ – https://data.gunosy.io/entry/kdd2019-online-experiment ▪ より正しい意思決定のための統計的仮説検定とサンプルサイズ計算 – https://data.gunosy.io/entry/ab-test-sample-size ▪ A/Bテストの対象をいい感じに割り振る方法 – https://data.gunosy.io/entry/ab_testing_assignment ▪ Gunosyでの仮説検証 – https://tech.gunosy.io/entry/gunosy-testing ▪ Gunosy MLチームでのA/Bテストの設計と運用 – https://data.gunosy.io/entry/ml-ab-management リンク集