WWW 2023 | 自動長度選擇的長短期興趣建模模型
論文標題:
AutoMLP: Automated MLP for Sequential Recommendations
論文鏈接:
https://arxiv.org/pdf/2303.06337.pdf
盡管存在上述問題,但最近基于 transformer 的高級模型可以實現(xiàn)最先進的性能,但它們對輸入序列的長度具有二次計算復雜度。為此,本文提出了一種新穎的順序推薦系統(tǒng) AutoMLP,旨在根據(jù)用戶的歷史交互更好地建模用戶的長期/短期興趣。此外,我們通過端到端優(yōu)化設計了一種自動自適應搜索算法,以獲得更可取的短期興趣長度。通過廣泛的實驗,我們表明 AutoMLP 與最先進的方法相比具有競爭力的性能,同時保持線性計算復雜性。
如下圖所示,一個用戶的行為,可能收到長期行為的影響(user1),也可能收到短期行為的影響(user2),也有可能 both(user3)。
序列推薦的三個重要信息:
1. 相對靜態(tài)的長期興趣;2. 相對獨立、動態(tài)的短期興趣;3. item 的屬性特征。
現(xiàn)有的方法有:1. 基于 RNN 的方法,難以捕獲長期依賴;2. 基于 transformer 的方法,位置不敏感,難以區(qū)分異構的長短期行為,并且由于 2 次復雜度,也不能應用在太長的序列上;3. 因此出現(xiàn)了長短期興趣分開建模的方法,但這種方法往往利用經(jīng)驗選擇固定長度的短期興趣,顯然無法自適應不同的場景與任務。
因此提出了 AutoMLP 模型,全稱為:Automated Long-term Short-term Multi-Layer Perceptron for sequential recommendation。AutoMLP 僅包含 MLP 塊,因此保持線性時間和空間復雜度。autoMLP 設計了一個長期興趣模塊和一個短期興趣模塊來分別捕捉長期和短期的依賴關系。為了自動適應不同任務的短期興趣窗口,利用連續(xù)松弛將離散序列長度通過 AutoML 技術轉換為連續(xù)且可微分的表示,這可以通過梯度下降進行優(yōu)化。
02 方法
現(xiàn)在我們介紹 AutoMLP 的概述——一種完全基于 MLP 架構的順序推薦系統(tǒng),它可以自動學習適合不同順序推薦應用的短期用戶興趣長度。AutoMLP 的主體由兩個獨立的基于 MLP 的網(wǎng)絡組成,即長期用戶興趣模塊和短期興趣模塊,如下圖所示。
具體來說,長期用戶興趣模塊占據(jù)了整個用于預測的用戶歷史行為序列,因此更傾向于長期的順序依賴。另一方面,短期用戶興趣模塊在 time 之前獲取一定數(shù)量的最新交互,傾向于對短期順序依賴性進行建模。最近交互的數(shù)量將由神經(jīng)架構搜索(NAS)算法 DARTS 確定,該算法利用連續(xù)松弛使神經(jīng)架構搜索空間可微,因此可以通過梯度下降進行優(yōu)化。最后,分離模塊的輸出將由全連接層融合以預測下一個交互項。
長期興趣模塊的輸入是全部序列,過幾個 SRSMLP 層得到用戶的長期興趣表示。SRSMLP 層就是一個 mlp-mixer,包括一個 Sequence-mixer 和 Channel-mixer,具體結構如下:SRSMLP
這個結構也非常簡單,Sequence-mixer 就是在序列維度(embedding 層的 T)做 MLP,公式如下:
Channel-mixer 就是在特征維度(embedding 層的 D)做 MLP,公式如下:
短期興趣模塊也是過幾個 SRSMLP 層,關鍵在于能用數(shù)據(jù)驅動的方式自動選擇 k 個短期行為,即:Session Length Search。
實現(xiàn)參考了 DARTS 的網(wǎng)絡架構搜索算法,先設置 M 個短期行為的候選長度:,對每個候選 k 都過一個 SRSMLP 層,并為每個 k 分配一個可學習的架構權重:,之后應用 softmax 將權重轉換為連續(xù)且可微的近似值。
p.s. 讀者問:softmax 的結果仍是一個連續(xù)值,雖然訓練時可微,但推理時并非是 ont-hot 那樣的選擇,而是加權融合,那么 Session Length Search 的選擇體現(xiàn)在哪里?
Discussion:由于短期興趣長度的值與模型性能之間的影響不是單調(diào)的,因此要確定局部最優(yōu)值必須應用窮舉搜索,這對于長用戶-項目交互序列來說計算量極大,因為有更多可能的候選人。因此,這種方法的主要優(yōu)點是在不枚舉所有可能的模型架構的情況下學習局部最優(yōu)用戶短期興趣長度并重復訓練它們,從而使選擇短期興趣長度的決策過程高效且自適應。
將長短期興趣拼接或相加(文中沒有明確說明)后過一個 mlp。
訓練過程包含兩個階段。第一階段是搜索階段,旨在找到代表優(yōu)選短期長度的局部最優(yōu)A*(長度權重)。第二階段是再訓練階段,在找到 A? 后,我們用最佳短期長度重新訓練 AutoMLP 框架。(回答了前面的讀者問)
雖然 是 AutoMLP 可學習參數(shù)的一個子集,但文獻表明,簡單地更新 W和A 完全會導致訓練過程中的過度擬合問題,因為它們彼此高度依賴。因此,本文按照慣例使用訓練數(shù)據(jù)集優(yōu)化W,同時使用驗證數(shù)據(jù)集優(yōu)化A。具體來說,本文將其表述為雙層優(yōu)化,其中上層變量和下層變量 。形式上,將其表示為:
上式是一個嚴格的等式,很難優(yōu)化,因此替換為下式近似:
完整的訓練過程為:
這一階段就是固定短期興趣長度后,再訓練 W。
*博客內(nèi)容為網(wǎng)友個人發(fā)布,僅代表博主個人觀點,如有侵權請聯(lián)系工作人員刪除。