BERT在eBay推薦系統中的實踐

導讀
推薦系統是電子商務平臺的重要組成部分。然而許多傳統的推薦系統存在冷啓動、內容單一等缺陷。針對這類問題,eBay的研究員以BERT模型爲基礎,結合用戶歷史行爲數據,提出了一種基於項目的協同過濾算法。該模型在大規模真實數據集上取得了顯著效果,提供了冷啓動場景推薦的解決方案。相關論文已被ACL2020的ECNLP Workshop收錄。

一、前言

作爲電商網站的核心組成之一,傳統的推薦系統算法分爲兩大類: 協同過濾推薦算法和基於內容的推薦算法 。然而這兩類算法在真實數據集上都存在一些侷限性。

傳統的協同過濾算法

基於用戶的協同過濾算法 [1]會根據種子用戶評論過的項目來發現相似用戶,然後選出這些相似用戶給出較高評分的項目推薦給種子用戶; 基於項目的協同過濾算法 [2]會以種子項目爲基礎,挑選那些有着相似用戶評分的項目。

然而,在eBay這類活躍度較高的電商網站上,項目和用戶每時每刻都在更新,傳統的協同過濾算法會面臨數據稀疏性的問題,難以在冷啓動場景給出優質的推薦內容。

基於內容的推薦算法

這類算法致力於計算種子項目與候選項目在內容方面的相似度(包括點擊、評分、語義等),然後挑選出最相似的項目進行推薦。儘管這類算法避免了數據稀疏度的影響,但其對內容的依賴決定了它們難以提供新穎的推薦,不利於挖掘用戶的潛在興趣[3]。

近年來,隨着神經網絡模型的崛起,推薦系統也開始在深度學習領域進行嘗試。本研究以BERT模型爲基礎,結合用戶歷史行爲數據,將Masked Language Model和Next Sentence Prediction這兩個BERT模型的訓練任務從自然語言領域遷移到電商領域,提出了一種新的基於項目的協同過濾算法。

本研究的優勢在於

(1)不同於以往用項目 ID來聚合歷史信息的方式,我們以項目標題爲輸入內容,使得相似的項目獲得相似的編碼,有效解決傳統推薦算法中的冷啓動問題。

(2)以用戶歷史行爲數據來訓練模型,相較於挖掘項目相似度,本研究能更好地發掘用戶的潛在興趣。

在大規模真實數據集上的實驗表明,本研究能顯著解決冷啓動、內容單一等問題,獲得高質量的推薦內容。

二、模型

如上所述,對於一個動態的電子商務平臺,商品無時無刻不在更新,這導致用戶-項目的交互矩陣極爲稀疏。這一特性給傳統的推薦系統帶來了兩點挑戰:(1)長尾推薦,即那些非熱門的項目難以有機會被推薦;(2)模型需要不斷地重新訓練和部署,以適應新上架的項目。

爲了解決這些問題,我們選擇使用標題的tokens來表示每個項目,而不是採用唯一的ID來表示,並將這些tokens進一步映射到連續的向量表示空間中。 由此,兩個具有相同標題的項目將被視爲同一個項目,它們的用戶行爲數據可以被彙總共享。對於冷啓動的項目,模型可以利用標題來發現與之前觀察到的項目的相似性,從而發掘相關的推薦。

本文提出基於項目的協同過濾算法,其目標是對兩個項目之間的相關性進行評分,對於任一種子項目,將得分最高的若干項目作爲推薦結果。我們以BERT模型[4]爲基礎,實現了這一算法。不同於傳統的RNN / CNN結構,BERT模型是以transformer encoder爲結構的語言模型,採用注意力機制來計算輸入和輸出之間的關係。BERT和transformer的結構如圖1所示[4][5]。

BERT模型的訓練可分爲兩部分:Masked Language Model和Next Sentence Prediction。 在本算法中,我們將這些任務遷移到電商推薦任務上:Masked Language Model on Item Titles和Next Purchase Prediction。

圖1: BERT & Transformer 結構

Masked Language Model on Item Titles :電商平臺上項目標題的tokens分佈,與BERT模型預訓練所用的自然語言語料中的tokens分佈有着很大的不同,爲了模型能夠更好地理解電商推薦環境中的語義信息,我們將這一任務作爲目標之一對模型進行再訓練。在訓練過程中,我們遵循Devlin等人的方案[4],對項目標題中隨機15%的tokens做MASK處理,則該部分的損失函數爲:

