返回介绍

数学基础

统计学习

深度学习

工具

Scala

1.2 Content-Enriched 模型

发布于 2023-07-17 23:38:23 字数 83120 浏览 0 评论 0 收藏 0

  1. 在协同过滤中,item representation 仅对协同信号(用户的行为模式)进行编码,但是忽略了语义相关性 semantic relatedness 。为了增强 representation learning,许多研究人员跳出了 user-item 交互的范畴并利用辅助数据。辅助数据可以分为两类:基于内容content based 的信息、上下文感知context-aware 数据。

    • 基于内容的信息:包含用户关联的内容、item 关联的内容,例如常规的用户特征和 item 特征、文本内容(如 item tagitem 文本描述、item 评论)、多媒体描述(如图像信息、视频信息、音频信息)、用户社交网络、知识图谱。

      我们根据可用的内容信息将相关工作分为五类:用户和 item 的常规特征、文本内容信息、多媒体信息、社交网络、知识图谱。

    • 上下文感知数据:包含用户做出 item 决策时的环境,这通常表示一些不在用户或 item 范畴内的描述。上下文信息包括时间time 、位置location、以及从传感器收集到的特定数据(如速度和天气)等等。由于篇幅有限,我们讨论最典型的上下文数据:时间数据。

    我们在下图中说明了一些代表性工作。

1.2.1 建模通用特征交互

  1. 分解机 Factorization Machine: FM 提供了特征交互建模的直观思想。由于特征通常是稀疏的,FM 首先将每个特征i$ i $ 嵌入到 latent embeddingvi$ \mathbf{\vec v}_i $ 中,并将任何两个特征实例xi$ x_i $ (如,年龄)和xj$ x_j $ (如,性别)的二阶交互 second-order interaction 建模为:(xixj)×vivj$ (x_ix_j)\times \mathbf{\vec v}_i^\top \mathbf{\vec v}_j $ 。自然地,FM 对二阶交互显式地建模,并使用 embedding based 模型来降低参数规模从而计算任意两个特征的相似度。

    • Field-aware FM: FFMFM 扩展而来,它通过 field aware 特性来使用多个 latent embeddings 从而扩展每个特征。
    • 高阶 FM 也从 FM 扩展而来,它通过直接扩展了二阶特征交互而来。

    尽管这些模型能够建模高阶特征交互,但是它们在建模过程中会受到 noisy 的特征交互的影响。

    研究人员探索了采用神经网络自动发现复杂的高阶特征交互,从而进行 CTR 预估和推荐的可能性。如下表所示,除了基于 FM 的方法之外,当前关于该主题的相关工作可以分为三类:隐式 MLP 结构、显式 K 阶建模、树增强模型。

a. 基于 MLP 的高阶建模

  1. 由于特征交互是 hidden 的,研究人员建议首先通过一个 embedding layer 来嵌入特征,然后利用 MLP 来发现高阶相关性。由于 MLP 是黑盒方法,因此可以将这类方法视为对特征交互进行隐式地建模,并且我们不知道 MLP 结构的模型的输出中会产生什么样的特征交互。由于 MLP 存在训练困难,一些研究人员提出了预训练技术。其他一些研究人员在 MLP 中注入特定结构从而更好地捕获特征交互:

    • DeepCrossing 设计了残差结构,从而在每两层 MLP 之后添加 original input
    • NFM 架构在 MLP layer 之前提出了 Bi-Interaction 操作。
    • PNN 同时建模了bit-wisefeature embedding 交互,以及vector-wise 的特征交互。

    除了复杂的高阶交互之外,还有一种有效的方法是将 MLP based 的高阶建模与经典的线性模型相结合(如 Wide&DeepDeepFM)。

b. 用于 K 阶建模的 Cross Network

  1. 交叉网络cross network不同于 MLP based 的算法,它具有精心设计的交叉网络操作,因此一个 K 层的交叉网络就可以对最高 K 阶的特征交互进行建模。第k$ k $ 个 hidden layer 的输出xk$ \mathbf{\vec x}_k $ 通过交叉运算来计算:

    xk=x0xk1wk+bk+xk1

    其中x0xk1Rd×d$ \mathbf{\vec x}_0 \mathbf{\vec x}_{k-1}^\top\in \mathbb R^{d\times d} $ 为向量笛卡尔积得到的矩阵,d$ d $ 为 embedding 维度。

    xDeepFM 不是在 bit-wise level 进行交叉操作,而是在 vector-wise level 显式地应用交叉交互。这些类型的模型能够学习有界bounded-degree 的特征交互。

