CN115098767A - 一种基于兴趣感知和用户相似度的新闻推荐方法 - Google Patents
一种基于兴趣感知和用户相似度的新闻推荐方法 Download PDFInfo
- 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
Links
- 238000000034 method Methods 0.000 title claims abstract description 48
- 230000008447 perception Effects 0.000 title claims abstract description 15
- 238000012512 characterization method Methods 0.000 claims abstract description 42
- 230000007774 longterm Effects 0.000 claims abstract description 22
- 230000007246 mechanism Effects 0.000 claims abstract description 20
- 238000013527 convolutional neural network Methods 0.000 claims abstract description 10
- 239000013598 vector Substances 0.000 claims description 80
- 238000005070 sampling Methods 0.000 claims description 22
- 239000011159 matrix material Substances 0.000 claims description 17
- 238000012549 training Methods 0.000 claims description 15
- 230000006870 function Effects 0.000 claims description 13
- 238000010586 diagram Methods 0.000 claims description 10
- 238000009826 distribution Methods 0.000 claims description 10
- 239000000126 substance Substances 0.000 claims description 9
- 238000011176 pooling Methods 0.000 claims description 8
- 230000002708 enhancing effect Effects 0.000 claims description 7
- 230000008569 process Effects 0.000 claims description 6
- 230000002159 abnormal effect Effects 0.000 claims description 4
- 238000004364 calculation method Methods 0.000 claims description 4
- 239000013604 expression vector Substances 0.000 claims description 4
- 238000012545 processing Methods 0.000 claims description 3
- 230000004913 activation Effects 0.000 claims description 2
- 238000013528 artificial neural network Methods 0.000 claims description 2
- 238000013507 mapping Methods 0.000 claims description 2
- 238000005065 mining Methods 0.000 claims description 2
- 230000000306 recurrent effect Effects 0.000 claims description 2
- 238000009827 uniform distribution Methods 0.000 claims description 2
- 238000003058 natural language processing Methods 0.000 abstract description 3
- 230000000694 effects Effects 0.000 description 3
- 230000003993 interaction Effects 0.000 description 3
- 239000000284 extract Substances 0.000 description 2
- 230000006399 behavior Effects 0.000 description 1
- 230000009286 beneficial effect Effects 0.000 description 1
- 230000001186 cumulative effect Effects 0.000 description 1
- 238000013135 deep learning Methods 0.000 description 1
- 230000007547 defect Effects 0.000 description 1
- 238000011161 development Methods 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 238000001914 filtration Methods 0.000 description 1
- 230000002452 interceptive effect Effects 0.000 description 1
- 238000010801 machine learning Methods 0.000 description 1
- 239000000203 mixture Substances 0.000 description 1
- 238000007781 pre-processing Methods 0.000 description 1
- 230000001172 regenerating effect Effects 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/90—Details of database functions independent of the retrieved data types
- G06F16/95—Retrieval from the web
- G06F16/953—Querying, e.g. by the use of web search engines
- G06F16/9535—Search customisation based on user profiles and personalisation
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/90—Details of database functions independent of the retrieved data types
- G06F16/95—Retrieval from the web
- G06F16/953—Querying, e.g. by the use of web search engines
- G06F16/9538—Presentation of query results
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/08—Learning 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学习包括新闻标题、新闻正文和新闻实体在内的多种新闻文本表征。
对于给定固定长度为n的新闻正文b表示正文,表示权重参数,其处理方式和新闻标题类似。通过词嵌入处理得到正文嵌入矩阵 d2表示嵌入向量维度。通过卷积操作得到正文特征之后通过池化操作得到正文表征,并把它们进行拼接得到最终正文表征k2为卷积核数量,表示第i个正文表征。
对于固定长度为l新闻实体e表示实体,表示权重参数。首先通过嵌入层学习长度为l的实体嵌入向量d3表示嵌入向量维度。然后通过全连接层学习实体嵌入向量得到实体表征k3为卷积核数量,为权重矩阵,为偏重矩阵,ReLU表示激活函数。
最后,把新闻标题表征ct、新闻正文表征cb和新闻实体表征ce拼接起来,经过全连接层得到最终的新闻表征no=[ct,cb,ce];
步骤2:挖掘用户的长期和短期兴趣偏好以获得初始用户表征。
hi=(1-zi)⊙hi-1+zi⊙hi (4)
其中,都是可学习的参数。σ(·)是用logistic sigmoid函数做非线性映射,⊙是两个向量的元素点乘,zi和ri是更新门和重置门,用来控制信息如何在序列中流动。hi是GRU的第i个隐藏层状态,作为用户在时间i的表示,是GRU第i个block的输入,表示候选状态。
最后,把用户短期兴趣us和用户长期兴趣ul相加,得到初始用户表征uo:
uo=ul+us (5)
步骤3:构建异构图。
每个节点有用户居住地域CU、用户使用设备DU、使用系统OU以及用户阅读环境EU等节点类型,U表示用户。根据不同的节点类型,节点之间的关系也不同,<U,CU>表示居住同一地域的用户集合,<U,DU>表示使用同一设备的用户集合,<U,OU>表示使用同一系统的用户集合,<U,EU>表示处于同种阅读环境的用户集合;
根据不同的用户属性,直接从原数据集中提取多种基于用户属性的解释三元组,表示推荐与当前用户读过相同新闻的用户读过的其他新闻,表示推荐与当前用户住在同一地域的用户读过的新闻,表示推荐与当前用户使用同一设备的用户读过的新闻,表示推荐与当前用户使用同一系统的用户读过的新闻,表示推荐当前用户处于同一点击环境的用户读过的新闻,这些解释三元组用于后面推荐解释;
步骤4:邻居采样。
在构建好异构图之后,根据不同的解释依据采样对应的邻居。
该方法使用离散均匀分布进行采样,也就是说,每个邻居被采样到的概率是一样的。另外,在整个训练过程中,邻域采样只需要做一次。
步骤5:利用邻居增强用户表征,考虑到不同朋友(邻居)对用户的影响力不同,本方法利用内部注意力机制学习不同朋友对用户的影响。不失一般性,本实施例只详细介绍基于用户居住地域属性划分的朋友影响的增强用户表征。
对于给定的一个用户u,通过邻域采样获得和用户u住在同一地域的朋友[uT,1,uT,2,...uT,S],S是采样数量,T表示某一种解释三元组(解释三元组共有四种,T可以是四种中的任何一种)。利用步骤2得到u的初始表征uo以及邻居的初始表征然后利用内部注意力机制计算不同邻居对当前用户的影响力,即注意力权重,局部注意力αT的计算公式如下:
以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。
最后,把得到的注意力权重和邻居增强的用表示向量表示相乘,并把相乘结果相加,得到不同属性增强的用户表征ug:
通过上述操作获得用户不同属性的重要性,并得到多种用户属性增强的用户表征。
以Globo数据集中的一个用户为例,用户ID为1563,居住地域编码为1,使用设备编码为5,使用系统编码为2,每种属性对应的注意力权重为[0.512,0.236,0.252];
步骤7:对于每个用户,将步骤2得到的初始用户表征和步骤6得到的不同属性增强的用户表征相加,得到最终用户表征u:
u=uo+ug (11)
其中,uT表示最终用户表征u的转置。概率分布的每一项表示对应的新闻被用户点击的概率,取概率值最大的前K个新闻作为当前用户的推荐项目,K可自行设定。
根据步骤7得到注意力权重最大的值对应的用户属性,也就是说用户对这种用户属性关注度最高,本方法称之为推荐给用户的解释。
以Globo数据集中的一个用户为例,用户ID为1563,居住地域编码为1,使用设备编码为5,使用系统编码为2,每种属性对应的注意力权重为[0.512,0.236,0.252],因为居住地域属性对应注意力得分最高,所以给ID为1563的用户推荐此新闻的理由是住在同一地域的用户也阅读了这个新闻。
步骤9:使用交叉熵函数作为损失函数来训练模型,公式如下:
随后,判断迭代次数是否等于预先设置的迭代数(例如50次),如果满足预先设置的迭代数条件,则结束训练流程,如果不满足,则返回步骤1继续下一轮迭代训练。
图2为基于本方法的实施框图。采用本方法得到的预测结果的命中率(HR@10)、平均倒数排名(MRR@10)和归一化折损累计增益(NDCG@10)如表1中两个子表的最后一行所示。
表1 10种新闻推荐方式-2种数据集效果比较
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的新闻标题首先使用词嵌入生成长度固定的嵌入向量拼接所有词嵌入向量,获得标题嵌入矩阵 表示向量空间,d1表示嵌入向量维度,t表示标题;
对于给定固定长度为n的新闻正文b表示正文,表示权重参数,其处理方式和新闻标题类似;通过词嵌入处理得到正文嵌入矩阵 d2表示嵌入向量维度;通过卷积操作得到正文特征之后通过池化操作得到正文表征,并把它们进行拼接得到最终正文表征k2为卷积核数量,表示第i个正文表征;
对于固定长度为l新闻实体e表示实体,表示权重参数;首先通过嵌入层学习长度为l的实体嵌入向量d3表示嵌入向量维度;然后通过全连接层学习实体嵌入向量得到实体表征k3为卷积核数量,为权重矩阵,为偏重矩阵,ReLU表示激活函数;
最后,把新闻标题表征ct、新闻正文表征cb和新闻实体表征ce拼接起来,经过全连接层得到最终的新闻表征no=[ct,cb,ce];
hi=(1-zi)⊙hi-1+zi⊙hi (4)
其中,都是可学习参数;σ(·)是用logisticsigmoid函数做非线性映射,⊙是两个向量的元素点乘,zi和ri是更新门和重置门,用来控制信息如何在序列中流动;hi是GRU的第i个隐藏层状态,作为用户在时间i的表示,是GRU第i个block的输入,表示候选状态;
获取用户的长期兴趣表征;对于一个用户u,以及用户所有的新闻点击序列[n1,n2,...nm],m为用户u所有点击新闻的数量;通过步骤1获取每条新闻的向量表示之后通过一层稠密层,获得用户长期兴趣表示ul;
最后,把用户短期兴趣us和用户长期兴趣ul相加,得到初始用户表征uo:
uo=ul+us (5)
每个节点有用户居住地域CU、用户使用设备DU、使用系统OU以及用户阅读环境EU等节点类型,U表示用户;根据不同的节点类型,节点之间的关系也不同,<U,CU>表示居住同一地域的用户集合,<U,DU>表示使用同一设备的用户集合,<U,OU>表示使用同一系统的用户集合,<U,EU>表示处于同种阅读环境的用户集合;
根据不同的用户属性,直接从原数据集中提取多种基于用户属性的解释三元组,表示推荐与当前用户读过相同新闻的用户读过的其他新闻,表示推荐与当前用户住在同一地域的用户读过的新闻,氛示推荐与当前用户使用同一设备的用户读过的新闻,表示推荐与当前用户使用同一系统的用户读过的新闻,表示推荐当前用户处于同一点击环境的用户读过的新闻,这些解释三元组用于后面推荐解释;
在步骤4中,邻域采样思路为:
该方法使用离散均匀分布进行采样,即,每个邻居被采样到的概率是一样的;另外,在整个训练过程中,邻域采样只需要做一次;
在步骤5中,对于给定的一个用户u,通过邻域采样获得和用户u住在同一地域的朋友[uT,1,uT,2,...uT,S],S是采样数量,T表示某一种解释三元组;
步骤6中,对于一个给定的新闻对<u,n>,根据步骤1得到初始用户表征uo;
最后,把得到的注意力权重和邻居增强的用表示向量表示相乘,并把相乘结果相加,得到不同属性增强的用户表征ug:
通过上述操作获得用户不同属性的重要性,并得到多种用户属性增强的用户表征;
在步骤7中,对于每个用户,将步骤2得到的初始用户表征和步骤6得到的不同属性增强的用户表征相加,得到最终用户表征u:
u=uo+ug (11)
其中,uT表示最终用户表征u的转置;概率分布的每一项表示对应的新闻被用户点击的概率,取概率值最大的前K个新闻作为当前用户的推荐项目,K可自行设定;
根据步骤7得到注意力权重最大的值对应的用户属性;
在步骤9中,使用交叉熵函数作为损失函数来训练模型,公式如下:
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)
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 | 齐鲁工业大学 | 一种基于多级匹配的兴趣激活新闻推荐方法及系统 |
-
2022
- 2022-05-29 CN CN202210595418.6A patent/CN115098767A/zh active Pending
Patent Citations (4)
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 |