Upgrade to Pro — share decks privately, control downloads, hide ads and more …

ABEMAのレコメンドにおける基盤とA_Bテスト

CyberAgent
September 21, 2022

 ABEMAのレコメンドにおける基盤とA_Bテスト

CyberAgent

September 21, 2022
Tweet

More Decks by CyberAgent

Other Decks in Technology

Transcript

  1. AbemaTV, Inc. All Rights Reserved AbemaTV, Inc. All Rights Reserved

    1 ABEMAのレコメンドにお ける基盤とA/Bテスト 2022 August Tatsuki Yamaguchi
  2. AbemaTV, Inc. All Rights Reserved 自己紹介 2 山口 達輝(やまぐち たつき)

    • 2020年中途入社 • 所属:Abema Data Center(ADC) 推薦チーム • 得意分野:レコメンド・時系列解析・リモートセンシング • 業務概要:動画レコメンドシステムの開発、AB検証 • 趣味:eスポーツ・車/バイク・自作PC
  3. AbemaTV, Inc. All Rights Reserved 3 INDEX • ABEMAのレコメンド ◦

    活用シーン ◦ 目指していること ◦ どんなことをやっているのか • 基盤 ◦ 基盤への要求 ◦ ABEMAレコメンド基盤 Yatagarasu ▪ 全体観 ▪ 推論フロー ▪ メリットとデメリット • A/Bテスト ◦ A/Bテストの種類 ◦ A/Bテストの規格化 ◦ e.g. モジュールリランク導入 ◦ 今後の展望
  4. AbemaTV, Inc. All Rights Reserved 目指していること 6 ユーザとコンテンツの素敵なマッチングを提供する ホーム画面 コンテンツ

    将棋を選んだあなたへ アニメランキング モジュール 候補生成 視聴画面 デモグラ:男性20代 嗜好:アニメ 最近見たもの:将棋 デモグラ:女性10代 嗜好:恋愛リアリティ 最近見たもの:バラエティ デモグラ:男性30代 嗜好:ニュース 最近見たもの:将棋 リランク リランク 提供
  5. AbemaTV, Inc. All Rights Reserved どんなことをやっているのか 7 効果検証 システム ・システムリビルド

     ・クラウド移行  ・複数同時A/Bテスト環境の整備 ・レコメンド情報のロギング ・A/Bドリブンな分析・開発フローの構築 ・プロダクトと推薦サービスのシナジー向上  ・オフライン評価手法の改良  ・ゴールメトリックの改良 ・ユーザジャンル表現 ・視聴習慣表現 ・遷移予測(有料転換率等) ユーザ コンテンツ ・コンテンツジャンル表現 ・Bメタ情報活用 ・運用連携アノテーション ・能動的評価の収集・活用 推薦候補 ・コンテンツクラスタリング ・メタ活用による候補生成 ・ドメイン知識による候補生成 ・ルールベース制御 ・推薦理由の表示 枠生成 ・目的変数の最適化 ・アルゴリズムの最適化 ・ルールベース制御 ・探索的配信 面生成 ・目的変数の最適化 ・アルゴリズムの最適化 ・ルールベース制御 ・探索的配信 ①基盤技術 ②データ表現技術 ③推薦技術 特徴量
  6. AbemaTV, Inc. All Rights Reserved 基盤への要求 9 開発・サービングにおける要件 ビジネスにおける要件 •

    多様な活用シーン ◦ 視聴履歴からのおすすめ ◦ アンケート結果からのおすすめ ◦ ランキング etc… • ルールベース制御 ◦ ユーザセグメント単位の配信設定 ◦ レーティングコンテンツの露出 etc… • ロジックの共通利用 • 多様な推論環境への対応 ◦ 言語(Python/Java/…) ◦ ライブラリ(FastAPI/Tensorflow Serving/…) • レイテンシ • スループット • 可用性 複雑なサービス構造への対応 開発効率とパフォーマンスの両立
  7. AbemaTV, Inc. All Rights Reserved ABEMAレコメンド基盤 Yatagarasu 10 全体観 •

    クラウドの利用 ◦ スパイク的に増加するリクエストへの対応 (e.g. W杯) ◦ 学習・推論環境毎のリソース最適化 ◦ マネージドサービスの恩恵 ▪ バッチタスク実行→Composer ▪ モニタリング→Trace, Logging, Profiler ▪ etc… • Pythonの利用 ◦ 昨今のML/DSのスキリングに合わせ開発効率を 向上
  8. AbemaTV, Inc. All Rights Reserved ABEMAレコメンド基盤 Yatagarasu 11 推論フロー ABEMA

    Server Yatagarasu Proxy Service : : Candidate Generator Reranker Client X Client Y Proxy Yatagarasu service A Yatagarasu service B Microservices : いわゆる直列マイクロサービス×並列All in One ≈ 並列 ≈ 直列
  9. AbemaTV, Inc. All Rights Reserved ABEMAレコメンド基盤 Yatagarasu 12 推論フロー ABEMA

    Server Yatagarasu Proxy Service : : Candidate Generator Reranker Client X Client Y Proxy Yatagarasu service A Yatagarasu service B Microservices : 多様な活用シーンへの対応をマイクロサービスの組み 合わせ(Yatagarasu Service)で表現し並列に実行
  10. AbemaTV, Inc. All Rights Reserved ABEMAレコメンド基盤 Yatagarasu 13 推論フロー ABEMA

    Server Yatagarasu Proxy Service : : Candidate Generator Reranker Client X Client Y Proxy Yatagarasu service A Yatagarasu service B Microservices : Yatagarasu serviceは共通フォーマットで クライアントを直列に呼び出し、処理を組み立てる
  11. AbemaTV, Inc. All Rights Reserved ABEMAレコメンド基盤 Yatagarasu 14 推論フロー ABEMA

    Server Yatagarasu Proxy Service : : Candidate Generator Reranker Client X Client Y Proxy Yatagarasu service A Yatagarasu service B Microservices : クライアントはそれぞれのフォーマットで個別に 立てられたマイクロサービスを利用する
  12. AbemaTV, Inc. All Rights Reserved ABEMAレコメンド基盤 Yatagarasu 15 デメリット メリット

    • レイテンシの増大 ◦ マイクロサービスとの通信等でレイテンシが増 大するため推論時間の制約が強くなる • スループット確保の難しさ ◦ マイクロサービスの独立性を追求すると、一つ のリクエストに対して何回も呼び出されるAPI が出てきてしまう ◦ 全体最適化が難しい • エラーハンドリングの難しさ ◦ 各レイヤーの責任区分の明確化が難しい • いろいろなロジックを試せる ◦ マイクロサービスとして独立しているの で、要件さえ満たせばどんなロジック/ 実行環境でもOK • ロジックを使いまわせる ◦ 並列マイクロサービスではないので、 新しいYatagarasu serviceが既存のマ イクロサービスを利用できる
  13. AbemaTV, Inc. All Rights Reserved A/Bテストの種類 17 MLモデル改善 新規モジュール・機能の追加 •

    ビジネスニーズへの対応 ◦ 新機能 ◦ イベント特集 • レコメンド機能の拡張 ◦ メタ情報の利用 ◦ Diversityの追求 ◦ etc… • アルゴリズム ◦ 候補生成 ◦ リランク • 特徴量 ◦ ユーザ ◦ コンテンツ • ハイパーパラメータ 施策毎にゴール指標が異なる 高精度に試行を多くしたい
  14. AbemaTV, Inc. All Rights Reserved A/Bテストの規格化 18 ガードレール指標 ゴール指標 •

    画面全体ユーザCTR ◦ ユーザの画面来訪数に対してコンテンツをク リックした回数(Click-Through Rate) ◦ PV単位での集計ではなくユーザ単位の集計 とすることで、ランダム化単位と合わせ検定 のしやすさが向上する ◦ 施策対象モジュールのみのCTRは感度が高 いが、モジュール同士の交絡を考慮する必 要性に重きをおいた指標としてこちらを採用 • サービス深度KPI ◦ 再来訪率 • 視聴系KPI ◦ ユーザあたりの視聴時間 ◦ ユーザあたりの視聴回数 • 課金系KPI ◦ トライアル登録率 ◦ 有料会員登録率/継続率 etc… 特別な理由がない限りゴール指標は統一
  15. AbemaTV, Inc. All Rights Reserved A/Bテストの規格化 19 シナリオの定義 目的 テスト後アクション

    1 KPIの向上 有意に向上した場合に適用 2 運用・システム負荷の軽減 有意に差異が生じなかった場合に適用 3 ロジックチューニング 適用しない 4 CTR以外のKPI向上 有意に向上した場合に適用 5 変動セグメント毎の最適機能選択 有意に向上したセグメントに適用 6 本検証前のテスト 適用しない シナリオを定めA/Bテストを規格化
  16. AbemaTV, Inc. All Rights Reserved e.g. モジュールリランク導入 20 • リニア放送エリア

    • 特集エリア ◦ 自動モジュール ◦ オペレータモジュール ◦ 機能モジュール 画面構成
  17. AbemaTV, Inc. All Rights Reserved e.g. モジュールリランク導入 21 検証パターン •

    従来(Aパターン) ◦ モジュール位置をオペレータが決定 ◦ ユーザセグメント毎に設定が異なる ▪ サービスへの深度 ▪ デモグラ ▪ 利用形態(無料/有料) • 新規(Bパターン) ◦ モジュール位置をMLモデルで決定 ◦ 特徴量は従来の分岐に近い形をとる ホーム画面 将棋を選んだあなたへ アニメランキング リランク (なお同時に別のA/Bテストが実施されており、 後述の組み合わせ組み合わせで4パターン)
  18. AbemaTV, Inc. All Rights Reserved e.g. モジュールリランク導入 22 集計結果 •

    ゴール指標 ◦ 画面全体CTR ▪ 有意に向上 • ガードレール指標 ◦ サービス深度/課金系KPIは変化なし ◦ 視聴系KPIは有意差はないが悪化して いるように見える 指標 B/A p値 画面全体CTR 向上 0.00 再来訪率 微増 0.18 視聴時間 微減 0.06 視聴回数 微減 0.05 トライアル登録率 微増 0.36 有料会員登録率 微減 0.34 有料会員継続率 微増 0.91
  19. AbemaTV, Inc. All Rights Reserved e.g. モジュールリランク導入 23 適用判断のための分析 •

    日毎の視聴回数 ◦ 2つの施策ともOFFのパターンである赤 を1とした場合の相対値 ◦ Bパターン(緑・紫)はどちらもAパターン (赤・青)より下  テスト前の期間はどうだったのか?
  20. AbemaTV, Inc. All Rights Reserved e.g. モジュールリランク導入 24 適用判断のための分析 •

    日毎の視聴回数   ランダム化されているはずのテス ト前から差が存在する テスト前 テスト期間
  21. AbemaTV, Inc. All Rights Reserved e.g. モジュールリランク導入 25 適用判断のための分析 •

    日毎のユーザCTR ◦ こちらはテスト前と比較し て明らかに向上している   画面全体ユーザCTRの向上は 正しく観測できていそう テスト前 テスト期間
  22. AbemaTV, Inc. All Rights Reserved e.g. モジュールリランク導入 26 適用判断のための分析 •

    日毎のクリック位置 ◦ 低いほどユーザの求めている モジュールをクリックしやすい 画面上に表示できている ◦ こちらもテスト前と比較して明 らかに低下している  モジュールリランクが望ましい 形で動作していることを確認 テスト前 テスト期間
  23. AbemaTV, Inc. All Rights Reserved 現状の課題と今後の展望 27 オフラインテストの精度向上 A/Bテストの効率化 •

    ログ ◦ 推論環境を精緻に再現するロギングの整備 • オフライン指標 ◦ AB検証指標と強く相関するオフライン指標の 作成 • テスト後分析のパッケージ化 ◦ 集計結果の深掘りをパターン化し、高 速な適用の判断につなげる • 複数同時AB検証 ◦ 検証サイクルの最も大きなボトルネッ クである検証期間の長さを複数のAB 検証を同時に実施することで解消する ための素地形成 さらにテストを高速で回したい オフライン時点で性能を 精度よく評価しておきたい