基于线性回归的推荐方法及系统的制作方法

文档序号:6543712阅读:498来源:国知局
基于线性回归的推荐方法及系统的制作方法
【专利摘要】本发明公开了推荐【技术领域】的一种基于线性回归的推荐方法及系统,用以解决目前推荐系统的研究存在的问题。该方法包括:遍历当前网络系统中的所有用户和物品,获得所有用户和物品的历史评分数据;根据历史评分数据建立基于用户的线性回归模型;根据历史评分数据建立基于物品的线性回归模型;利用用户和物品的线性回归模型预测用户对未评过分的物品的评分;根据用户对所有未评过物品的预测评分排序,将排名较高的物品作为候选推荐给用户。本发明克服了传统协同过滤算法中实时性差、无法直接做增量更新的等在实际应用中的局限性,有效实现了基于线性回归的推荐方法及系统。
【专利说明】基于线性回归的推荐方法及系统
【技术领域】
[0001]本发明涉及推荐【技术领域】,特别涉及一种基于线性回归的推荐方法及系统。
【背景技术】
[0002]随着互联网技术的迅猛发展,大数据已然降临。形如社交网络、电子商务和移动通信的发展使人们摆脱了信息匮乏的境况,进入了以千万亿字节(PateByte,PB)为单位的海量数据时代。新浪微博的日活跃用户超过6千万,日均发布微博数量已经增至1.3亿条;百度日处理查询量超十亿次;淘宝“双十一”单日交易量则高达1.7亿次。随着数据爆炸式的增长,问题也随之而来:如何从庞大的数据量中挖掘出对自身最有价值信息,实现信息与用户的最佳匹配?这无论对于信息消费者,还是服务提供者都是严峻的挑战。
[0003]针对上述问题,推荐系统提供了一个很好的解决方案。作为21世纪非常有潜力的信息过滤技术之一,推荐系统通过分析历史数据,建立相应的数学模型,挖掘其中的隐含信息,从而为用户提供个性化的推荐服务,成功实现了信息的最佳匹配。它一方面满足了用户的信息需求,另一方面拓展了信息的潜在价值,实现了信息消费者与生产者的双赢。目前推荐系统已经被广泛应用到各行各业,例如亚马逊的图书推荐系统、Facebook的好友推荐系统和Netflix的电影推荐系统,并取得了显著的经济效益。此外,推荐系统的研究还受到了信息科学、计算科学、统计物理学、认知科学等多个学科的关注,同时它与管理科学、消费行为等研究也密切相关。因此,其研究和发展具有很大的学术和实际意义,受到了学术界和业界的闻度关注。
[0004]然而,推荐系统目前仍然面临着很多问题。例如基于协同过滤技术的推荐系统利用用户或者物品之间的共同评分计算相似性,然后将相似性高的作为邻居,利用邻居的评分根据相似性进行线性加权得到预测结果。但是在用户和物品资源如此庞大的在线资源提供网站上用户评分十分稀疏,寻找共同评分需要付出很高的计算代价,从而严重影响了推荐系统的性能。再者,对于一些新加入的用户和物品,由于缺乏必要的评分信息导致难以衡量相似性,从而使得这些物品一直无法被加入推荐列表,影响了推荐系统的覆盖率。另一种基于矩阵分解的推荐系统通过将用户一物品评分矩阵进行奇异值分解,提取出用户和物品的特征向量,然后基于特征向量计算相似性,可以取得比协同过滤技术更好的推荐效果。但是由于矩阵分解本身相当耗时,无法保证应用的实时性,而且其结果无法直接做增量更新,极大地限制了其在工业界中的推广应用。

【发明内容】