Next Purchase Prediction :在BERT模型中,Next Sentence Prediction用來預測一個句子A是否是另一個句子B的後一句。我們將其轉換爲推薦問題:給定一個種子項目A,預測另一個項目 B是否是用戶要點擊購買的下一個項目。以項目A的標題替換原模型中的句子A,以項目B的標題替換原模型中的句子B,將標題拼接起來作爲模型的輸入。我們從用戶的歷史行爲數據中收集模型的訓練數據,對於種子項目,以同一個用戶會話中被購買的項目爲正例,並從inventory中隨機抽取負例。由此,給定正例集合和負例集合,該部分的 損失函數 爲:

故,模型兩部分的 聯合損失函數 如下:

三、實驗

爲了驗證這一算法在電商推薦系統中的表現,我們收集了eBay的真實數據進行實驗。共收集了大約 8,000,000 對項目作爲訓練集,其中約33%爲正例(用戶在同一會話中購買的項目)。可以看到,項目-項目的交互矩陣非常稀疏,傳統的推薦算法難以取得好的效果。我們以同樣的方法收集了大約 250,000 對項目作爲驗證集,用於防止模型過擬合。

對於測試集,則採用了基於冷啓動數據的採樣方案,以驗證我們的算法在這類傳統協同過濾算法無法處理的情景中的表現。共收集了10,000對正例,每一對中的種子項目未在訓練集中出現過。針對每一對正例,我們隨機採樣999個項目作爲負例。由此,每個種子項目會有1000個候選項目。在測試時,對這1000個候選項目進行排序,並計算Precision@K、Recall@K、NDCG@K等指標,據此對算法進行比較。

爲了進行比較,我們需要構建一個baseline算法。 由於測試集中的種子項目都是全新的項目,在訓練集中均未觀察到,沒有歷史數據,所以無法應用傳統的協同過濾算法。我們構建了一個雙向LSTM模型作爲baseline,該模型的輸入同樣爲兩個項目標題的拼接,損失函數與我們算法中Next Purchase Prediction部分的損失函數一致。

實驗結果如表1所示。可以觀察到,我們提出的算法大大優於baseline算法 。當只針對Next Purchase Prediction這一任務對BERT模型進行再訓練時,Precision@1、Precision@10、Recall@10、NDCG@10分別高出baseline算法310.9%、96.6%、93.9%和150.3%。當同時加入Masked Language Model on Item Titles這一任務時,各項指標進一步提高了111.0%、38.6%、38.3%和64.0%。 由此可以看出,我們提出的以BERT模型爲基礎的基於項目的協同過濾算法具有明顯的優越性。

表1: 實驗結果

爲了直觀地檢查算法給出的推薦結果的質量,我們在表2中給出了一個例子。種子項目爲蜘蛛俠主題的T恤,推薦的商品爲T恤、配套服飾、餐具裝飾等,且均爲漫威主題。從這個例子可以看到,該算法可以自動地發掘推薦商品的選擇標準而無需人工指定,並且可以在專注特定類別與挖掘廣泛興趣之間找到平衡點。

表2: 推薦結果示例

四、總結

我們以BERT模型爲基礎,結合用戶歷史行爲數據,提出了一種基於項目的協同過濾推薦算法。以標題的tokens的向量表徵取代唯一ID來表示項目,能將相似項目的信息匯聚在一起,解決了傳統協同過濾推薦算法中的長尾推薦、冷啓動等問題。通過在大規模真實數據上進行實驗,證明了該算法在理解項目語義信息和學習大量項目之間的關係方面具有顯著優勢。

參考文獻

[1] J Ben Schafer, Dan Frankowski, Jon Herlocker, and Shilad Sen. 2007. Collaborative filtering recommender systems. In The adaptive web, pages 291–324. Springer.

[2] Greg Linden, Brent Smith, and Jeremy York. 2003. Amazon. com recommendations: Item-to-item collaborative filtering. IEEE Internet computing, (1):76–80.

[3] P Castells, S Vargas, and J Wang. 2011. Novelty and diversity metrics for recommender systems: choice, discovery and relevance. In International Workshop on Diversity in Document Retrieval (DDR 2011) at the 33rd European Conference on Information Retrieval (ECIR 2011).

[4] Jacob Devlin, Ming-Wei Chang, Kenton Lee, and Kristina Toutanova. 2018. Bert: Pre-training of deep bidirectional transformers for language understanding. arXiv preprint arXiv:1810.04805.

[5] Vaswani, Ashish, Noam Shazeer, Niki Parmar, Jakob Uszkoreit, Llion Jones, Aidan N. Gomez, Łukasz Kaiser, and Illia Polosukhin. 2017. Attention is all you need. In Advances in neural information processing systems (pp. 5998-6008).

本文轉載自公衆號eBay技術薈(ID:eBayTechRecruiting)。

原文鏈接

BERT在eBay推薦系統中的實踐

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章