首页 > 其他分享 >GERL论文阅读笔记

GERL论文阅读笔记

时间:2024-07-08 10:08:37浏览次数:15  
标签:嵌入 mathbf 新闻 论文 用户 笔记 GERL 邻居 ID

Graph Enhanced Representation Learning for News Recommendation论文阅读笔记

这篇文章是2020年的,也算是比较老的了,但是比较经典,这里来读一下

Abstract

存在的问题:

​ 现有的新闻推荐方法通过从新闻内容和用户与新闻的直接交互(如点击)中建立精确的新闻表征来实现个性化,但忽略了用户与新闻之间的高阶相关性。

解决方法:

​ 我们提出了一种新闻推荐方法,通过在图环境中对用户和新闻的相关性建模,加强用户和新闻的表征学习。

​ 在我们的方法中,用户和新闻都被视为根据历史用户点击行为构建的双向图中的节点。在新闻表征方面,我们首先利用转换器架构来构建新闻语义表征。然后,我们通过图注意网络将其与图中相邻新闻的信息结合起来。在用户表征方面,我们不仅根据用户的历史点击新闻来表征用户,而且还将其邻居用户的表征信息纳入图中。

Introduction

​ 我们的工作源于几个观察结果。首先,从用户与新闻的互动中可以建立一个双方图。在这个图中,用户和新闻都可以看作是节点,它们之间的互动可以看作是边。其中,一些新闻是由同一个用户浏览的,因此被定义为邻居新闻。同样,特定用户可能会分享共同点击的新闻,也被称为邻居用户。第三,图谱中的相邻用户可能有一些类似的新闻偏好。纳入这些相似性可进一步丰富目标用户表征。

​ 在本文中,我们建议结合用户和新闻的图相关性,以增强他们对新闻推荐的表示学习。首先,我们利用Transformer从文本内容中构建新闻语义表示。通过这种方式,多头自我注意网络对短距离和长距离的标题中的单词依赖性进行了编码。我们还添加了新闻的主题嵌入,因为它们可能包含重要的信息。然后通过图注意网络聚合邻居新闻,进一步增强了新闻表示能力。为了丰富邻居的新闻表示,我们同时利用了它们的语义表示和ID嵌入。对于用户表示,除了从他们的ID嵌入和历史上点击的新闻中仔细地构建用户表示外,我们的方法还利用了图形信息。我们使用注意机制来聚合邻居用户的ID嵌入。最后,通过选取用户和新闻表示之间的点积来进行推荐。

Method

​ 在本节中,我们将介绍图增强表示学习(GERL)方法,如图 2 所示,该方法由一跳交互学习模块和二跳图学习模块组成。一跳交互学习模块从历史点击新闻中代表目标用户,并根据文本内容代表候选新闻。两跳图学习模块利用图注意力网络学习新闻和用户的邻接嵌入。

pkWcDtf.png

用于上下文理解的Transformer

​ 我们利用转换器从新闻标题和主题中形成准确的上下文表示。新闻标题通常简洁明了。因此,为了避免参数过多导致性能下降,我们将转换器简化为单层多头注意力

​ 然后,我们从下往上介绍修改后的转换器。底层是词嵌入,它将新闻标题中的词转换为低维嵌入向量序列。将包含 M 个单词的新闻标题,通过这一层将其转换为嵌入向量序列。

​ 下一层是词级多头自我关注网络。单词之间的交互对于学习新闻表征非常重要。此外,一个词可能与标题中的多个词相关。因此,我们采用多头自我关注来形成上下文单词表征。第 k 个注意力头学习到的第 i 个单词的表征计算公式为:

​ \(\alpha_{i,j}^{k}=\frac{\exp(\mathbf{e}_i^T\mathbf{W}_s^k\mathbf{e}_j)}{\sum_{m=1}^M\exp(\mathbf{e}_i^T\mathbf{W}_s^k\mathbf{e}_m)},\\\mathbf{h}_{i}^{k}=\mathbf{W}_{v}^{k}(\Sigma_{j=1}^{M}\alpha_{i,j}^{k}\mathbf{e}_{j}),\)

