首页> 中国专利> 一种基于邻居用户的多个兴趣影响的推荐方法

一种基于邻居用户的多个兴趣影响的推荐方法

摘要

本发明公开一种基于邻居用户的多个兴趣影响的推荐方法,属于基于用户兴趣的推荐方法技术领域。根据社交关系图对每个用户的邻居进行随机采样得到K个兴趣感知图;在每个兴趣感知图上分别进行图卷积操作,聚合单个兴趣在用户之间的相互影响;在用户项目交互图上通过图卷积操作,聚合用户交互过的项目信息以及项目被交互过的用户信息;将上面两个聚合步骤得到的结果进行元素拼接,得到第一个卷积层的结果;迭代多次前述图卷积操作;将多个卷积层的结果进行注意力融合,得到用户和项目的最终嵌入向量,并通过向量內积得到用户可能与项目产生交互的概率,进而得到推荐列表。该方法可使推荐系统能够充分利用社交网络带来的影响,提升推荐效果。

著录项

  • 公开/公告号CN112541131A

    专利类型发明专利

  • 公开/公告日2021-03-23

    原文格式PDF

  • 申请/专利权人 东北大学;

    申请/专利号CN202011416979.2

  • 发明设计人 于瑞云;汪志鸿;张碧耘;

    申请日2020-12-07

  • 分类号G06F16/9536(20190101);G06Q50/00(20120101);G06N3/04(20060101);

  • 代理机构21109 沈阳东大知识产权代理有限公司;

  • 代理人梁焱

  • 地址 110819 辽宁省沈阳市和平区文化路3号巷11号

  • 入库时间 2023-06-19 10:21:15

说明书

技术领域

本发明涉及一种基于用户兴趣的推荐方法,更具体地说涉及一种基于邻居用户的多个兴趣影响的推荐方法。

背景技术

近年来,在线社交网络在我们的生活中逐渐普及开来,而且越来越多的人喜欢在社交平台上表达自己的兴趣偏好,这可以为用户的后续需求分析,以及为用户推荐物品提供可靠的依据。因此我们可以借助用户之间的社交关系来缓解推荐系统中的数据稀疏问题。在现有的推荐系统中,为了能准确地为用户推荐其可能喜欢的物品,推荐系统需要针对用户之间存在的兴趣特征,充分挖掘用户之间多个兴趣产生的相互影响,最终提高推荐系统的准确性。

用户兴趣的多样性是既定的事实,但传统的推荐算法往往考虑的是用户的单一兴趣,因此考虑用户之间的影响也是单一性的。例如,用户A、用户B和用户C是邻居用户,用户A喜欢观看喜剧类以及科技类的电影,不喜欢看动漫类和历史类的电影,用户B喜欢看科技类和动漫类电影,用户C则喜欢看科技类电影和历史类电影,现有推荐算法则简单地将用户A、用户B和用户C各自的不同类别的多个电影兴趣综合为一个整体,考虑用户B和用户C分别对用户A的影响程度,不会将他们各自的不同类别电影兴趣的影响分开考虑,例如,细致挖掘用户B的科技类电影兴趣和用户C的科技类电影兴趣分别对用户A的科技类电影兴趣的影响程度,因此这种现有的推荐算法将导致社交网络不能被充分的利用。

此外,在目前的推荐系统中越来越多的研究采用卷积神经网络来聚合邻居用户的兴趣影响以及交互过的项目信息。但是现有的研究仅仅将多层卷积操作后的向量直接作为最终的用户嵌入向量的方法,未能全面考虑不同跳的邻居对用户目标行为带来的不同程度的影响。

发明内容

鉴于上述现有技术的不足,本申请的目的在于提供一种基于邻居用户的多个兴趣影响的推荐方法,旨在解决现有推荐系统不能细粒度考虑社交网络中邻居用户之间的兴趣影响的问题。

为解决上述技术问题,本发明的基于邻居用户的多个兴趣影响的推荐方法,包括以下步骤:

步骤1:获取原始数据集;

所述原始数据集,包括用户信息集合、项目信息集合,用户项目交互图G

步骤2:使用one-hot编码将用户信息集合中所有用户的ID和项目信息集合中所有项目的ID均转换为one-hot向量;