c. 树增强模型

  1. 由于树可以天然地表达交叉特征,研究人员将树作为一个代理proxy,从而用于推荐中的交叉特征解释 cross feature explanation 。具体而言,TEM 首先利用决策树以交叉特征的形式提取特征的高阶交互,然后将交叉特征的 embedding 输入到注意力模型中进行预测。因此,决策树的深度决定了特征交互的最高阶次。此外,通过无缝结合 embeddingtree based 模型,TEM 能够统一它们的优势:强大的表达能力和可解释性。

1.2.2 建模文本内容

  1. 神经网络技术彻底改变了自然语言处理 Natural Language Processing: NLP。这些神经网络 NLP 模型能够对文本内容进行 multi-level 的、自动的 representation learning,并且可以结合在推荐框架中从而实现更好的 user semantic embedding learningitem semantic embedding learning 。鉴于上述基于神经网络的 NLP 模型,我们讨论了一些基于上述技术的、典型的文本增强推荐模型。

    用于推荐的文本内容输入可以分为两类:

    • 第一类是与 item 或用户相关联的内容描述,例如文章的摘要、用户的内容描述。
    • 第二类是链接 user-item pair,例如用户将 tag 添加到 item 上、或用户对 item 撰写评论。

    对于第二类,大多数模型聚合了与每个用户或每个 item 相关的内容。此时,第二类内容信息退化为第一类。

    接下来,我们不区分输入文本内容的数据类型,并将上下文内容contextual content 建模的相关工作总结为以下几类:基于自编码器的模型、word embedding、注意力模型、用于推荐的文本解释。

a. 基于自编码器的模型

  1. 通过将 item 内容视为原始特征,例如 bag-of-words representationitem tag representation,这些模型使用自编码器及其变体来学习 itembottleneck hidden content representation

    例如,Collaborative Deep Learning: CDL 同时学习每个 itemi$ i $ 的 embeddingqi$ \mathbf{\vec q}_i $ 为两部分的组合:通过堆叠降噪自编码器stacked denoising autoencoder 学习来自 item 内容xi$ \mathbf {\vec x}_i $ 的 hidden representation,以及一个并未编码到内容中的辅助 embeddingθi$ \vec\theta_i $ 。即:

    qi=fe(xi)+θi,θiN(0,σ2)

    其中:

    • fe()$ f_e(\cdot) $ 使用自编码器将原始内容输入转换为 bottleneck hidden vector
    • θi$ \vec\theta_i $ 为未在 item 内容中捕获的 free item latent vector (类似于许多经典的、基于潜在因子的 CF 模型),N$ \mathcal N $ 为正态分布,σ2$ \sigma^2 $ 为正态分布的方差。

    在模型优化过程中,目标函数是同时优化来自用户历史行为的 rating based 的损失,以及来自autoencoder 的内容重建损失:

    L=LR(R,R^)+λLX(X,fd(fe(X)))

    其中:

    • LR(,)$ \mathcal L_R(\cdot,\cdot) $ 为rating based 的损失,LX(,)$ \mathcal L_X(\cdot,\cdot) $ 为内容重建损失,λ$ \lambda $ 为衡量两个损失项之间相对权重的超参数。
    • R$ \mathbf R $ 为user-item 评分矩阵,R^$ \hat{\mathbf R} $ 为预估评分。
    • fd()$ f_d(\cdot) $ 为解码器,fe()$ f_e(\cdot) $ 为编码器,X$ \mathbf X $ 为输入内容。
  2. 在这个基础的基于自编码器的推荐模型之后,一些研究提出了改进从而考虑内容信息的唯一性 uniqueness 。例如,人们提出了 Collaborative Variational AutoEncoder: CVAE ,它不是学习 item 内容的确定性的 vector representation,而是用变分自编码器同时恢复评分矩阵和辅助内容信息。

    研究人员还建议利用 item 内容中的 item 邻居信息来更好地表达 bottleneck representation《Embedding-based news recommendation for millions of users》 提出了一种具有弱监督的降噪自编码器来学习每个 item 的分布式 representation vector 。此外,由于用户和 item 都可以关联内容信息,因此人们已经提出了基于双自编码器dual autoencoder的推荐模型。

