一种基于典型用户群组发现技术的信息推荐方法技术

技术编号:10363018 阅读:199 留言:0更新日期:2014-08-27 19:03
本发明专利技术涉及一种基于典型用户群组发现技术的信息推荐方法,与现有技术相比解决了推荐方法运算量大、无法充分反映用户兴趣的缺陷。本发明专利技术包括如下步骤:发现典型用户群组TUG,针对用户集合和项目集合计算出典型用户群组;计算推荐结果R’,基于典型用户群组TUG,将协同过滤推荐方法的最近邻搜索范围从全体用户缩小到典型用户群组中,计算出推荐结果R’。本发明专利技术的典型用户群组具有较好的代表性,能够获得更好的推荐效果。

【技术实现步骤摘要】
一种基于典型用户群组发现技术的信息推荐方法
本专利技术涉及推荐系统
,具体来说是一种基于典型用户群组发现技术的信息推荐方法。
技术介绍
随着信息社会的发展和计算机技术的进步,推荐系统已经成为人们避免信息过载、获得有效信息的重要途径,已广泛应用于视频推荐、好友推荐、网站推荐、论坛推荐等各个信息化领域中。推荐系统通过协同过滤、基于内容的推荐等方法,可以有效的提供与目标用户的兴趣偏好具有较高相关性的个性化推荐结果,从而提升用户对于信息服务的满意度。推荐系统的相关研究,大多集中在如何提升推荐效果,而较少关注对于推荐系统用户群体的深入分析。随着推荐系统用户规模的不断扩大,特别是聊天工具中好友推荐、电影库中影片推荐等,逐一分析单个用户是极其浪费计算资源和时间。通常在推荐系统的实际应用中,运用用户聚类、删除不活跃用户等手段,降低待分析用户规模,然后进一步实现后续推荐流程。例如对于旅游推荐中的不活跃用户,在删除不活跃用户后,综合运用多种用户特征提升了推荐效果。但是,类似的方法由于处理过程的固有缺陷,在保证精度的同时并不能保证对于用户兴趣的充分反映,导致不能全面的进行信息推荐。因此,应当开发出一种新的用户子集筛选方法,使得筛选得到的子集既能充分反映全体用户的兴趣偏好,又能尽可能多的覆盖和包含已知推荐项目。
技术实现思路
本专利技术的目的是为了解决现有技术中推荐方法运算量大、无法充分反映用户兴趣的缺陷,提供一种基于典型用户群组发现技术的信息推荐方法来解决上述问题。为了实现上述目的,本专利技术的技术方案如下:一种基于典型用户群组发现技术的信息推荐方法,包括以下步骤:发现典型用户群组TUG,针对用户集合和项目集合计算出典型用户群组;其具体步骤如下:定义用户集合U={ui},0≤i<|U|;定义项目集合P={pj},0≤j<|P|;使用评分矩阵R定义用户和项目之间的互动信息,R={rij}|U|×|P|,rij≥0,其中rij=0代表用户ui和项目pj没有互动,并将在R中从未出现的用户或项目从U和P中删除;针对用户集合U定义空用户子集U',定义候选用户Uc,定义候选用户子集Uc中的用户数为k,U'的项目覆盖集PU'定义为计算U'的项目覆盖率,P的子集PU'在P中所占的比例,定义子集U1加入到子集U'的递增项目覆盖率ICovU'(U1),ICovU'(U1)=Cov(U1∪U')-Cov(U');令U1={u},当每次选择一个用户u加入U',则将Pu和PU'中相同的项目会互相抵消,则其中定义加权的递增项目覆盖率,其中权重wj定义为其中Sj表示项目Pj一共被Sj个用户选择过;进行1至k次循环,在循环过程中分别计算Uc中所有用户的加权递增项目覆盖率;计算maxCov(TUG),选出最大加权递增项目覆盖率的用户u;将u添加到U'中,从Uc中删去u;循环结束后,U'为所求的典型用户群组TUG;计算推荐结果R',基于典型用户群组TUG,将协同过滤推荐方法的最近邻搜索范围从全体用户缩小到典型用户群组中,计算出推荐结果R'。所述的计算推荐结果R'包括以下步骤:相似度计算,对于每个用户u,计算u和TUG中每个典型用户的相似度,相似度计算公式如下:最近邻搜索,从TUG中选出和u相似度最高的n个典型用户,作为最近邻集合UN;评分预测,对于用户u未评分的项目p计算其得分,通过其最近邻集合UN对项目p评分的加权平均计算出得分;对于所有的用户所有未评分项进行预测,并按得分从高到低排序,得到推荐结果R'。有益效果本专利技术的一种基于典型用户群组发现技术的信息推荐方法,与现有技术相比其典型用户群组具有较好的代表性,能够获得更好的推荐效果。通过典型用户群组概念的提出,从而发现推荐系统中的典型用户子集,可以正确反映全体用户的兴趣偏好。通过比较候选新增典型用户对典型用户群组的贡献度,逐一扩大典型用户群组规模,最终达到较高的推荐项目覆盖率和评分准确度。附图说明图1为本专利技术的方法流程图图2a为本专利技术不同比例测试集上评分误差的对比实验结果图2b为本专利技术不同比例测试集上覆盖率的对比实验结果图3a为本专利技术不同大小用户子集上评分误差的对比实验结果图3b为本专利技术不同大小用户子集上覆盖率的对比实验结果图4a为本专利技术测试集比例50%、k=50时,不同流派项目上评分误差的对比实验结果图4b为本专利技术测试集比例50%、k=50时,不同流派项目上覆盖率的对比实验结果图5a为本专利技术测试集比例10%、k=50时不同流派项目上评分误差的对比实验结果图5b为本专利技术测试集比例10%、k=50时不同流派项目上覆盖率的对比实验结果图6a为本专利技术测试集比例90%、k=50时不同流派项目上评分误差的对比实验结果图6b为本专利技术测试集比例90%、k=50时不同流派项目上覆盖率的对比实验结果图7a为MAE推荐效果实际中测试集比例50%、TUG-CF推荐效果随着参数变化的比较结果图7b为RMSE推荐效果实际中测试集比例50%、TUG-CF推荐效果随着参数变化的比较结果图8为Top-K的实验对比结果。具体实施方式为使对本专利技术的结构特征及所达成的功效有更进一步的了解与认识,用以较佳的实施例及附图配合详细的说明,说明如下:如图1所示,本专利技术所述的一种基于典型用户群组发现技术的信息推荐方法,包括以下步骤:第一步,发现典型用户群组TUG,针对用户集合和项目集合计算出典型用户群组。其具体步骤如下:(1)定义用户集合U={ui},0≤i<|U|;定义项目集合P={pj},0≤j<|P|。用户集合为所需要推荐的用户,项目为用户所使用的信息内容,本专利技术完成的是针对用户已使用过的项目信息,为用户推荐未使用的项目信息,从而达到信息推荐的目的。(2)使用评分矩阵R定义用户和项目之间的互动信息,R={rij}|U|×|P|,rij≥0,其中rij=0代表用户ui和项目pj没有互动,即ui的活动(或兴趣)没有覆盖pj,并将在R中从未出现的用户或项目从U和P中删除。将没有用户和项目互动信息删除,可以保证原始预测数据的准确性。(3)针对用户集合U定义空用户子集U',定义候选用户Uc,定义候选用户子集Uc中的用户数为k。k为具体的用户数,从推荐准确度角度来讲,k的数量越大,则准确度越高。即随着k的增大,评分误差也越小,说明在用户子集规模足够大时,推荐准确度越高。在这里k的值为初始值,即候选用户子集用户数,在后面的操作中随着子集U1的不断加入,k的值则会适量增加,根据后面的实验数据来看,k的值基本达到用户集合U的1%左右。这也是本专利技术的思想,基于1%的用户子集Uc,从而高标准的为全体用户集合U推荐没使用过的项目pj。U'的项目覆盖集PU'定义为(4)计算U'的项目覆盖率Cov(U'),即P的子集PU'在P中所占的比例,对于大小相同均为k的用户子集,可以称其中项目覆盖率最大的为k-最大覆盖子集。显然项目覆盖率有单调递增的性质,即0≤Cov(U1)≤Cov(U1∪U2)≤1。因为最初设定的候选用户子集Uc中的用户数k,只是初始设定,而最终k的大小则是在不断加入子集U1,因此明显的项目覆盖率随着k的增加,则肯定单调递增。(5)定义子集U1加入到子集U'的递增项目覆盖率ICovU'(U1),ICovU'(U1)=Cov(U1∪U')-本文档来自技高网...
一种基于典型用户群组发现技术的信息推荐方法

