CN115098767A - 一种基于兴趣感知和用户相似度的新闻推荐方法 - Google Patents

一种基于兴趣感知和用户相似度的新闻推荐方法 Download PDF

Info

Publication number
CN115098767A
CN115098767A CN202210595418.6A CN202210595418A CN115098767A CN 115098767 A CN115098767 A CN 115098767A CN 202210595418 A CN202210595418 A CN 202210595418A CN 115098767 A CN115098767 A CN 115098767A
Authority
CN
China
Prior art keywords
user
representation
news
neighbor
representing
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
CN202210595418.6A
Other languages
English (en)
Inventor
施重阳
任少君
赵舒鑫
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Beijing Institute of Technology BIT
Original Assignee
Beijing Institute of Technology BIT
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Beijing Institute of Technology BIT filed Critical Beijing Institute of Technology BIT
Priority to CN202210595418.6A priority Critical patent/CN115098767A/zh
Publication of CN115098767A publication Critical patent/CN115098767A/zh
Pending legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/90Details of database functions independent of the retrieved data types
    • G06F16/95Retrieval from the web
    • G06F16/953Querying, e.g. by the use of web search engines
    • G06F16/9535Search customisation based on user profiles and personalisation
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/90Details of database functions independent of the retrieved data types
    • G06F16/95Retrieval from the web
    • G06F16/953Querying, e.g. by the use of web search engines
    • G06F16/9538Presentation of query results
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/08Learning methods