b. 利用 Word Embedding 来推荐

  1. 自编码器为无监督 feature learning 提供了通用的神经解决方案,它不考虑文本输入的唯一性 uniqueness。最近,研究人员提出利用 word embedding 技术来获得更好的内容推荐。随着 TextCNN 的成功,人们提出了 Convolutional Matrix Factorization: ConvMF 从而将 CNN 集成到概率矩阵分解中。令xi$ \mathbf{\vec x}_i $ 表示 itemi$ i $ 的文本输入,则 item 潜在 embedding 矩阵Q$ \mathbf Q $ 表示为以 embedding representation 为中心的高斯分布:

    p(QW,X,σ2)=i=1|V|N(qiTextCNN(W,xi),σ2)

    其中:W$ \mathbf W $ 为 TextCNN 的参数,X$ \mathbf X $ 为所有文本拼接的输入矩阵;σ$ \sigma $ 为高斯分布的标准差;qi$ \mathbf{\vec q}_i $ 为 itemi$ i $ 的 embedding 向量。

    除了 CNN based 模型之外,研究人员还采用了各种 state-of-the-art 内容embeddign 技术(例如RNN ),从而用于 item 内容 representation

  2. 评论信息广泛出现在推荐 application 中,是用户表达对 item 的感受的自然形式。给定用户的评分记录和相关评论,大多数基于评论的推荐算法将用户(或 item)的历史评论文本聚合为用户内容输入D(u)$ D(u) $ (或 item 内容输入D(i)$ D(i) $ )。

    深度模型 DeepCoNN 是基于评论的推荐。如下图所示,DeepCoNN 由两个用于内容建模的并行 TextCNN 组成:

    • 一个专注于通过用户u$ u $ 撰写的评论内容D(u)$ D(u) $ 来学习用户行为。
    • 另一个专注于通过 itemi$ i $ 收到的评论内容D(i)$ D(i) $ 来学习 item embedding

    然后,DeepCoNN 提出了一种分解机来学习 user latent vectoritem latent vector 之间的交互。具体而言,DeepCoNN 可以表述为:

    r^u,i=FM(TextCNN(Du),TextCNN(Di))

  3. 许多研究实验发现,评论文本的最大预测能力来自于 target usertarget item 的特定评论。由于 user-item pair 的相关评论在测试阶段不可用,因此人们提出了 TransNet 来解决 target 评论信息不可用时的情况。

    TransNet 有一个 source network ,该 source network 是不包含联合评论joint reviewrevu,i$ \text{rev}_{u,i} $ 的 DeepCoNN。此外,TransNet 也有一个 target network,该 target network 建模当前的 user-item pair(u,i)$ (u,i) $ 的联合评论revu,i$ \text{rev}_{u,i} $ 。因此,即使没有用户对 item 的评论,target network 也可以近似被测试的 user-item pair 的、预估的评论rev^u,i$ \widehat{\text{rev}}_{u,i} $ 。

c. 注意力模型

  1. 注意力机制也被广泛用于 content enriched 推荐系统。给定 item 的文本描述,人们已经提出了基于注意力的模型来为不同的内容分配注意力权重,以便为 item content representation 自动选择信息元素。

    • 例如,给定一条推文,基于注意力的 CNN 会学习推文中的 trigger words ,从而获得更好的标签推荐(《Hashtag recommendation using attention-based convolutional neural network》)。
    • 利用用户的历史评分item,人们提出了一种注意力模型来选择性地聚合每个历史 itemcontent representation,从而用于用户 content preference embedding 建模。
    • 给定 user collaborative embeddingsitem collaborative embeddings ,注意力网络也被设计用于捕获这两种数据源之间的相关性correlation 和对齐性alignment
    • 研究人员还提出了一种 co-evolutionarytopical 注意力正则化矩阵分解模型,其中用户注意力特征从结合了用户评论的注意力网络中学习。
    • 对于基于评论的推荐,研究人员认为,大多数基于内容的 user representationitem representation 模型忽略了 user-item pair 之间的交互行为,并且提出了一种叫做 DAML 的双注意力模型来学习相互增强的 user representationitem representation
    • 由于 item 内容有时以多视图形式(如标题、正文、关键字等)呈现,多视图注意力网络通过聚合来自不同视图的多个 representation 来学习统一的 item representation
    • 通过文本描述和图像视觉信息,人们利用 co-attention 来学习两种模式之间的相关性,从而更好地学习 item representation