步骤3:将所有one-hot向量转换成嵌入向量,得到用户的初始嵌入向量和项目的初始嵌入向量;

步骤4:根据得到的用户初始嵌入向量,将用户初始嵌入向量等分成k个子嵌入向量,分别用来表示用户的k个兴趣,即k个兴趣嵌入向量,公式如下:

其中,

步骤5:将用户的k个兴趣嵌入向量分别输入到不同的兴趣感知图中,对于不同的兴趣感知图分别输入一个不同的兴趣嵌入向量;

步骤6:通过t次图卷积操作聚合用户的t跳邻居用户的影响,得到用户的t个最终嵌入向量和项目的t个最终嵌入向量;

步骤7:将用户的最终嵌入向量和项目的最终嵌入向量做内积,并经过sigmoid激活函数,得到目标用户可能对项目产生交互的预测分数值;

步骤8:根据最终得到的目标用户可能对项目产生交互的预测分数值,为目标用户进行个性化推荐。

可选地,根据上述的基于邻居用户的多个兴趣影响的推荐方法,在所述步骤3中,使用Embedding嵌入技术将所有one-hot向量转换成嵌入向量,得到用户的初始嵌入向量和项目的初始嵌入向量,公式如下:

其中,P为用户的特征嵌入矩阵,Q为项目的特征嵌入矩阵,T表示转置运算,v

可选地,根据上述的基于邻居用户的多个兴趣影响的推荐方法,所述步骤7中所述的预测分数值在0到1的区间内。

可选地,根据上述的基于邻居用户的多个兴趣影响的推荐方法,所述步骤7中所述的用户的最终嵌入向量和项目的最终嵌入向量分别为步骤6中最后一次图卷积操作得到的用户嵌入向量和项目嵌入向量。

可选地,根据上述的基于邻居用户的多个兴趣影响的推荐方法,所述的步骤6包括如下步骤:

步骤6.1:在每个兴趣感知图中使用图卷积操作将该用户的邻居用户的兴趣影响聚合到该用户的兴趣嵌入向量中,然后将经过聚合操作后的k个兴趣嵌入向量进行拼接;该步骤从邻居用户中分别聚合了k个不同兴趣之间的影响,公式如下:

其中Aggre表示图卷积操作,

步骤6.2:对用户项目交互图G

其中

步骤6.3:对用户项目交互图G

其中

步骤6.4:通过对步骤6.1至步骤6.3迭代t次图卷积过程,得到用户的t个最终嵌入向量和项目的t个最终嵌入向量。

可选地,根据上述的基于邻居用户的多个兴趣影响的推荐方法,在上述的步骤6和步骤7之间还包括如下的步骤F:

步骤F:使用注意力机制分别将上述t个不同卷积层得到的用户嵌入向量和项目嵌入向量进行融合,具体的说,将用户的t个向量表示进行拼接,并通过一个非线性转化得到多个向量的注意力权重,公式如下:

其中

根据得到的注意力权重,我们可以将不同层得到的用户向量进行融合得到最终的用户向量:

同理,项目的t个向量的融合过程与上述用户的t个向量的融合过程相同,于是最终的项目向量为:

上述h

可选地,根据上述的基于邻居用户的多个兴趣影响的推荐方法,所述步骤7中所述用户的最终嵌入向量和项目的最终嵌入向量分别为步骤F中通过注意力方式进行融合后得到的最终的用户嵌入向量和最终的项目嵌入向量。

可选地,根据前述任一所述的基于邻居用户的多个兴趣影响的推荐方法,在所述步骤8中,将预测分数值填充到用户-项目评分矩阵中,为目标用户生成个性化推荐列表并进行个性化推荐。

本发明的有益效果:与常见的社交推荐方法相比,本发明的基于邻居用户的多个兴趣影响的推荐方法,考虑用户多个方面的兴趣表达,能够较好地探究用户之间存在的多个兴趣影响相互影响的情况,针对实际场景中推荐系统不能细粒度考虑社交网络中用户之间的兴趣影响的问题,使推荐系统能够充分利用社交网络带来的影响,进而提升了推荐效果,特别对于推荐场的冷启动问题,有着重要的应用价值。与此同时,图卷积操作的引入,考虑了用户之间的兴趣影响是一种动态传递的过程,利用社交网络来辅助推荐过程,提升了推荐的准确性。

