YouTube視訊推薦系統為什麼那麼強?看了這篇文章你就知道了
選自Medium
作者:Tim Elfrink
機器之心編譯
參與:張倩
作為全球主流的視訊平臺,谷歌旗下視訊網站 YouTube 的成功離不開精準的視訊推薦系統。YouTube 的推薦系統有何亮點?他們解決了哪些問題?在一篇 RecSys 2019 論文中,谷歌研究者對這些問題做出瞭解釋。來自荷蘭的一位資料科學家對論文的內容進行了總結。
論文地址:https://dl.acm.org/citation.cfm?id=3346997
Youtube 的推薦系統解決了什麼問題?
在 Youtube 上觀看視訊時,頁面上會展示使用者可能喜歡的視訊推薦列表。該論文聚焦於以下兩大目標:
1)需要優化不用的目標。他們沒有定義確切的目標函式,而是將目標函式分為「參與度」(點選量、花的時間)目標和「滿意度」(點贊量、踩的量)目標;
2)減少系統引入的「選擇偏見」:使用者通常更傾向於點開排在第一位的推薦視訊,儘管後面的視訊可能參與度、滿意度更高。如何高效地減少這些偏見是一個亟待解決的問題。
用什麼方法解決?
圖 1:模型的完整架構。
論文中介紹的模型著眼於兩個主要的目標。他們用到了一個
寬度&深度模型框架
。寬度模型擁有強大的記憶能力,深度神經網路擁有泛化能力,寬度&深度模型則綜合了二者的優點。寬度&深度模型會為每一個定義的(參與度和滿意度)目標生成一個預測。這些目標函式可以分為二分類問題(是否喜歡某個視訊)和迴歸問題(為視訊評級)。這一模型之上還有一個單獨的排序模型。這只是一個輸出向量的加權組合,它們是不同的預測目標。這些權重是手動調整的,以實現不同目標的最佳效能。此外,研究者還提出了結對、列表等先進的方法,以提升模型的效能,但由於計算時間的增加,這些方法沒有被應用到生產中。
圖 2:用 MMoE 替換 shared-bottom 層。
在寬度&深度模型的深層部分,研究者利用了一個多工學習模型 MMoE。現有視訊的特徵(內容、標題、話題、上傳時間等)以及正在觀看的使用者的資訊(時間、使用者配置檔案等)被用作輸入。MMoE 模型可以在不同的目標之間高效地共享權重。共享的底層(shared bottom layer)被分為多個專家層,用於預測不同的目標。每個目標函式都有一個門函式(gate function)。這個門函式是一個 softmax 函式,接收來自原始共享層和不同專家層的輸入。該 softmax 函式將決定哪些專家層對於不同的目標函式是重要的。如下圖 3 所示,不同的專家層對於不同目標的重要程度存在差別。如果與 shared-bottom 架構相比,不同的目標相關度更低,則 MMoE 模型中的訓練受到的影響更小。
圖 3:在 Youtube 多個任務中的專家層應用情況。
該模型的寬度部分致力於解決系統中由視訊位置帶來的選擇偏見問題。研究者將該部分稱為「淺塔」(shallow tower),它可以是一種簡單的線性模型,使用簡單的特徵,如視訊被點選時所處的位置、使用者觀看視訊使用的裝置等。「淺塔」的輸出與 MMoE 模型的輸出相結合,這也是寬度&深度模型架構的關鍵組成部分。
如此一來,模型將更加關注視訊的位置。在訓練過程中,dropout 率被定為 10%,以防止位置特徵在模型中變得過於重要。如果不用寬度&深度模型,而是將位置新增為一個特徵,模型可能根本就不會注意到這個特徵。
結果
該論文的結果表明,用 MMoE 替換 shared-bottom 層可以在參與度(觀看推薦視訊花費的時間)和滿意度(調查反饋)兩個目標中提升模型的效能。增加 MMoE 中的專家層數量和乘法的數量可以進一步提升模型的效能。但由於計算上的限制,現實部署中無法實現這一點。
表 1:MMoE 模型的 YouTube 實時實驗結果。
進一步的研究結果表明,參與度度量可以通過使用「淺塔」降低選擇偏見來加以改進。與只在 MMoE 模型中新增特徵相比,這是一項顯著的改進。
表 2:建模視訊位置偏見的 YouTube 實時實驗結果。
有趣之處
- 儘管 Google 擁有強大的計算基礎設施,但在訓練和成本方面仍然非常謹慎;
- 通過使用深度&寬度模型,你可以在設計網路時預定義一些重要特徵;
- 當你需要多目標模型時,MMoE 模型會非常有效;
- 即使具有強大而複雜的模型架構,大家仍在手動調整最後一層的權重,從而根據不同的客觀預測確定實際排名。
原文連結:
https://medium.com/vantageai/how-youtube-is-recommending-your-next-video-7e5f1a6bd6d9
https://www.toutiao.com/i6747512998723584525/
來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/69946223/viewspace-2660343/,如需轉載,請註明出處,否則將追究法律責任。
相關文章
- 簡訊介面怎麼對接?看完這篇文章你就知道了!
- 想理解JVM看了這篇文章,就知道了!(一)JVM
- 音視訊開發:為什麼推薦使用Jetpack CameraX?Jetpack
- YouTube視訊的推薦演算法演算法
- 推薦那麼準,除了模型,還有什麼。。。模型
- 為什麼IDEA不推薦你使用@Autowired ?Idea
- 為什麼主流APP的推薦總能符合你口味?推薦系統瞭解一下APP
- 雲原生技術是什麼?看完這篇文章你就懂了
- 原來YouTube推薦系統的內幕是這樣……
- 推薦系統一——深入理解YouTube推薦系統演算法演算法
- 為什麼 Django 後臺管理系統那麼“醜”?Django
- 同是容器管理系統,Kubernetes為什麼那麼火?
- 影響視訊推薦量的因素有哪些?這篇看完你就懂了
- 服裝辦理體系的價值有多大?看完這篇文章你就知道了
- 為什麼我推薦你使用 systemd timer 替代 cronjob?
- Python那麼火,我只推薦這兩本書Python
- 靜默錯誤:為什麼看了那麼多災難,還是過不好備份這一關?
- 為什麼那麼多人要學Java?這三個原因告訴你Java
- 我為什麼不再推薦RxJavaRxJava
- 什麼Jupyter框架?為什麼學Python推薦Jupyter?框架Python
- 為什麼你要使用這麼強大的分散式訊息中介軟體——kafka分散式Kafka
- 如何解除防禦DDoS的疑難?看完這篇文章你就知道了
- 自媒體選什麼領域最掙錢?看完這組資料你就知道了!
- 雲伺服器可以用來幹什麼?瞭解了這4點你就知道了伺服器
- 學Python用什麼系統環境好?推薦Linux系統!PythonLinux
- 人人學Python,為什麼就業拿高薪的那麼少?Python就業高薪
- 我為什麼推薦Nuxt3UX
- 為什麼我不再推薦Julia? - yuri
- 為什麼Python這麼火,就業前景如何?Python就業
- react router為什麼推薦使用browserHistory而不推薦hashHistory?React
- 為什麼《全戰三國》的美術被玩家“吹爆”,看完這些原畫設計你就知道了
- 認證計費系統是什麼?不妨看看這篇文章
- 「推薦系統」 領域的最新進展你知道麼?
- Java面試題:你知道Spring的IOC嗎?那麼,它為什麼這麼重要呢?Java面試題Spring
- Linux是什麼?為什麼推薦學習Linux技術?Linux
- 什麼Jupyter?為什麼初學Python推薦選擇Jupyter?Python
- CRM系統能給企業帶來什麼? CRM系統推薦
- MySQL查詢為什麼沒走索引?這篇文章帶你全面解析MySql索引