d. 用于推荐的文本解释

  1. 人们开始对为推荐提供文本解释(而不是提高推荐准确率)的兴趣越来越大。当前使用文本输入的可解释性推荐解决方案可以分为两类:基于抽取的模型、基于生成的模型。

  2. 基于抽取的模型:基于抽取的模型聚焦于选择重要的文本片段进行推荐解释。注意力技术被广泛用于基于提取的可解释推荐,学到的注意力权重经验性地展示了不同元素对模型输出的重要性。之后,抽取注意力权重较大的文本片段作为推荐解释。

    除了从评论中抽取文本片段之外,还有其他方法可以抽取有用的文本信息进行解释,例如 review-level 的解释(即,评论粒度)。

  3. 基于生成的模型:随着语言生成技术的巨大成功,基于生成的模型引起了越来越多的关注。同时给定用户的评分记录和评论,这些模型的关键思想是设计一个 encoder-decoder 结构,其中编码器部分对 user and item 的、相关的 embedding 进行编码,解码器生成与相应 user-item 评论文本的 ground truth 相似的评论。

    NRT 是一种 state-of-the-art 模型,它可以同时预测评分并生成评论。编码器部分输入 one-hot user representationone-hot item representation 并输出 user latent embeddingitem latent embedding ,解码器基于 RNN 结构并生成评论,最后 MLP 结构预测评分。由于我们既有ground truth 的评分记录,也有相应的评论记录,所以评分预测和评论生成这两个任务可以在多任务框架中进行训练。

    同时,additional information 和更高级的 encoder-decoder 结构也应用于解释生成。例如,一些方法在编码器中考虑了用户属性和 item 属性,另一些方法在编码器中考虑了多模态 item 数据,还有一些方法在解码器中设计了一个高级的注意力 selector

1.2.3 建模多媒体内容

  1. 这里我们介绍在推荐系统中建模多媒体内容的相关工作。为了便于解释,我们在下表中总结了不同类型输入数据的、基于多媒体推荐的相关工作。

