推薦系統論文之序列推薦:KERL

Ethan_CW發表於2021-05-17

KERL: A Knowledge-Guided Reinforcement Learning Modelfor Sequential Recommendation

摘要

‍時序推薦是基於使用者的順序行為,對未來的行為進行預測的任務。目前的工作利用深度學習技術的優勢,取得了很好的效果。但是這些工作僅專注於所推薦商品的區域性收益,並未考慮該商品對於序列長期的影響。

強化學習(RL)通過最大化長期回報為這一問題提供了一個可能的解決方案。但是,在時推薦場景中,使用者與商品互動的稀疏性,動態性增加了強化學習的隨機探索的難度,使得模型不能很好地收斂。

Specifically, we formalize the sequential recommendation task as a Markov Decision Process (MDP), and make three major technical extensions in this framework, includingstate representation, reward function and learning algorithm.

  1. 首先,從開發 exploitation 和探索 exploration 兩個方面考慮,提出用KG資訊增強狀態表示。
  2. 其次,我們精心設計了一個複合獎勵函式,該函式能夠計算序列級和知識級獎勵。
  3. 第三,我們提出了一種新的演算法來更有效地學習所提出的模型。
  4. 據我們所知,這是第一次在基於RL的序列推薦中明確討論和利用知識資訊,特別是在探索過程中。

1 INTRODUCTION

Sequential recommendation 有許多方法:classic matrix factorization、popular recurrent neural network approaches [5,9,14],通常,這些方法都是用極大似然估計(MLE)來訓練,以便逐步擬合觀測到的相互作用序列。

強化學習(RL)的最新進展[24]通過考慮最大化長期效能為這一問題提供了一個有希望的解決方案。

  • [24] Mastering the game of Go with deep neuralnetworks and tree search. Nature 529, 7587 (2016), 484–489

首先,使用者-專案互動資料可能是稀疏的或有限的。 直接學習更困難的優化目標並不容易。

其次,RL模型的核心概念或機制是探索過程。採用單一或隨機的探索策略來捕捉使用者興趣的演變可能是不可靠的。從本質上講,使用者行為是複雜多變的,將RL演算法應用於順序推薦,需要一個更可控的學習過程。所以我們以KG資料為指導,採用基於RL的學習方法進行順序推薦。

Indeed, KG data has been widely utilized in recommendationtasks [12,26,28]. 但只用在了開發 exploitation 過程,並沒有運用到探索 exploration 過程中。如 Figure 1,電影可以被分為兩個階段,直覺上,利用 KG 可以在每個階段很好地推薦電影,但是這兩個階段的電影在型別,風格和故事等許多方面都本質上是不同的。 現有的瞭解知識的順序推薦者很可能會在第一階段被“困住”,並且無法有效地捕獲這兩個階段之間的偏好漂移。

  • 【12】2018. Improving Sequential Recommendation with Knowledge-Enhanced Mem-ory Networks. In SIGIR. 505–514.
  • 【26】2018. RippleNet: Propagating User Preferences on the KnowledgeGraph for Recommender Systems.
  • 【28】2019. KGAT:Knowledge Graph Attention Network for Recommendation. In KDD. 950–958

 我們將順序推薦任務正式化為馬爾可夫決策過程(MDP),並在此框架中進行了三項主要的技術擴充套件。具體包括知識增強的狀態表示方法、引入知識的獎勵機制,以及基於截斷策略的學習機制。

  1. 首先,提出用KG資訊增強狀態表示。通過學習序列級和知識級的狀態表示,我們的模型能夠更準確地捕捉使用者偏好。為了實現這一目標,我們構建了一個預測未來使用者偏好知識特徵的歸納網路。
  2. 其次,我們精心設計了一個能夠同時計算序列級和知識級獎勵訊號的複合獎勵函式。For sequence-level reward,the BLEU metric [21] from machine translation, and measure the overall quality of the recommendation sequence. For knowledge-level reward, we force theknowledge characteristics of the actual and the recommended se-quences to be similar.
  3. Third, we propose a truncated policy gradientstrategy to train our model. Concerning the sparsity and instabilityin training induction network, we further incorporate a pairwiselearning mechanism with simulated subsequences to improve the learning of the induction network.(沒理解)

2 RELATED WORK

