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

ABEMAにおけるContextual Banditを用いた推薦システムの導入と効果検証

Avatar for Shota Inoue Shota Inoue
July 17, 2025
170

ABEMAにおけるContextual Banditを用いた推薦システムの導入と効果検証

Avatar for Shota Inoue

Shota Inoue

July 17, 2025
Tweet

Transcript

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


    1 ABEMAにおける Contextual Banditを用いた 推薦システムの導入と効果検証 2025 July 16th 井上翔太
  2. AbemaTV, Inc. All Rights Reserved
 井上 翔太 • 2024年度 株式会社AbemaTV

    新卒入社 • 機械学習エンジニア • レコメンド機能の運用・開発をしてます • X: @show_5821 • 趣味:蕎麦をうつのを練習してます 2 Profile
  3. AbemaTV, Inc. All Rights Reserved
 ABEMA について 3 登録不要で、いつでも無料で楽しめる 24時間365日編成されているリニア配信と

    見逃した作品を好きなタイミングでオンデマンドでも楽しむこともできます。 国内最大級のオリジナルエピソード数 オリジナルエピソード数は国内発の動画サービスで日本No.1(※)を誇り、 注目の新作映画、国内外の人気ドラマ、話題のアニメなど豊富なラインナップの作品や、 様々な音楽や舞台のオンラインライブも展開。 ※2024年8月時点、自社調べ 100%プロコンテンツ サイバーエージェントとテレビ朝日 それぞれの強みを活かした制作体制で高品質なコンテンツを配信しています。 多彩なラインナップ 24時間編成のニュース専門チャンネルをはじめ、 オリジナルのドラマや恋愛番組、アニメ、スポーツなど、 多彩なジャンルの約25チャンネルを24時間365日放送しています。
  4. AbemaTV, Inc. All Rights Reserved
 目次 • ABEMAの推薦について • 推薦における課題

    • 採用したContextual Banditロジックについて • アーキテクチャ • 効果検証 • まとめ
  5. AbemaTV, Inc. All Rights Reserved
 ABEMAの推薦分類 手動 ルールベース 機械学習 編集者がテーマを元に

    コンテンツを選定 ABEMAとして推したいコンテンツ / 特集がある場合 選定方法 ユースケース ユーザーごとに好みそうなコンテンツ を提示したい場合 決められたルールを元に コンテンツを選定 モデルがユーザーごとに コンテンツを選定 例 特定ルールに従ってコンテンツ を提示したい場合 あなたへの関連度が高い作品 〇〇をみたあなたへ ランキング 視聴中の作品 人気・注目 今週のおすすめ
  6. AbemaTV, Inc. All Rights Reserved
 ABEMAの推薦分類 手動 ルールベース 機械学習 編集者がテーマを元に

    コンテンツを選定 ABEMAとして推したいコンテンツ / 特集がある場合 選定方法 ユースケース ユーザーごとに好みそうなコンテンツ を提示したい場合 決められたルールを元に コンテンツを選定 モデルがユーザーごとに コンテンツを選定 例 特定ルールに従ってコンテンツ を提示したい場合 あなたへの関連度が高い作品 〇〇をみたあなたへ ランキング 視聴中の作品 今回のターゲット 人気・注目 今週のおすすめ
  7. AbemaTV, Inc. All Rights Reserved
 ABEMAの手動推薦 編集者による コンテンツ選定 コンテンツの入稿 ロジックによる

    並べ替え テーマを元にコンテンツを選定 20-30件前後をピックアップ ex) • ABEMAの目玉コンテンツ • 時期ごとの特集枠(GW特集など)
  8. AbemaTV, Inc. All Rights Reserved
 ABEMAの手動推薦 編集者による コンテンツ選定 コンテンツの入稿 ロジックによる

    並べ替え モジュール・コンテンツごとに設定を行う • どのターゲットに提示するか ex) 年齢層・性別・嗜好ジャンル • ユーザーへの訴求回数
  9. AbemaTV, Inc. All Rights Reserved
 従来手動推薦で適用していたロジック 年齢 性別 嗜好 ジャンル

    セグメント セグメント セグメント Thompson Sampling 集計ベースのバンディットを使用していた
  10. AbemaTV, Inc. All Rights Reserved
 従来手動推薦で適用していたロジック 年齢 性別 嗜好 ジャンル

    セグメント セグメント セグメント Thompson Sampling ユーザー属性の組み合わ せでセグメントを分類
  11. AbemaTV, Inc. All Rights Reserved
 従来手動推薦で適用していたロジック 年齢 性別 嗜好 ジャンル

    セグメント セグメント セグメント Thompson Sampling セグメントごとに実績を集計し Beta分布からサンプリング
  12. AbemaTV, Inc. All Rights Reserved
 従来ロジックの課題 • ロジック自体の課題 ◦ ユーザーを捉えるための特徴量追加が難しい

    ◦ データの少ないセグメントでの精度低下がみられた • 手動運用の課題 ◦ 運用が煩雑になることで設定ミスが発生する可能性が高い
  13. AbemaTV, Inc. All Rights Reserved
 ユーザーを捉えるための特徴量追加が難しい 25歳 男性 嗜好ジャンル 1.

    アニメ 2. ドラマ 20代男性アニメ好き 20代男性 アニメ・ドラマ好き 特徴量を新しく増やす際にコストがかかる セグメント セグメントを構成する特徴 を増やそうとすると 組み合わせが爆発する 例)ジャンル数が10の場 合、2ジャンルを捉えよう とすると10倍増える
  14. AbemaTV, Inc. All Rights Reserved
 集計がセグメントごとに行われている 25歳 男性 嗜好ジャンル 1.

    アニメ 2. ドラマ 20代男性アニメ好き 25歳 男性 嗜好ジャンル 1. ドラマ 2. バラエティ 20代男性ドラマ好き 20代男性の部分は共通しているが、 別のセグメントとして表現している ためお互いのデータを実績として 取り込めない データの少ないセグメント での精度低下
  15. AbemaTV, Inc. All Rights Reserved
 コンテンツごとにターゲティングを設定している 10代 女性 アニメ好き プレミアム

    コンテンツA 30代 男性 スポーツ好き 無料 コンテンツB 従来のバンディットでは表現しきれない条件があったため、 人間がコンテンツごとにターゲティングを設定していた 編集者 複雑なターゲティングにより設定ミスなどが発生する可能性が増大
  16. AbemaTV, Inc. All Rights Reserved
 セグメント分けの限界とContextual Banditの導入 特徴量での改善が難しい ユーザー情報の表現力が限定的 データ数の少ない

    セグメントの精度低下 集計がセグメントごとに行われている 運用負荷が高い コンテンツごとにターゲティングを設定 Contextual Banditの導入 ユーザー表現の柔軟性向上 特徴量ベクトルを活用し多様な嗜好に対応 学習効率向上 他セグメントのデータも効率的に使用可能に 手動設定の削減 必要最低限の設定のみを目指す セグメントごとに分けることで引き起こされている
  17. AbemaTV, Inc. All Rights Reserved
 採用したロジックについて 年齢 性別 嗜好ジャンル etc

    A B C B C 0.82 0.65 0.47 A パラメータをサンプリング Contextual Bandit × Logistic Thompson Sampling を使用 ユーザー コンテキスト 予測報酬 予測報酬をもとに 並び替え
  18. AbemaTV, Inc. All Rights Reserved
 適用時における考慮事項 課題 • ABEMAでは秒間十数万リクエストが発生する •

    Contextual Banditでは各リクエストごとに計算 (サンプリング/推論/並び替え)が必要 → 元のロジックよりも計算コストがかかる懸念があった • Go製の推薦サーバーで計算ロジックをもった • 多段キャッシュの導入(後述) • 事前に計算ロジックの最大実行時間を計測 • 負荷試験の実施
  19. AbemaTV, Inc. All Rights Reserved
 システムアーキテクチャ (サーバー) 大量のリクエストに耐えるために Redis Clusterに加えて

    サーバー内にインメモリキャッシュを設置した 多段キャッシュの構成を採用
  20. AbemaTV, Inc. All Rights Reserved
 A/Bテストの検証デザイン 検証期間 • 2週間 対象モジュール

    • 手動で運用していたモジュール全て 検証対象 • ベースライン:従来のBanditロジック • 報酬にクリックを用いたContextual Bandit • 報酬に視聴を用いたContextual Bandit
  21. AbemaTV, Inc. All Rights Reserved
 まとめ まとめ • ABEMAにおける手動で運用しているモジュールに対して Contextual

    Banditを導入した • サーバーの負荷を考慮したアルゴリズムの設計を行った • A/Bテストでは適用モジュール経由の視聴KPIの向上を確認した • 利用の少ないモジュールではうまく学習ができないことを確認した 今後の展望 • モジュール間で実績を共有できるような設計 • 他のロジックへの応用 • 事業KPIに結びつくような報酬の設計