[0005]本发明的目的在于,提出一种基于线性回归的推荐方法及系统,用以解决目前推荐系统研究存在的问题。
[0006]为实现上述目的,本发明提出的技术方案是,一种基于线性回归的推荐方法及系统,其特征是所述方法包括下列步骤:
[0007]步骤1:遍历当前网络系统中的所有用户和物品,获得所有用户和物品的历史评分数据;
[0008]步骤2:根据历史评分数据建立基于用户的线性回归模型;
[0009]步骤3:根据历史评分数据建立基于物品的线性回归模型;
[0010]步骤4:利用用户和物品的线性回归模型预测用户对未评过分的物品的评分;
[0011]步骤5:根据用户对所有未评过物品的预测评分排序,将排名较高的物品作为候选推荐给用户。
[0012]所述根据历史评分数据建立基于用户的线性回归模型具体包括:
[0013]步骤21:对于每个用户,将该用户对其所评过的物品的历史评分构成一个N维向量Yu,其中N为该用户的评过的物品个数;
[0014]步骤22:按照向量Yu中物品的顺序,统计该用户评过分的每个物品的历史评分中出现频次最高的评分,并将结果构成一个N维向量Xu ;[0015]步骤23:假设Xu与Yu之间有如下关系:
[0016]Yu = auXu+bu
[0017]利用上述N维向量对此式进行线性回归,利用最小二乘法估计出模型参数au与bu的值。
[0018]所述根据历史评分数据建立基于物品的线性回归模型具体包括:
[0019]步骤31:对于每个物品,将所有评过该物品的用户对其的历史评分构成一个M维向量Yi,其中M为评过该物品的用户数;
[0020]步骤32:按照向量1中用户的顺序,统计每个评过该物品的用户的历史评分中出现频次最高的评分,并将结果构成一个M为向量Xi ;
[0021]步骤33:假设Xi与Yi之间满足如下关系:
[0022]Yi = BiX^bi
[0023]利用上述M维向量对此式进行线性回归,利用最小二乘法估计出模型参数%与h的值。
[0024]所述预测用户对未评过的物品的评分并产生物品推荐具体包括:
[0025]步骤41:预测用户u对其未评过的某个物品i的评分,首先统计用户u的历史评分中频次最高的评分Xu和物品i的历史评分中频次最高的评分Xi ;
[0026]步骤42:以物品i的历史评分频次最高的评分Xi作为基于用户的线性回归模型的输入预测用户u对物品i的评分yu,以用户u的历史评分频次最高的评分Xu作为基于物品的线性回归模型的输入预测用户u对物品i的评分Ji ;
[0027]步骤43:将步骤42得到预测评分yu和Ji加权得到用户u对物品i的最终预测评分值Piu ;
[0028]步骤44:针对用户u所有未评过的物品,循环步骤41到步骤43,得到用户u对其所有未评过的物品的预测评分。
[0029]本发明实现的基于线性回归的推荐方法及系统,其有益点如下:
[0030]1.算法性能相比于传统的协同过滤算法有非常大的提升,具有很好的实时性;具体表现在平均绝对误差MAE和均方根误差RMSE两项指标提高20%以上,模型建立所需时间降低100倍以上;
[0031]2.算法可以实现增量更新,当系统有新的用户行为产生时,可在常数时间内完成模型参数更新,适用于实时推荐系统;
[0032]3.算法使用统计信息,在一定程度上消除了评分噪声对模型参数估计的影响,具有很好的鲁棒性。
【专利附图】