Landscapes

  • Engineering & Computer Science (AREA)
  • Databases & Information Systems (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • Data Mining & Analysis (AREA)
  • General Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Health & Medical Sciences (AREA)
  • Computational Linguistics (AREA)
  • Evolutionary Computation (AREA)
  • Biophysics (AREA)
  • Molecular Biology (AREA)
  • Computing Systems (AREA)
  • Biomedical Technology (AREA)
  • Artificial Intelligence (AREA)
  • Mathematical Physics (AREA)
  • Software Systems (AREA)
  • Life Sciences & Earth Sciences (AREA)
  • Health & Medical Sciences (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

本发明涉及一种基于兴趣感知和用户相似度的新闻推荐方法,属于计算机自然语言处理技术领域。本方法首先通过并行卷积神经网络对新闻的标题、正文和实体进行学习以获得初始新闻表征。然后通过门控循环单元和嵌入层捕获并融合用户短期和长期兴趣表征,以全面学习用户表征。同时,利用双重注意力机制捕获朋友对用户兴趣的影响,并通过用户的不同属性信息增强用户的表征。最后,联合新闻表征、用户表征和增强的用户表征进行推荐。本方法充分利用了多种用户属性信息,可以获取到更全面的用户表征、更准确的用户偏好表示,提高用户的满意度。

Description

一种基于兴趣感知和用户相似度的新闻推荐方法
技术领域
本发明涉及一种基于兴趣感知和用户相似度的新闻推荐方法,属于计算机自然语言处理技术领域。
背景技术
随着互联网的飞速发展,新闻网站或移动终端APP中的新闻数量越来越多,用户很难从中挑选自己出真正想要阅读的新闻,这个问题被称为信息过载。
新闻推荐技术,可以有效缓解信息过载,帮助用户从众多的资源中筛选新闻并推送其可能感兴趣的新闻。为了吸引更多的流量到它们的网站,新闻网站和媒体纷纷在其商业系统中嵌入推荐算法,为每个用户定制新闻,提升用户体验。
向新闻读者推荐适当且相关的新闻,是一项具有挑战性的任务。不同于其他推荐领域(如推荐电影、音乐和书籍等),新闻推荐具有阅读时间短、保质期短、及时性要求非常高以及极易受社交媒体影响等特点。这就要求在进行新闻推荐时,要考虑新闻的报道时间、新颖性、受欢迎程度以及未来趋势等因素。
新闻推荐领域的另一个重要挑战是高度动态的用户行为。新闻读者可能会有长期或短期的偏好,这些偏好会随着时间逐渐或突然地演变。另外,由于虚假新闻的存在,导致在进行新闻推荐时候,更加看重新闻内容的质量。
有研究人员将新闻推荐视为一个点击率预测任务,即,给定一个用户未读过的新闻,并预测用户点击这个新闻的概率。最早的新闻推荐相关工作,是运用机器学习方法对用户和新闻文本进行建模。之后,深度学习和自然语言处理技术被用于新闻文本中的语义学习,进一步提高了推荐的准确率。近几年,研究人员又将注意力集中到了利用“用户-新闻”的交互数据构建各种图结构上,尝试对构建的不同图信息进行探索,以挖掘更深层的信息。
尽管现有方法在新闻推荐中取得了一定的成效,但是,为了进一步提高新闻推荐的准确性和可解释性,还需要考虑一些关键问题。
首先,在新闻推荐场景中,存在着丰富的用户属性信息。异构图作为一种强大的信息建模方法,已经被广泛证明可以对推荐系统中复杂的异构信息进行表征,并从基于图的表示中提取重要知识,从而达到提高性能的目的。因此,通过用户-新闻交互数据和各种新闻用户属性构建异构图来学习更全面的用户和新闻表征,对于提高推荐性能是非常有必要的。
其次,目前的新闻推荐模型很少能向用户提供解释。可解释性的推荐系统有助于提高推荐的有效性和说服力,从而提高用户的满意度。
因此,在新闻推荐过程中,利用丰富的辅助信息增强用户和新闻表征,并给出通俗易懂的推荐解释,对于提高推荐性能至关重要。
发明内容
本发明的目的是为了克服现有的新闻推荐方法未能全面利用用户属性信息、可解释性不足等缺陷,创造性地提出一种基于兴趣感知和用户相似度的新闻推荐方法,能够显著提高新闻推荐性能并提高推荐可解释性。
本方法的创新点在于:从新闻角度出发,挑选用户地域、使用设备和阅读环境等用户属性信息,联合“用户-新闻”交互数据来构建异构图,并挖掘用户的长短期兴趣进行推荐。
首先,通过并行卷积神经网络对新闻的标题、正文和实体进行学习以获得初始新闻表征。然后,通过门控循环单元和嵌入层捕获并融合用户短期和长期兴趣表征,以全面学习用户表征。同时利用双重注意力机制捕获朋友对用户兴趣的影响,并通过用户的不同属性信息增强用户的表征。最后,联合新闻表征、用户表征和增强的用户表征进行推荐。
另外,本方法能够根据提取的多种解释依据三元组,从用户角度提供推荐的解释。
本发明是基于以下技术方案实现的。
一种基于兴趣感知和用户相似度的新闻推荐方法,包括以下步骤:
步骤1:学习新闻初始表征。
具体地,步骤1包括以下步骤:
步骤1.1:利用多通道CNN中的标题通道,学习新闻标题表征。
首先使用词嵌入生成固定长度的词向量,之后将标题的所有词表征依次拼接获取标题嵌入矩阵,然后对标题嵌入矩阵进行卷积运算获得标题特征图,最后把标题特征图送入最大池化层,得到有效的标题特征;
步骤1.2:利用多通道CNN中的正文通道,学习新闻正文表征。
首先使用与标题通道共享的词嵌入层来生成固定长度的词向量,然后使用卷积核从标题嵌入矩阵获取正文特征图,最后采取最大池化层从正文特征图中获取到有效的正文特征;
步骤1.3:利用多通道CNN中的实体通道,学习新闻实体表征。
首先使用独热编码获得每个实体表示向量,并将这些独热编码向量通过实体嵌入层转换为低维嵌入。然后将所有低维嵌入进行拼接作为实体嵌入向量,最后把实体嵌入向量送到全连接层来学习实体表示;
步骤1.4:将标题表征、正文表征和实体表征实现拼接并输入全连接层,获取全面的新闻表征。
步骤2:初始化用户表征。
具体地,步骤2包括以下步骤:
步骤2.1:获取用户的短期兴趣表征。
首先使用嵌入层将用户近期连续点击序列初始化为低维向量,然后采用GRU处理低维向量,以捕获用户的短期兴趣表示。
其中,GRU为可以是使用带有Gated Recurrent Unit的递归神经网络。
步骤2.2:获取用户的长期兴趣表征。
首先使用嵌入层将用户全部点击历史序列初始化为低维向量表示,然后把低维向量通过稠密层,获取用户的长期兴趣表示。
步骤2.3:把用户短期兴趣和用户长期兴趣拼接起来,得到初始用户表征。
步骤3:构建异构图。
对于一个异构图,每个节点包括用户居住地域、用户使用设备、用户使用系统以及用户阅读环境等节点类型。根据节点类型不同,节点之间的关系也不同。根据不同的用户属性,直接从原数据集中提取多种基于用户属性的解释三元组(解释依据),用于后面推荐解释。
步骤4:邻居采样。
根据不同的解释依据,采样对应的邻居。例如,根据用户所住地域,可以采样住在同一地域的其他用户。
步骤5:利用邻居增强用户表征。
考虑到根据不同用户属性划分的朋友(邻居)对用户的影响力不同,本方法利用内部注意力机制,学习不同朋友对用户的影响。
具体地,步骤5包括如下步骤:
步骤5.1:利用居住在同一地域的邻居增强用户表征。
对于给定用户,首先基于用户居住地域这一属性采样邻居。然后利用注意力机制,计算每个邻居的注意力权重,即,将邻居的向量表示和用户向量表示进行点积操作,然后将采样的所有邻居的点积结果进行相加,得到点积和,再将每个邻居的点积结果除以点积和,得到每个邻居的注意力权重。最后把得到的注意力权重和邻居向量表示相乘,得到新的邻居表示向量,并把所有新的邻居表示向量相加,得到最终基于用户居住地域的邻居增强用户表征。
步骤5.2:利用使用同一设备的邻居增强用户表征。
对于给定用户,首先基于用户使用设备这一属性采样邻居。然后利用注意力机制,计算每个邻居的注意力权重。最后把得到的注意力权重和邻居向量表示相乘,得到新的邻居表示向量,并把所有新的邻居表示向量相加,得到最终基于用户使用设备的邻居增强用户表征。
步骤5.3:利用使用同一系统的邻居增强用户表征。
对于给定用户,首先基于用户使用系统这一属性采样邻居。然后利用注意力机制,计算每个邻居的注意力权重。最后把得到的注意力权重和邻居向量表示相乘,得到新的邻居表示向量,并把所有新的邻居表示向量相加,得到最终基于用户使用系统的邻居增强用户表征。
步骤5.4:利用处于同种阅读环境的邻居增强用户表征。
对于给定用户,首先基于用户阅读环境这一属性采样邻居。然后利用注意力机制,计算每个邻居的注意力权重。最后把得到的注意力权重和邻居向量表示相乘,得到新的邻居表示向量,并把所有新的邻居表示向量相加,得到最终基于用户阅读环境的邻居增强用户表征。
步骤6:利用用户属性增强用户表征。
考虑到用户不同属性的重要性不同,本方法利用外部注意力机制学习不同属性增强的用户表示。
通过步骤5得到了基于不同用户属性的邻居增强用户表示,然后利用注意力机制,计算不同用户属性的注意力权重,即,将不同属性的邻居增强的用户表示向量和新闻向量表示进行点积操作,然后将不同属性的点积结果进行相加,得到点积和,再将每种属性的点积结果除以点积和得到每种属性的注意力权重。最后把得到的注意力权重和邻居增强的用表示向量表示相乘,并把相乘结果相加,得到不同属性增强的用户表征;
步骤7:对于每个用户,将步骤2得到的初始用户表征和步骤6得到的基于属性增强的用户表征拼接起来,得到最终用户表征。
步骤8:将步骤1得到的新闻表征和步骤7的得到的最终用户表征相乘,再经过一个softmax函数,得到所有新闻的预测概率分布。
其中,概率分布的每一项表示对应的新闻被用户点击的概率,并取概率值最大的前K个新闻作为当前用户的推荐项目,K由用于自行设定。
根据步骤7,得到注意力权重最大的值对应的用户属性,也就是说,用户对这种用户属性关注度最高,本方法称之为推荐给用户的解释。
步骤9:使用真实的概率分布与步骤8得到的预测概率分布之间的交叉熵,作为损失函数来训练模型。
步骤10:判断迭代次数是否满足预先设置的迭代数(例如50次),或者步骤9的损失值是否小于设定的阈值;
如果迭代次数满足预设的迭代数,或者损失值小于设定阈值,则结束训练流程,如果不满足,则返回步骤1继续下一轮迭代训练。
结束训练之后,即可得到概率值最大的前K个新闻组成的推荐列表。
至此,经过步骤1至步骤10,完成了基于兴趣感知和用户相似度的新闻推荐。
有益效果
本发明方法,与现有新闻推荐模型相比,具有以下有益效果:
本方法从用户角度选取用户居住地域、用户使用设备以及用户阅读环境等用户属性,并联合用户-新闻交互数据构建异构图,充分利用了多种用户属性信息;
本方法基于构建的异构图提取多种基于用户属性的解释三元组,并根据用户不同属性划分朋友,利用朋友对用户兴趣的影响加强用户表征,从而可以获取到更全面的用户表征;
本方法采用用户近期点击新闻序列对用户短期偏好进行建模,并采用GRU学习用户的短期兴趣向量表示。通过用户所有点击序列对其长期兴趣偏好进行建模,并采用嵌入层学习用户的长期兴趣向量表示。之后融合用户长短期兴趣表示得到用户表征。通过挖掘用户的长短期兴趣,可以得到更准确的用户偏好表示;
本方法根据从异构图提取的多种解释三元组,可以从用户角度为推荐的新闻提供解释,从而提高用户的满意度。
附图说明
图1为本发明方法的流程图。
图2为本发明方法的实现框图。
具体实施方式
下面结合附图和实施例对本发明方法进行详细说明。
实施例
以Adress和Globo两个数据集为例进行说明,两个数据集网址分别是http://reclab.idi.ntnu.no/dataset和https://www.kaggle.com/gspmoreira/news-portal-user-interactions-by-globocom。
其中,Adressa数据集是从一个挪威新闻用户网站收集的,包含与匿名用户相关的新闻文章(挪威语)和他们的边信息。本方法使用了一周收集的轻量型版本的数据。使用之前对数据集进行了预处理,先过滤少于10个用户阅读的新闻,然后去除历史阅读新闻少于10条的用户。在这个预处理步骤之后,数据集包含82,698个用户、2,743条新闻和1,799,659个阅读记录;Globo数据集来自巴西最受欢迎的新闻门户网站Globo.com。它包含用户,新闻文章的初始嵌入(葡萄牙语)以及文章的辅助信息。过滤掉没人阅读的新闻之后,globo数据集包含86,098个用户、46,033条新闻和2,067,992个阅读记录;
图1为本方法的流程图及本实施例的流程图;所述基于兴趣感知和用户相似度的新闻推荐方法,具体实施时,包括如下步骤:
步骤1:利用多通道CNN学习包括新闻标题、新闻正文和新闻实体在内的多种新闻文本表征。
对于给定的一条长度为m的新闻标题
Figure BDA0003667862920000061
首先使用词嵌入生成长度固定的嵌入向量
Figure BDA0003667862920000062
拼接所有词嵌入向量,获得标题嵌入矩阵
Figure BDA0003667862920000071
Figure BDA0003667862920000072
表示向量空间,d1表示嵌入向量维度,t表示标题。
然后,使用卷积核对标题嵌入矩阵Wt进行卷积运算,提取标题特征图
Figure BDA0003667862920000073
Figure BDA0003667862920000074
h1为卷积核尺寸大小,
Figure BDA0003667862920000075
表示第i个标题特征图。
之后,将标题特征图
Figure BDA0003667862920000076
送入池化层,降低维度并进一步提取标题特征
Figure BDA0003667862920000077
通过使用不同尺寸的卷积核,可以挖掘不同的标题表征。最后把它们依次拼接,得到最终的新闻标题表征
Figure BDA0003667862920000078
k1为卷积核数量。
对于给定固定长度为n的新闻正文
Figure BDA0003667862920000079
b表示正文,
Figure BDA00036678629200000710
表示权重参数,其处理方式和新闻标题类似。通过词嵌入处理得到正文嵌入矩阵
Figure BDA00036678629200000711
Figure BDA00036678629200000712
d2表示嵌入向量维度。通过卷积操作得到正文特征
Figure BDA00036678629200000713
之后通过池化操作得到正文表征,并把它们进行拼接得到最终正文表征
Figure BDA00036678629200000714
k2为卷积核数量,
Figure BDA00036678629200000715
表示第i个正文表征。
对于固定长度为l新闻实体
Figure BDA00036678629200000716
e表示实体,
Figure BDA00036678629200000717
表示权重参数。首先通过嵌入层学习长度为l的实体嵌入向量
Figure BDA00036678629200000718
d3表示嵌入向量维度。然后通过全连接层学习实体嵌入向量
Figure BDA00036678629200000719
得到实体表征
Figure BDA00036678629200000720
k3为卷积核数量,
Figure BDA00036678629200000721
为权重矩阵,
Figure BDA00036678629200000722
为偏重矩阵,ReLU表示激活函数。
最后,把新闻标题表征ct、新闻正文表征cb和新闻实体表征ce拼接起来,经过全连接层得到最终的新闻表征no=[ct,cb,ce];
步骤2:挖掘用户的长期和短期兴趣偏好以获得初始用户表征。
对于给定用户u以及时间t之前用户新闻点击序列[n1,n2,…nt-1],通过步骤1获取相应的新闻初始表示
Figure BDA00036678629200000723
之后通过GRU对用户短期兴趣进行建模,具体如下:
Figure BDA00036678629200000724
Figure BDA00036678629200000725
Figure BDA00036678629200000726
hi=(1-zi)⊙hi-1+zi⊙hi (4)
其中,
Figure BDA00036678629200000727
都是可学习的参数。σ(·)是用logistic sigmoid函数做非线性映射,⊙是两个向量的元素点乘,zi和ri是更新门和重置门,用来控制信息如何在序列中流动。hi是GRU的第i个隐藏层状态,作为用户在时间i的表示,
Figure BDA0003667862920000081
是GRU第i个block的输入,
Figure BDA0003667862920000082
表示候选状态。
获取用户的长期兴趣表征。对于一个用户u,以及用户所有的新闻点击序列[n1,n2,…nm],m为用户u所有点击新闻的数量。通过步骤1获取每条新闻的向量表示
Figure BDA0003667862920000083
之后通过一层稠密层,获得用户长期兴趣表示ul
最后,把用户短期兴趣us和用户长期兴趣ul相加,得到初始用户表征uo
uo=ul+us (5)
步骤3:构建异构图。
对于一个异构图
Figure BDA0003667862920000084
Figure BDA0003667862920000085
表示节点,ε表示边,
Figure BDA0003667862920000086
表示节点集合,
Figure BDA0003667862920000087
表示关系。每个节点
Figure BDA0003667862920000088
有特定的节点类型
Figure BDA0003667862920000089
每条边e∈ε有特定的关系类型
Figure BDA00036678629200000810
节点的类型
Figure BDA00036678629200000811
以及边的类型
Figure BDA00036678629200000812
是一个元模板,称为图的网络模式。
每个节点有用户居住地域CU、用户使用设备DU、使用系统OU以及用户阅读环境EU等节点类型,U表示用户。根据不同的节点类型,节点之间的关系也不同,<U,CU>表示居住同一地域的用户集合,<U,DU>表示使用同一设备的用户集合,<U,OU>表示使用同一系统的用户集合,<U,EU>表示处于同种阅读环境的用户集合;
对于构建好的异构图HG,其中
Figure BDA00036678629200000813
解释依据是一个定义在
Figure BDA00036678629200000814
上的三元组
Figure BDA00036678629200000815
形式为
Figure BDA00036678629200000816
Av
Figure BDA00036678629200000817
是两种节点类型,并且Av和Ae
Figure BDA00036678629200000818
中存在关系
Figure BDA00036678629200000819
例如,
Figure BDA00036678629200000820
是一个解释依据,意味着这两个用户居住在同一地域。
根据不同的用户属性,直接从原数据集中提取多种基于用户属性的解释三元组,
Figure BDA00036678629200000821
表示推荐与当前用户读过相同新闻的用户读过的其他新闻,
Figure BDA00036678629200000822
表示推荐与当前用户住在同一地域的用户读过的新闻,
Figure BDA00036678629200000823
表示推荐与当前用户使用同一设备的用户读过的新闻,
Figure BDA0003667862920000091
表示推荐与当前用户使用同一系统的用户读过的新闻,
Figure BDA0003667862920000092
表示推荐当前用户处于同一点击环境的用户读过的新闻,这些解释三元组用于后面推荐解释;
步骤4:邻居采样。
在构建好异构图之后,根据不同的解释依据采样对应的邻居。
邻域采样思路为:一个定义在异构图上的
Figure BDA0003667862920000093
的解释三元组,能够指导
Figure BDA0003667862920000094
的邻域采样,
Figure BDA0003667862920000095
表示解释三元组。给定一个节点
Figure BDA0003667862920000096
Figure BDA0003667862920000097
(Φ(vi)∈Av),对于基于
Figure BDA0003667862920000098
的节点vj而言,采样vi的概率为:
Figure BDA0003667862920000099
其中,
Figure BDA00036678629200000910
代表基于
Figure BDA00036678629200000917
的节点vi的邻域,p表示概率,
Figure BDA00036678629200000911
表示邻域。
该方法使用离散均匀分布进行采样,也就是说,每个邻居被采样到的概率是一样的。另外,在整个训练过程中,邻域采样只需要做一次。
步骤5:利用邻居增强用户表征,考虑到不同朋友(邻居)对用户的影响力不同,本方法利用内部注意力机制学习不同朋友对用户的影响。不失一般性,本实施例只详细介绍基于用户居住地域属性划分的朋友影响的增强用户表征。
对于给定的一个用户u,通过邻域采样获得和用户u住在同一地域的朋友[uT,1,uT,2,...uT,S],S是采样数量,T表示某一种解释三元组(解释三元组共有四种,T可以是四种中的任何一种)。利用步骤2得到u的初始表征uo以及邻居的初始表征
Figure BDA00036678629200000912
然后利用内部注意力机制计算不同邻居对当前用户的影响力,即注意力权重,局部注意力αT的计算公式如下:
Figure BDA00036678629200000913
其中,
Figure BDA00036678629200000914
Wc是可学习参数,
Figure BDA00036678629200000915
j表示从0到S的取值。
然后,把得到的注意力权重和邻居向量表示相乘,得到新的邻居表示向量,并把所有新的邻居表示向量相加,得到最终基于用户居住地域的邻居增强用户表征
Figure BDA00036678629200000916
Figure BDA0003667862920000101
其中,S表示采样数量,αi表示根据式7得到的注意力权重,
Figure BDA0003667862920000102
表示邻居初始表征。
与基于同一地域把朋友进行分类类似,通过式7和式8获取基于用户使用设备采样的邻居影响力增强的用户表征
Figure BDA0003667862920000103
基于用户使用系统采样的邻居影响力增强的用户表征
Figure BDA0003667862920000104
以及基于用户阅读环境采样的邻居影响力增强的用户表征
Figure BDA0003667862920000105
以Globo数据集中的一个用户为例,用户ID为1563,居住地域编码为1,根据用户居住地域采样了10个邻居,邻居ID分别为[19724,17545,20256,25555,27773,7456,23533,43613,6209,30297],每个邻居对应的注意力权重为[0.125,0.246,0.028,0.145,0.165,0.224,0.044,0.356,0.212];
步骤6:利用用户属性增强用户表征。考虑到用户不同属性的重要性不同,本方法利用外部注意力机制学习不同属性增强的用户表示;
对于一个给定的新闻对<u,n>,根据步骤1得到初始用户表征uo
设有K个基于解释依据
Figure BDA00036678629200001013
采样获得的邻居,根据步骤5获得相应的邻居增强用户表示
Figure BDA0003667862920000106
考虑到用户对不同属性的关注不同,可以利用外部注意力计算用户对不同属性的注意力权重βi,计算公式如下:
Figure BDA0003667862920000107
其中,
Figure BDA0003667862920000108
Wf表示可学习参数,
Figure BDA0003667862920000109
分别表示由步骤1得到的新闻表示。
最后,把得到的注意力权重和邻居增强的用表示向量表示相乘,并把相乘结果相加,得到不同属性增强的用户表征ug
Figure BDA00036678629200001010
其中,qf,
Figure BDA00036678629200001011
是可学习的参数,
Figure BDA00036678629200001012
表示由式5得到的用户初始表征。
通过上述操作获得用户不同属性的重要性,并得到多种用户属性增强的用户表征。
以Globo数据集中的一个用户为例,用户ID为1563,居住地域编码为1,使用设备编码为5,使用系统编码为2,每种属性对应的注意力权重为[0.512,0.236,0.252];
步骤7:对于每个用户,将步骤2得到的初始用户表征和步骤6得到的不同属性增强的用户表征相加,得到最终用户表征u:
u=uo+ug (11)
步骤8:给定一个新闻对<u,n>,把根据步骤1得到的新闻表征n=no和步骤7的得到的最终用户表征u进行内积操作,再经过一层softmax获取候选新闻的点击概率
Figure BDA0003667862920000111
即:
Figure BDA0003667862920000112
其中,uT表示最终用户表征u的转置。概率分布的每一项表示对应的新闻被用户点击的概率,取概率值最大的前K个新闻作为当前用户的推荐项目,K可自行设定。
根据步骤7得到注意力权重最大的值对应的用户属性,也就是说用户对这种用户属性关注度最高,本方法称之为推荐给用户的解释。
以Globo数据集中的一个用户为例,用户ID为1563,居住地域编码为1,使用设备编码为5,使用系统编码为2,每种属性对应的注意力权重为[0.512,0.236,0.252],因为居住地域属性对应注意力得分最高,所以给ID为1563的用户推荐此新闻的理由是住在同一地域的用户也阅读了这个新闻。
步骤9:使用交叉熵函数作为损失函数来训练模型,公式如下:
Figure BDA0003667862920000113
其中,
Figure BDA0003667862920000114
表示损失值,
Figure BDA0003667862920000115
是用户的所有训练实例,每一个训练实例<u,n>,包括一个正样本
Figure BDA0003667862920000116
和四个负样本
Figure BDA0003667862920000117
Figure BDA0003667862920000118
Figure BDA0003667862920000119
Figure BDA00036678629200001110
表示用户集合,
Figure BDA00036678629200001111
表示用户是否点击。
随后,判断迭代次数是否等于预先设置的迭代数(例如50次),如果满足预先设置的迭代数条件,则结束训练流程,如果不满足,则返回步骤1继续下一轮迭代训练。
图2为基于本方法的实施框图。采用本方法得到的预测结果的命中率(HR@10)、平均倒数排名(MRR@10)和归一化折损累计增益(NDCG@10)如表1中两个子表的最后一行所示。
表1 10种新闻推荐方式-2种数据集效果比较
Figure BDA0003667862920000121

Claims (7)

1.一种基于兴趣感知和用户相似度的新闻推荐方法,其特征在于,包括以下步骤:
步骤1:利用多通道CNN,学习包括新闻标题、新闻正文和新闻实体在内的新闻文本表征;
步骤2:挖掘用户的长期和短期兴趣偏好,获得初始用户表征;
步骤3:构建异构图;对于一个异构图,每个节点的节点类型包括用户居住地域、用户使用设备、用户使用系统以及用户阅读环境;根据节点类型不同,节点之间的关系也不同;根据不同的用户属性,直接从原数据集中提取基于用户属性的解释三元组,用于推荐解释;
步骤4:根据不同的解释依据,采样对应的邻居;
步骤5:利用邻居增强用户表征;利用内部注意力机制,学习不同朋友对用户的影响;
步骤6:利用用户属性增强用户表征;利用外部注意力机制学习不同属性增强的用户表征;
步骤7:对于每个用户,将步骤2得到的初始用户表征和步骤6得到的基于属性增强的用户表征拼接起来,得到最终用户表征;
步骤8:将步骤1得到的新闻表征和步骤7的得到的最终用户表征相乘,再经过一个softmax函数,得到所有新闻的预测概率分布;
其中,概率分布的每一项表示对应的新闻被用户点击的概率,并取概率值最大的前K个新闻作为当前用户的推荐项目,K由用于自行设定;
根据步骤7,得到注意力权重最大的值对应的用户属性,即,用户对这种用户属性关注度最高,称为推荐给用户的解释;
步骤9:使用真实的概率分布与步骤8得到的预测概率分布之间的交叉熵,作为损失函数来训练模型;
步骤10:判断迭代次数是否满足预先设置的迭代数,或者步骤9的损失值是否小于设定的阈值;
如果迭代次数满足预设的迭代数,或者损失值小于设定阈值,则结束训练流程,如果不满足,则返回步骤1继续下一轮迭代训练;
结束训练之后,即可得到概率值最大的前K个新闻组成的推荐列表。
2.如权利要求1所述的一种基于兴趣感知和用户相似度的新闻推荐方法,其特征在于,步骤1包括以下步骤:
步骤1.1:利用多通道CNN中的标题通道,学习新闻标题表征;
首先使用词嵌入生成固定长度的词向量,之后将标题的所有词表征依次拼接获取标题嵌入矩阵,然后对标题嵌入矩阵进行卷积运算获得标题特征图,最后把标题特征图送入最大池化层,得到有效的标题特征;
步骤1.2:利用多通道CNN中的正文通道,学习新闻正文表征;
首先使用与标题通道共享的词嵌入层来生成固定长度的词向量,然后使用卷积核从标题嵌入矩阵获取正文特征图,最后采取最大池化层从正文特征图中获取到有效的正文特征;
步骤1.3:利用多通道CNN中的实体通道,学习新闻实体表征;
首先使用独热编码获得每个实体表示向量,并将这些独热编码向量通过实体嵌入层转换为低维嵌入;然后将所有低维嵌入进行拼接作为实体嵌入向量,最后把实体嵌入向量送到全连接层来学习实体表示;
步骤1.4:将标题表征、正文表征和实体表征实现拼接并输入全连接层,获取全面的新闻表征。
3.如权利要求1所述的一种基于兴趣感知和用户相似度的新闻推荐方法,其特征在于,步骤2包括以下步骤:
步骤2.1:获取用户的短期兴趣表征;
首先使用嵌入层将用户近期连续点击序列初始化为低维向量,然后采用GRU处理低维向量,以捕获用户的短期兴趣表示;
步骤2.2:获取用户的长期兴趣表征;
首先使用嵌入层将用户全部点击历史序列初始化为低维向量表示,然后把低维向量通过稠密层,获取用户的长期兴趣表示;
步骤2.3:把用户短期兴趣和用户长期兴趣拼接起来,得到初始用户表征。
4.如权利要求3所述的一种基于兴趣感知和用户相似度的新闻推荐方法,其特征在于,GRU为使用带有Gated Recurrent Unit的递归神经网络。
5.如权利要求1所述的一种基于兴趣感知和用户相似度的新闻推荐方法,其特征在于,步骤5包括如下步骤:
步骤5.1:利用居住在同一地域的邻居增强用户表征;
对于给定用户,首先基于用户居住地域这一属性采样邻居;然后利用注意力机制,计算每个邻居的注意力权重,即,将邻居的向量表示和用户向量表示进行点积操作,然后将采样的所有邻居的点积结果进行相加,得到点积和,再将每个邻居的点积结果除以点积和,得到每个邻居的注意力权重;最后把得到的注意力权重和邻居向量表示相乘,得到新的邻居表示向量,并把所有新的邻居表示向量相加,得到最终基于用户居住地域的邻居增强用户表征;
步骤5.2:利用使用同一设备的邻居增强用户表征;
对于给定用户,首先基于用户使用设备这一属性采样邻居;然后利用注意力机制,计算每个邻居的注意力权重;最后把得到的注意力权重和邻居向量表示相乘,得到新的邻居表示向量,并把所有新的邻居表示向量相加,得到最终基于用户使用设备的邻居增强用户表征;
步骤5.3:利用使用同一系统的邻居增强用户表征;
对于给定用户,首先基于用户使用系统这一属性采样邻居;然后利用注意力机制,计算每个邻居的注意力权重;最后把得到的注意力权重和邻居向量表示相乘,得到新的邻居表示向量,并把所有新的邻居表示向量相加,得到最终基于用户使用系统的邻居增强用户表征;
步骤5.4:利用处于同种阅读环境的邻居增强用户表征;
对于给定用户,首先基于用户阅读环境这一属性采样邻居;然后利用注意力机制,计算每个邻居的注意力权重;最后把得到的注意力权重和邻居向量表示相乘,得到新的邻居表示向量,并把所有新的邻居表示向量相加,得到最终基于用户阅读环境的邻居增强用户表征。
6.如权利要求1所述的一种基于兴趣感知和用户相似度的新闻推荐方法,其特征在于,步骤6中,利用注意力机制,将不同属性的邻居增强的用户表示向量和新闻向量表示进行点积操作,然后将不同属性的点积结果进行相加,得到点积和,再将每种属性的点积结果除以点积和得到每种属性的注意力权重;最后把得到的注意力权重和邻居增强的用表示向量表示相乘,并把相乘结果相加,得到不同属性增强的用户表征。
7.如权利要求1所述的一种基于兴趣感知和用户相似度的新闻推荐方法,其特征在于,在步骤1中,对于给定的一条长度为m的新闻标题
Figure FDA0003667862910000032
首先使用词嵌入生成长度固定的嵌入向量
Figure FDA0003667862910000031
拼接所有词嵌入向量,获得标题嵌入矩阵
Figure FDA0003667862910000041
Figure FDA0003667862910000042
表示向量空间,d1表示嵌入向量维度,t表示标题;
然后,使用卷积核对标题嵌入矩阵Wt进行卷积运算,提取标题特征图
Figure FDA0003667862910000043
Figure FDA0003667862910000044
h1为卷积核尺寸大小,
Figure FDA0003667862910000045
表示第i个标题特征图;
之后,将标题特征图
Figure FDA0003667862910000046
送入池化层,降低维度并进一步提取标题特征
Figure FDA0003667862910000047
最后把它们依次拼接,得到最终的新闻标题表征
Figure FDA0003667862910000048
k1为卷积核数量;
对于给定固定长度为n的新闻正文
Figure FDA0003667862910000049
b表示正文,
Figure FDA00036678629100000410
表示权重参数,其处理方式和新闻标题类似;通过词嵌入处理得到正文嵌入矩阵
Figure FDA00036678629100000411
Figure FDA00036678629100000412
d2表示嵌入向量维度;通过卷积操作得到正文特征
Figure FDA00036678629100000413
之后通过池化操作得到正文表征,并把它们进行拼接得到最终正文表征
Figure FDA00036678629100000414
k2为卷积核数量,
Figure FDA00036678629100000415
表示第i个正文表征;
对于固定长度为l新闻实体
Figure FDA00036678629100000416
e表示实体,
Figure FDA00036678629100000417
表示权重参数;首先通过嵌入层学习长度为l的实体嵌入向量
Figure FDA00036678629100000418
d3表示嵌入向量维度;然后通过全连接层学习实体嵌入向量
Figure FDA00036678629100000419
得到实体表征
Figure FDA00036678629100000420
k3为卷积核数量,
Figure FDA00036678629100000421
为权重矩阵,
Figure FDA00036678629100000422
为偏重矩阵,ReLU表示激活函数;
最后,把新闻标题表征ct、新闻正文表征cb和新闻实体表征ce拼接起来,经过全连接层得到最终的新闻表征no=[ct,cb,ce];
在步骤2中,对于给定用户u以及时间t之前用户新闻点击序列[n1,n2,...nt-1],通过步骤1获取相应的新闻初始表征
Figure FDA00036678629100000423
之后通过GRU对用户短期兴趣进行建模,具体如下:
Figure FDA00036678629100000424
Figure FDA00036678629100000425
Figure FDA00036678629100000426
hi=(1-zi)⊙hi-1+zi⊙hi (4)
其中,
Figure FDA00036678629100000427
都是可学习参数;σ(·)是用logisticsigmoid函数做非线性映射,⊙是两个向量的元素点乘,zi和ri是更新门和重置门,用来控制信息如何在序列中流动;hi是GRU的第i个隐藏层状态,作为用户在时间i的表示,
Figure FDA0003667862910000051
是GRU第i个block的输入,
Figure FDA0003667862910000052
表示候选状态;
获取用户的长期兴趣表征;对于一个用户u,以及用户所有的新闻点击序列[n1,n2,...nm],m为用户u所有点击新闻的数量;通过步骤1获取每条新闻的向量表示
Figure FDA0003667862910000053
之后通过一层稠密层,获得用户长期兴趣表示ul
最后,把用户短期兴趣us和用户长期兴趣ul相加,得到初始用户表征uo
uo=ul+us (5)
在步骤3中,对于一个异构图
Figure FDA0003667862910000054
Figure FDA0003667862910000055
表示节点,ε表示边,
Figure FDA0003667862910000056
表示节点集合,
Figure FDA0003667862910000057
表示关系;每个节点
Figure FDA0003667862910000058
有特定的节点类型
Figure FDA0003667862910000059
每条边e∈ε有特定的关系类型
Figure FDA00036678629100000510
节点的类型
Figure FDA00036678629100000511
以及边的类型
Figure FDA00036678629100000512
Figure FDA00036678629100000513
是一个元模板,称为图的网络模式;
每个节点有用户居住地域CU、用户使用设备DU、使用系统OU以及用户阅读环境EU等节点类型,U表示用户;根据不同的节点类型,节点之间的关系也不同,<U,CU>表示居住同一地域的用户集合,<U,DU>表示使用同一设备的用户集合,<U,OU>表示使用同一系统的用户集合,<U,EU>表示处于同种阅读环境的用户集合;
对于构建好的异构图HG,其中
Figure FDA00036678629100000514
解释依据是一个定义在
Figure FDA00036678629100000515
上的三元细
Figure FDA00036678629100000516
形式为
Figure FDA00036678629100000517
Figure FDA00036678629100000518
是两种节点类型,并且Av和Ae
Figure FDA00036678629100000519
中存在关系
Figure FDA00036678629100000520
根据不同的用户属性,直接从原数据集中提取多种基于用户属性的解释三元组,
Figure FDA00036678629100000521
表示推荐与当前用户读过相同新闻的用户读过的其他新闻,
Figure FDA00036678629100000522
表示推荐与当前用户住在同一地域的用户读过的新闻,
Figure FDA00036678629100000523
氛示推荐与当前用户使用同一设备的用户读过的新闻,
Figure FDA00036678629100000524
表示推荐与当前用户使用同一系统的用户读过的新闻,
Figure FDA00036678629100000525
表示推荐当前用户处于同一点击环境的用户读过的新闻,这些解释三元组用于后面推荐解释;
在步骤4中,邻域采样思路为:
一个定义在异构图上的
Figure FDA0003667862910000061
的解释三元组,能够指导
Figure FDA0003667862910000062
Figure FDA0003667862910000063
的邻域采样,
Figure FDA0003667862910000064
表示解释三元组;给定一个节点
Figure FDA0003667862910000065
对于基于
Figure FDA0003667862910000066
的节点vj而言,采样vi的概率为:
Figure FDA0003667862910000067
其中,
Figure FDA0003667862910000068
代表基于
Figure FDA0003667862910000069
的节点vi的邻域,p表示概率,
Figure FDA00036678629100000610
表示邻域;
该方法使用离散均匀分布进行采样,即,每个邻居被采样到的概率是一样的;另外,在整个训练过程中,邻域采样只需要做一次;
在步骤5中,对于给定的一个用户u,通过邻域采样获得和用户u住在同一地域的朋友[uT,1,uT,2,...uT,S],S是采样数量,T表示某一种解释三元组;
利用步骤2得到u的初始表征uo以及邻居的初始表征
Figure FDA00036678629100000611
然后利用内部注意力机制计算不同邻居对当前用户的影响力,即注意力权重,局部注意力αT的计算公式如下:
Figure FDA00036678629100000612
其中,
Figure FDA00036678629100000613
Wc是可学习参数,
Figure FDA00036678629100000614
j表示从0到S的取值;
然后,把得到的注意力权重和邻居向量表示相乘,得到新的邻居表示向量,并把所有新的邻居表示向量相加,得到最终基于用户居住地域的邻居增强用户表征
Figure FDA00036678629100000615
Figure FDA00036678629100000616
其中,S表示采样数量,αi表示根据式7得到的注意力权重,
Figure FDA00036678629100000617
表示邻居初始表征;
通过式7和式8获取基于用户使用设备采样的邻居影响力增强的用户表征
Figure FDA00036678629100000618
基于用户使用系统采样的邻居影响力增强的用户表征
Figure FDA00036678629100000619
以及基于用户阅读环境采样的邻居影响力增强的用户表征
Figure FDA00036678629100000620
步骤6中,对于一个给定的新闻对<u,n>,根据步骤1得到初始用户表征uo
设有K个基于解释依据
Figure FDA0003667862910000071
采样获得的邻居,根据步骤5获得相应的邻居增强用户表示
Figure FDA0003667862910000072
考虑到用户对不同属性的关注不同,利用外部注意力计算用户对不同属性的注意力权重βi,计算公式如下:
Figure FDA0003667862910000073
其中,
Figure FDA0003667862910000074
Wf表示可学习参数,
Figure FDA0003667862910000075
分别表示由步骤1得到的新闻表示;
最后,把得到的注意力权重和邻居增强的用表示向量表示相乘,并把相乘结果相加,得到不同属性增强的用户表征ug
Figure FDA0003667862910000076
其中,
Figure FDA0003667862910000077
是可学习的参数,
Figure FDA0003667862910000078
表示由式5得到的用户初始表征;
通过上述操作获得用户不同属性的重要性,并得到多种用户属性增强的用户表征;
在步骤7中,对于每个用户,将步骤2得到的初始用户表征和步骤6得到的不同属性增强的用户表征相加,得到最终用户表征u:
u=uo+ug (11)
在步骤8中,给定一个新闻对<u,n>,把根据步骤1得到的新闻表征n=no和步骤7的得到的最终用户表征u进行内积操作,再经过一层softmax获取候选新闻的点击概率
Figure FDA0003667862910000079
即:
Figure FDA00036678629100000710
其中,uT表示最终用户表征u的转置;概率分布的每一项表示对应的新闻被用户点击的概率,取概率值最大的前K个新闻作为当前用户的推荐项目,K可自行设定;
根据步骤7得到注意力权重最大的值对应的用户属性;
在步骤9中,使用交叉熵函数作为损失函数来训练模型,公式如下:
Figure FDA00036678629100000711
其中,
Figure FDA0003667862910000081
表示损失值,
Figure FDA0003667862910000082
是用户的所有训练实例,每一个训练实例<u,n>,包括一个正样本
Figure FDA0003667862910000083
和四个负样本
Figure FDA0003667862910000084
Figure FDA0003667862910000085
Figure FDA0003667862910000086
Figure FDA0003667862910000087
表示用户集合,
Figure FDA0003667862910000088
表示用户是否点击。
CN202210595418.6A 2022-05-29 2022-05-29 一种基于兴趣感知和用户相似度的新闻推荐方法 Pending CN115098767A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202210595418.6A CN115098767A (zh) 2022-05-29 2022-05-29 一种基于兴趣感知和用户相似度的新闻推荐方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202210595418.6A CN115098767A (zh) 2022-05-29 2022-05-29 一种基于兴趣感知和用户相似度的新闻推荐方法

Publications (1)

Publication Number Publication Date
CN115098767A true CN115098767A (zh) 2022-09-23

Family

ID=83288496

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202210595418.6A Pending CN115098767A (zh) 2022-05-29 2022-05-29 一种基于兴趣感知和用户相似度的新闻推荐方法

Country Status (1)

Country Link
CN (1) CN115098767A (zh)

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN109492157A (zh) * 2018-10-24 2019-03-19 华侨大学 基于rnn、注意力机制的新闻推荐方法及主题表征方法
CN113065062A (zh) * 2021-03-09 2021-07-02 北京工业大学 一种基于用户阅读时间行为的新闻推荐方法及系统
WO2021169451A1 (zh) * 2020-09-28 2021-09-02 平安科技(深圳)有限公司 基于对抗学习的内容推荐方法、装置和计算机设备
CN114201683A (zh) * 2021-12-15 2022-03-18 齐鲁工业大学 一种基于多级匹配的兴趣激活新闻推荐方法及系统

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN109492157A (zh) * 2018-10-24 2019-03-19 华侨大学 基于rnn、注意力机制的新闻推荐方法及主题表征方法
WO2021169451A1 (zh) * 2020-09-28 2021-09-02 平安科技(深圳)有限公司 基于对抗学习的内容推荐方法、装置和计算机设备
CN113065062A (zh) * 2021-03-09 2021-07-02 北京工业大学 一种基于用户阅读时间行为的新闻推荐方法及系统
CN114201683A (zh) * 2021-12-15 2022-03-18 齐鲁工业大学 一种基于多级匹配的兴趣激活新闻推荐方法及系统

Similar Documents

Publication Publication Date Title
CN111177575B (zh) 一种内容推荐方法、装置、电子设备和存储介质
CN112214685B (zh) 一种基于知识图谱的个性化推荐方法
CN109492157B (zh) 基于rnn、注意力机制的新闻推荐方法及主题表征方法
CN111339415B (zh) 一种基于多交互式注意力网络的点击率预测方法与装置
CN110309427B (zh) 一种对象推荐方法、装置及存储介质
CN111797321B (zh) 一种面向不同场景的个性化知识推荐方法及系统
CN108959270B (zh) 一种基于深度学习的实体链接方法
CN111222332B (zh) 一种结合注意力网络和用户情感的商品推荐方法
CN109376222B (zh) 问答匹配度计算方法、问答自动匹配方法及装置
CN113569001A (zh) 文本处理方法、装置、计算机设备及计算机可读存储介质
CN105893609A (zh) 一种基于加权混合的移动app推荐方法
CN113590970B (zh) 一种基于读者偏好的个性化数字图书推荐系统、方法、计算机及存储介质
CN109598586A (zh) 一种基于注意力模型的推荐方法
CN112749330B (zh) 信息推送方法、装置、计算机设备和存储介质
CN115048586B (zh) 一种融合多特征的新闻推荐方法及系统
CN116541607B (zh) 基于商品检索数据分析的智能推荐方法
CN113239159B (zh) 基于关系推理网络的视频和文本的跨模态检索方法
CN111159242A (zh) 一种基于边缘计算的客户端重排序方法及系统
Zhu Network Course Recommendation System Based on Double‐Layer Attention Mechanism
CN113569118B (zh) 自媒体推送方法、装置、计算机设备及存储介质
Al-Otaibi et al. Finding influential users in social networking using sentiment analysis
CN114239730A (zh) 一种基于近邻排序关系的跨模态检索方法
CN114817692A (zh) 确定推荐对象的方法、装置和设备及计算机存储介质
CN116956183A (zh) 多媒体资源推荐方法、模型训练方法、装置及存储介质
Hao et al. Deep collaborative online learning resource recommendation based on attention mechanism

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination