KDD’19 | 預測用戶和商品的動態嵌入趨勢

閱讀更多,歡迎關注公衆號:論文收割機(paper_reader)
因爲排版問題,很多圖片和公式無法直接顯示,歡迎關注我們的公衆號點擊目錄來閱讀原文。

 

"Predicting Dynamic Embedding Trajectory in Temporal Interaction Networks" KDD, 2019.

 

引言


 

       推薦系統中一個很重要的問題就是建模用戶和商品之前的序列交互。過去很多模型利用表達學習將用戶和商品嵌入到歐幾里得空間來得到他們的語義表達。對於序列問題而言,用循環神經網絡(Recurrent Neural Network,RNN)來學習表達是一個經典的辦法,但RNN只能建模歷史序列,不能對未來的用戶和商品的變化趨勢進行預測。基於此問題,斯坦福大學的Jure Leskovec組提出了動態用戶-商品共同嵌入模型(Joint Dynamic User-Item Embedding,JODIE)來解決此問題。

 

背景


 

       對於當前的動態推薦方法而言,有4個基礎性的問題有待解決。

      第一,很多現有模型僅在用戶和商品交互時產生表達。然而,用戶和商品交互的時間間隔差距很大,有時候用戶會在一週甚至一個月之後纔會買下一個商品,此時用戶的表達依然是上一次購買時候的表達,因此預測用戶表達的變化趨勢也是一個重要的事情。

      第二,商品和用戶都同時會有靜態和動態的特徵,所以需要在同一框架下同時考慮靜態和動態的特徵。

      第三,許多當前的方法通過對每個用戶可能感興趣的商品進行排序預測用戶和商品的交互,然而這種方法時間複雜度過高,在實際場景商品數過多的情況下並不好用

      第四,過去的序列模型在訓練時一次只能處理一個交互,這在大規模數據集會有很低的訓練效率。

     爲了解決這個問題,作者提出了JODIE模型和t-Batch訓練方法。如圖1所示,我們不僅要預測用戶未來要買的商品,同時還要預測用戶和商品未來的變化。

 

圖1. 預測用戶和商品未來的變化趨勢

 

模型


 

       如圖2所示,Jodie模型本質上採用了兩條RNN和一個注意力層(Attention Layer)來得到用戶和商品表達未來的變化軌跡。

圖2. Jodie模型

 

      公式1是用戶和商品在訓練時所用的雙RNN模型。u代表用戶,i代表商品,f是用戶或商品的特徵,Δu和Δi是用戶和商品和自身上一次發生交互時相差的時間。這兩個公式代表,在時刻t時,用戶RNN的輸入是上一次交互用戶的表達,上一次交互商品的表達,用戶特徵和交互間相差的時間,商品RNN的輸入是上一次交互商品的表達,上一次交互用戶的表達,商品特徵和交互間相差的時間。

公式1

 

在我們得到用戶的表達後,我們希望知道用戶在Δ時間之後的表達,所以作者定義了一個投影函數(projection function)來預測用戶未來的表達。

公式2

 

在這個公式裏,1+w可以被看作是一個時序的注意力向量來對用戶表達作加權。在得到用戶未來的表達後,我們需要對商品未來表達作預測,具體公式如公式3:

公式3

 

j在這個公式中代表用戶u在Δ時刻後可能會購買的商品,i(t+Δ-)是用戶上一次購買商品的表達(在購買i之前)。我們將這些表達作爲基準(ground truth)來訓練模型。圖3表達了投影函數的意義,我們可以通過控制Δ的值來得到用戶在不同時間可能交互的目標。Jodie的損失函數如下:

公式4

 

這個損失函數是爲了最小化預測的表達和真實表達之間的差距。這裏[x,y]是將兩個向量鏈接起來,j(頭頂直線)是用戶未來真實購買的商品j的靜態表達,用one-hot向量來表示,j(t-)是j這個商品的動態表達,是通過RNN在t+Δ時刻之後得到的表達。損失函數的後面兩項是正則化項,意義是爲了讓用戶和商品的表達和之前它們的表達不要過大。預測的時候就只需要找到和預測出的商品表達在歐式距離上最接近的商品就可以了。

圖3. 投影函數

 

       對於傳統的RNN而言,每一個時刻只能處理當前時刻的用戶商品交互,這樣會導致運算資源浪費,從而影響訓練效率。T-Batch本質上是定義一個最小時間片t,將這個時間片中的交互一起訓練。具體來說,首先把所有(u,i)組合按時間排序,然後從前到後把t時間內所有不同的(u,i)放在一個集合裏(同一個集合裏每個u和i只能出現一次),從而每個集合就是一個batch。

 

實驗


 

        本文在Reddit,Wikipedia和LastFM三個數據集上對用戶未來可能交互的商品進行了實驗。和同類型的動態模型比,Jodie在實驗效果上有明顯的優勢。

 

結論


 

       Jodie這個模型給動態推薦模型一個新的思路,即通過預測表達來進行推薦,這樣可以充分考慮時間因素帶來的影響,同時還可以進行一些別的推薦模型做不到的事情,比如預測交互發生的時間。

 

參考文章

https://cs.stanford.edu/people/jure/pubs/jodie-kdd19.pdf

閱讀更多,歡迎關注公衆號:論文收割機(paper_reader)
因爲排版問題,很多圖片和公式無法直接顯示,歡迎關注我們的公衆號點擊目錄來閱讀原文。


往期文章:

 

 

閱讀原文

 

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