一种基于多核融合的新项目协同推荐方法技术

技术编号:21274408 阅读:18 留言:0更新日期:2019-06-06 08:28
本发明专利技术涉及一种基于商品属性信息的冷启动推荐算法,目的是通过利用多核加权融合的协同过滤算法解决新商品推荐中的数据缺失问题。该算法通过多核加权的方式确定了商品在属性空间之间关联关系,从而实现向用户推荐新项目。其中,所述的多核学习算法,是在现有的核函数学习算法的基础上,为各个核函数进行加权求和从而提高了算法在复杂数据环境中的准确度;所述的属性相似度,是通过计算在商品间属性上的相似性,使计算的用户对商品预测的偏好得分更具有解释性;所述的权重是通过随机梯度下降的学习方法进行优化。通过本发明专利技术,能够根据商品的属性信息学习一种描述用户偏好的项目相似性度量,以有效提高新项目推荐的精准度。

【技术实现步骤摘要】
一种基于多核融合的新项目协同推荐方法
本专利技术涉及机器学习领域,尤其涉及一种基于多核融合的新项目协同推荐方法。
技术介绍
随着社会经济的高速发展,人们会面对越来越多的商品、信息和服务,导致用户无从进行选择。为了解决这种信息过载的问题,推荐系统应运而生。应用最为广泛的是基于项目的协同过滤算法,其核心思想是给用户推荐他(她)之前喜欢的相似物品,能在不需要用户其他信息的场景下进行个性化推荐。然而,如果缺少项目的历史评价信息,该方法将难以产生有效的推荐,这就是新项目推荐问题(也叫作项目冷启动问题)。常用的冷启动的推荐算法有以下三种:(1)采用评分中值,平均值,众数等来填补空缺,但是未评分项目的评分值将完全一样,因此这种方法的可信度不高;(2)采用近邻的方法计算项目之间的相似性,但是寻找出的最近邻项目大多数都没有被当前用户评过分,因此,稳定性不好;(3)采用相似度的方法,计算项目之间的相似性,但是因为相似度与用户偏好之间难以达成有效的匹配,因此算法的适应性不强。
技术实现思路
针对以上问题,本专利技术为了进一步提高新项目推荐的准确性,我们提出一种基于多核融合的新项目协同推荐方法,达到能够有效提升项目的冷启动的性能。一种基于多核融合的新项目协同推荐方法,其特征在于,包括:步骤1、建立数据属性信息集,所述数据属性信息集包括:用户ID信息、项目ID信息、评分信息以及项目的属性信息;步骤2、提取评分信息大于0相对应的用户ID信息和项目ID信息,组成项目-用户组,随机选取任一项目-用户组进行计算;步骤3、根据项目的属性信息分别计算项目之间皮尔逊相似度、余弦相似度和Jaccard相似度,分别建立皮尔逊核、余弦核和Jaccard核;其中皮尔逊相似度中的近邻集合是两个项目的用户的集合的交集,如下分段函数是3种情况下,对n的判断(n是集合中元素的个数),步骤4、计算皮尔逊核、余弦核和Jaccard核三个基本核函数的加权和,计算公式如下:式中,simi对应相应类型的核函数,wi分别是各个核函数占整体的权重,权重和为1,并且每个权重都大于等于0。步骤5、确定当前项目v的邻居集SN,具体包括5.1)计算项目之间属性的相似性5.2)找出当前用户u评论的所有评分项目集S5.3)选取项目集S中与当前项目v属性相似度的前K个项目,构成当前项目v的邻居集SNv,如果不足K个按当前个数算,否则取相似度大的前K个。步骤6、计算用户u对项目v的预测评分,计算公式如下:式中SNv表示项v的K个最近的邻居集合,其中,使用了项目的属性信息来确定给定项目的近邻集合(j∈SNv),且用户u对项目j有历史评分sim(v,j)是式中的多核线性组合;rju是用户u在项目j上的评分值;步骤7、采用随机梯度下降的算法来优化损失函数,损失公式为式中P(v,u)是预测评分,y(v,u)是真实值;求解损失函数包括以下步骤:7.1)将损失函数表示成梯度的形式:7.2)计算的值,计算过程为:7.3)化简,令7.4)得到向量a、b,将向量a、b带入式得到的值;步骤8、计算损失如公式:步骤9、对权重w进行归一化的处理,确保每次迭代后的wi加和为1,且wi都大于0;步骤10、根据公式w(n+1)=wn-αη(0<α≤0.1)更新w。进一步地,还包括:对用户进行新项目的推荐,具体步骤为:2.a)找出各个新项目的近邻集合{SNv},其中v是新项目的集合;2.b)计算当前用户对各个近邻集合的皮尔逊相似度、余弦相似度和Jaccard相似度;2.c)将算出的最终权重w的值带入式得到新项目与近邻集的加权相似性;2.d)最后根据式得到用户对各个新项目的预测评分,选择预测评分最大值所对应的新项目对用户进行推荐。进一步地,所述皮尔逊相似度用于度量两个向量之间的线性相关关系,即式中,rx,p,ry,p分别表示用户p对项x,项y的评分。分别表示项x和项y上用户集评分的均值;I是项x和项y的共同评分的用户集合;余弦相似度通过计算两个向量间夹角的余弦值衡量向量之间的相似性,式中,rx和ry分别表示项x和项y的评分向量;||·||表示向量的模长;Jaccard相关系数是两个项目间交集和并集间的比值,即式中,X与Y分别表示项x和项y的评分集。综上所述,本专利技术提供了一种基于多核融合的新项目协同推荐方法,通过核函数进行一个非线性的变换,将输入空间映射到高维特征空间,从而在线性空间中进行线性的计算,简化了计算的复杂度,提高了算法的可行性;通过核函数融合,提高了算法在不同应用环境下的适应性、提高准确率;通过多核融合计算项目间属性信息的关系,解决基于项目协同过滤无法处理新项目的问题,同时提供一种优化的用户间相似性评价准则。有益效果:所述的多核学习算法,是在现有的核函数学习算法的基础上,为各个核函数进行加权求和从而提高了算法在复杂数据环境中的准确度;所述的属性相似度,是通过计算在商品间属性上的相似性,使计算的用户对商品预测的偏好得分更具有解释性;所述的权重是通过随机梯度下降的学习方法进行优化。通过本专利技术,能够根据商品的属性信息学习一种描述用户偏好的项目相似性度量,以有效提高新项目推荐的精准度。附图说明为了更清楚地说明本专利技术的技术方案,下面将对实施例中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本专利技术中记载的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。图1为本专利技术提供的一种基于多核融合的新项目协同推荐方法实施例流程图;图2为本专利技术提供的一种基于多核融合的新项目协同推荐方法简要示意图。具体实施方式本专利技术给出了一种基于多核融合的新项目协同推荐方法实施例,为了使本
的人员更好地理解本专利技术实施例中的技术方案,并使本专利技术的上述目的、特征和优点能够更加明显易懂,下面结合附图对本专利技术中技术方案作进一步详细的说明:本专利技术提供了一种基于多核融合的新项目协同推荐方法实施例,如图1所示,包括:S101、步骤1、建立数据属性信息集,所述数据属性信息集包括:用户ID信息、项目ID信息、评分信息以及项目的属性信息;S102、步骤2、提取评分信息大于0相对应的用户ID信息和项目ID信息,组成项目-用户组,随机选取任一项目-用户组进行计算;S103、步骤3、根据项目的属性信息分别计算项目之间皮尔逊相似度、余弦相似度和Jaccard相似度,分别建立皮尔逊核、余弦核和Jaccard核;其中皮尔逊相似度中的近邻集合是两个项目的用户的集合的交集,如下分段函数是3种情况下,对n的判断(n是集合中元素的个数),S104、步骤4、计算皮尔逊核、余弦核和Jaccard核三个基本核函数的加权和,计算公式如下:式中,simi对应相应类型的核函数,wi分别是各个核函数占整体的权重,权重和为1,并且每个权重都大于等于0。S105、步骤5、确定当前项目v的邻居集SN,具体包括5.1)计算项目之间属性的相似性5.2)找出当前用户u评论的所有评分项目集S5.3)选取项目集S中与当前项目v属性相似度的前K个项目,即当前项目v的邻居集SNv(如果不足K个按当前个数算,超过了取相似度大的前K个)S106、步骤6、计算用户u对项目v的预测评分,计算公式如下:式中SNv表示项v的K个最近的邻居;sim(v,本文档来自技高网
...

【技术保护点】
1.一种基于多核融合的新项目协同推荐方法,其特征在于,包括:步骤1、建立数据属性信息集,所述数据属性信息集包括:用户ID信息、项目ID信息、评分信息以及项目的属性信息;步骤2、提取评分信息大于0相对应的用户ID信息和项目ID信息,组成项目‑用户组,随机选取任一项目‑用户组进行计算;步骤3、根据项目的属性信息分别计算项目之间皮尔逊相似度、余弦相似度和Jaccard相似度,分别建立皮尔逊核、余弦核和Jaccard核;其中皮尔逊相似度中的近邻集合是两个项目的用户的集合的交集,如下分段函数是3种情况下,对n的判断(n是集合中元素的个数),

【技术特征摘要】
1.一种基于多核融合的新项目协同推荐方法,其特征在于,包括:步骤1、建立数据属性信息集,所述数据属性信息集包括:用户ID信息、项目ID信息、评分信息以及项目的属性信息;步骤2、提取评分信息大于0相对应的用户ID信息和项目ID信息,组成项目-用户组,随机选取任一项目-用户组进行计算;步骤3、根据项目的属性信息分别计算项目之间皮尔逊相似度、余弦相似度和Jaccard相似度,分别建立皮尔逊核、余弦核和Jaccard核;其中皮尔逊相似度中的近邻集合是两个项目的用户的集合的交集,如下分段函数是3种情况下,对n的判断(n是集合中元素的个数),步骤4、计算皮尔逊核、余弦核和Jaccard核三个基本核函数的加权和,计算公式如下:式中,simi对应相应类型的核函数,wi分别是各个核函数占整体的权重,权重和为1,并且每个权重都大于等于0。步骤5、确定当前项目v的邻居集SN,具体包括5.1)计算项目之间属性的相似性5.2)找出当前用户u评论的所有评分项目集S5.3)选取项目集S中与当前项目v属性相似度的前K个项目,构成当前项目v的邻居集SNv,若如果不足K个按当前个数算,否则取相似度大的前K个步骤6、计算用户u对项目v的预测评分,计算公式如下:式中SNv表示项v的K个最近的邻居;sim(v,j)是式中的多核线性组合;rju(0≤rju≤5)是用户u在项目j上的评分值;步骤7、采用随机梯度下降的算法来优化损失函数,损失公式为:式中P(v,u)是预测评分,y(v,u)是真...

【专利技术属性】
技术研发人员:田斌
申请(专利权)人:山西开拓科技股份有限公司
类型:发明
国别省市:山西,14

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1