【技术保护点】
一种基于典型用户群组发现技术的信息推荐方法,其特征在于,包括以下步骤:11)发现典型用户群组TUG,针对用户集合和项目集合计算出典型用户群组;其具体步骤如下:110)定义用户集合U={ui},0≤i<|U|;定义项目集合P={pj},0≤j<|P|;111)使用评分矩阵R定义用户和项目之间的互动信息,R={rij}|U|×|P|,rij≥0,其中rij=0代表用户ui和项目pj没有互动,并将在R中从未出现的用户或项目从U和P中删除;112)针对用户集合U定义空用户子集U’,定义候选用户Uc,定义候选用户子集Uc中的用户数为k,U’的项目覆盖集PU’定义为PU′={pk},∃rik≠0,ui∈U′;]]>113)计算U’的项目覆盖率,P的子集PU’在P中所占的比例,Cov(U′)=|PU′||P|×100%;]]>114)定义子集U1加入到子集U’的递增项目覆盖率ICovU’(U1),ICovU'(U1)=Cov(U1∪U')‑Cov(U');115)令U1={u},当每次选择一个用户u加入U’,则ICovU′(u)=|Pu∪U′|-|PU′||P|×100%]]>将Pu和PU’中相同的项目会互相抵消,则ICovU,(u)=Σpj∈Pf(pj∈Pu,pj∉PU,)|P|,]]>其中116)定义加权的递增项目覆盖率,ICovU,(u)=Σpj∈Pwj×f(pj∈Pu,pj∉PU,)|P|,]]>其中权重wj定义为其中Sj表示项目Pj一共被Sj个用户选择过;117)进行1至k次循环,在循环过程中分别计算Uc中所有用户的加权递增项目覆盖率;计算maxCov(TUG),选出最大加权递增项目覆盖率的用户u;将u添加到U’中,从Uc中删去u;118)循环结束后,U’为所求的典型用户群组TUG;12)计算推荐结果R’,基于典型用户群组TUG,将协同过滤推荐方法的最近邻搜索范围从全体用户缩小到典型用户群组中,计算出推荐结果R’。...

【技术特征摘要】
1.一种基于典型用户群组发现技术的信息推荐方法,其特征在于,包括以下步骤:11)发现典型用户群组TUG,针对用户集合和项目集合计算出典型用户群组;其具体步骤如下:110)定义用户集合U={ui},0≤i<|U|;定义项目集合P={pj},0≤j<|P|;111)使用评分矩阵R定义用户和项目之间的互动信息,R={rij}|U|×|P|,rij≥0,其中rij=0代表用户ui和项目pj没有互动,并将在R中从未出现的用户或项目从U和P中删除;112)针对用户集合U定义空用户子集U',定义候选用户Uc,定义候选用户子集Uc中的用户数为k,U'的项目覆盖集PU'定义为113)计算U'的项目覆盖率,P的子集PU'在P中所占的比例,114)定义子集U1加入到子集U'的递增项目覆盖率ICovU'(U1),ICovU'(U1)=Cov(U1∪U')-Cov(U');115)令U1={u},当每次选择一个用户u加入U',则将Pu和PU'中相同的项目会互相抵消,则

【专利技术属性】
技术研发人员:谭昶陈恩红刘淇
申请(专利权)人:安徽融数信息科技有限责任公司
类型:发明
国别省市:安徽;34

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

1