Netflix 的成功不可不歸功於它們的影片推薦系統,不管使用者透過電腦、遊戲機、智慧電視、電視盒、行動裝置等各種裝置登入 Netflix,都會進入同一個首頁,依分類有約 40 列(Row)的(依照各裝置螢幕大小略有不同),每列約 75 則推薦影片,在這個首頁裡要呈現哪些推薦影片給使用者、該如何分類、顯示的前後順序等,都是Netflix 透過收集大量使用者使用數據進行分析後,以至少六種演算法後優化出的個人化結果,每個不同的使用者看到的首頁都截然不同。
個人化影片評比制度
在 Netflix 影片推薦系統裡的演算法,首先先介紹「個人化影片評比」(Personalized Video Ranker, PVR),這個演算法顧名思義是以巨量數據分析後的個人觀影喜好為依據,計算出使用者喜歡哪種類型的的影片,以及這類型影片的出現次序,例如,數據顯示這位使用者喜歡觀賞恐怖片,Netflix 就會列出一列專門的恐怖片,並再依照使用者的喜好,把影片庫中的恐怖片再進行排序,因此,即便是兩位同樣是恐怖片愛好者,其呈現推薦影片的先後次序也會不一樣。Netflix 也利用個人化影片評比演算法,去計算在各種受歡迎的影片中,哪一些是使用者會喜歡的,這些結合「受歡迎」與「符合個人喜好」的影片也就可以自成一個推薦影片列。
第二個主要影片推薦系統演算法是「最佳推薦評比」(Top-N Video Ranker),這個評比演算法著重計算影片庫中所有的影片,並且透過使用者的喜好數據,找出使用者最喜歡的哪幾部片,而不像個人影片評比演算法一樣,會先計算出使用者喜歡的影片類型,再從中排出次序。
針對短時間的收看趨勢,Netflix 也會運用「最新趨勢評比」(Tredning Now)演算法,掌握使用者可能會想要看哪些影片,這種演算法主要的依據像是每年都會有的節慶,例如情人節,或者現在剛好發生了某些災禍,現在是鎂光燈焦點的特定事件等,再將這些資料與使用者的喜好數據結合,就能夠推薦使用者目前的趨勢影片。
繼續收看是推薦與否的關鍵
而最能夠具體展現使用者收集的巨量數據影響力的演算法,就是「繼續收看評比」(Continue Watching)演算法了,只有這個演算法是特別針對已經看過的影片,在已經看過但卻沒有看完的影片中,嘗試找出哪些使用者還會想要繼續欣賞的影片。在這個演算法中,有一些使用者的數據會被分析,包括這部影片的觀看時間,在哪個時間點離開觀賞(影片中間、一開始或結尾前),中斷觀賞後是不是還看了其它影片,以及用哪些裝置觀賞。
「影片相似度評比」(Video-Video Similarity)演算法,這是針對使用者曾經看過的影片中,依照每一部影片都挑選出相似的影片來推薦,在評比影片的相似程度時,演算法完全不會加入任何使用者喜好,完全是影片與影片之間來做評比。但評比完後,要將哪幾列使用者曾經看過影片的相似影片,推薦給使用者,就會加上使用者喜好,例如使用者如果曾經看過「不可能的任務1」以及「黑洞頻率」這兩部片,演算法就會評比出兩列影片,分別代表與「不可能的任務1」相似的影片,以及與「黑洞頻率」相似的影片,但是最後要出現哪一列影片給使用者,就會依照使用者的喜好去做判斷。
相關又具多樣性的推薦系統
最後一個演算法是「頁面產生評比」(Page Generation: Row Selection and Ranking),這個演算法是用來決定,到底有哪些影片列可以出現在使用者的首頁上。在透過上述提及的演算法得出,究竟有哪些候選影片列使用者可能會想觀賞後,Netflix 會再透過「頁面產生評比」,排出一個與使用者相關且兼具多樣性的影片推薦首頁。
一般來說,以上這些演算法都採用不同的數學與資料模式,以及輸入不同的數據資料,並且依照每一種演算法的目的,施以不同的模式訓練。有 75%的使用者都是依照 Netflix 的推薦來選擇電影,而 Netflix 目前也仍然就演算法得出的結果,持續對少量使用者進行 A/B 測試(A/B Test),加強演算法的準確度並且測試所有的極端可能性,這所有的目的都是為了能夠徹底的黏住所有的 Netflix 使用者。
不只推薦影片 巨量數據更能預測使用者想看的影片
巨量數據除了用來做精準的影片推薦以外,而 Netflix 首部依照巨量數據打造而來的影片就是Netflix 近幾年的最熱門的自製影集:紙牌屋。
在開始製作紙牌屋之前,Netflix 已經透過數據分析,瞭解了三件 Netflix 的使用者喜好:第一,很多 Netflix 上的使用者喜歡導演 David Fincher 的電影:社群網戰;第二,英國原版的紙牌屋很受歡迎;第三,喜歡英版紙牌屋的 Netflix 使用者,也喜歡 Kevin Spacey 的電影,或/和導演 David Fincher 的作品,因此按照這三項原則打造的紙牌屋,就幾乎沒有失敗的可能。不只是製作面,在宣傳時,Netflix 也剪了 10 部不同的預告,分別推薦給 10 種不同的使用者,喜歡 Kevin Spacey 的使用者可以看到多一點 Kevin Spacey 畫面的預告片,喜歡 David Fincher 作品的使用者,就可以看到貫穿他執導風格的預告片。
除了預測影集的製作,因為 Netflix 的月租費向來並不會太過昂貴,所以 Netflix 並不會在電影下檔後,購入每一部電影的版權,而是透過巨量數據分析預測,購入成本效益最高的電影,確保花出去的每一塊錢都能有最高的收益。
從影片推薦系統到打造影片,甚至購買版權,Netflix 已經完美的將巨量數據分析活用到它服務運作的每一個角落。
2 則回應