​ 其中\(\alpha_{i,j}^{k}\)表示第 i 个词和第 j 个词之间相关性的相对重要性。第 i 个词的多头表示 h i 是由 N 个独立的自注意头产生的表示的合并,即 hi = [hi 1 ; hi 2 ; ...; hi N ]。为了减少过拟合,我们在自注意后添加了 dropout。

​ 接下来,我们利用加性单词注意力网络来模拟不同单词的相对重要性,并将它们汇总到标题表示中。第 i 个单词的注意力权重\(\beta_i^w\)的计算公式为:

\(\beta_i^w=\frac{\exp(\mathbf{q}_w^T\tanh(\mathbf{U}_w\times\mathbf{h}_i+\mathbf{u}_w))}{\sum_{j=1}^M\exp(\mathbf{q}_w^T\tanh(\mathbf{U}_w\times\mathbf{h}_j+\mathbf{u}_w))},\)

​ 新闻标题表示 vt 的计算公式为\(\mathbf{v}_{t}=\Sigma_{i=1}^{M}\beta_{i}^{w}\mathbf{h}_{i}.\)

​ 由于用户点击的新闻主题也可能揭示用户的偏好,因此我们通过嵌入矩阵对新闻主题进行建模。将嵌入矩阵的输出表示为 vp,那么新闻的最终表示就是标题向量和话题向量的连接\(\mathbf{v}=[\mathbf{v}_t;\mathbf{v}_p].\)

单跳的交互学习

​ 单跳交互学习模块学习候选新闻和目标用户的点击行为。更具体地说,它可以分解为三个部分:(1)候选新闻语义表征;(2)目标用户语义表征;(3)目标用户 ID 表征。

候选新闻语义表示

​ 由于理解候选新闻的内容对于推荐至关重要,我们建议利用转换器对其进行精确表述。给定候选新闻 n,转换器模块(下标为 t)的单跳(上标为 O)输出为 \(n_t^O\)。

目标用户语义表示

​ 用户的新闻阅读偏好可以通过其点击的新闻清晰地显示出来。因此,我们建议从用户点击的新闻内容中建立用户表征模型。此外,不同的新闻对于用户兴趣建模的重要性可能不同。因此,我们采用一种加法关注机制来聚合点击新闻向量,用于用户表征。给定一个目标用户 u 和总共 K 个点击新闻 [n1,n2, ...,nK ],我们首先得到它们的变换器编码输出 [v1, v2, ..., vK ]。然后计算第 i 个被点击新闻的关注权重\(\beta_i^n\),计算公式为:

\(\beta_i^n=\frac{\exp(\mathbf{q}_n^T\tanh(\mathbf{U}_n\times\mathbf{v}_i+\mathbf{u}_n))}{\Sigma_{q=1}^K\exp(\mathbf{q}_n^T\tanh(\mathbf{U}_n\times\mathbf{v}_q+\mathbf{u}_n))},\)

​ 单跳用户语义表示 \(\mathbf{u}_{t}^{O}\) 的计算公式为\(\mathbf{u}_{t}^{O}=\Sigma_{i=1}^{K}\beta_{i}^{n}\mathbf{v}_{i}.\)

目标用户ID表示

​ 由于用户 ID 代表每个用户的唯一性,我们将其作为用户兴趣的潜在表征。我们使用可训练的 ID 嵌入矩阵\(\mathcal{M}_u\in\mathcal{R}^{N_u\times Q}\)将每个用户 ID 表示为低维向量,其中 Nu 是用户数,Q 是 ID 嵌入的维数。对于用户 u,单跳 ID 嵌入向量表示为\(u_e^O\) 。

两跳图学习

​ 双跳图学习模块从交互图中挖掘邻居用户和新闻之间的关联性。此外,对于给定的目标用户,其邻居用户通常与其具有不同程度的相似性。邻居新闻之间也存在同样的情况。为了利用这种相似性,我们利用图关注网络(graph attention network)来聚合邻居新闻和用户信息。这里使用的图信息是异构的,包括语义表示和 ID 嵌入。在这个两跳图学习模块中,还包括三个部分:(1)邻居用户 ID 表示;(2)邻居新闻 ID 表示;(3)邻居新闻语义表示。

邻居用户ID表示

