Netflix のレコメンデーションの一覧


# 目的
2015年に公開された[The Netflix Recommender System: Algorithms, Business Value, and Innovation](https://dl.acm.org/citation.cfm?id=2843948)にアルゴリズムの概要が記載されていたので、理解のためアルゴリズム一覧部分を整理をしました


## 画面構成
Netflixのホームページはデバイスごとに異なりますが、約40行のテーマとテーマ内には最大75本の動画があります。つまり40x70の行列で構成されています。

![ An example of a personalized Netflix homepag](https://cdn-images-1.medium.com/max/1600/0*baj8e-s1v5hJRm6A.)
テーマの選択もメンバーごとに異なります。
テーマ内の表示内容も目的ごとに異なるアルゴリズムが用意され、左から右への並び順もレコメンデーションが決定しています

Netflixの一般的なメンバーは60〜90秒で視聴するタイトルを決定しないと、動画視聴に興味を失っうことがリサーチの結果わかりました。つまり90秒以内、具体的には1つまたは2つの画面10〜20タイトル（おそらく3つタイトルの詳細画面）の中でメンバーが興味をもつ動画を推薦する必要があります。

# Netflix レコメンドシステムの概要


Netflixのメンバーへのレコメンデーションは、メンバーが動画を見た後に評価するであろう星の数(1から5)を予測するという伝統的なアルゴリズムである対応しきれません。
なぜなら、60〜90秒以内にメンバーに視聴する動画を決定してもらう必要があるからです。

そのためには、メンバーの視聴意図をNetflix内で経験から推定し、意図に合わせた様々なアルゴリズムで構成されたレコメンドシステムがあります

## レコメンドシステム一覧

| レコメンドシステム    | 概要 |   対象   |
|:-----------------|:------------------:|:------------------|
|Page Generation: Row Selection and Ranking|ページ内のテーマを決定するランキング|テーマ(行） |
| Personalized Video Ranker(PVR)   |動画全体または特定カテゴリおよびフィルター結果をパーソナライズしたランキング | 動画（列）|
|Top-N Video Ranker| ランキングの先頭にのみビデオのランキング| 動画（列） |
|Trending Now |数分から数日および短期的な傾向や季節的なランキング | 動画（列） |
|Continue Watching|再視聴したいかどうかを考慮した継続視聴ランキング| 動画（列） |
|Video-Video Similarity|特定の動画に関するパーソナライズされていないランキング|動画（列） |
| Search |動画名、俳優、またはジャンルによる動画検索|動画（列） |
| Evidence |メンバーが動画が視聴するかを決断する支援する情報を選択、推薦理由|動画詳細（アイテム） |



## Personalized Video Ranker(PVR) 
 <img width="459" alt="スクリーンショット 2018-06-09 0.47.45.png" src="https://qiita-image-store.s3.amazonaws.com/0/47064/c6d7c495-1423-202a-746f-0c4869116822.png">
上の"Suspenseful Movies"の行は、Personalized Video Rankerによるパースナライズされた結果
このアルゴリズムは、あなたの好みに応じてNetflixのカタログから動画を取り出します。
Netflixのカタログ全体または特定のテーマを対象にすることができます

また、パースナライズされた結果はパーソナライズされていない結果と並べるとより有効です。

[アルゴリズムの詳細](https://medium.com/netflix-techblog/netflix-recommendations-beyond-the-5-stars-part-1-55838468f429)

## Top-N Video Ranker
<img width="456" alt="スクリーンショット 2018-06-09 0.47.50.png" src="https://qiita-image-store.s3.amazonaws.com/0/47064/13e2fd3c-6cf5-a4bc-a80a-cac4e8e690b2.png">
上の"Top Pick for Catalog"の行は、Top-N Video Rankerの結果
※下の行は、Personalized Video Rankerによるパースナライズされた結果

Top-N Video Rankerは、アルゴリズムが生成するカタログランクの上位からメンバー向けにパーソナライズしたランキングします。PVRは、カタログ全体を対象にしています


## Trending Now
<img width="457" alt="スクリーンショット 2018-06-09 0.45.23.png" src="https://qiita-image-store.s3.amazonaws.com/0/47064/82ac12d1-9a12-dda0-3e23-5705bc1e7f1c.png">
下の行が"Trending Now"

"Trending Now"は数分から数日に及ぶ短期間の傾向に基づいています。
パーソナライズされた指標を考慮に入れ、定期イベントであるバレンタインデーの期間にはロマンチックな映画をレコメンデーションします。また突発でハリケーンが来た時にはドキュメンタリーをレコメンデーションすることもできます

## Continue Watching
<img width="458" alt="スクリーンショット 2018-06-09 0.45.37.png" src="https://qiita-image-store.s3.amazonaws.com/0/47064/e78ffcfd-494b-9ca8-19bf-60bd91277ed3.png">

”Continue Watching"は、視聴中の動画をレコメンドします。
ランキングでは視聴を続けるか放棄するかを予測してレコメンデーションします。
予測には視聴後の経過時間、途中、開始、終了のいずれの視聴を停止したか、または異なるタイトルが視聴されたかどうかなどです。

## Video-Video Similarity
 <img width="459" alt="スクリーンショット 2018-06-09 0.47.45.png" src="https://qiita-image-store.s3.amazonaws.com/0/47064/c6d7c495-1423-202a-746f-0c4869116822.png">

下の行が"Video-Video Similarity"です。テーマのようにBecause You Watched (BYW)とも呼ばれています
該当動画との類似度をNetflixのカタログ全体から関連度でランキングされたものをレコメンデーションするためパーソナライズはされていません

## Page Generation: Row Selection and Ranking
![alt](https://cdn-images-1.medium.com/max/1600/0*bck7SY3PhZuDcBHS.)
Netflixホームページは、2次元レイアウトで提示されたテーマ別の動画（映画とテレビ番組）で構成されています。 メンバーは横に横にスクロールすると、その行の他のビデオを見ることができ、縦にスクロールして他のテーマが表示された行を見ることができます。
Row Selection and Rankingはユーザのその時の気分、または家族ごとに合わせて、ページを構成するテーマを作成します

[詳細論文](https://cseweb.ucsd.edu/classes/fa17/cse291-b/reading/p341-wu.pdf#search=%27Alvino+and+Basilico+2015%27)

## Evidence
エビデンス選択アルゴリズムです
メンバーが動画が視聴するかを決断する支援する情報や推薦理由を表示します

## Search
Netflixのページ視聴の80%はレコメンド経由で残り20%が検索です。
テレビ画面の検索なので極端に短い傾向がありまさう（アルファベット２,3文字程度）
<img width="915" alt="スクリーンショット 2018-06-09 0.40.13.png" src="https://qiita-image-store.s3.amazonaws.com/0/47064/63361c6a-b50f-bba1-3796-4ec75c77f33a.png">
左側は、"usual"で検索。ユーザ意図は“The Usual Suspects” だと思われるがNetflixにはないので代わりの動画をレコメンドしています
右側は “fren”で検索。検索上位には“fren”が含まれている記事を表示していますが、下側に“fren”が意図しているとおもわれるフランス映画をレコメンドになっています



# 参考資料


The Netflix Recommender System: Algorithms, Business Value, and Innovationです
[Learning a Personalized Homepag](https://medium.com/netflix-techblog/learning-a-personalized-homepage-aa8ec670359a)
[Personalized Page Generation for Browsing Recommendations](https://www.slideshare.net/justinbasilico/personalized-page-generation-for-browsing-recommendations)