a. 建模图像信息

  1. 当前的图像推荐解决方案可以分为两类:基于内容的模型、混合推荐模型。基于内容的模型利用视觉信号来构建 item 视觉 representation。相比之下,混合推荐模型通过 item 视觉建模来缓解 CF 中的数据稀疏问题。

  2. 基于图像内容的推荐:基于图像内容的模型适用于严重依赖视觉影像的推荐场景(如时尚推荐)或用户 feedback 很少的新品。

    • 由于视觉图像通常关联文本描述(如tag、标题),因此研究人员设计了一些非个性化的推荐系统从而为图像提供 tag 。这些模型应用 CNN 来提取图像视觉信息,并应用 content embedding 模型来获取文本 embedding

      然后,为了建模视觉信息和文本信息之间的相关性,这些模型要么将文本和图像投影到同一个空间、要么拼接来自不同模态的 representation、要么设计 co-attention 机制从而更好地描述 item

      这是为图像打 tag,跟图像本身属性有关,与用户无关,因此为非个性化的。

    • 对于个性化图像推荐,一个典型的解决方案是将 useritem 投影在同一视觉空间中,其中 item 视觉空间来自于 CNNuser 视觉空间要么来自用户喜欢的 item 、要么来自以用户画像为输入的深度神经网络。

      研究人员还认为,CNN 聚焦于全局的 item 视觉 representation,没有细粒度的建模。因此,人们已经提出了一些复杂的图像语义理解模型image semantic understanding models 来提高图像推荐性能。

      • 例如,为了给人们推荐美妆 makeups,首先将与美妆相关的面部特征分类为结构化的 coding,然后将面部属性输入到基于深度学习的推荐系统,从而用于个性化的美妆合成personalized makeup synthesis
      • 在一些基于视觉的推荐领域,如时尚领域,每个产品都关联多个语义属性。为了利用用户对详细时尚属性的语义偏好,通过在细粒度的、可解释性的语义属性空间中投影用户和 item,人们提出了一种语义属性的可解释性推荐系统。
  3. 混合推荐模型:混合模型同时利用协同信号和视觉内容进行推荐,这可以缓解 CF 中的数据稀疏性问题并提高推荐性能。有研究人员提出先提取 item 视觉信息作为特征,然后将 item 视觉特征馈入分解机进行推荐。最近的研究提出了混合视觉推荐的端到端学习框架,而不是效果较差的、两步的学习过程。

    • Visual Bayesian Personalized Ranking: VBPR 是利用视觉内容进行统一的混合推荐的少数尝试之一。在 VBPR 中,每个 user(item) 被投影到两个潜在空间中:一个视觉空间(该视觉空间基于视觉特征从 CNN 投影而来)、一个协同潜在空间collaborative latent space (该协同潜在空间捕获了用户潜在偏好)。然后,给定一个关联图像xi$ \mathbf{\vec x}_i $ 的 user-item pair(u,i)$ (u,i) $ ,结合两个空间的用户偏好来预测的r^u,i$ \hat r_{u,i} $ 为:

      r^u,i=puqi+wuf(CNN(xi))

      其中:

      • f(CNN())$ f(\text{CNN}(\cdot)) $f(CNN())$ f(\text{CNN}(\cdot)) $ 表示通过从原始视觉空间CNN(xi)$ \text{CNN}(\mathbf{\vec x}_i) $ 变换而来的 item content representation ,即 item 视觉 embedding
      • pu$ \mathbf{\vec p}_u $ 为用户潜在向量,qi$ \mathbf{\vec q}_i $ 为 item 潜在向量,wu$ \mathbf{\vec w}_u $ 为用户视觉 embedding

      第一项建模 user-item 的协同效应collaborative effect ,第二项建模 user-item 的视觉内容偏好。

    • 鉴于 VBPR 的基本思想,研究人员进一步介绍了视觉空间中视觉趋势的时间演变temporal evolution ,或图像关联的 location representation

    • 在基于矩阵分解的模型中,item 的视觉内容不是将用户的偏好表示为两个空间,而是作为正则化项,从而确保每个 item 学到的 item 潜在向量与从 CNN 学到的视觉图像 representation 相似。

    • 除了学习用于 item 视觉representationCNN content representations 之外,人们还提出了许多模型来考虑来自图像的 additional information从而进行 item 视觉 representation ,例如从 deep aesthetic network 学到的预训练的 aesthetics

      当用户在视频帧上显示 time-synchronized 的评论时,研究人员提出了一种多模态框架来同时预测用户对关键帧的偏好并生成个性化的评论。与评论生成模型相比,视觉 embedding 被注入到用户偏好预估部分、以及 LSTM 架构的每个 hidden state 从而实现更好的文本生成。

    • 最近,GNN 在使用启发式图卷积graph convolution 建模图数据方面表现出了强大的性能。PinSage 是将 GNNs 应用于 web-scale 推荐系统的少数尝试之一。给定一个 item-item correlation graphPinSage 将节点属性作为输入,并通过迭代式的图卷积来生成 node embedding 从而学习图结构。研究人员还建议形式化 user、服装、item 的异质图,并执行 hierarchical GNNs 从而进行个性化的服装推荐outfit recommendation

b. 视频推荐

  1. 研究人员提出了具有丰富视觉信息和音频信息的、content-based 的视频推荐系统。具体而言,这些提出的模型首先提取视频特征和音频特征,然后采用神经网络将这两种特征通过 early fusionlate fusion 等技术进行融合。由于这些 content-based 的视频推荐模型不依赖于用户与视频的交互行为,因此它们可以应用于新的视频推荐而无需任何历史行为数据。

  2. content-based 的推荐模型相比,研究人员提出了一种用于多媒体推荐的注意力协同过滤Attentive Collaborative Filtering: ACF 模型,该模型使用了用户视频交互记录。ACF 利用visual inputs的注意力机制来学习注意力权重,从而 summarize 用户对历史 itemitem component 的偏好。

    ACF 的核心思想是:利用用户的多媒体行为并将用户显式地投影到两个空间中:协同空间 collaborative space和视觉空间 visual space,这样用户的关键帧偏好key frame preference 就可以在视觉空间中被逼近approximated 。作者设计了一个模型来识别用户的协同维度和视觉维度,并建模用户如何从这两个方面做出决定性的 item 偏好。

