Netflixがユーザー満足度を最大化するために取り組む推薦アルゴリズムとその工夫とは:コンテンツ推薦は「コンテキストバンディット問題」
Netflixは長期的にユーザーの満足度を高めるため、どのような推薦アルゴリズムを適用し、どう工夫しているのか、公式ブログで解説した。
Netflixは2024年8月29日(米国時間)、Netflixの価値を高め、ユーザーの満足度を最大化させるための取り組みの一環として、コンテンツ推薦アルゴリズムをどのように適用し、工夫しているのか、公式ブログで解説した。
コンテンツ推薦を「コンテキストバンディット問題」として捉える
Netflixでは、コンテンツ推薦を「Contextual Bandit(コンテキストバンディット)問題」と捉えているという。
ユーザーがNetflixにアクセスすると、その瞬間がシステムにとってのコンテキストとなり、コンテキストに基づいてシステムが推薦内容を選択する。ユーザーは推薦されたコンテンツにさまざまなフィードバック(報酬)を返す。これには、すぐに得られるもの(スキップ、再生、いいね/嫌い、プレイリストへの追加)や後から得られるもの(視聴の完了、サブスクリプションの更新)もある。Netflixでは、推薦の良しあしを評価する報酬関数を定義し、より優れた推薦のためのポリシーを学習させ、ユーザーの満足度を最大化させることを目指しているという。
Netflixは、この取り組みにおいて長期的にサービス満足度を最大化するためにどう工夫しているのか、解説した。
「会員継続率」の最適化は難しい
長期的にサービス満足度を最大化することを考慮する際、会員継続率(リテンション)を報酬として最適化する戦略には課題があると、Netflixは指摘する。
「満足しているユーザーはサービスを継続するため、会員継続率を最適化する戦略を立てるのは当然かもしれない。だが、季節のトレンドやマーケティングキャンペーン、個人的な事情、過去の不満足な推薦による解約などさまざまな要因があるため、会員継続率を最適化することは非現実的だ」(Netflix)
そこでNetflixは「代理報酬関数」を定義し、報酬エンジニアリングの取り組みを通じて、長期的にユーザーの満足度を最大化させようと取り組んでいるという。
代理報酬関数とは、長期的なユーザー満足度につながりそうな短期的なユーザーのフィードバックを代わりの報酬として活用する取り組みだ。例えば、システムがあるコンテンツを推薦し、ユーザーがコンテンツを視聴してから完了して「いいね」を付けた場合、単純な代理報酬関数を以下のように定義できる。
- r(user, item)=f(play, complete, thumb)
この代理報酬関数を長期的な満足度と結び付けるためには、以下のようなあらゆる種類のユーザーアクションを考慮する必要がある。
- 早く視聴を完了する:推薦されたテレビ番組のシーズンを1日で完了することは、楽しさと長期的な満足感の強い兆候といえる
- 視聴完了後に評価が低い:数週間かけてテレビ番組を見終えた後、評価が低い場合、かなりの時間を費やしたのにもかかわらず満足度が低いことを示すといえる
- 映画を10分間だけ再生する:短時間の視聴は、単純に視聴をやめたのか、後日再生することに決めて視聴をやめたのかが分からないため、この場合のユーザーの満足度は曖昧だ
- 新しいジャンルの発見:「イカゲーム」の後に韓国の番組やゲーム番組をもっと視聴していれば、ユーザーが新しいものを発見していることを示している。この発見は、ユーザーにとって新しい分野の開拓につながったため、推薦の価値があったと考えられる
報酬エンジニアリングでは、仮説形成、新しい代理報酬関数の定義、新しいポリシーのトレーニング、A/Bテストの4つの段階があるという。
代理報酬関数と報酬エンジニアリングの課題
報酬エンジニアリングの取り組みにおいては、ユーザーのフィードバックが遅かったり得られなかったりする「遅延フィードバック」が課題になるという。例えば、ユーザーが数週間かけてコンテンツを視聴完了した場合、フィードバックは推薦されたタイミングから数週間遅れることになる。「いいね」や「嫌い」のフィードバックは確実に得られるかも分からない。
フィードバックを待つ時間が長過ぎると、推薦ポリシーを更新する機会を逃し、ユーザー体験を低下させるリスクがある。そこでNetflixでは、このフィードバックを機械学習モデルで予測する取り組みも行っているという。
「従来の推奨システムはクリック数やエンゲージメントなどの短期的な指標を最適化することが多く、ユーザーの長期的な満足度を十分に把握できないことがある。Netflixはユーザーが長期にわたって満足してもらえるコンテンツを推奨できるよう、代理報酬関数の定義や報酬エンジニアリングに取り組んでいる」と、Netflixは述べている。
Copyright © ITmedia, Inc. All Rights Reserved.
関連記事
- Netflix、モノリシックな動画処理パイプラインをマイクロサービスプラットフォームで再構築した事例を紹介
Netflixは公式エンジニアブログで、動画処理パイプラインをマイクロサービスで再構築した事例を紹介する記事を公開した。なぜ、動画処理パイプラインをマイクロサービスベースの新たなプラットフォームで再構築することに決めたのか、どのようにサービスを切り分けたのか、Netflixのビジネスに与えた影響などを紹介している。 - Netflix、ワークフローオーケストレーター「Maestro」をオープンソース化 1日に約200万のジョブを完了
Netflixはデータ/MLワークフロー管理ツール「Maestro」をオープンソース化した。データパイプラインやMLモデルのトレーニングパイププラインなど複雑なワークフローを効率的に管理できるという。 - Netflix考案のテスト「カオスエンジニアリング」を探る――システムのあらゆる部分を“壊す”、そのメリットとは
海外の先進的企業の事例を基にテスト自動化に使われる手法を解説する本連載。第2回は、Netflixが考案したテスト手法「カオスエンジニアリング」について。