​ 由于添加邻居用户信息可以补充目标用户的表征,我们通过加法注意力网络来聚合邻居用户的 ID 嵌入。给定一个用户 u 和 D 个邻居用户列表\([u_{n_1},u_{n_2},...,u_{n_D}]\),我们首先通过相同的用户 ID 嵌入矩阵 Mu 得到他们的 ID 嵌入,记为\([\mathfrak{m}_{u_1},\mathfrak{m}_{u_2},...,\mathfrak{m}_{u_D}]\)。然后计算第 i 个邻居用户的关注权重\(\beta_i^u\):

\(\beta_i^u=\frac{\exp(\mathbf{q}_u^T\tanh(\mathbf{U}_u\times\mathbf{m}_{u_i}+\mathbf{u}_u))}{\Sigma_{q=1}^D\exp(\mathbf{q}_u^T\tanh(\mathbf{U}_u\times\mathbf{m}_{u_q}+\mathbf{u}_u))},\)

​ 两跳邻居用户 ID 表示\(\mathbf{u}_{e}^{T}\)的计算公式为\(\mathbf{u}_{e}^{T}=\Sigma_{i=1}^{D}\beta_{i}^{u}\mathbf{m}_{u_{i}}.\)

邻居新闻ID表示

​ 同一用户点击的新闻显示了该用户的某些偏好,因此可能具有某些共同特征。为了模拟这种相似性,我们利用注意力网络来学习邻居新闻 ID 表示。对于有 D 个邻居新闻列表\([n_{n_1},n_{n_2},...,n_{n_D}]\)的新闻 n,我们首先用新闻 ID 嵌入矩阵\(\mathcal{M}_n\in\mathcal{R}^{N_n\times Q},\)对邻居进行转换,其中 Nn 是新闻的数量,Q 是 ID 嵌入的维度。输出为\([\mathfrak{m}_{n_1},\mathfrak{m}_{n_2},...,\mathfrak{m}_{n_D}].\)。在此基础上,我们应用加法注意力层将相邻的 ID 嵌入合并为一个统一的输出向量。注意力的计算与上面计算邻居用户ID表示的注意力计算类似。新闻 n 的最终两跳邻居新闻 ID 表示为\(n_e^T\)。

邻居新闻的语义表示

​ 虽然新闻的 ID 嵌入是唯一的,而且本质上代表了邻近新闻,但它们隐含了新闻信息。此外,一些新发布新闻的 ID 可能并不包含在预定义的新闻 ID 嵌入矩阵 Mn 中。因此,我们建议通过转换器同时学习它们的上下文表示。对于邻居新闻列表 \([n_{n_1},n_{n_2},...,n_{n_D}]\),转换器输出为\([\mathrm{v}_{n_1},\mathrm{v}_{n_2},...,\mathrm{v}_{n_D}].\)。然后应用注意力层来模拟邻居新闻的不同重要性。最终的邻居新闻语义表示是注意力层的输出,记为\(n_t^T\)。

推荐和模型训练

​ 用户和新闻的最终表示是一跳交互学习模块和两跳图学习模块输出结果的合并,即\(\mathbf{u}=[\mathbf{u}_t^O;\mathbf{u}_e^O;\mathbf{u}_e^T]\)和\(\mathbf{n}=[\mathbf{n}_t^T;\mathbf{n}_e^T;\mathbf{n}_t^O].\)。用户-物品配对的评分由用户和物品表示的内积预测,即\(\hat{y}=\mathbf{u}^T\mathbf{n}\)。

​ 最后的损失函数也是传统的损失函数:

​ \(\mathcal{L}=-\sum_i\log(\frac{\exp(\hat{y}_i^+)}{\exp(\hat{y}_i^+)+\Sigma_{j=1}^\lambda\exp(\hat{y}_{i,j}^-)}),\)

总结

​ 这篇文章整体看下来还是讲的比较清晰的。这里贴一下原文的conclusion

​ 在本文中,我们提出了一种用于新闻推荐的图增强表示学习架构。我们的方法由一跳交互学习模块和两跳图学习模块组成。一跳交互学习模块通过转换器架构形成新闻表征。它还通过聚合用户点击的新闻来学习用户表征。双跳图学习模块通过图注意力网络聚合用户和新闻的邻居嵌入,从而增强用户和新闻的表征。新闻的 ID 和文本内容都被用来丰富邻居嵌入。

