首页> 中国专利> 一种融合显隐式反馈的协同推荐模型

一种融合显隐式反馈的协同推荐模型

摘要

本发明公开了一种融合显隐式反馈的协同推荐模型,从模拟用户真实的购物流程的角度出发,通过两步完成我们的推荐任务,首先通过面向排序的推荐模型分析用户隐式反馈数据来建模后,从待排序物品集中选出用户最有可能浏览的物品,接着采用面向评分的推荐模型通过用户显式反馈数据,学习出用户特征矩阵和物品特征矩阵用于预测评分,然后基于评分对之前选出的物品集重新排列先后顺序,作为最后的推荐列表返回给目标用户,从而极大地提高推荐的准确性,具有广泛的商业应用价值。

著录项

  • 公开/公告号CN108460619A

    专利类型发明专利

  • 公开/公告日2018-08-28

    原文格式PDF

  • 申请/专利权人 杭州电子科技大学;

    申请/专利号CN201810038717.3

  • 发明设计人 汤景凡;龚泽鑫;张旻;姜明;杜炼;

    申请日2018-01-16

  • 分类号G06Q30/02(20120101);G06F17/30(20060101);

  • 代理机构33240 杭州君度专利代理事务所(特殊普通合伙);

  • 代理人朱月芬

  • 地址 310018 浙江省杭州市下沙高教园区2号大街

  • 入库时间 2023-06-19 06:20:12

法律信息

  • 法律状态公告日

    法律状态信息

    法律状态

  • 2022-12-16

    专利权的转移 IPC(主分类):G06Q30/02 专利号:ZL2018100387173 登记生效日:20221206 变更事项:专利权人 变更前权利人:杭州电子科技大学 变更后权利人:温州开晨科技有限公司 变更事项:地址 变更前权利人:310018 浙江省杭州市下沙高教园区2号大街 变更后权利人:325036 浙江省温州市瓯海经济开发区东方南路38号温州市国家大学科技园孵化器10号楼3楼301室

    专利申请权、专利权的转移

  • 2020-04-21

    授权

    授权

  • 2018-09-21

    实质审查的生效 IPC(主分类):G06Q30/02 申请日:20180116

    实质审查的生效

  • 2018-08-28

    公开

    公开

说明书

技术领域

本发明属于计算机软件技术领域,具体是一种融合显隐式反馈的协同推荐模型。

背景技术

在当前的大多数在线购物平台中,用户的历史行为数据(如评分、点赞、浏览记录)隐式地包含用户的偏好信息,很多推荐系统都将其作为输入数据的重要来源之一。根据用户的反馈机制,可以将用户的在线行为数据分为显式反馈数据和隐式反馈数据,并且对于当前的电商领域,这两者数据是并存的,很少独立存在显式反馈或者隐式反馈数据。然而,之前大多数个性化推荐技术都把重心集中在单独的显式反馈或者隐式反馈,很难应对当前电商对于推荐技术的迫切需求,如何融合显隐式反馈用于推荐任务一直是研究的难点之一。此外,最终产生的推荐物品集里面的先后顺序会影响人们的购买意图,普遍认为靠前的物品是用户最想购买的,因此,推荐任务也应该考虑推荐结果中不同物品之间的先后顺序。

在本发明中,我们认为用户在现实场景下的购买流程是这样的:用户先经过长时间浏览商品,最后才会挑选出自己想买的商品。用户在浏览过程会留下很多隐式反馈数据(如点击、浏览、购买记录等),而在购买后的评价信息是用户的显式反馈数据(如评分、评级等),所以最终的推荐结果不应该单单地依赖于显式反馈数据或者隐式反馈数据,而推荐任务也可以分为两步:先产生用户最有可能浏览的物品集,再对得到的物品集重新排序,产生用户最有可能购买物品集。

发明内容

本发明的目的在于提供一种融合显隐式反馈的协同推荐模型。该模型推荐效果好,且能实现个性化推荐。

本发明解决其技术问题所采用的技术方案包括如下步骤:

步骤1、利用隐式反馈数据训练所需要的面向排序的推荐模型,并选出用户最有可能浏览的物品集I;

步骤2、在面向评分的模型加入显式反馈数据和隐式反馈数据来训练模型,,学习出用户特征矩阵和物品特征矩阵用于预测评分;对步骤1得到的物品集I进行重新排序,得到用户最可能购买的物品集Ⅱ,将物品集Ⅱ作为最终的推荐结果返回给目标用户;