1.2.4 建模社交网络

  1. 随着社交网络的出现,用户喜欢在这些社交平台上表达对 item 的偏好,并通过社交关系分享他们的兴趣。这些平台中出现了社交推荐,其目标是建模用户之间的社交影响social influence 和社交相关性social correlation ,从而提高推荐性能。社交推荐的根本原因是社交邻居之间存在社交影响,导致用户在社交网络中的兴趣的相关性。我们将社交推荐模型总结为以下两类:社交相关性增强和正则化模型、GNN based 模型。

a. 社交相关性增强和正则化

  1. 通过将用户的社交行为作为社交域social domain,将 item 偏好行为作为itemitem domain ,社交相关性增强和正则化模型试图将来自两个域的用户行为融合在一个统一的 representation 中。对于每个用户,其潜在 embeddignpu$ \mathbf{\vec p}_u $ 由两部分组成:一个来自 item domainfree embeddingeu$ \mathbf{\vec e}_u $ ,以及一个来自社交域的刻画社交相似性的 social embeddinghu$ \mathbf{\vec h}_u $ 。换句话讲,我们有:

    hu=g(u,S),pu=f(eu,hu)

    其中:

    • g(,)$ g(\cdot,\cdot) $ 以社交网络结构为输入从而建模 social embedding
    • S$ \mathbf S $ 为刻画了社交网络结构的邻接矩阵。
    • f(,)$ f(\cdot,\cdot) $ 融合了两种 embedding

    不同的模型在社交域 representationhu$ \mathbf{\vec h}_u $ 的详细实现上有所不同。例如,可以直接从社交网络 embedding 模型来学习(《Collaborative neural social recommendation》),也可以从社交邻居的 embedding 中来聚合(《A hierarchical attention model for social contextual image recommendation》《Hers:Modeling influential contexts with heterogeneous relations for sparse and cold-start recommendation》),或者使用 attention basedtransfer learning 模型从社交域迁移到 item 域 (《An efficient adaptive transfer neural network for social-aware recommendation》)。

    此外 ,社交网络还被用作模型优化过程中的正则化项,假设社交网络中相连的用户在学到的 embedding 空间中更相似(《Collaborative neural social recommendation》)。

  2. 在现实世界中,由于用户个人兴趣的变化和不同的社交影响力,用户的兴趣会随着时间的推移而变化。研究人员使用 RNN 扩展了 social correlation based 的模型,从而建模动态社交影响下用户偏好的演变(《Attentive recurrent social recommendation》《Neural framework for joint evolution modeling of user feedback and social links in dynamic social networks》)。具体而言,每个用户u$ u $ 在时刻t$ t $ 的潜在偏好hu(t)$ \mathbf{\vec h}_u^{(t)} $ 可以建模为该用户前一时刻潜在偏好hu(t1)$ \mathbf{\vec h}_{u}^{(t-1)} $ 的转移 transition、以及在t1$ t-1 $ 时刻来自社交邻居的社交影响 :

    hu(t)=fRNN(Ru(t),hu(t1),vNuαv,uhv(t1))

    其中:

    • Ru(t)$ R_{u}^{(t)} $ 为用户u$ u $ 在时刻t$ t $ 的时间行为temporal behaviors
    • vNuαv,uhv(t1)$ \sum_{v\in \mathcal N_u} \alpha_{v,u} \mathbf{\vec h}_v^{(t-1)} $ 为来自该用户的社交邻居的影响,Nu$ \mathcal N_u $ 为用户u$ u $ 的社交邻居,αv,u$ \alpha_{v,u} $ 为用户v$ v $ 对于用户u$ u $ 的社交影响力(可以使用均匀的影响力,或者使用注意力模型)。