Sequential Recommendation.順序推薦旨在根據使用者的歷史互動資料來預測他們的未來行為。 早期工作通常利用馬爾可夫鏈來捕獲順序行為的單步依賴性。

  • 【22】2010. Factor-izing Personalized Markov Chains for Next-basket Recommendation. In WWW.811–820 設計了個性化的馬爾可夫鏈以提供建議.
  • 【27】2015. Learning Hierarchical Representation Model for NextBasket Recommendation.利用表徵學習方法對使用者和專案之間的複雜互動進行建模。
  • 【19】
  • 2018. Translation-based factorization ma-chines for sequential recommendation. InRecSys. 63–71. 結合 translation and metric-based approaches for sequential recommendation.

另一條線是對多步順序行為進行建模,這被證明是順序推薦的一種更有效的方法,並且基於遞迴神經網路(RNN)的模型在該領域得到了廣泛的應用[5,20,29]。基於RNN的模型可以很好地捕獲較長的序列行為進行推薦。

  • 【5】2017. Sequential User-basedRecurrent Neural Network Recommendations. InRecSys. 152–160.
  • 【20】2017. Personalizing Session-based Recommendations with Hierarchical RecurrentNeural Networks. InRecSys. 130–137
  • 【9】2016. Session-based Recommendations with Recurrent Neural Networks. In ICLR
  •  [14] Wang-Cheng Kang and Julian J. McAuley. 2018. Self-Attentive Sequential Rec-ommendation. In ICDM. 197–206

3 PRELIMINARY

除了使用者的歷史互動資料,還有一個 KG,其中假設每個item可以與KG對齊。【33】2019. KB4Rec: A Data Set for Linking Knowledge Bases withRecommender Systems. Data Intell.1, 2 (2019), 121–136。

任務定義:主要圍繞著 predict the next item 與【12】2018. Improving Sequential Recommendation with Knowledge-Enhanced Mem-ory Networks. InSIGIR. 505–514 設定相似。

4 OUR APPROACH

 

 

4.1 A MDP Formulation for Our Task

環境狀態包含用於順序推薦的所有有用資訊,包括互動歷史和KG。st = [ i1:t , G ],其中 G 代表 KG 資訊,s0 = [0, G]。Vst 代表狀態 st 

根據狀態,the agent 選擇一個 action at  屬於A,即從課程集合 I 選擇中一個課程 it+1 進行推薦。