【附图说明】
[0033]图1是基于线性回归的推荐方法和系统的流程图。
[0034]图2是基于用户的线性回归模型建立流程图。
[0035]图3是基于物品的线性回归模型建立流程图。
[0036]图4是基于线性回归的推荐方法的评分预测流程图。
[0037]图5是分别采用本发明提出的方法和传统基于项目的协同过滤方法的对比结果。【具体实施方式】
[0038]下面结合附图,对优选实施例作详细说明。应该强调的是,下述说明仅仅是示例性的,而不是为了限制本发明的范围及其应用。
[0039]本发明解决问题的思路是:首先,遍历当前网络系统中的所有用户和物品,获得所有用户和物品的历史评分数据;然后,分别建立 基于用户的线性回归模型和基于物品的线性回归模型;接着,根据之前所建立的基于用户和物品线性回归模型,以用户或者物品的历史评分中最高频次评分作为模型输入,预测用户对物品的评分;最后,根据用户对所有未评过物品的预测评分排序,将排名较高的物品作为候选推荐给用户。
[0040]下面结合【专利附图】
附图
【附图说明】本发明的具体实现方式。图1是本发明所提供的基于线性回归的推荐方法和系统的流程图。该方法包括如下的步骤:
[0041]步骤1:遍历当前网络系统中的所有用户和物品,获得所有用户和物品的历史评分数据;
[0042]步骤2:根据历史评分数据建立基于用户的线性回归模型。图2是基于用户的线性回归模型建立流程图。
[0043]步骤21:对于每个用户,将该用户对其所评过的物品的历史评分构成一个N维向量Yu,其中N为该用户的评过的物品个数。
[0044]遍历所有用户,将每个用户U对所有已评物品的历史评分构成N维向量,其中N为用户u已评物品数目。
[0045]
【权利要求】
1.一种基于线性回归的推荐方法及系统,其特征是所述方法包括: 步骤1:遍历当前网络系统中的所有用户和物品,获得所有用户和物品的历史评分数据; 步骤2:根据历史评分数据建立基于用户的线性回归模型; 步骤3:根据历史评分数据建立基于物品的线性回归模型; 步骤4:利用用户和物品的线性回归模型预测用户对未评过分的物品的评分; 步骤5:根据用户对所有未评过物品的预测评分排序,将排名较高的物品作为候选推荐给用户。
2.根据权利要求1所述的一种基于线性回归的推荐方法及系统,其特征是所述根据历史评分数据建立基于用户的线性回归模型具体包括: 步骤21:对于每个用户,将该用户对其所评过的物品的历史评分构成一个N维向量Yu,其中N为该用户的评过的物品个数; 步骤22:按照向量Yu中物品的顺序,统计该用户评过分的每个物品的历史评分中出现频次最高的评分,并将结果构成一个N维向量Xu ; 步骤23:假设Xu与Yu之间有如下关系:
Yu = auXu+bu 利用上述N维向量对此式进行线性回归,利用最小二乘法估计出模型参数au与bu的值。
3.根据权利要求1所述的一种基于线性回归的推荐方法及系统,其特征是所述根据历史评分数据建立基于物品的线性回归模型具体包括: 步骤31:对于每个物品,将所有评过该物品的用户对其的历史评分构成一个M维向量Yi,其中M为评过该物品的用户数; 步骤32:按照向量1中用户的顺序,统计每个评过该物品的用户的历史评分中出现频次最高的评分,并将结果构成一个M维向量Xi ; 步骤33:假设Xi与Yi之间满足如下关系:
Yi = BiX^bi 利用上述M维向量对此式进行线性回归,利用最小二乘法估计出模型参数%与匕的值。
4.根据权利要求1所述的一种基于线性回归的推荐方法及系统,其特征是所述预测用户对未评过的物品的评分具体包括: 步骤41:预测用户u对其未评过的某个物品i的评分,首先统计用户u的历史评分中频次最高的评分Xu和物品i的历史评分中频次最高的评分Xi ; 步骤42:以物品i的历史评分频次最高的评分Xi作为基于用户的线性回归模型的输入预测用户u对物品i的评分yu,以用户u的历史评分频次最高的评分Xu作为基于物品的线性回归模型的输入预测用户u对物品i的评分Ji ; 步骤43:将步骤42得到预测评分yu和Ji加权得到用户u对物品i的最终预测评分值PU,i ; 步骤44:针对用户u所有未评过的物品,循环步骤41到步骤43,得到用户u对其所有未评过的物品的预测评分。
【文档编号】G06F17/30GK103942298SQ201410148936
【公开日】2014年7月23日 申请日期:2014年4月14日 优先权日:2014年4月14日
【发明者】陈震, 谢峰, 冯喜伟, 尚家兴, 曹军威 申请人:清华大学
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1