以下文章來源于AI自然語言處理與知識圖譜 ,作者Elesdspline
導(dǎo)語
本文是2020年針對知識圖譜作為輔助信息用于推薦系統(tǒng)的一篇綜述。知識圖譜對于推薦系統(tǒng)不僅能夠進(jìn)行更精確的個性化推薦,而且對推薦也是具有可解釋性的,有跡可循。
本文匯總了近些年來知識圖譜輔助推薦系統(tǒng)的一些研究工作,并按不同的方法進(jìn)行劃分類別(下圖是我根據(jù)論文畫出的大綱方法類別圖);除此之外,匯總了不同場景下的知識圖譜數(shù)據(jù)集,涵蓋7個場景;最后闡述了未來的一些可研究方向及趨勢。
基于知識圖譜的推薦方法
一、背景知識
推薦系統(tǒng)已經(jīng)廣泛應(yīng)用在實際生活中的很多場景,特別是個性化推薦系統(tǒng)已經(jīng)有越來越多的研究工作和落地實踐,但是仍然面臨著一些問題,例如數(shù)據(jù)稀疏、冷啟動等問題。
說明:
近年來,利用知識圖譜作為輔助信息生成推薦已經(jīng)引起了人們相當(dāng)大的興趣,這種方法不僅可以緩解上述問題,更準(zhǔn)確的進(jìn)行個性化推薦,而且可以對推薦的結(jié)果也是可解釋的,是有跡可循的。下面我們將分別來看一下這兩方面。
1.1 推薦系統(tǒng)
推薦系統(tǒng)在實際生活中已經(jīng)有很多的應(yīng)用場景,比如我們所熟知的電影、音樂、POI、新聞、教育、書籍,購物等。
推薦系統(tǒng)的目的旨在為 user (用戶) 推薦一個(或一系列)未觀測的 item (物品,電影,新聞等)?;静襟E如下:
推薦系統(tǒng)主要包含以下三種方法:
1.2 基于知識圖譜的推薦系統(tǒng)
近段時間,基于知識圖譜的推薦系統(tǒng)(KG-based recommendation system, KGRS)引起研究者的廣泛興趣,主要是把知識圖譜作為輔助信息整合到推薦系統(tǒng)中,這樣的做法帶來兩個方面的優(yōu)勢,其一是能夠提高推薦系統(tǒng)的準(zhǔn)確性,其二是能夠為推薦系統(tǒng)提供可解釋性。
下圖所示是一個基于知識圖譜的推薦系統(tǒng),我們來簡單看一下,KG 中包含了電影(圓形代表)、用戶,演員和導(dǎo)演(人頭像代表)以及電影風(fēng)格(攝影機代表)這幾種實體節(jié)點,實體之間又包含了幾種不同的關(guān)系,通過這個知識圖譜,給 Bob 推薦了兩部電影 “Avatar”《阿凡達(dá)》和 “Blood Diamond”《血鉆》??磮D能夠看出,電影和用戶之間有著不同的潛在關(guān)系,有助于提高推薦的準(zhǔn)確性。
可解釋性: 基于 KG 的推薦系統(tǒng)的另一個優(yōu)點是推薦結(jié)果具有可解釋性。在上面的圖中,通過遵循圖譜中的關(guān)系序列,我們可以知道向 Bob 推薦這兩部電影的原因。例如,推薦《阿凡達(dá)》的一個原因是,《阿凡達(dá)》與 Bob 之前看過的“Interstellar”《星際穿越》屬于同一類型風(fēng)格的電影。
下圖中列出了一些流行的知識圖譜,根據(jù)所涵蓋知識的范圍,這些知識圖譜可分為兩類,一類是 cross-domain 的知識圖譜,另一類是 domain-specific 的知識圖譜,也就是說一類是包含知識廣的通用型知識圖譜,一類是包含特定領(lǐng)域知識的垂直領(lǐng)域知識圖譜。
二、Methods
通過對最近研究的相關(guān)調(diào)研,發(fā)現(xiàn)基于 KG 的推薦系統(tǒng)對 KG 的應(yīng)用有三種方式:
我們接下來將在各小節(jié)了解一下對應(yīng)的方法,在這之前,先給出下面的一章圖片,列出相關(guān)的符號和概念。
2.1 基于Embeddig的方法
基于 Embedding 的方法通常直接使用來自知識圖譜的信息來豐富 item 或 user 的表示。為了充分利用 KG 的信息,需要應(yīng)用KGE/KRL算法將 KG 中的實體和關(guān)系映射到低維向量空間。
KGE 算法可分為兩類:基于翻譯的模型,如 TransE、TransH、TransR、TransD等;語義匹配模型,如 DistMult等。
說明:
根據(jù) KG 是否包含 user,又將這類方法分為兩部分,即 item graph 和 user-item graph。
2.1.1 使用 item graph
該方法中,KG 由 item 及其相關(guān)屬性組成,這些屬性是從數(shù)據(jù)集或外部知識庫中提取的。我們將這樣的圖命名為 item graph。注意,user 不包括在 item graph 中。
這類方法利用 KGE 等模型對 item graph 編碼獲取更加豐富的 item embedding,然后結(jié)合 item 的多種信息構(gòu)成完整的 item 表示,例如 user-item 交互矩陣信息、KG 信息、item 屬性信息、item 內(nèi)容信息等。然后再單獨計算 user 的表示(可以從交互矩陣中獲取)和得分函數(shù)。
得分函數(shù)的公式如下,其中 user 和 item 的向量表示分別為 μ? 和 ν? ,目的是計算 user 選擇 item 的可能性大小,然后排序之后返回相應(yīng)的 item。 這里的 f 可以是內(nèi)積、DNN等。
在這類方法中,有一些典型的模型代表,如 CKE、DKN、KSR。
2.1.2 使用 user-item graph
該方法直接構(gòu)建 user-item graph,其中 user、item 及其相關(guān)屬性作為節(jié)點(實體)。在 user-item graph 中,屬性級關(guān)系(品牌、類別等)和 user 相關(guān)關(guān)系(co-buy、co-view等)作為邊(關(guān)系)。 在利用 KGE 編碼得到相關(guān)的實體表示后,既可以利用 item graph 中的公式(1)計算 user 的偏好,也可以將關(guān)系向量考慮進(jìn)去,采用新的計算方法,如下:
在這類方法中,有一些代表性模型如 CFKG、SHINE、DKFM。
2.1.3 其他的方法
以往的一些研究工作一般直接利用 KGE 技術(shù)學(xué)習(xí)到的 user 或者 item 表示進(jìn)行推薦。最近,有些研究工作嘗試通過改進(jìn) KGE 方法學(xué)習(xí)到的實體/關(guān)系表示來提高推薦性能,例如結(jié)合 GAN 的 KTGAN 方法,以及結(jié)合 TransE、GNN 和貝葉斯框架的 BEM 方法。
除此之外,另一種趨勢是采用多任務(wù)學(xué)習(xí)(Multi-task Learning)的方法,在一些基本 KG 相關(guān)任務(wù)的共同學(xué)習(xí)下做推薦任務(wù)。大概來說,有一個推薦系統(tǒng)的任務(wù) f 用于從 user-item 交互矩陣中學(xué)習(xí),推薦 user 感興趣的 item,對應(yīng)的在 KG 的三元組分類任務(wù) g 中,判斷這個三元組是否有效,這兩個任務(wù)在損失函數(shù)部分結(jié)合,共同學(xué)習(xí)。這樣學(xué)習(xí)的一個大概動機在于推薦系統(tǒng)中的 item embedding 共享來自 KG 中的實體 embedding。
這類方法的一些典型代表如:KTUP、MKR、RCF等。
2.2 基于 Path 的方法
基于 Path 的方法構(gòu)建 user-item graph,并利用 KG 中實體的連通性模式進(jìn)行推薦,基本思想是考慮到 user 和/或 item 之間連通相似性(實體語義相似性),進(jìn)而提升推薦效果。根據(jù) path 的不同使用方式又做了細(xì)分,主要是基于 path 的連通相似度和把 path 嵌入到低維空間,獲取 path embedding,我們下面分別看一下。
2.2.1 path 的連通相似性
這種方式是利用計算不同路徑下實體之間的語義相似性,并作為一種正則方法優(yōu)化 user 和 item 的表示,進(jìn)一步就可以采用公式(1)中內(nèi)積的方式計算 user 選擇 item 的偏好可能性。有三種類型的實體相似性方法如下:
這個方法的典型模型有: FMG、Hete-MF、HeteRec、HeteRec_p、Hete-CF、SemRec、HERec、RuleRec。
2.2.2 Path embedding
這種方法直接學(xué)習(xí)連接 user 和 item 之間的顯式 path(部分/所有) embedding,以便直接對 user-item 的關(guān)系建模。
具體來說一下,假設(shè)存在 user 和 item 之間存在 K 個路徑,針對其中的路徑 p ,學(xué)習(xí)到其向量表示為 Ηρ,最終的路徑信息如下,其中 g 可能是 max-pooling 或者是加權(quán)的 sum-pooling。
接下來可以采用下面的方式計算 user 對 item 的偏好。
這一方法的代表模型如:MCRec、RKGE、KPRN、PGPR、EIUM、Ekar
2.3 聯(lián)合的方法
基于 embedding 的方法利用 KG 中 user/item 的語義表示進(jìn)行推薦,而基于路徑的方法使用語義連通信息,而且這兩種方法只利用 KG 中一個方面的信息。
為了更好地利用KG中的信息,提出了將實體和關(guān)系的語義表示與路徑連通信息相結(jié)合的統(tǒng)一方法,統(tǒng)一的方法是基于 Embedding 傳播的思想。這些方法以 KG 中的路徑連通性為指導(dǎo)精煉了實體表示(user/item)。
這里面也是分為了兩類方法,具體的下面簡單看一下。
2.3.1 基于 user 的歷史行為
這個基本思想是利用 user 在歷史交互行為中交互過的 item 以及 item 的多跳鄰居這些行為豐富 user 的表示信息。
豐富的 user 表示可以表示如下,其中 代表 multi-hop ripple sets,g 代表 concatenate embeddings 的操作。
因為傳播是從 user 參與的 item 開始的,所以這個過程可以看作是在 KG 中傳播 user 的偏好。
代表的模型如:RippleNet、AKUPM、RCoLM
2.3.2 基于 item 的多跳鄰居
這種方式是利用 item 的多跳鄰居(multi-hop neighbors) 來豐富 item 表示。一個通常的表示如下:
是候選 item 的 ripple set,g 代表 concatenate embeddings 的操作,concatenate 要做兩步的操作。 首先要學(xué)習(xí)候選 item 的 k 階鄰居的表示:
然后更新
其中 agg 可以是 Sum Aggregator、Concat Aggregator、Neighbor Aggregator、Bi-Interaction Aggregator等。
典型的代表模型如:KGCN、KGCN-LS、KGAT、KNI、IntentGC、AKGE.
2.4 Methods 小結(jié)
根據(jù)上述的方法分類,我將其用下面的一張圖來表示:
上述代表性的模型在下圖中全部列出:
三、DataSets
基于 KG 的推薦系統(tǒng)除了具有準(zhǔn)確性和可解釋性之外,另一個優(yōu)點是這種類型的輔助信息可以很自然地結(jié)合到不同應(yīng)用的推薦系統(tǒng)中。為了證明 KG 作為輔助信息的有效性,基于 KG 的推薦系統(tǒng)在不同場景下的數(shù)據(jù)集上進(jìn)行了評估。在本節(jié)中,我們將根據(jù)數(shù)據(jù)集對這些工作進(jìn)行分類,如下:
四、未來研究方向
雖然已經(jīng)提出了許多新的模型來利用 KG 作為推薦的輔助信息,但仍存在一些機會。在此概述和討論一些未來的研究方向:
總結(jié):本文對基于知識圖譜的推薦系統(tǒng)進(jìn)行了研究,總結(jié)了近年來該領(lǐng)域的研究成果。知識圖譜不僅能夠作為輔助信息來改善推薦效果,并且能夠為推薦提供可解釋性。此外,還介紹了不同場景中使用的數(shù)據(jù)集以及指出了未來的研究方向,希望能促進(jìn)該領(lǐng)域的發(fā)展。
參考資料
聯(lián)系客服