附图说明

图1为本发明实施方式基于邻居用户的多个兴趣影响的推荐方法的流程示意图;

图2为本发明实施方式基于邻居用户的多个兴趣影响的推荐方法的流程图;

图3为本发明基于邻居用户的多个兴趣影响的推荐方法中步骤6的流程图;

图4为本发明实施方式基于邻居用户的多个兴趣影响的推荐方法的流程示意图;

图5为本发明实施方式基于邻居用户的多个兴趣影响的推荐方法的流程图。

具体实施方式

为了便于理解本申请,下面将参照相关附图对本申请进行更全面的描述。附图中给出了本申请的较佳实施方式。但是,本申请可以以许多不同的形式来实现,并不限于本文所描述的实施方式。相反地,提供这些实施方式的目的是使对本申请的公开内容理解的更加透彻全面。

为解决现有推荐系统不能细粒度考虑社交网络中邻居用户之间的兴趣影响的问题,本申请提供的解决方案是:一种基于邻居用户的多个兴趣的推荐方法,首先根据社交关系图对每个用户的邻居进行随机采样得到K个兴趣感知图,每个兴趣感知图表示用户之间的一种兴趣影响关系;然后在每个兴趣感知图上分别进行图卷积操作,聚合单个兴趣在用户之间的相互影响;在用户—项目交互图上通过图卷积操作,聚合用户交互过的项目信息以及项目被交互过的用户信息;然后将上面两个步骤聚合得到的结果进行元素拼接,得到第一个卷积层的结果;然后迭代多次图卷积操作,最终将多个卷积层的结果进行注意力融合,得到用户和项目的最终嵌入向量;根据用户和项目最终的嵌入向量,通过向量內积的方式得到用户可能与项目产生交互的概率,进而得到推荐列表。下面将结合附图和具体实施方式,对本发明的具体实施方式作进一步详细描述。

本实施方式的基于邻居用户的多个兴趣影响的推荐方法,如图1和图2所示,包括以下步骤:

步骤1:获取原始数据集;

所述原始数据集,包括用户信息集合、项目信息集合,用户项目交互图G

步骤2:使用one-hot编码,将用户信息集合中所有用户的ID和项目信息集合中所有项目的ID(Identity Document,身份标识号)均转换为one-hot向量。

步骤3:由于上步中经过one-hot编码得到的向量比较稀疏,本步使用Embedding嵌入技术将所有one-hot向量转换成稠密的嵌入向量,公式如下:

其中,P为用户的特征嵌入矩阵,Q为项目的特征嵌入矩阵,T表示转置运算,v

步骤4:根据得到的用户嵌入向量,将用户嵌入向量等分成k个子嵌入向量,分别用来表示用户的k个兴趣,这方便对用户的多个兴趣进行建模,公式如下:

其中,

步骤5:将用户的k个兴趣的嵌入向量分别输入到不同的兴趣感知图中,对于不同的兴趣感知图分别输入一个不同的兴趣嵌入向量。

根据社交关系图G

步骤6:通过t次图卷积操作聚合用户的t跳邻居用户的影响,在每一次图卷积过程中,用户分别从k个兴趣感知图以及用户项目交互图G

步骤6.1:在每个兴趣感知图中使用图卷积操作将该用户的邻居用户的兴趣影响聚合到该用户的兴趣嵌入向量中,然后将经过聚合操作后的k个兴趣嵌入向量进行拼接。该步骤从邻居用户中分别聚合了k个不同兴趣之间的影响,公式如下:

其中Aggre表示图卷积操作,

步骤6.2:对用户项目交互图G

其中,

步骤6.3:对用户项目交互图G

其中

步骤6.4:通过对步骤6.1至步骤6.3迭代t次图卷积过程,得到用户的t个最终嵌入向量和项目的t个最终嵌入向量。

