再谈序列化推荐-集成item类目属性
序列化推薦已經火了很久了,但是現存的方法并沒有對item和類目屬性之間的復雜關系進行建模,這篇論文Item Categorical Attrbute Integrated Sequential Recommendation認為挖掘這種關系對下一個item推薦具有很大影響。所以該文提出了一個集成item類目屬性的序列化推薦框架,該框架由兩個部分組成,一個是Item-Attribute Aggregation(IAA)模型,一個是Entity Sequential(ES)模型。IAA模型中,用圖的方法表達item和屬性之間的復雜關系,在ES模型中,里面有一個item序列(IS)模型和一個屬性序列(AS)模型。所以最終ICAI-SR用兩個序列預估下一個item。
ICAI-SR架構
從上圖架構圖中我們可以看到,IAA模型用于挖掘item和屬性之間的關系,得到它們的embedding,ES用于發掘序列的特性。IAA和ES從不同角度挖掘item和屬性之間的關系,舉例來說,IAA建模了哪些item擁有哪些屬性,ES編碼了item/屬性序列之間的轉移模式。從圖中我們可以看到,ES模型給每種類型的Entity都進行了序列化建模。因為一個item會有多個屬性,所以需要把這些屬性的embedding進行聚合喂給AS模型,最后IS和AS模型一起預測next item。
IAA模型包含兩層,如下圖所示:
一共有j種類型的屬性A = {Aj | 1 <=j <= T},論文參考了GraphSAGE,對每個item,會采樣固定數目(S)的不同類型的鄰居屬性。從上圖中,我們很清晰的看到第一層將不同類型的屬性進行聚合成T個屬性向量,這T個屬性向量再經過第二層進行聚合,最后成為item的embedding。可以定義為下式:
Attribute to item Aggregation:
Inner attribute aggration layer:
說完了IAA建模,我們看下序列建模,這里論文并沒有使用什么較為創新的方法,用的是GRU和BERT作為ES模型.通過IAA我們會得到item序列和x個屬性序列,如果序列長度為T,經過ES層,我們就會得到T * (1 + x)個embedding, 預估2~T+1的item,用softmax計算loss,注意這里不需要把屬于同一個T下的1+x個embedding concat起來預估下一個item,論文里之間是把這1+x各embeding分別softmax,算log loss,在把所有loss相加,如下式所示,屬性帶來的loss需要有個超參進行控制:
實驗
可以看到ICAI-BERT在recall/NDCG/MRR各項指標中都要優于其他模型.
這里需要注意NDCG指標受超參影響也不小,如下圖所示:
參考資料
- ICAI-SR:Item Categorical Attrbute Integrated Sequential Recommendation
- https://dl.acm.org/doi/pdf/10.1145/3404835.3463060
總結
以上是生活随笔為你收集整理的再谈序列化推荐-集成item类目属性的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 特征筛选偷懒必备
- 下一篇: 内容流推荐中的个性化标题生成框架