经过以上步骤,本发明将用户的隐式反馈数据和显式反馈数据一并用于个性化推荐,实现提高个性化推荐效果的目的。

步骤1具体实现如下:

步骤1中面向排序的推荐模型使用的推荐算法,可以采用目前对级排序学习算法中应用于隐式反馈数据中的一种较为优秀的算法BPR(Bayesian Personalized Ranking),该算法的实现:

首先,对用户的历史评分数据进行数据pair化预处理:BPR算法将用户对物品的评分数据(用户有过交互的物品记为“1”,没有交互的物品记为“0”)处理为一个pair对的集合<i,j>,其中i为评分为1的物品,j为评分为0的物品。用三元组<u,i,j>来表达:用户“u”喜欢物品“i”多于物品“j”。

该推荐模型的前提条件:

①用户之间的偏好行为各自独立。

②同一用户对不同物品的偏序关系各自独立。

因此,定义需要极大化的目标:

Πp(Θ|i>uj)∝Πp(i>uj|Θ)p(Θ)(1)

其中Θ为所求的推荐模型参数,包含:用户的特征矩阵U和物品的特征矩阵V。p(Θ|i>uj)表示后验概率,p(i>uj|Θ)表示似然部分,p(Θ)表示先验概率,i>uj表示用户“u”喜欢物品“i”多于物品“j”。

其中关于似然部分:p(i>uj|Θ)=δ(xu,i-xu,j),xu,i=pu·pi,设先验概率服从如下分布:Θ~N(0,λΘI),则先验概率的密度函数为:

基于上面的假设,优化目标进一步展开得到:

Πp(i>uj|Θ)p(Θ)∝ln(p(i>uj|Θ)p(Θ))=∑(lnδ(xu,i-xu,j)+lnp(Θ))

=∑(lnδ(xu,i-xu,j)-λΘ||Θ||2)

=∑(lnδ(xu,i-xu,j)-λΘ||pu||2Θ||qi||2Θ||qj||2)

=∑(lnδ(pu·qi-pu·qj)-λΘ||pu||2Θ||qi||2Θ||qj||2)(3)

其中xu,i<pu,qi>为两个向量的内积形式来表示用户u对项目i的偏好程度,Θ为推荐模型参数。为了最大化上面表达式(3)的函数值,通过随机梯度下降算法(SGD)来求解。本发明可以通过此方法来得到用户最有可能浏览的物品集I。

步骤2具体实现如下:

对于步骤2中面向评分的推荐模型,可以使用SVD++模型来完成筛选用户最可能购买的物品集Ⅱ。SVD++模型是在奇异值分解模型(SVD)的基础上通过融入隐式反馈数据从而实现了改进。SVD的核心是矩阵分解技术,其基本思想就是根据用户的历史行为数据集(如用户的评分数据)抽取出一些特征,作为推荐任务的基础。对于电影推荐来说,这些特征可以理解为电影的搞笑程度、恐怖程度、冒险程度等等。

SVD模型中,每个用户存在着没有评分过的物品,对于这样的物品实际上用户也可能存在着潜在的兴趣,而SVD却错误地认为用户对此不感兴趣。所以SVD++模型中融入了用户存在潜在兴趣的事实。

其中N(u)代表用户u评分物品集,W叫做潜在物品特征矩阵。定义目标函数如下:

其中,向量bi表示电影i的评分相对于平均评分的偏差,向量bu表示用户u做出的评分相对于平均评分的偏差,将平均评分记做μ。

本发明有益效果如下:

本发明是一种融合显隐式反馈的协同推荐模型。传统的推荐技术中,面向评分的推荐模型仅仅利用了用户显式反馈数据,从而丧失了捕获用户之间喜好相似度的能力,而面向排序的推荐模型则只是考虑用户对产品对的偏好是否一致,而忽视了用户之间的偏好程度这一重要信息。本发明分析和研究了两种传统的推荐模型,发现了各自的不足之处。因此,本发明从模拟用户真实的购物流程的角度出发,通过两步将这两种推荐模型的优点结合到一起来完成我们的推荐任务,首先通过面向排序的推荐模型分析用户隐式反馈数据来建模后,从待排序物品集中选出用户最有可能浏览的物品,接着采用面向评分的推荐模型通过用户显式反馈数据,学习出用户特征矩阵和物品特征矩阵用于预测评分,然后基于评分对之前选出的物品集重新排列先后顺序,作为最后的推荐列表返回给目标用户。