标签:嵌入,mathbf,新闻,论文,用户,笔记,GERL,邻居,ID
From: https://www.cnblogs.com/anewpro-techshare/p/18289374

相关文章

  • Halcon学习笔记(3):WPF 框架搭建,MaterialDesign+Prism
    目录前言环境Nuget安装新建WPF类库项目初始化PrismApp启动页初始化重写MainView前言其实我更喜欢CommunityToolkit.mvvm+HandyControl。但是因为找工作,你不能去抗拒新事物。这里就当体验一下完整的流程好了。环境windows11.netcore8.0Nuget安装新建WPF类库项目新......
  • Halcon 学习笔记(2):Halcon+WPF导入
    目录前言.netcore8.0.netcore8.0新功能,打开文件夹和打开文件HSmartWindowControlWPFSystem.Drawing.Common重置拉伸关闭拖拽和缩放文件导出前言这里补充一下Halcon导入到WPF的要求.netcore8.0Halcon是支持.netcore8.0导入的.netcore8.0新功能,打开文件夹和打开文件......
  • 关于 引用& 类 的笔记理解
    引用作用引用现有变量,引用本身不占空间相当于别名inta=1;int&ref=a;//重命名aref只在源文件中出现不会创建内存地址还是a的;例子#include"xunhuan.h"voidlog(int&h){ h++;} intmain(){ inta=3; log(a);//理解成实际传的是这个地址中然后解引用 std:......
  • python+flask计算机毕业设计高校学生实习信息管理(程序+开题+论文)
    本系统(程序+源码+数据库+调试部署+开发环境)带论文文档1万字以上,文末可获取,系统界面在最后面。系统程序文件列表开题报告内容研究背景随着高等教育的普及与深化,高校学生实习已成为连接理论与实践、校园与社会的关键桥梁。然而,传统的实习信息管理方式往往依赖于纸质文档或简......
  • 2024年7月1日Arxiv人工智能相关论文
    cs.AI:极端事件建模和理解的人工智能:方法和挑战原标题:AIforExtremeEventModelingandUnderstanding:MethodologiesandChallenges作者:GustauCamps-Valls,Miguel-ÁngelFernández-Torres,Kai-HendrikCohrs,AdrianHöhl,AndreaCastelletti,AytacPac......
  • 2024年7月3日Arxiv人工智能相关论文
    在FPGA上实现快速、可扩展、能效高的非逐元素矩阵乘法原标题:Fast,Scalable,Energy-EfficientNon-element-wiseMatrixMultiplicationonFPGA作者:XuqiZhu,HuaizhiZhang,JunKyuLee,JiachengZhu,ChandrajitPal,SangeetSaha,KlausD.McDonald-Maier,......
  • 2024年7月4日Arxiv语言模型相关论文
    使用增量机器翻译系统评估自动评估指标原标题:EvaluatingAutomaticMetricswithIncrementalMachineTranslationSystems作者:GuojunWu,ShayB.Cohen,RicoSennrich机构:苏黎世大学爱丁堡大学计算语言学系信息学院摘要:我们介绍了一个数据集,包括在12个翻......
  • 前端笔记——一些很容易忽略,但是经常问的东西
    1.JS的基本类型-数字、字符串、布尔型、空、未定义:Number、String、Boolean、null、undefined。引用类型-函数、对象、数组:function、Object、Array。undefined和null的区别:前者是未定义,也就是不存在的意思;后者是值为空,typeof返回的值是Object,也就是对象。但其实null并不......
  • 大数据之路 读书笔记 Day4 数据同步
    回顾:Day3总结了无限客户端的日志采集大数据之路读书笔记Day3Day2总结了浏览器端的日志采集大数据之路读书笔记Day2数据同步阿里数据体系中的数据同步,主要指的是在不同的数据存储系统之间进行数据的传输与更新,以保证数据的一致性和实时性。这个过程通常涉及......
  • 15集终于编译成功了-了个球!编译TFLite Micro语音识别工程-《MCU嵌入式AI开发笔记》
    15集终于编译成功了-个球!编译TFLiteMicro语音识别工程-《MCU嵌入式AI开发笔记》还是参考这个官方文档:https://codelabs.developers.google.cn/codelabs/sparkfun-tensorflow#2全是干货!这里面提到的这个Micro工程已经移开了:https://github.com/tensorflow/tensorflow/t......