步骤7:将用户的最终嵌入向量和项目的最终嵌入向量做内积,并经过sigmoid激活函数,得到目标用户可能对项目产生交互的预测分数值,预测分数值在0到1的区间内。此时,这里所述的用户的最终嵌入向量和项目的最终嵌入向量分别为步骤6中最后一次图卷积操作得到的用户嵌入向量和项目嵌入向量。

步骤8:根据最终得到的目标用户可能对项目产生交互的预测分数值,为目标用户进行个性化推荐,例如可以将最终得到的目标用户可能对项目产生交互的预测分数值填充到用户-项目评分矩阵中,然后为目标用户生成个性化推荐列表并进行个性化推荐。

由于不同跳邻居带来的影响是不同的,应该综合考虑附近周围邻居的影响和远端的多跳邻居的影响,而不是仅仅只考虑远端的多跳邻居的影响。为解决该问题,如图4和图5所示,本方法在步骤6与步骤7之间包括如下的步骤F,进一步使用注意力机制来融合不同层的结果,能够全面关注不同跳邻居带来的不同程度的影响,以提高推荐的准确性。

步骤F:使用注意力机制分别将上述t个不同卷积层得到的用户嵌入向量和项目嵌入向量进行融合,得到最终的用户向量和最终的项目向量。

具体地说,将用户的t个向量表示进行拼接,并通过一个非线性转化得到多个向量的注意力权重,公式如下:

其中

根据得到的注意力权重,我们可以将不同层得到的用户向量进行融合得到最终的用户向量:

同理,项目的t个向量的融合过程与上述用户的t个向量的融合过程相同,于是最终的项目向量为:

上述h

此时,执行步骤7时,所述用户的最终嵌入向量和项目的最终嵌入向量分别为步骤F中通过注意力方式进行融合后得到的最终的用户嵌入向量和最终的项目嵌入向量。执行完步骤7后,仍然继续执行步骤8,将最终得到的目标用户可能对项目产生交互的预测分数值填充到用户-项目评分矩阵中,然后为目标用户生成个性化推荐列表并进行个性化推荐。

例如,表1示出的是电影推荐系统中部分用户与电影交互表,在表1中,每一列用不同的ID表示的不同的电影,每一行用不同的ID表示的不同的用户,表格内括号中的数字即为ID号,并且每一列表示一种不同种类的电影。表1的表格阵列中填充的0表示对应的用户与对应的电影未交互过,1表示对应的用户与对应的电影交互过。

表1电影推荐系统中部分用户与电影交互表

表2示出的是采用本实施方式的基于邻居用户的多个兴趣影响的推荐方法对不同的用户可能对不同的电影产生交互的预测结果。预测分数值范围为0~1,值越大表示对应的用户对对应的电影交互的可能性越高。

表2不同的用户可能对不同的电影产生交互的预测结果

结合表1和表2可以明显地看出,根据用户的历史行为,利用本实施方式的基于邻居用户的多个兴趣影响的推荐方法可以很好地综合邻居用户的多个兴趣影响获得准确的用户兴趣嵌入向量,准确推荐符合用户口味的电影。例如,从表1中可以看出,用户(19)喜欢喜剧类、爱情类、恐怖类电影,而在表2中的预测结果可以看出,更加倾向于给用户(19)推荐这三个类别的电影。综上所述,本实施方式的基于邻居用户的多个兴趣影响的推荐方法能够较好地探究用户之间存在的多个兴趣影响,进而提升推荐性能。与常见的社交推荐方法相比,本方法能够较好的考虑到用户存在的多个不同兴趣相互影响的情况,可以充分考虑用户多个方面的兴趣表达,进而提供更加个性化的推荐。

应当理解的是,本领域技术人员在本发明技术构思的启发下,在不脱离本发明内容的基础上,还可以对上述基于邻居用户的多个兴趣影响的推荐方法作出各种改进或变换,这仍落在本发明的保护范围之内。

去获取专利,查看全文>

相似文献

  • 专利
  • 中文文献
  • 外文文献
获取专利

客服邮箱:kefu@zhangqiaokeyan.com

京公网安备:11010802029741号 ICP备案号:京ICP备15016152号-6 六维联合信息科技 (北京) 有限公司©版权所有
  • 客服微信

  • 服务号