附图说明

图1为本发明流程图。

具体实施方式

下面结合附图和实施例对本发明作进一步说明。

一种融合显隐式反馈的协同推荐模型,其整体框架如图1所示。包括以下步骤:

步骤1、利用隐式反馈数据训练所需要的面向排序的推荐模型(如BPR),并选出用户最有可能浏览的物品集I。

步骤2、在面向评分的模型(如SVD++)加入显式反馈数据和隐式反馈数据来训练模型,对步骤1得到的物品集I进行重新排序,得到用户最可能购买的物品集Ⅱ,将物品集Ⅱ作为最终的推荐结果。

经过以上步骤,本发明将用户的隐式反馈数据和显式反馈数据一并用于个性化推荐,实现提高个性化推荐效果的目的。

步骤1具体实现如下:

步骤1中面向排序的推荐模型使用的推荐算法,可以采用目前对级排序学习算法中应用于隐式反馈数据中的一种较为优秀的算法BPR(Bayesian Personalized Ranking),该算法的实现:

首先,对用户的历史评分数据进行数据pair化预处理:BPR算法将用户对物品的评分数据(用户有过交互的物品记为“1”,没有交互的物品记为“0”)处理为一个pair对的集合<i,j>,其中i为评分为1的物品,j为评分为0的物品。用三元组<u,i,j>来表达:用户“u”喜欢物品“i”多于物品“j”。

该推荐模型的前提条件:

①用户之间的偏好行为各自独立。

②同一用户对不同物品的偏序关系各自独立。

因此,定义需要极大化的目标:

Πp(Θ|i>uj)∝Πp(i>uj|Θ)p(Θ)(1)

其中Θ为所求的推荐模型参数,包含:用户的特征矩阵U和物品的特征矩阵V。p(Θ|i>uj)表示后验概率,p(i>uj|Θ)表示似然部分,p(Θ)表示先验概率,i>uj表示用户“u”喜欢物品“i”多于物品“j”。

其中关于似然部分:p(i>uj|Θ)=δ(xu,i-xu,j),xu,i=pu·pi,设先验概率服从如下分布:Θ~N(O,λθI),则先验概率的密度函数为:

基于上面的假设,优化目标进一步展开得到:

Πp(i>uj|Θ)p(Θ)∝ln(p(i>uj|Θ)p(Θ))=∑(lnδ(xu,i,xu,j)+ln>

=∑(lnδ(xu,i-xu,j)-λΘ||Θ||2)

=∑(lnδ(xu,i-xu,j)-λΘ||pu||2Θ||qi||2Θ||qj||2)

=∑(lnδ(pu·qi-pu·qj)-λΘ||pu||2Θ||qi||2Θ||qj||2)(3)

其中xu,i<pu,qi>为两个向量的内积形式来表示用户u对项目i的偏好程度,Θ为推荐模型参数。为了最大化上面表达式(3)的函数值,通过随机梯度下降算法(SGD)来求解。本发明可以通过此方法来得到用户最有可能浏览的物品集I。

步骤2具体实现如下:

对于步骤2中面向评分的推荐模型,可以使用SVD++模型来完成筛选用户最可能购买的物品集Ⅱ。SVD++模型是在奇异值分解模型(SVD)的基础上通过融入隐式反馈数据从而实现了改进。SVD的核心是矩阵分解技术,其基本思想就是根据用户的历史行为数据集(如用户的评分数据)抽取出一些特征,作为推荐任务的基础。对于电影推荐来说,这些特征可以理解为电影的搞笑程度、恐怖程度、冒险程度等等。

SVD模型中,每个用户存在着没有评分过的物品,对于这样的物品实际上用户也可能存在着潜在的兴趣,而SVD却错误地认为用户对此不感兴趣。所以SVD++模型中融入了用户存在潜在兴趣的事实。

其中N(u)代表用户u评分物品集,W叫做潜在物品特征矩阵。定义目标函数如下:

其中,向量bi表示电影i的评分相对于平均评分的偏差,向量bu表示用户u做出的评分相对于平均评分的偏差,将平均评分记做μ。

去获取专利,查看全文>

相似文献

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

客服邮箱:kefu@zhangqiaokeyan.com

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

  • 服务号