HieRec论文阅读笔记

news/2024/9/29 3:24:40

HieRec: Hierarchical User Interest Modeling for Personalized News Recommendation论文阅读笔记

Abstract

现存的问题:

​ 用户兴趣建模对于个性化新闻推荐至关重要。现有的新闻推荐方法通常从每个用户以前的行为中学习一个单一的用户嵌入,以代表他们的整体兴趣。然而,用户兴趣通常是多样化和多粒度的,很难通过单一的用户嵌入来准确建模。

解决方案:

​ 我们提出了一种具有分层用户兴趣建模的新闻推荐方法,称为HieRec。在我们的方法中,每个用户都用分层兴趣树来表示,而不是单一的用户嵌入,以更好地捕捉他们对新闻的多样化和多粒度兴趣。我们使用三级层次结构来表示:

​ 1)用户的整体兴趣

​ 2)用户对粗粒度主题(如体育)的兴趣;

​ 3)用户对细粒度主题(如足球)的兴趣。此外,我们还提出了一个分层用户兴趣匹配框架,将候选新闻与不同层次的用户兴趣相匹配,以实现更准确的用户兴趣定位。

Introduction

​ 本文提出了一种分层用户兴趣建模的个性化新闻推荐方法,命名为 HieRec,它能有效捕捉多样化和多粒度的用户兴趣。我们的方法包含三个层次的用户兴趣表征,从不同方面和粒度对用户兴趣进行建模。

​ 第一个层次是子主题层次,包含多个兴趣表征,以模拟用户对不同新闻子主题的细粒度兴趣。它们是从子主题的嵌入和相应子主题的点击新闻中学习的。

​ 第二种是主题级,它包含多个兴趣表征,用于捕捉用户对主要新闻主题的粗粒度兴趣。这些兴趣表征是从新闻主题及其下属子主题级兴趣表征的嵌入中学习而来的。

​ 第三个是用户级兴趣表征,它包含一个兴趣表征来模拟用户的整体兴趣。它是从主题级兴趣表征中学习的。此外,我们还提出了一个分层用户兴趣匹配框架,将候选新闻与不同层次的兴趣表征进行匹配,从而更准确地定位用户兴趣。

Method

问题定义

​ 这里不同的是每个新闻都有标题,主题和子主题,标题是由文本序列和实体序列组成。我们假设每个用户有M个点击新闻,在HieRec中,我们根据它们的主题和子主题进一步划分这些点击,用于分层用户兴趣建模。

分层的用户兴趣建模

​ 分层的用户兴趣建模的结构图如下所示

pkBBbwt.png

​ 一般来说,用户的兴趣通常是非常多样化和多粒度的。理解用户对不同方面和粒度的兴趣,有可能更准确地建模用户的兴趣。因此,我们提出了一个分层的用户兴趣建模框架,该框架学习一个分层的兴趣树来捕获多样化和多粒度的用户兴趣。如图2所示,HieRec通过一个三层的层次结构来表示用户的兴趣。

​ 首先,我们学习多个子主题级兴趣表征,以模拟用户对不同新闻子主题(如足球和高尔夫)的细粒度兴趣。子主题 \(s_j^i\)的子主题级兴趣表征是从 \(N_j^i\)中学习的,\(N_j^i\)由用户在子主题 \(s_j^i\)中点击的新闻组成。由于点击新闻在用户兴趣建模中可能具有不同的信息量,因此我们采用子主题级注意力网络来选择信息量大的点击新闻,以建模用户对子主题\(s_j^i\) 的兴趣:

\(\mathbf{c}_j^i=\sum_{k=1}^l\gamma_k\mathbf{n}_k^{i,j},\gamma_k=\frac{\exp(\phi_s(\mathbf{n}_k^{i,j}))}{\sum_{p=1}^l\exp(\phi_s(\mathbf{n}_p^{i,j}))},\)

​ 此外,我们还采用了一个子主题嵌入层来捕获不同子主题的语义信息,从中我们可以得到子主题 \(s_j^i\)的嵌入向量。

​ 最后,我们根据 \(c_j^i\)\(s_j^i\)的组合学习子主题级用户兴趣表示 \(u_{i,j}^s\),即 \(\mathbf{u}_{i,j}^s=\mathbf{c}_j^i+\mathbf{s}_j^i\)。同样,我们也会学习用户点击的其他子主题的子主题级兴趣表征。

​ 其次,我们学习多种主题级别的兴趣表示,以模拟主要新闻主题(如体育和金融)中的粗粒度用户兴趣。所点击的主题ti的主题级兴趣表示是从子主题\(\{s_{i,j}^s|j=1,...,d\}\)的子主题级兴趣表示\(\{\mathbf{u}_{i,j}^s|j=1,...,d\}\)中学习出来的。

​ 更具体地说,用户对不同子话题的兴趣可能对特定话题的用户兴趣建模具有不同的重要性。此外,一个子话题的新闻点击量也可能反映出其在主题级用户兴趣建模中的重要性。因此,我们利用话题级注意力网络来选择重要的子话题级用户兴趣表征,以模拟用户对话题 ti 的兴趣:

\(\mathbf{z}_i=\sum_{j=1}^d\beta_j\mathbf{u}_{i,j}^s,\beta_j=\frac{\exp(\phi_t(\mathbf{v}_{i,j}^s))}{\sum_{k=1}^d\exp(\phi_t(\mathbf{v}_{i,k}^s))},\)

​ 其中:\(\mathbf{v}_{i,j}^s=[\mathbf{u}_{i,j}^s;\mathbf{r}_j^i]\)\(r_j^i\)是子主题\(s_j^i\)上点击新闻次数的嵌入向量。此外,我们还使用话题嵌入层对不同话题的语义信息进行建模,并驱动话题\(t_i\)的嵌入向量 。最后,我们汇总 zi 和 ti,学习主题 ti 中的主题级用户兴趣表征\(\mathbf{u}_i^t=\mathbf{z}_i+\mathbf{t}_i\)。同样,我们也会学习其他点击主题的主题级兴趣表征。

​ 第三,我们学习用户级兴趣表征 u g 来模拟用户的整体兴趣。它是从主题级兴趣表征中学习的。同样,我们采用用户级注意力网络来模拟主题级用户兴趣的相对重要性,从而学习用户级兴趣表征:

\(\mathbf{u}^g=\sum_{i=1}^m\alpha_i\mathbf{u}_i^t,\alpha_i=\frac{\exp(\phi_g(\mathbf{v}_i^t))}{\sum_{j=1}^m\exp(\phi_g(\mathbf{v}_j^t))},\)

层次的用户匹配

​ 候选新闻与用户兴趣在不同粒度上的匹配可以为用户兴趣定位提供各种线索。候选新闻与用户细粒度兴趣之间的匹配有助于个性化新闻推荐。此外,并非所有候选新闻都能与细粒度用户兴趣相匹配。候选新闻与粗粒度的用户兴趣和整体用户兴趣进行匹配也很重要。因此,我们提出了一个分层用户兴趣匹配框架,它对用户对不同兴趣粒度的候选新闻的兴趣建模。

​ 层次的用户匹配框架如下:

pkBfCgx.png

​ 它以候选新闻(包括其表示 nc、主题 tc 和子主题 sc)和分层用户兴趣表示为输入。首先,我们将候选新闻与用户总体兴趣相匹配,并根据 nc 和 ug 之间的相关性计算出用户级兴趣得分 og:\(o_g=\mathbf{n}_c\cdot\mathbf{u}^g.\)其中\(u^g\)是上一步学习到的用户级兴趣表征。

​ 其次,主题级兴趣表示\(u_{t_c}^t\)模拟用户对候选新闻主题 tc 的粗粒度兴趣。它可以提供粗粒度信息,以了解用户对候选新闻的兴趣。因此,我们将话题级兴趣表征 \(u_{t_c}^t\) 与候选新闻 nc 匹配为\(\hat{o}_t=\mathbf{n}_c\cdot\mathbf{u}_{t_c}^t\)。此外,我们还可以推断用户可能对他们点击次数较多的话题更感兴趣。因此,我们根据话题 tc 在历史点击新闻中的比例\(w_{t_c}\)\(\hat{o}_t\)进行加权,得到话题级兴趣得分 ot : \(o_t=\hat{o}_t*w_{t_c}\)。此外,如果候选新闻不属于任何用户点击过的主题,则直接将 ot 设为 0。

​ 第三,子主题级兴趣表征 \(u_{s_c}^s\)模拟了用户对候选新闻子主题 sc的细粒度兴趣,可用于捕捉用户对候选新闻的细粒度兴趣。因此,我们将子主题级兴趣表征\(u_{s_c}^s\)与候选新闻 nc 匹配为\(\hat{o}_s=\mathbf{n}_c\cdot\mathbf{u}_{s_c}^s\).同样,我们根据用户点击新闻中子主题 sc 的比例 \(w_{s_c}\)\(\hat{o}_s\)进行加权,得到子主题级兴趣得分:\(o_s=\hat{o}_s*w_{s_c}\)

​ 最后,将三个不同级别的兴趣分数汇总为一个总体兴趣分数o:

新闻表示

​ 我们将介绍了如何从文本和新闻标题的实体中获取新闻表示,学习新闻表示的框架如下所示。

pkBfgi9.png

​ 我们首先使用文本编码器对新闻文本进行建模。它首先应用单词嵌入层来丰富模型的语义信息。接着,它采用文本自注意力网络从新闻文本的上下文中学习单词表征。然后,它采用文本注意力网络,通过聚合词表征来学习文本表征 nt。除了文本,知识图谱也能通过新闻中的实体为理解新闻内容提供丰富的信息因此,我们采用实体编码器来学习新闻的实体表征。我们首先使用实体嵌入层将知识图谱中的信息纳入我们的模型。我们进一步应用实体自我关注网络来捕捉实体间的相关性。接下来,我们利用实体关注网络,通过聚合实体来学习新闻的实体表示。最后,我们建立了新闻的表示n为\(\mathbf{n}=\mathbf{W}_t\mathbf{n}_t+\mathbf{W}_e\mathbf{n}_e\)