在 action 後,agent 收到一個 reward,例如 rt+1 = R(st, at, 獎勵函式可以反應出推薦的質量。並且狀態根據狀態轉移函式進行更新

T(T:S×T→S):st+1=T(st,at)=T([u, i1:t, G],ij(at))。

4.2 Learning Knowledge-Enhanced State Representation

儘管已經在基於序列的任務中提出了許多RL方法[21,35],但它們主要集中在學習演算法上,並且缺乏對外部知識資訊的利用

  • 【21】2016.Sequence Level Training with Recurrent Neural Networks. InICLR.
  • 【35】2019. Reinforcement Learning to Optimize Long-term User Engagement inRecommender Systems. InKDD. 2810–2818.

本文為了 enhance the state representations 分為兩部分:sequence-level and knowledge-level state representations.

4.2.1 Sequence-level State Representation.

 採用標準的 GRU for encoding previous interaction sequence。這樣主要捕獲使用者偏好的順序特徵,並且不利用知識資訊來推導狀態表示。

4.2.2 Knowledge-level State Representation.

如【12】,KG 可以用來提高序列推薦的表現。However, previous methods mainly consider enhancing item or user representations with KG data for fitting short-term behaviors with MLE [35]. 所以為了平衡 exploitation and exploration,提出兩個 knowledge-based preference for a user,當前知識偏好(簡稱當前偏好)和未來知識偏好(簡稱未來偏好)。

  • 【12】2018. Improving Sequential Recommendation with Knowledge-Enhanced Mem-ory Networks. InSIGIR. 505–514.
  • 【35】2019. Reinforcement Learning to Optimize Long-term User Engagement inRecommender Systems. InKDD. 2810–2818.

Learning Current Preference.  先用 TransE 得到每一個 item it 的 KG embedding Veit ,再使用 平均池方法(a simple average pooling method)來聚合使用者與之互動的歷史項的 embedding。

Predicting Future Preference.  As the key point to achieve effective exploration,利用未來偏好來捕捉使用者在未來時間的興趣。我們構建了 an induction network 來預測未來偏好。通過使用 全連線網路結果, an induction network 可以更好地捕捉使用者興趣的演變,特別是偏好漂移。

4.2.3 Deriving the Final State Representation.

最後的狀態表示為 vst where “⊕” is the vector concatenation operator

4.3 Setting the Reward with Knowledge Information

 

把 reward function 分為兩部分

Sequence-level Reward. 在序列推薦中,一個好的獎勵函式不僅要考慮單個步驟的表現,還需要衡量推薦序列的整體表現。用上了評估機器翻譯的指標 BLEU。

其中 precm  是修正後的精度,計算如下:

pm is an m-gram subsequence of it:t+k  ,# 代表統計前者在後者中出現的次數。

Knowledge-level Reward. 推薦的 item 與一樣利用 TransE 聚合,計算相似度,如下:

4.4 Learning and Discussion

Based on these subsequences, a pairwise ranking mechanism is then proposed to learn the induction network. 具體演算法流程

接下來介紹細節。

4.4.1 Training with Truncated Policy Gradient.

目標是 learn a stochastic policy π that maximizes the expected cumulative reward J(Θ) for all uses. J(Θ) 的導數如下:


其中 γ is the discount factor to balance the importance of the current reward and future reward。

我們採用了一種截斷式的 policy gradient 策略來對目標函式進行優化,對於使用者的每個狀態 , 隨機取樣L條長度為 k 的子序列,進行梯度更新:

4.4.2 Training the Induction Network.

在 KERL 中我們通過設計一個推斷網路來建模歷史知識和未來知識的關聯。但是訓練資料的稀疏性使得該網路不能很好地收斂。考慮到 KERL 通過 policy gradient 策略取樣了一系列子序列進行模型的學習,我們試圖引入這些序列,通過構造一個排序模型學習推斷網路。

具體的,我們先得到每一個序列的知識表達, 。給定兩個子序列知識表達  ,我們按照如下的規則構造鍵對

4.4.3 Discussion.

KERL 模型的主要創新之處在於它結合了未來基於知識的偏好,這個在【11】【12】和【28】被忽略了,導致很難捕捉使用者興趣偏移。

  • 【11】2019. Taxonomy-Aware Multi-Hop Reasoning Networks for SequentialRecommendation. InWSDM. 573–581.
  • 【12】2018. Improving Sequential Recommendation with Knowledge-Enhanced Mem-ory Networks. InSIGIR. 505–514
  • 【28】2019. KGAT:Knowledge Graph Attention Network for Recommendation. InKDD. 950–958

儘管以前基於RL的推薦模型[30,35,37]迫使模型最大化長期獎勵,但它們要麼依賴獎勵功能,要麼採用隨機探索策略。 因此,這些基於RL的模型尚未很好地研究(informative exploration strategy)資訊探索策略。

  • 【30】2019. Reinforcement Knowledge Graph Reasoning for Explainable Recommenda-tion. InSIGIR.
  • 【35】2019. Reinforcement Learning to Optimize Long-term User Engagement inRecommender Systems. InKDD. 2810–2818
  • 【37】2019.MarlRank: Multi-agent Reinforced Learning to Rank. InCIKM. 2073–2076.

5. 模型試驗效果

慮到我們的模型把 KG 的資訊分別融合進了激勵函式和狀態表達之中,我們先通過剝離試驗來具體的分析每一塊的效能。

針對 RL 的狀態表示,KERL 總共使用了三種不同的資訊,分別是序列資訊,歷史知識,以及未來知識。我們首先分析一下不同的資訊對於效能的影響,具體設計了三種基於不同狀態表示 KERL 模型,包括 KERL僅用時序的資訊;KERLh+c利用時序與歷史知識資訊; KERLh +f 利用時序與未來知識資訊。我們將這三個模型同 KERL 進行比較,具體結果如圖下所示:

對於激勵函式,我們分析了單獨考慮時序相似性和知識相似性對於模型效能的影響。下圖展現了在 CD 資料集上模型的效能:

我們在 next-item 和 next-session 兩個任務上驗證了模型的有效性,KERL 一致超過了所有的基線方法。

6. 總結

該論文首次探討了將強化學習應用於時序推薦任務的可行性,通過將該任務定義為 MDP 過程,賦予了時序預測模型捕獲推薦商品長期收益的能力,並創造性地引入知識對強化學習的探索重複過程進行指導。文章在 next-item 和 next-session 兩個推薦任務上驗證了模型的有效性。

相關文章