如何解决高维稀疏的user-item矩阵推荐问题?
推薦系統最重要的就是解決高維稀疏的user-item矩陣推薦問題,基于百萬用戶感興趣的item給一個用戶推薦他最感興趣的item是相當有挑戰的事.這篇論文<GLocal-K: Global and Local Kernels for Recommender Systems>就提出了一個新的框架Global Local Kernel-based matrix completion(GLocal-K)去解決高維系數的user-item矩陣補全問題.
GLocal-K可分為兩個主要階段。首先,我們使用局部核化權重矩陣預訓練一個自動編碼器,它使用2d RBF核將數據從一個空間轉換為特征空間。然后預訓練的自動編碼器通過基于卷積的global kernel對rating矩陣進行fine-tune.
如下圖所示,兩個階段分別用了兩種kernel
- 預訓練階段 - local kernelised weight matrix
- fine-tuning階段 - global-kernel based matrix
需要注意的是在預訓練階段使用個finite support kernel讓密集的連接更加密集,讓稀疏的連接更加稀疏.這篇論文關注的就是矩陣補全,推斷出矩陣R(m * n)所有的打分,一共有n個user和m個item. i = {1, 2, ..., m}, 每個i由向量ri = (Ri1, Ri2, ..., Rin)表示.
首先先訓練個基于item的auto encoder,模型如下公式所示:
W(e)是h*m的矩陣,W(d)是個m*h的矩陣,b和b‘是bias.f(.)和g(.)都是非線性激活函數.
為了強調密集和稀疏連接,論文重新參數化權重矩陣,在AE中使用徑向基函數(RBF)核,這是已知的kernel trick.
RBF定義如下,K(.)就是RBF核函數,用于計算兩個集合U/V向量之間的相似度.
核函數可以描述為一個核矩陣LK,如圖所示,其中每個元素是1表示一樣的向量,接近0表示ui和vj距離較遠,然后我們就可以計算 local kernelised weight matrix,如下所示:
W'兩個矩陣的Hadamard-product乘法得到的.距離在每個向量之間 和 決定神經網絡中神經元的連接,隨著訓練向量的變化,稀疏度也是動態變化的。將核技巧應用于權重矩陣可以正則化權重矩陣并學習到泛化更強的向量表示.
最后用rating matrix去fine-tune預訓練的auto encoder. global kernel的構建和應用過程如下:
如圖所示,decoder已經輸出了預訓練模型,也已經用預估的ratings初始化了rating矩陣,用基于item的平均池化,總結了每個item的所有信息,得到了pooling結果M = {u1, u2, ..., um},然后用多個核 K = {k1, k2, ...,km}(m*t^2的矩陣),通過內積聚和pooling結果,就如圖所示.聚合后的GK(t * t)就是global convolution kernel,并將其用于user-item矩陣的特征抽取作為fine-tuning的輸入.
參考文獻
1、GLocal-K: Global and Local Kernels for Recommender Systems
https://arxiv.org/pdf/2108.12184v1.pdf
總結
以上是生活随笔為你收集整理的如何解决高维稀疏的user-item矩阵推荐问题?的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 文本摘要方法总结
- 下一篇: 三种Target Encoding方式总