模型训练

​ 在训练数据集中O中给定一个正样本\(n_i^+\)(一个已被点击的新闻),我们从显示给用户u的相同新闻印象中随机选择K个负样本\([n_i^1,...,n_i^K]\)(未被点击的新闻)。NCE损失L要求阳性样本\(o_i^+\)应比其他阴性样本\([o_i^1,...,o_i^K]\)分配更高的兴趣评分,并表述为:

\(\mathcal{L}=-\sum_{i=1}^{|O|}\log\frac{\exp(o_i^+)}{\exp(o_i^+)+\sum_{j=1}^K\exp(o_i^j)}.\)

总结

​ 这篇文章感觉讲的非常清晰,就不总结了。贴一下论文的conclusion

​ 本文针对分层用户兴趣建模提出了一种名为 HieRec 的个性化新闻推荐方法,它能有效地对多样化和多粒度的用户兴趣进行建模。HieRec 通过学习三层层次结构,从不同方面和粒度来表示用户兴趣。首先,我们学习多个子主题级兴趣表征,对不同新闻子主题中的细粒度用户兴趣进行建模。其次,我们学习多个主题级兴趣表征,以模拟用户对几个主要新闻主题的粗粒度兴趣。第三,我们学习一个用户级兴趣表征来模拟用户的整体兴趣。此外,我们还提出了一个分层用户兴趣匹配框架,将候选新闻与不同粒度的用户兴趣进行匹配,从而实现更准确的用户兴趣定位。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.ryyt.cn/news/45595.html

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈,一经查实,立即删除!

相关文章

一文看懂怎么快捷、安全地实现制造设备数据传输

制造设备在生产过程中会产生多种类型的数据,这些数据对于设备监控、维护以及生产流程的优化至关重要。以下是制造设备可能产生的数据:1. 生产任务类数据 生产计划及执行数据、每个工位的生产工单、工单的生产开始时间、中间暂停时间、生产结束时间、每个加工工步的工时消耗信…

多多支持,才有动力

人要在当下不断寻求内在的意义,而不是期待将来的幸福。

FPGA/ZYNQ:Sobel边缘检测

一、简述 边缘检测是图像处理和计算机视觉中的基本问题,边缘检测的目的是标识数字图像中亮度变化明显的点。图像边缘检测大幅度地减少了数据量,并且剔除了可以认为不相关的信息,保留了图像重要的结构属性。所谓边缘是指其周围像素灰度急剧变化的那些像素的集合,它是图像最基…

Docker部署安装应用大集合(Tomcat、Nginx、Mysql、Redis、MQ、Nacos、Zookeeper、Portainer、MongoDB ......)

Docker部署安装应用大集合(Tomcat、Nginx、Mysql、Redis、MQ、Nacos、Zookeeper、Portainer、MongoDB ......)精选 原创CodeDevMaster2022-11-16 08:42:24博主文章分类:Docker©著作权 文章标签dockermysqlNginxNacosMQ文章分类Docker云计算yyds干货盘点 Docker部署安装应…

接口信息快速保存与打开

今天发现一个特别有用的神器,chrome的F12。利用F12中提供的导出har格式数据工具和导入har格式数据工具可以大大提高工作效率。 当我们用F12抓包完成后可以将这些接口信息存为har格式,之后可以利用har导入功能在F12下将当时保存的信息导入就不用手动复制粘贴了。 应用场景: 1…

有点儿神奇,原来vue3的setup语法糖中组件无需注册因为这个

在setup语法糖中直接将组件import导入无需注册就可以使用,你知道这是为什么呢?前言 众所周知,在vue2的时候使用一个vue组件要么全局注册,要么局部注册。但是在setup语法糖中直接将组件import导入无需注册就可以使用,你知道这是为什么呢?注:本文中使用的vue版本为3.4.19。…

可以把 FolkMQ 内嵌到 SpringBoot3 项目里(可内嵌的消息中间件,纯血国产)

支持Qos0、定时、过期、顺序、广播、事务、二进制等消息特性。有确认、重试、延时等机制。可嵌入、单机、集群等部署。之前发了《把 FolkMQ 内嵌到 SpringBoot2 项目里(比如 “诺依” 啊)》。有人说都淘态了,有什么好内嵌的。。。所以再发个 SpringBoot3FolkMQ 是一个 “纯…

SharpBV下载bilibili视频,支持720p和1080p清晰度视频;

b站视频下载 bibililidown shrapbvSharpBV下载bilibili视频,支持720p和1080p清晰度视频; 特点: 操作系统Win7|Win10 64位 并发下载默认3并发量 进度显示 鼠标点击自动粘贴视频链接SharpBV-1.0.0-win64.msi.zip - 蓝奏云