綜述170篇「自監(jiān)督學(xué)習(xí)」推薦算法,港大發(fā)布SSL4Rec:代碼、資料庫(kù)全面開(kāi)源!
推薦系統(tǒng)對(duì)于應(yīng)對(duì)信息過(guò)載挑戰(zhàn)至關(guān)重要,它們根據(jù)用戶的個(gè)人偏好提供定制化推薦。近年來(lái)深度學(xué)習(xí)技術(shù)極大地推動(dòng)了推薦系統(tǒng)的發(fā)展,提升了對(duì)用戶行為和偏好的洞察力。
然而,由于數(shù)據(jù)稀疏性的問(wèn)題,傳統(tǒng)的監(jiān)督學(xué)習(xí)方法在實(shí)際應(yīng)用中面臨挑戰(zhàn),這限制了它們有效學(xué)習(xí)用戶表示的能力。
為了克服這一難題,自監(jiān)督學(xué)習(xí)(SSL)技術(shù)應(yīng)運(yùn)而生,其利用數(shù)據(jù)的內(nèi)在結(jié)構(gòu)生成監(jiān)督信號(hào),不完全依賴于標(biāo)記數(shù)據(jù)。
這種方法使得推薦系統(tǒng)能夠利用未標(biāo)記的數(shù)據(jù)提取有意義的信息,即使在數(shù)據(jù)稀疏的情況下也能做出準(zhǔn)確的預(yù)測(cè)和推薦。
文章地址:https://arxiv.org/abs/2404.03354
開(kāi)源資料庫(kù):https://github.com/HKUDS/Awesome-SSLRec-Papers
開(kāi)源代碼庫(kù):https://github.com/HKUDS/SSLRec
本篇綜述全面回顧了專為推薦系統(tǒng)設(shè)計(jì)的自監(jiān)督學(xué)習(xí)框架,并深入分析了超過(guò)170篇相關(guān)論文。我們探討了九種不同的應(yīng)用場(chǎng)景,全面理解了SSL在不同情境下如何增強(qiáng)推薦系統(tǒng)。
對(duì)于每個(gè)領(lǐng)域,我們都詳細(xì)討論了不同的自監(jiān)督學(xué)習(xí)范式,包括對(duì)比學(xué)習(xí)、生成學(xué)習(xí)和對(duì)抗學(xué)習(xí),展示了SSL如何在不同情境下提升推薦系統(tǒng)的性能。
1 推薦系統(tǒng)
推薦系統(tǒng)的研究涵蓋了不同場(chǎng)景下的各種任務(wù),如協(xié)同過(guò)濾、序列推薦和多行為推薦等等。這些任務(wù)擁有不同的數(shù)據(jù)范式和目標(biāo)。這里,我們首先提供一個(gè)通用的定義,不深入到不同推薦任務(wù)的具體變體中。在推薦系統(tǒng)中,存在兩個(gè)主要的集合:用戶集合,記為,和物品集合,記為
。
然后,使用一個(gè)交互矩陣來(lái)表示用戶和物品之間的記錄交互。在這個(gè)矩陣中,如果用戶ui與物品vj有過(guò)交互,則矩陣的條目Ai,j被賦予值1,否則為0。
交互的定義可以根據(jù)不同的情境和數(shù)據(jù)集進(jìn)行調(diào)整(例如,觀看電影、在電子商務(wù)網(wǎng)站上點(diǎn)擊或進(jìn)行購(gòu)買(mǎi))。
此外,在不同的推薦任務(wù)中,存在不同的輔助觀察數(shù)據(jù),記為X,例如在知識(shí)圖譜增強(qiáng)推薦中,X包含了包含外部物品屬性的知識(shí)圖譜,這些屬性包括不同的實(shí)體類型和相應(yīng)的關(guān)系。
而在社交推薦中, X包含了用戶級(jí)別的關(guān)系,如友誼。基于上述定義,推薦模型優(yōu)化了一個(gè)預(yù)測(cè)函數(shù)f(?),旨在準(zhǔn)確估計(jì)任何用戶u和物品v之間的偏好分?jǐn)?shù):
偏好分?jǐn)?shù)yu,v表示用戶u和物品v交互的可能性。
基于這個(gè)分?jǐn)?shù),推薦系統(tǒng)可以通過(guò)根據(jù)估計(jì)的偏好分?jǐn)?shù)提供物品的排名列表,向每個(gè)用戶推薦未交互的物品。在綜述中,我們進(jìn)一步探討不同推薦場(chǎng)景下(A,X)的數(shù)據(jù)形式以及自監(jiān)督學(xué)習(xí)其中的作用。
2 推薦系統(tǒng)中的自監(jiān)督學(xué)習(xí)
過(guò)去幾年中,深度神經(jīng)網(wǎng)絡(luò)在監(jiān)督學(xué)習(xí)中表現(xiàn)出色,這在包括計(jì)算機(jī)視覺(jué)、自然語(yǔ)言處理和推薦系統(tǒng)在內(nèi)的各個(gè)領(lǐng)域都有所體現(xiàn)。然而由于對(duì)標(biāo)記數(shù)據(jù)的重度依賴,監(jiān)督學(xué)習(xí)在處理標(biāo)簽稀疏性問(wèn)題時(shí)面臨挑戰(zhàn),這也是推薦系統(tǒng)中的一個(gè)常見(jiàn)問(wèn)題。
為了解決這一限制,自監(jiān)督學(xué)習(xí)作為一種有前景的方法應(yīng)運(yùn)而生,它利用數(shù)據(jù)本身作為學(xué)習(xí)的標(biāo)簽。推薦系統(tǒng)中的自監(jiān)督學(xué)習(xí)包含三種不同的范式:對(duì)比學(xué)習(xí)、生成學(xué)習(xí)和對(duì)抗學(xué)習(xí)。
2.1 對(duì)比學(xué)習(xí) (Contrastive Learning)
對(duì)比學(xué)習(xí)作為一種突出的自監(jiān)督學(xué)習(xí)方法,其主要目標(biāo)是最大化從數(shù)據(jù)中增強(qiáng)的不同視圖之間的一致性。在推薦系統(tǒng)的對(duì)比學(xué)習(xí)中,目標(biāo)是最小化以下?lián)p失函數(shù):
E?°ω?表示對(duì)比視圖創(chuàng)建操作,不同的基于對(duì)比學(xué)習(xí)的推薦算法有不用的創(chuàng)建過(guò)程。每個(gè)視圖的構(gòu)造由數(shù)據(jù)增強(qiáng)過(guò)程ω?(可能涉及在增強(qiáng)圖中的節(jié)點(diǎn)/邊)以及嵌入編碼過(guò)程E?組成。
最小化的目標(biāo)是獲得穩(wěn)健的編碼函數(shù),最大化視圖之間的一致性。這種跨視圖的一致性可以通過(guò)互信息最大化或?qū)嵗袆e等方法實(shí)現(xiàn)。
2.2 生成學(xué)習(xí) (Generative Learning)
生成學(xué)習(xí)的目標(biāo)是理解數(shù)據(jù)的結(jié)構(gòu)和模式,以學(xué)習(xí)有意義的表示。它優(yōu)化了一個(gè)深度編碼器-解碼器模型,該模型重建缺失或損壞的輸入數(shù)據(jù)。
編碼器從輸入中創(chuàng)建潛在表示,而解碼器
從編碼器輸出重建原始數(shù)據(jù)。目標(biāo)是最小化重建和原始數(shù)據(jù)之間的差異,具體如下所示:
這里,ω表示掩碼或擾動(dòng)這樣的操作。D°E表示編碼和解碼以重建輸出的過(guò)程。最近的研究也引入了一個(gè)僅解碼器的架構(gòu),該架構(gòu)在沒(méi)有編碼器-解碼器設(shè)置的情況下有效地重建數(shù)據(jù)。這種方法使用單一模型(例如,Transformer)進(jìn)行重建,通常應(yīng)用于基于生成學(xué)習(xí)的序列化推薦。損失函數(shù)的格式取決于數(shù)據(jù)類型,例如對(duì)于連續(xù)數(shù)據(jù)使用均方誤差,對(duì)于分類數(shù)據(jù)使用交叉熵?fù)p失。
2.3 對(duì)抗學(xué)習(xí) (Adversarial Learning)
對(duì)抗學(xué)習(xí)是一種訓(xùn)練方法,它使用生成器G(?)生成高質(zhì)量的輸出,并包含一個(gè)鑒別器Ω(?),該鑒別器確定給定樣本是真實(shí)的還是生成的。與生成學(xué)習(xí)不同,對(duì)抗學(xué)習(xí)的區(qū)別在于包括了一個(gè)鑒別器,它通過(guò)競(jìng)爭(zhēng)性互動(dòng)來(lái)提高生成器生成高質(zhì)量輸出的能力,以欺騙鑒別器。
因此,對(duì)抗學(xué)習(xí)的學(xué)習(xí)目標(biāo)可以定義如下:
這里,變量x表示從底層數(shù)據(jù)分布中獲得的真實(shí)樣本,而表示由生成器G(?)生成的合成樣本。在訓(xùn)練過(guò)程中,生成器和鑒別器都通過(guò)競(jìng)爭(zhēng)性互動(dòng)提高它們的能力。最終,生成器致力于生成高質(zhì)量的輸出,這些輸出對(duì)于下游任務(wù)是有利的。
3 分類體系(Taxonomy)
在本節(jié)中,我們提出了自監(jiān)督學(xué)習(xí)在推薦系統(tǒng)中的應(yīng)用的全面分類體系。如前所述,自監(jiān)督學(xué)習(xí)范式可以分為對(duì)比學(xué)習(xí)、生成學(xué)習(xí)和對(duì)抗學(xué)習(xí)三個(gè)類別。因此,我們的分類體系基于這三個(gè)類別構(gòu)建,提供了每個(gè)類別更深入的見(jiàn)解。
3.1 推薦系統(tǒng)中的對(duì)比學(xué)習(xí)
對(duì)比學(xué)習(xí)(CL)的基本原理是最大化不同視圖之間的一致性。因此,我們提出了一個(gè)以視圖為中心的分類體系,包含應(yīng)用對(duì)比學(xué)習(xí)時(shí)考慮的三個(gè)關(guān)鍵組成部分:創(chuàng)建視圖、配對(duì)視圖以最大化一致性,以及優(yōu)化一致性。
視圖創(chuàng)建(View Creation)。創(chuàng)建的視圖強(qiáng)調(diào)了模型要關(guān)注的多種數(shù)據(jù)方面。它可以結(jié)合全局協(xié)同信息以改善推薦系統(tǒng)處理全局關(guān)系的能力,或者引入隨機(jī)噪聲以增強(qiáng)模型的魯棒性。
我們將輸入數(shù)據(jù)(例如,圖、序列、輸入特征)的增強(qiáng)視為數(shù)據(jù)層面的視圖創(chuàng)建,而隱藏特征在推理過(guò)程中的增強(qiáng)則視為特征層面的視圖創(chuàng)建。我們提出了一個(gè)層次化的分類體系,包括從基本數(shù)據(jù)層面到神經(jīng)模型層面的視圖創(chuàng)建技術(shù)。
- 數(shù)據(jù)層面 Data-based:在基于對(duì)比學(xué)習(xí)的推薦系統(tǒng)中,通過(guò)增強(qiáng)輸入數(shù)據(jù)來(lái)創(chuàng)建多樣化的視圖。這些增強(qiáng)的數(shù)據(jù)點(diǎn)隨后通過(guò)模型進(jìn)行處理。不同視圖所得到的輸出嵌入最終被配對(duì)并用于對(duì)比學(xué)習(xí)。增強(qiáng)方法根據(jù)推薦場(chǎng)景的不同而變化。例如,圖數(shù)據(jù)可以采用節(jié)點(diǎn)/邊的丟棄的方法,而序列可以使用掩碼、裁剪和替換的增強(qiáng)方式。
- 特征層面 Feature-based:除了直接從數(shù)據(jù)生成視圖外,一些方法還考慮在模型前向過(guò)程中對(duì)編碼的隱藏特征進(jìn)行增強(qiáng)。這些隱藏特征可以包括圖神經(jīng)網(wǎng)絡(luò)層的節(jié)點(diǎn)嵌入或Transformer中的令牌向量。通過(guò)多次應(yīng)用各種增強(qiáng)技術(shù)或引入隨機(jī)擾動(dòng),模型的最終輸出可以被視為不同的視圖。
- 模型層面 Model-based:數(shù)據(jù)層面和特征層面的增強(qiáng)都是非自適應(yīng)的,因?yàn)樗鼈兪欠菂?shù)的。因此也有方法使用模型來(lái)生成不同的視圖。這些視圖包含了基于模型設(shè)計(jì)的特定信息。例如,意圖解耦神經(jīng)模塊可以捕獲用戶意圖,而超圖模塊可以捕獲全局關(guān)系。
配對(duì)采樣(Pair Sampling)。視圖創(chuàng)建過(guò)程為數(shù)據(jù)中的每個(gè)樣本生成至少兩個(gè)不同的視圖。對(duì)比學(xué)習(xí)的核心在于最大化地對(duì)齊某些視圖(即拉近它們),同時(shí)推開(kāi)其他視圖。
為此,關(guān)鍵是確定應(yīng)拉近的正樣本對(duì),并識(shí)別形成負(fù)樣本對(duì)的其他視圖。這種策略稱為配對(duì)采樣,它主要由兩種配對(duì)采樣方法組成:
- 自然采樣 Natural Sampling:配對(duì)采樣的一種常見(jiàn)方法是直接而非啟發(fā)式的,我們稱之為自然采樣。正樣本對(duì)由同一數(shù)據(jù)樣本生成的不同視圖形成,而負(fù)樣本對(duì)由不同數(shù)據(jù)樣本的視圖形成。在存在一個(gè)中心視圖的情況下,例如從整個(gè)圖中派生出的全局視圖,局部-全局關(guān)系也可以自然的形成正樣本對(duì)。這種方法在大多數(shù)對(duì)比學(xué)習(xí)推薦系統(tǒng)中得到廣泛應(yīng)用。
- 基于分?jǐn)?shù)的采樣 Score-based Sampling:配對(duì)采樣的另一種方法是基于分?jǐn)?shù)的采樣。在這種方法中,一個(gè)模塊計(jì)算樣本對(duì)的分?jǐn)?shù)以確定正樣本或負(fù)樣本對(duì)。例如,兩個(gè)視圖之間的距離可以用于判斷正負(fù)樣本對(duì)?;蛘?,可以在視圖上應(yīng)用聚類,其中同一聚體內(nèi)的正樣本對(duì),不同聚體內(nèi)的為負(fù)樣本對(duì)。對(duì)于一個(gè)錨視圖,一旦確定了正樣本對(duì),其余的視圖自然被認(rèn)為是負(fù)視圖,可以與給定視圖配對(duì)以創(chuàng)建負(fù)樣本對(duì),允許推開(kāi)。
對(duì)比學(xué)習(xí)目標(biāo)(Contrastive Objective)。對(duì)比學(xué)習(xí)中的學(xué)習(xí)目標(biāo)是最大化正樣本對(duì)之間的互信息,這反過(guò)來(lái)又可以提高學(xué)習(xí)推薦模型的性能。由于直接計(jì)算互信息不可行,通常使用可行的下界作為對(duì)比學(xué)習(xí)中的學(xué)習(xí)目標(biāo)。然而,也有直接將正樣本對(duì)拉近的顯式目標(biāo)。
- InfoNCE-based:InfoNCE是噪聲對(duì)比估計(jì)的一個(gè)變體。其優(yōu)化過(guò)程旨在拉近正樣本對(duì),推開(kāi)負(fù)樣本對(duì)。
- JS-based:除了使用InfoNCE估計(jì)互信息外,還可以使用Jensen-Shannon散度來(lái)估計(jì)下界。派生出的學(xué)習(xí)目標(biāo)類似于將InfoNCE與標(biāo)準(zhǔn)二元交叉熵?fù)p失結(jié)合起來(lái),應(yīng)用于正樣本對(duì)和負(fù)樣本對(duì)。
- 顯式目標(biāo) Explicit Objective:基于InfoNCE和基于JS的目標(biāo)都旨在最大化互信息的估計(jì)下界,以最大化互信息本身,這在理論上是有保證的。此外,還有顯式目標(biāo),如最小化均方誤差或最大化樣本對(duì)內(nèi)的余弦相似度,直接對(duì)齊正樣本對(duì)。這些目標(biāo)被稱為顯式目標(biāo)。
3.2 推薦系統(tǒng)中的生成學(xué)習(xí)
在生成式自監(jiān)督學(xué)習(xí)中,主要目標(biāo)是最大化真實(shí)數(shù)據(jù)分布的似然估計(jì)。這允許學(xué)習(xí)到的有意義的表示捕獲數(shù)據(jù)中的底層結(jié)構(gòu)和模式,然后可以用于下游任務(wù)。在我們的分類體系中,我們考慮了兩個(gè)方面來(lái)區(qū)分不同的基于生成學(xué)習(xí)的推薦方法:生成學(xué)習(xí)范式和生成目標(biāo)。
生成學(xué)習(xí)范式(Generative Learning Paradigm)。在推薦的背景下,采用生成學(xué)習(xí)的自監(jiān)督方法可以被分類為三個(gè)范式:
- 掩碼自編碼(Masked Autoencoding):在掩碼自編碼器中,學(xué)習(xí)過(guò)程遵循掩碼-重建方法,其中模型從部分觀測(cè)中重建完整數(shù)據(jù)。
- 變分自編碼(Variational Autoencoding):變分自編碼器是另一種最大化似然估計(jì)的生成方法,具有理論保證。通常它涉及將輸入數(shù)據(jù)映射到遵循正態(tài)高斯分布的潛在因素上。隨后模型基于抽樣的潛在因素重建輸入數(shù)據(jù)。
- 去噪擴(kuò)散(Denoised Diffusion):去噪擴(kuò)散是一種生成模型,它通過(guò)反轉(zhuǎn)噪聲過(guò)程生成新的數(shù)據(jù)樣本。在前向過(guò)程中,高斯噪聲被添加到原始數(shù)據(jù)中,經(jīng)過(guò)多個(gè)步驟,創(chuàng)建了一系列噪聲版本。在逆向過(guò)程中,模型學(xué)會(huì)從噪聲版本中去除噪聲,逐步恢復(fù)原始數(shù)據(jù)。
生成目標(biāo)(Generation Target)。在生成學(xué)習(xí)中,將數(shù)據(jù)的哪種模式視為生成的標(biāo)簽,是另一個(gè)需要考慮的問(wèn)題,以帶來(lái)有意義的輔助自監(jiān)督信號(hào)。一般來(lái)說(shuō),生成目標(biāo)對(duì)于不同的方法以及在不同的推薦場(chǎng)景中各不相同。例如,在序列推薦中,生成目標(biāo)可以是序列中的物品,目的是模擬序列中物品之間的關(guān)系。在交互圖推薦中,生成目標(biāo)可以是圖中的節(jié)點(diǎn)/邊,目的是捕捉圖中的高級(jí)拓?fù)湎嚓P(guān)性。
3.3 推薦系統(tǒng)中的對(duì)抗學(xué)習(xí)
在推薦系統(tǒng)的對(duì)抗學(xué)習(xí)中,鑒別器在區(qū)分生成的虛假樣本和真實(shí)樣本中起著至關(guān)重要的作用。與生成學(xué)習(xí)類似,我們提出的分類體系從學(xué)習(xí)范式和鑒別目標(biāo)兩個(gè)角度涵蓋了推薦系統(tǒng)中的對(duì)抗學(xué)習(xí)方法:
對(duì)抗學(xué)習(xí)范式(Adversarial Learning Paradigm)。在推薦系統(tǒng)中,對(duì)抗學(xué)習(xí)包括兩種不同的范式,這取決于鑒別器的判別損失是否可以以可微的方式反向傳播到生成器。
- 可微對(duì)抗學(xué)習(xí)(Differentiable AL):第一種方法涉及在連續(xù)空間中表示的對(duì)象,鑒別器的梯度可以自然地反向傳播到生成器進(jìn)行優(yōu)化。這種方法被稱為可微對(duì)抗學(xué)習(xí)。
- 不可微對(duì)抗學(xué)習(xí)(Non-Differentiable AL):另一種方法涉及鑒別推薦系統(tǒng)輸出,特別是推薦商品。然而,由于推薦結(jié)果是離散的,反向傳播變得具有挑戰(zhàn)性,形成了非可微情況,其中鑒別器的梯度不能直接傳播到生成器。為了解決這個(gè)問(wèn)題,引入了強(qiáng)化學(xué)習(xí)和策略梯度。在這種情況下,生成器作為一個(gè)代理,通過(guò)預(yù)測(cè)基于之前交互的商品來(lái)與環(huán)境互動(dòng)。鑒別器作為獎(jiǎng)勵(lì)函數(shù),提供獎(jiǎng)勵(lì)信號(hào)來(lái)指導(dǎo)生成器的學(xué)習(xí)。鑒別器的獎(jiǎng)勵(lì)被定義為強(qiáng)調(diào)影響推薦質(zhì)量的不同因素,并優(yōu)化以分配更高的獎(jiǎng)勵(lì)給真實(shí)樣本而不是生成樣本,引導(dǎo)生成器產(chǎn)生高質(zhì)量的推薦。
鑒別目標(biāo)(Discrimination Target)。不同推薦算法導(dǎo)致生成器生成不同的輸入,這些輸入隨后被饋送到鑒別器進(jìn)行鑒別。這個(gè)過(guò)程旨在增強(qiáng)生成器生成高質(zhì)量?jī)?nèi)容的能力,從而接近真實(shí)情況。具體的鑒別目標(biāo)是根據(jù)特定的推薦任務(wù)設(shè)計(jì)的。
3.4 多元的推薦場(chǎng)景
在本綜述中,我們從九種不同的推薦場(chǎng)景深入討論不同的的自監(jiān)督學(xué)習(xí)方法在其中的設(shè)計(jì)方式,這九種推薦場(chǎng)景分別為(具體內(nèi)容歡迎到文中了解):
- General Collaborative Filtering (通用協(xié)同過(guò)濾) - 這是推薦系統(tǒng)中最基本的形式,主要依賴于用戶和物品之間的交互數(shù)據(jù)來(lái)生成個(gè)性化推薦。
- Sequential Recommendation (序列推薦) - 考慮用戶與物品交互的時(shí)間序列,目的是預(yù)測(cè)用戶的下一個(gè)可能交互物品。
- Social Recommendation (社交推薦) - 結(jié)合社交網(wǎng)絡(luò)中的用戶關(guān)系信息,以提供更加個(gè)性化的推薦。
- Knowledge-aware Recommendation (知識(shí)感知推薦) - 利用知識(shí)圖譜等結(jié)構(gòu)化知識(shí)來(lái)增強(qiáng)推薦系統(tǒng)的性能。
- Cross-domain Recommendation (跨域推薦) - 將從一個(gè)領(lǐng)域?qū)W到的用戶偏好應(yīng)用到另一個(gè)領(lǐng)域中,以改善推薦效果。
- Group Recommendation (群體推薦) - 為具有共同特征或興趣的群體提供推薦,而不是為單個(gè)用戶。
- Bundle Recommendation (捆綁推薦) - 推薦一組物品作為一個(gè)整體,通常用于促銷(xiāo)或套餐服務(wù)。
- Multi-behavior Recommendation (多行為推薦) - 考慮用戶對(duì)物品的多種交互行為,如瀏覽、購(gòu)買(mǎi)、評(píng)分等。
- Multi-modal Recommendation (多模態(tài)推薦) - 結(jié)合物品的多種模態(tài)信息,如文本、圖像、聲音等,以提供更豐富的推薦。
4 結(jié)語(yǔ)
本文全面綜述了自監(jiān)督學(xué)習(xí)(SSL)在推薦系統(tǒng)中的應(yīng)用,深入分析了逾170篇論文。我們提出了一個(gè)涵蓋九大推薦場(chǎng)景的自監(jiān)督分類體系,詳細(xì)探討了對(duì)比學(xué)習(xí)、生成學(xué)習(xí)和對(duì)抗學(xué)習(xí)三種SSL范式,并在文中討論了未來(lái)研究方向。
我們強(qiáng)調(diào)了SSL在處理數(shù)據(jù)稀疏性、提升推薦系統(tǒng)性能方面的重要性,并指出了將大型語(yǔ)言模型集成到推薦系統(tǒng)中、自適應(yīng)動(dòng)態(tài)推薦環(huán)境以及為SSL范式建立理論基礎(chǔ)等潛在研究方向。希望本綜述能為研究人員提供寶貴的資源,激發(fā)新的研究思路,推動(dòng)推薦系統(tǒng)的進(jìn)一步發(fā)展。