b. GNN based 方法

  1. 上述大多数社交推荐模型都利用局部一阶邻居进行社交推荐。在现实世界中,社交扩散过程 social diffusion process呈现出一种动态的递归效应来影响用户的决策。换句话讲,每个用户都受到全局社交网络图结构的递归影响。为此,研究人员认为,最好利用基于 GNN 的模型来更好地建模推荐的全局社交扩散过程global social diffusion process

    DiffNet 旨在通过社交 GNN 建模来模拟用户如何受到递归社交扩散过程的影响,从而进行社交推荐。具体而言,DiffNet 递归地将社交影响从第 0 步扩散到 stable diffusion depth K 。令hu(k)$ \mathbf{\vec h}_u^{(k)} $ 表示用户u$ u $ 在第 k 层扩散过程中的 user embedding,则模型为 :

    hu(0)=fNN(xu,eu)hNu(k1)=Pool(hv(k1)vNu)hu(k)=s(W(k)[hNu(k1),hu(k1)])

    其中:

    • xu$ \mathbf{\vec x}_u $ 为用户u$ u $ 的特征向量,eu$ \mathbf{\vec e}_u $ 为用户u$ u $ 的 free embeddingfNN(,)$ f_\text{NN}(\cdot,\cdot) $ 为建模初始社交扩散的神经网络。
    • Nu$ \mathcal N_u $ 为用户u$ u $ 的邻居集合,hNu(k1)$ \mathbf{\vec h}_{\mathcal N_u}^{(k-1)} $ 建模了来自用户u$ u $ 的社交邻居的扩散。
    • W(k)$ \mathbf W^{(k)} $ 为第k$ k $ 层的待学习的权重矩阵,[,]$ [\cdot,\cdot] $ 为向量拼接,s()$ s(\cdot) $ 为激活函数。

    随着k$ k $ 从 step 1 扩散到深度K$ K $ ,则上式捕获了递归的社交扩散过程。

  2. 除了在 user-user 社交图上执行 GNN 之外,研究人员还考虑使用基于异质 GNN 的模型联合建模社交网络中的社交扩散过程和 user-item 二部图中的兴趣扩散过程interest diffusion process。例如,人们提出 DiffNet++ 从而联合建模来自 user-item 二部图的兴趣扩散、以及来自 user-user 社交图的影响扩散,从而用于社交推荐中的用户建模,并取得了 state-of-the-art 性能。

