為什麼刷小視頻停不下來?愛奇藝用這篇論文告訴你答案
選自 ijcnn.org
作者:Fan Zhu, Min Jiang, Yiming Qiu, Chenglong Sun*, Min Wang
機器之心編譯
參與:Panda
愛奇藝作為中國的主要視頻網站之一,其視頻推薦系統的規模和複雜度也在中國名列前茅。近日發布了一篇研究論文,介紹了該公司為小視頻推薦系統設計的模型架構並提出了一種新的特徵解釋和重要度評估方法 RSLIME。他們也對該方法進行了實驗評估,並表明了該方法的有效性。
論文公布地址:https://www.ijcnn.org/assets/ijcnn2019-program-Jun07-largefont.pdf
作為中國最大的網路視頻發布平台之一,愛奇藝的推薦系統每月要幫助數百萬活躍用戶從其大規模的且仍在不斷增長的視頻語料庫中發現高度個性化的內容。根據愛奇藝的統計報告,在各種不同的終端設備和應用界面,推薦系統已將其日播放量(VV)提升了近一倍。這篇論文介紹了愛奇藝的小視頻推薦系統,如圖 1 所示。
圖 1:愛奇藝移動應用的小視頻頻道頁面和播放頁面
在中國,小視頻的生產和發行已經在多個平台上成長為新興的業務重心,加速了用戶生產內容(UGC)的爆發。
相比於傳統的視頻推薦系統,愛奇藝的 UGC 推薦和小視頻分發有四個極其困難的方面:
- 新鮮度:愛奇藝的小視頻應用的語料庫非常動態,用戶每天都會上傳數十萬條新視頻。推薦系統應具有足夠的響應能力,以便建模新上傳的視頻和最新的用戶行為。
- 冷啟動:鑒於小視頻有更高的及時性要求和更低的用戶黏性,推薦系統面臨著嚴重的用戶和項目冷啟動問題,這會有損基於協同過濾(CF)的方法的性能。
- 多樣性:由於視頻類型和用戶人口統計分布的多樣性,愛奇藝的視頻標籤系統以及用戶興趣畫像都比傳統的視頻推薦複雜得多,這也使得相關特徵極其分散。內容和用戶的多樣性也會使得小視頻推薦系統的結果不能穩健地應對輸入中的錯誤。
- 興趣轉移:歷史用戶行為並不總是可靠的。每位用戶在一個小時內就可能瀏覽數十個小視頻,他們感興趣的內容也會發生巨大的變化。一旦用戶對之前的視頻感到厭煩,他們就會渴望探索新的類別。因此,把握短期和長期用戶偏好之間的平衡是至關重要的。
針對這些難題,愛奇藝的研究者提出了一種遵循多階段流程的模型,其由三個模塊構成,即用戶畫像(User Profile)、召回(Recall)和排序 Ranking)。為了提升小視頻推薦系統的表現,每個模塊中都使用了廣泛的模型集成方法。下面簡要介紹了其系統結構:
- 用戶畫像:對用戶的人口統計屬性、歷史行為、興趣和偏好的多維度分析。用戶畫像可用作實現個性化推薦的基石。
- 召回:多種協同過濾(CF)演算法(基於物品的 CF、基於用戶的 CF、矩陣分解、Item2Vec 等)和多種基於內容的過濾(CBF)方法的組合。這些模型的結果會被聚合起來,為每個請求構建一個視頻候選項語料庫,其中通常包含數百條視頻。
- 排序:一個用於評估視頻候選項的分數的點擊率預估模型,然後將少量最佳推薦的視頻推送到用戶界面。
在任何推薦系統中,排序都被認為是最重要的模塊,因為其直接決定了推薦的質量。目前大多數工業界推薦系統的排序模塊都基於深度學習(DL)、梯度提升決策樹(GBDT)+分解機(FM)、或混合方法。
為了確保準確性和泛化能力,愛奇藝的排序模塊集成了多個模型。儘管上面提到的排序模型在行業和學術領域大都有效,但通常都非常複雜且難以解讀。換句話說,它們無法說明推薦特定視頻的原因或分析不同特徵對推薦結果的貢獻。
近期在推薦系統解讀方面也有一些進展,它們主要集中於設計可解釋模型、修改神經網路中的隱藏層以及將知識圖譜和注意機制與深度學習組合起來。但是,這些方法往往有損推薦系統的準確度並會限制模型的結構,也由此無法應用於大多數工業界的推薦系統。
為了監控排序模型的工作方式是否有如預期以及是否能加速模型的迭代過程,愛奇藝提出了一種與模型無關的推薦系統局部可解釋方法 Recommendation System Boosted Local Interpretable Model-Agnostic Explanations Method(RSLIME,),可為其排序模型提供特徵重要度分析。RSLIME 有望為推薦系統中的特徵選取過程提供參照,並幫助推薦系統開發者不必太過麻煩就能調整他們的排序模型。RSLIME 具有以下特點:
- 對於單個輸入樣本,RSLIME 可以生成特徵重要度的估計,而不管排序模塊中所用的架構為何。然後可以基於這些特徵重要度解釋推薦結果。
- 對於多個輸入樣本,RSLIME 可以結合多個樣本的預測結果進行整體分析,並給出準確的特徵重要度估計。
- RSLIME 可對稀疏特徵的影響進行高效的分析,從而指導模型的優化和特徵的選擇
愛奇藝的這篇論文的主要貢獻為:
- 詳細闡述了愛奇藝的小視頻排序模塊的架構;
- 提出了一種可擴展的推薦系統解釋方法(RSLIME),能根據排序結果提供特徵重要度;
- 在愛奇藝的排序模塊上執行了全面的實驗,驗證了 RSLIME 方法的有效性。
為什麼需要為推薦系統設計新的解釋方法?
愛奇藝的小視頻推薦系統的推理過程如圖 2 所示,其結果主要由召回模塊和排序模塊決定。其中召回模塊的結果通常是可解釋的,因為我們可以檢查視頻標籤和用戶興趣以確定糟糕結果出現的原因。而排序模塊卻比召回模塊複雜得多,其集成了多種模型與多種類型的輸入特徵。
圖 2:小視頻推薦系統。
總的來說,愛奇藝的排序模塊有這些特點:
(1)模型結構複雜;
(2)輸入特徵的維度很高;
(3)迭代速度快;
(4)具有大規模視頻語料庫;
(5)分散式的文件存儲和計算系統。
這些特點使得目前大多數特徵重要度分析方法都不適用。
圖 3:排序模塊的流程。
目前在推薦系統中最常用的特徵選取和特徵重要度分析方法是信息增益(Information Gain)、主成分分析(PCA)和 AUC Check。儘管它們可有效地用於特定的任務,但在用於推薦排序模型時都存在固有的局限性。有關這些局限性的詳細說明請參閱原論文。
不同於以上方法,RSLIME 有望在任意的推薦排序模型中執行有效的特徵選取和特徵重要度分析。與《"Why Should I Trust You?": Explaining the Predictions of Any Classifier(arXiv: 1602.04938)》中提出的 LIME 思想類似,RSLIME 使用了一個線性函數來局部地近似排序結果。
通過驗證 RSLIME 所獲得的特徵重要度的可靠性和穩定性以及進一步了解其與 AUC Check 的相關性,愛奇藝的這些研究者證明 RSLIME 確實可用於分析特徵重要度和解釋排序模型。
技術詳解
架構
這裡將介紹愛奇藝小視頻推薦系統的排序模塊。如圖 4 所示,其中使用了一種經過擴展的「Deep&Wide」結構,集成了 GBDT、FM 和 DNN。
圖 4:排序模塊的架構。
藉助「Deep&Wide」結構的思想,Sigmoid 層可用作連接層,其輸入由兩個部分構成:DNN 最後的隱藏層、FM 的輸出。下面將介紹每個模塊的詳情:
- DNN:DNN 使用的是一個帶有三個隱藏層的全連接網路,其維度分別為 1024、512 和 256。DNN 的輸入是用戶和視頻的預訓練的特徵嵌入,這基於用戶行為和視頻語義內容。愛奇藝的模型使用了 DNN 來提升排序模塊的準確度以及在線 A/B 測試中的泛化能力。
- GBDT:GBDT 是指多個決策樹的基於提升(boosting)的集成。GBDT 的葉節點自動表示所選擇的重要特徵,其可被用於提升 FM 的性能。GBDT 先要單獨進行預訓練,之後才會與 FM 和 DNN 進行聯合訓練。由於 GBDT 對非歸一化的特徵的存在而言是穩健的,所以其輸入中歸一化和非歸一化的稠密特徵都可以有。
- FM:FM 可自動執行特徵組合和二階交叉特徵計算。因此,FM 可以執行特徵融合和在 GBDT 輸出和稀疏特徵上執行交叉,由此能在推薦點擊率(CTR)預估方面取得當前最佳的結果。
- Sigmoid:Sigmoid 能為 DNN 和 FM 的輸出加權並在其結果上執行 sigmoid 變換。
RSLIME
這裡使用 X 表示輸入數據,x 表示單個輸入樣本。樣本 x 的 n 維輸入特徵表示為 Zn 或 (z1…zn)。z 表示單個特徵組合,推理模型表示為 f。線性回歸模型 g ∈ G 等可解釋的模型經過訓練後用於執行單個案例的特徵重要度分析。
RSLIME 是局部可解釋的與模型無關的解釋(LIME)方法的一種擴展。LIME 使用了一種可解釋的模型來評估推理模型 f 在單個輸入樣本 x 上的特徵重要度。設有 100 個特徵 (z1…z100) 的一個輸入樣本 x,f(x) 是 x 的推理結果。
LIME 首先會自動生成數千個不同的特徵組合(比如 z1…z99、z2…z100)。然後對於每個特徵組合,LIME 根據這個組合內部的特徵(同時掩蓋其它所有特徵)計算該推理模型 f 的預測結果。為了說明清楚,使用特徵組合 z1…z99 時,表示 z100 被 0 掩碼掩蓋。
給定每個特徵組合 z 和對應的預測結果 f(z),LIME 會計算 z 和 x 的距離並將其作為 z 的權重,然後會訓練一個可解釋的模型(以線性回歸模型為例)g 將 z 映射到 f(z) 和 f(x) 之間的絕對差值,然後用作單個案例特徵重要度的直接指示。這個可解釋模型中每個特徵的最終權重都會被用作特徵重要度。因此,LIME 的局部特徵診斷演算法可以表示為:
其中 Ω(g) 表示模型複雜度,π_x(z) 表示樣本 x 的特徵組合。
愛奇藝是如何將 LIME 擴展為 RSLIME 以將其用於推薦系統的排序模塊的呢?
在他們的單案例分析流程中,RSLIME 遵循 LIME 的近似方法,其中將排序模塊用作推理模型。此外,他們還基於 MapReduce 思想提出了一種多案例累積特徵重要度分析方法。下面會介紹單案例和多案例 RSLIME 的實現細節。
實現細節
圖 5 展示了使用 RSLIME 進行單案例特徵重要度分析的完整過程。
圖 5:用於單案例分析的 RSLIME 的實現。
首先,將推薦排序過程所需的特徵和分數通過在線模型調試介面,得到在線模型在同一時間的預估點擊率(PCTR)。然後將這些特徵和分數輸入與在線模型同步更新的離線模型,計算得到 PCTR;再通過檢查這兩個 PCTR 是否一樣來驗證在線模型和離線模型的一致性。
檢查過一致性之後,再將該離線模型與同樣的特徵和分數輸入 RSLIME 得到排在前面的特徵和它們的重要度。最後可將特徵索引轉譯為特徵名,以便分析特徵重要度。
為了將 RSLIME 用於多案例累積特徵重要度分析,愛奇藝的研究者以一種分散式的方式重新實現了這個技術流程。如圖 6 所示,RSLIME 和輸入數據被包裝和分發到了 HDFS 上的不同數據節點,然後使用 MapReduce 單獨分析每個節點上的樣本。最後,通過聚合所有被使用的樣本的特徵重要度分數,可得到累積的特徵重要度。
圖 6:用於多樣本分析的 RSLIME 的實現。
實驗
愛奇藝的研究者執行了一系列實驗來驗證他們提出的方法,其中包括單案例分析、與 GBDT 的對比試驗、與 AUC Check 的對比實驗。結果表明了 RSLIME 的有效性,下面列出了部分實驗結果,具體詳情請參閱原論文。
圖 7:單案例分析的結果。
圖 8:RSLIME 與 GBDT 對齊的不同特徵類型的比例。
※構建AI前的數據準備,SQL要比Python強
※讓機器自動寫SQL語言,首屆中文NL2SQL挑戰賽等你來戰
TAG:機器之心 |