「免費學習 60+ 節公開課:投票頁面,點擊講師頭像」
來源 | 深度傳送門(ID: deep_deliver)
導讀:一起來看下當下深度推薦系統中序列推薦建模的最新進展與挑戰,內容主要摘自 IJCAI 2019論文:Sequential Recommender Systems: Challenges, Progress and Prospects。
背景
序列推薦系統(SRS)主要對序列中的 user-item interactions 進行順序依賴性建模來推薦給用戶可能感興趣的item,傳統的推薦系統包括 content-based 和 collaborative filtering RSs,都是以靜態方式對user-item interactions 進行建模,並且只能找到 user 的一般 preference。但是,SRS 將user-item interactions 視為動態序列,並考慮了順序依賴性,從而找到user當前和最近的 preference 以進行更準確的推薦。 [Chen et al., 2018]
Why Sequential Recommender Systems?
User-item interactions 本質上就是有順序的, users’ shopping behaviours 本來就是順序行為,這種類型的順序依賴關係通常存在於交易數據中,但不能被常規的content-based 和 collaborative filtering RSs 很好地找到。[Kang et al., 2018]
隨著時間的推移, User's preference和 Items' popularity都是動態的,而不是靜態的,這樣的動態變化對於準確地對用戶或物品進行分析以獲得更準確的建議非常重要,並且只能由SRS找到這種關係。
User-item interactions 通常是在一定順序的環境下發生的,不同的 contexts 通常會導致不同的user-item interactions,但是,諸如協同過濾之類的傳統RS通常會忽略這些。但是,SRS 將先前的sequential interactions 作為contexts,以用來推薦。因此,避免重複推薦已經購買的或與之相似的item,已用來增加推薦多樣性。
所以序列推薦系統到底如何建模?SRS接受的輸入是一系列的 User-item 交互,輸出則試圖預測User接下來可能進行交互的Item。[Wang et al., 2018] ,[Huang et al., 2018]
數據特點以及挑戰
由於現實場景中用戶購物行為,商品特徵和特定購物環境的多樣性和複雜性,user-item interaction data通常具有不同的特點。不同的數據特特點本給SRS帶來了不同的挑戰,需要不同的解決方案,如表1所示。在以下五個小節中,我們分別討論了由不同數據特點引起的SRS的五個關鍵挑戰。在每個小節中,我們首先介紹特定的數據特點,然後說明相應的挑戰。
Handling Long User-Item Interaction Sequences
較長的 user-item interaction序列由相對大量的 user-item interaction組成,它使得內部的多個交互具有更復雜,更全面的依賴,這使得SRS更具挑戰性,其中兩個很重要的挑戰是:
1. 學習高階順序依賴 learning higher-order sequential dependencies
Higher-order sequential dependencies 在 user-item interaction中普遍存在,特別是長序列中,低階的可以用MC [Garcin et al., 2013] 或FM [Rendle et al., 2010; Hidasi and Tikk, 2016] 解決,高階的由於其跨越了多個user-item interaction的複雜多級級聯依賴很難找出,目前主要有兩種方法:
higher-order Markov-chain models [He and McAuley, 2016]
recurrent neural networks (RNN) [Hidasi et al., 2016a]
但是高階馬爾可夫鏈模型所涉及的 historical states 非常有限,因為要估計的模型參數數量隨階數呈指數增長;而RNN中使用的強順序假設限制了RNN在具有靈活順序的序列中的應用
2. 學習長期的順序依賴 learning long-term sequential dependencies
是指序列中彼此遠離的interaction之間的依賴性,例如 {a rose, eggs, bread, a bottle of milk, a vase} 購物籃中的rose和vase之間就是長距離且高度依賴的,這種情況在現實世界中並不罕見,因為用戶的行為通常高度不確定,因此可能會將任何物品放入購物車。
[Wu et al., 2017] 和 [Hidasi et al., 2016a] 分別使用 LSTM 和 GRU 來解決這個問題,但是,RNN的強假設序列中的任何相鄰項都是高度相關的,RNN模型很容易生成錯誤的相關性
通過利用混合模型的優勢,將具有不同時間範圍的多個子模型組合在一起,以捕獲短期和長期依賴關係 [Tang et al., 2019]
Handling User-Item Interaction Sequences with a Flexible Order
在現實世界中,某些 user-item interaction sequences 是嚴格排序的,而其他序列可能不是嚴格排序的,即,並非所有相鄰 interaction 都是有順序的,例如{milk, butter,flour},牛奶和黃油之間沒有嚴格的順序,但是麵粉順序取決於它們的結合。
因此,對於具有靈活順序的序列,更容易找到 collective sequential dependencies,如何在flexible order的情況下找出collectivesequentialdependencies成為處理SRS中的關鍵挑戰。
現有的工作很少有解決這個問題的,現有的MC,FM,RNN 都是處理 point-wise dependencies,並不擅長 modelling and capturing collective dependencies。少數幾個工作 [Tang and Wang, 2018;Yuan et al., 2019] 試圖通過CNN解決這個問題,就像CNN建模“圖像”中不同區域之間的局部和全局依存關係一樣。
Handling User-Item Interaction Sequences with Noise
由於用戶購物行為的不確定性,大多數user-item interaction 順序都不清晰,,即其中可能包含一些不相關的交互,會對下一個交互預測產生干擾。實際上,在user-item interaction序列中,某些 historical interactions與 next interaction 密切相關,而其他historical interactions 則可能不相關甚至不相關。例如 {bacon, a rose,eggs, bread}中的rose。下一個item 可能是一瓶牛奶,它僅順序地依賴於培根,雞蛋和麵包,而與玫瑰無關。因此,SRS中的另一個挑戰是在 user-item interaction sequences with noise上學習 sequential dependencies attentively and discriminatively
少數幾個工作用attention和記憶網絡解決這個問題 attention models [Wang et al., 2018] or memory networks [Chen et al., 2018] ,有選擇地保留和利用那些與下一次交互預測真正相關的交互信息。
Handling User-Item Interaction Sequences with Heterogeneous Relations
Heterogeneous relations refer to different types of relations which deliver different kinds of information and should be modelled differently in SRSs.
In a user-item interaction sequence, except for the widespread occurrence-based sequential dependencies over user-item interactions,there are also similarity-based relations between the interacted items in terms of their features.
因此,SRS中的另一個挑戰是 how to effectively capture these heterogeneous relations embedded in the user-item interaction sequences respectively and to make them work collaboratively for the sequential recommendations
只有三篇論文 [Kang et al., 2018; Tang et al., 2019; Wang et al., 2019] 於此相關,混合模型集成了由不同子模型建模的不同類型的關係,以協作生成順序建議。
Handling User-Item Interaction Sequences with Hierarchical Structures
通常,主要有兩種與用 user-item interaction 序列相關的層次結構:
(1) the hierarchical structure between meta data and user-item interactions
users' demographics 在一定程度上會影響用戶購買的決策,同樣商品特徵也會影響用戶購買的決策 [Hidasi etal., 2016b]
(2) the hierarchical structure between sub-sequences and user-item interactions
一個user-item interaction sequence 包括多個sub-sequences (也叫sessions), In such a case, in addition to the prior interactions within the current sub-sequence, the historical sub-sequences may also influence the next user-item interaction to be predicted in the current sub-sequence [Ying et al., 2018]
因此,SRS中的另一個關鍵挑戰是 how to incorporate the hierarchical dependencies embedded in these two kinds of hierarchical structures into sequential dependency learning to generate more accurate sequential recommendations.
一方面,為了考慮item 特徵對 user-item interactions的影響,針對SRS提出了一系列功能豐富的神經模型,包括[Hidasi et al。,2016b]。相比之下,現有的SSR很少考慮users' demographics影響,應朝這個方向做出更多的努力;另一方面,一些hierarchical models,包括 hierarchical embedding models [Wang et al., 2015], hierarchical RNN [Quadrana et al., 2017] and hierarchical attention networks [Ying et al., 2018] 將historical sub-sequences 放到順序依賴學習中,以構建功能更強大的SRS。
研究最新進展
1. Traditional Sequence Models for SRSs
Sequential pattern mining [Yap et al., 2012]
Markov chain models [Garcin et al.,
2013] [Feng et al., 2015]2. Latent Representation Models for SRSs
Factorization machines [Rendle et al.,2010; Hidasi and Tikk, 2016]
Embedding [Wang et al., 2015;2018] [He et al., 2018]
3. Deep Neural Network Models for SRSs
主要用RNN,最近開始用CNN和GNN 來彌補 RNN的缺陷。
RNN-based SRSs
LSTM- [Wu et al., 2017],GRU-based [Hidasi et al., 2016a]
近年來見證了基於RNN的SRS的繁榮發展,它們主導了基於深度學習的SRS甚至整個SRS的研究,除了基本的RNN結構外,還提出了一些改進來找出序列中更復雜的依賴項,例如:hierarchical RNN [Quadrana et al., 2017]
但是,對於SRS,RNN並非完美無缺,其缺點有兩個方面:
(1)由於強序列假設很容易產生不真實的依賴關係,即一個序列中的任何相鄰交互都必須是依賴的,在現實世界中可能並非如此,因為序列中通常存在不相關的interactions;
(2)只能在忽略 collectivedependencies 時才捕獲 point-wise dependencies(例如several interactions collaboratively affect the next one)。
CNN-based SRSs
由於CNN對序列中的交互沒有強大的順序假設,並且以類似圖像那樣而不是過度交互的方式學習區域之間的關係,因此,基於CNN的SRS可以在某種程度上彌補基於RNN的SRS的上述缺點。但是,由於CNN中使用的 filter 尺寸有限,因此基於CNN的SRS無法有效地捕獲長期缺陷,從而限制了它們的應用。[Tang and Wang, 2018; Yuan et al., 2019]
GNN-based SRSs
首先在 sequence data 上建立一個有向圖,把每個 interaction(例如購物籃中的商品)作為一個node,然後把sequence 映射為一個path;然後在整個圖上學習user 或 item 的embedding 表示。 [Wu et al., 2019]
這種方法充分利用了GNN的優勢來捕獲結構化關係數據集中的複雜關係。基於GNN的SRS通過揭示 recommended items 與 corresponding sequential context之間的複雜關係,顯示了提供可解釋性推薦的強大潛力。
Attention models
Attention models are commonly employed in SRSs to emphasize those really relevant and important interactions in a sequence while downplaying those ones irrelevant to the next interaction
一般與其他結構結合:shallow networks [Wang et al., 2018]、RNN[Ying et al., 2018]。
Memory networks
記憶網絡被引入SRS,以通過合併 external memory matrix直接捕獲任何 historical user-item interaction與下一個user-item interaction之間的依賴關係。
Memory matrix 使得有可能以更明確和動態的存儲和更新 historical interactions,從而提高模型的表達能力並減少那些不相關交互的干擾 [Chen et al., 2018]
此外,一些作品結合了 key-value memory network來按存儲和更新交互項的相應知識庫信息,以學習屬性級別的偏好以增強推薦[Huang et al., 2018]。
Mixture models
基於混合模型的SRS結合了各種不同的模型,這些模型擅長捕獲各種依賴關係,從而增強了整個模型捕獲各種依賴關係以提供更好建議的能力。
[Tang et al., 2019] 結合了分別適合於短期和長期依賴項的不同類型的編碼器,以為後續建議學習更精確的序列表示,並且已證明是非常有效的
Open Research Directions
Context-aware sequential recommender systems 情景感知
Social-aware sequential recommender systems 社交感知
Interactive sequential recommender systems
Cross-domain sequential recommender systems 跨域推薦,例如購買汽車之後,可以推薦給用戶車險,車和保險就是不同的域
參考
[1] Sequential Recommender Systems: Challenges, Progress and Prospects
[2] 更多最前沿的推薦廣告方面的論文分享請移步如下的GitHub項目進行學習交流、star以及fork,後續倉庫會持續更新最新論文。
GitHub鏈接:https://github.com/imsheridan/DeepRec
來源:https://zhuanlan.zhihu.com/p/97505594
(*本文為AI科技大本營轉載文
章,轉載請聯繫作者)所有CSDN 用戶都可參與投票和抽獎活動
加入福利群,每週還有精選學習資料、技術圖書等福利發送
閱讀更多 AI科技大本營 的文章