c. 建模知识图谱

  1. 研究人员还考虑利用知识图谱Knowledge Graph: KG 进行推荐,其中知识图谱为 item 提供丰富的辅助信息(如 item 属性、外部知识)。通常,知识图谱以有向图G={(h,r,t)h,tV,rR}$ \mathcal G= \left\{(h,r,t)\mid h,t\in \mathcal V,r\in \mathcal R\right\} $ 的形式来组织这类 subject-property-object 的事实 fact,其中每个三元组表示存在从 head 实体h$ h $ 到 tail 实体t$ t $ 的关系r$ r $ ,V$ \mathcal V $ 为所有实体集合,R$ \mathcal R $ 为所有关系集合。

    探索这种内部链接interlink以及 user-item 交互,是丰富 item 画像、增强 user-item 之间关系的有前景的解决方案。此外,这种图结构赋予推荐系统可解释的能力。最近对知识图谱的工作可以大致分为三类:基于路径的模型 path-based model 、基于正则化的模型regularization-based model、基于 GNN 的方法GNN-based approach

  2. 基于路径的方法:许多工作引入了 metapath 和路径从而表达用户和 item 之间的高阶连接,然后将路径输入预测模型来直接推断用户偏好。具体而言,从用户u$ u $ 到 itemi$ i $ 的路径可以定义为一系列实体和关系:

    path=[v1r1v2r2rL1vL]

    其中:

    • v1=u,vL=i$ v_1=u,v_L=i $ ,vlV$ v_l\in \mathcal V $ 为节点,rlR$ r_l\in \mathcal R $ 为关系。
    • (vl,rl,vl+1)$ (v_l,r_l,v_{l+1}) $ 为第l$ l $ 个三元组,L1$ L-1 $ 表示三元组的数量。

    因此,连接u$ u $ 和i$ i $ 的路径集合可以定义为:P(u,i)={path}$ \mathcal P(u,i) = \{\text{path}\} $ 。

    FMG, MCRec, KPRN 将路径集合转换为 embedding 向量从而表示 user-item 的连接性connectivity.。这种范式可以概括如下:

    c=fpooling({fembed(path)pathP(u,i)})

    其中:

    • fembed()$ f_\text{embed}(\cdot) $ 为一个 embedding 函数旨在将路径 path 嵌入到一个向量。
    • fpooling()$ f_\text{pooling}(\cdot) $ 为一个池化函数旨在将所有路径信息聚合为 connectivity representation 。例如,MCRecKPRN 中采用注意力网络来作为池化函数。

    RippleNet 为每个用户构建 ripple 集合(即从P$ \mathcal P $ 派生的高阶邻域 item)从而丰富 user representation

    虽然这些方法显式建模高阶连接性,但是它们在现实世界的推荐场景中极具挑战性,因为它们中的大多数都需要广泛的领域知识来定义 metapath、或者繁重的特征工程来获得有效的路径。此外,当涉及大量知识图谱实体时,路径的规模很容易达到数百万甚至更大,这使得有效地迁移知识变得困难。

  3. 基于正则化的方法:这个研究方向设计了一个联合学习框架,其中使用直接的 user-item 交互来优化推荐器的损失,并使用知识图谱三元组作为 additional loss 项来正则化推荐器模型的学习。具体而言,两个模型分量之间的锚点 anchoroverlapped itemsembedding

    CKE 利用 Knowledge Graph Embedding 技术(尤其是 TransR)来生成 itemadditional representation,然后将它们与推荐器 MFitem embedding 集成,即:

    qi=fembed(i)+fKGE(iG)

    其中:

    • fembed()$ f_\text{embed}(\cdot) $ 为以 item ID 为输入的 embedding 函数。
    • fKGE()$ f_\text{KGE}(\cdot) $ 为考虑了知识图谱结构的 KGE 方法的item representation

    类似地,DKNNCFTransE 中生成 item embedding。这些方法聚焦于通过联合学习框架来丰富 item representation

  4. 基于 GNN 的方法:基于正则化的方法仅考虑实体之间的直接连接性,并且以相当隐式的方法来编码高阶连接性。由于缺乏显式地建模高阶连接性,因此既不能保证捕获长程连接long-range connectivity、也无法保证高阶建模的结果是可解释的。最近的研究(如 KGAT, CKAN, MKM-SR, KGCN) 受到 GNN 进展的启发,探索了图上的消息传递机制从而以端到端方式来利用高阶的连接性。

    KGAT 通过将每个用户行为表示为三元组(u,interact,i)$ (u,\text{interact},i) $ ,从而将 user-item 交互和知识图谱编码为统一的关系图 relational graph。基于 item-entityalignment setuser-item 二部图可以和知识图谱无缝地集成为所谓的协同知识图 collaborative knowledge graphG={(h,r,t)h,tV,rR}$ \mathcal G=\{(h,r,t)\mid h,t\in \mathcal V^\prime,r\in \mathcal R^\prime\} $ ,其中V=VU$ \mathcal V^\prime = \mathcal V\cup\mathcal U $ 为集成后的节点集合,R=R{interact}$ \mathcal R^\prime = \mathcal R\cup \{\text{interact}\} $ 为集成后的关系集合。在这样的图上,KGAT 递归地从节点的邻居(可以是用户节点、item 节点、或者其它实体节点)传播 emebdding 从而改善 node embedding ,并且在传播过程中采用注意力机制来区分邻居的重要性:

    pu=fGNN(u,G)

    其中:fGNN()$ f_\text{GNN}(\cdot) $ 为 GNN 函数。

1.2.5 总结

  1. 辅助数据(如文本、多媒体、以及社交网络)能够增强 user representation learningitem representation learning,从而提升推荐性能。关键是辅助数据的选择和集成方法。例如:

    • 文本信息可以帮助模型生成相应的推荐解释,社交网络信息对于提供用户之间的社交影响力和社交相关以便更好地推荐非常有用。
    • 同时,注意力机制是一种从辅助数据中选择最相关信息从而增强 representation learning 的通用方法,基于 GNN 的方法擅长获取结构信息和高阶相关性从而利用辅助数据。

    综上所述,根据推荐目标(推荐准确率、可解释性、冷启动问题等),选择合适的辅助数据和集成方法可以帮助推荐模型获得良好的性能。

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。
列表为空,暂无数据
    我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
    原文