CN103942298A - 基于线性回归的推荐方法及*** - Google Patents
基于线性回归的推荐方法及*** Download PDFInfo
- Publication number
- CN103942298A CN103942298A CN201410148936.9A CN201410148936A CN103942298A CN 103942298 A CN103942298 A CN 103942298A CN 201410148936 A CN201410148936 A CN 201410148936A CN 103942298 A CN103942298 A CN 103942298A
- Authority
- CN
- China
- Prior art keywords
- article
- user
- scoring
- linear regression
- users
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Granted
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/90—Details of database functions independent of the retrieved data types
- G06F16/95—Retrieval from the web
- G06F16/951—Indexing; Web crawling techniques
Landscapes
- Engineering & Computer Science (AREA)
- Databases & Information Systems (AREA)
- Theoretical Computer Science (AREA)
- Data Mining & Analysis (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
本发明公开了推荐技术领域的一种基于线性回归的推荐方法及***,用以解决目前推荐***的研究存在的问题。该方法包括:遍历当前网络***中的所有用户和物品,获得所有用户和物品的历史评分数据;根据历史评分数据建立基于用户的线性回归模型;根据历史评分数据建立基于物品的线性回归模型;利用用户和物品的线性回归模型预测用户对未评过分的物品的评分;根据用户对所有未评过物品的预测评分排序,将排名较高的物品作为候选推荐给用户。本发明克服了传统协同过滤算法中实时性差、无法直接做增量更新的等在实际应用中的局限性,有效实现了基于线性回归的推荐方法及***。
Description
技术领域
本发明涉及推荐技术领域,特别涉及一种基于线性回归的推荐方法及***。
背景技术
随着互联网技术的迅猛发展,大数据已然降临。形如社交网络、电子商务和移动通信的发展使人们摆脱了信息匮乏的境况,进入了以千万亿字节(PateByte,PB)为单位的海量数据时代。新浪微博的日活跃用户超过6千万,日均发布微博数量已经增至1.3亿条;百度日处理查询量超十亿次;淘宝“双十一”单日交易量则高达1.7亿次。随着数据***式的增长,问题也随之而来:如何从庞大的数据量中挖掘出对自身最有价值信息,实现信息与用户的最佳匹配?这无论对于信息消费者,还是服务提供者都是严峻的挑战。
针对上述问题,推荐***提供了一个很好的解决方案。作为21世纪非常有潜力的信息过滤技术之一,推荐***通过分析历史数据,建立相应的数学模型,挖掘其中的隐含信息,从而为用户提供个性化的推荐服务,成功实现了信息的最佳匹配。它一方面满足了用户的信息需求,另一方面拓展了信息的潜在价值,实现了信息消费者与生产者的双赢。目前推荐***已经被广泛应用到各行各业,例如亚马逊的图书推荐***、Facebook的好友推荐***和Netflix的电影推荐***,并取得了显著的经济效益。此外,推荐***的研究还受到了信息科学、计算科学、统计物理学、认知科学等多个学科的关注,同时它与管理科学、消费行为等研究也密切相关。因此,其研究和发展具有很大的学术和实际意义,受到了学术界和业界的高度关注。
然而,推荐***目前仍然面临着很多问题。例如基于协同过滤技术的推荐***利用用户或者物品之间的共同评分计算相似性,然后将相似性高的作为邻居,利用邻居的评分根据相似性进行线性加权得到预测结果。但是在用户和物品资源如此庞大的在线资源提供网站上用户评分十分稀疏,寻找共同评分需要付出很高的计算代价,从而严重影响了推荐***的性能。再者,对于一些新加入的用户和物品,由于缺乏必要的评分信息导致难以衡量相似性,从而使得这些物品一直无法被加入推荐列表,影响了推荐***的覆盖率。另一种基于矩阵分解的推荐***通过将用户—物品评分矩阵进行奇异值分解,提取出用户和物品的特征向量,然后基于特征向量计算相似性,可以取得比协同过滤技术更好的推荐效果。但是由于矩阵分解本身相当耗时,无法保证应用的实时性,而且其结果无法直接做增量更新,极大地限制了其在工业界中的推广应用。
发明内容
本发明的目的在于,提出一种基于线性回归的推荐方法及***,用以解决目前推荐***研究存在的问题。
为实现上述目的,本发明提出的技术方案是,一种基于线性回归的推荐方法及***,其特征是所述方法包括下列步骤:
步骤1:遍历当前网络***中的所有用户和物品,获得所有用户和物品的历史评分数据;
步骤2:根据历史评分数据建立基于用户的线性回归模型;
步骤3:根据历史评分数据建立基于物品的线性回归模型;
步骤4:利用用户和物品的线性回归模型预测用户对未评过分的物品的评分;
步骤5:根据用户对所有未评过物品的预测评分排序,将排名较高的物品作为候选推荐给用户。
所述根据历史评分数据建立基于用户的线性回归模型具体包括:
步骤21:对于每个用户,将该用户对其所评过的物品的历史评分构成一个N维向量Yu,其中N为该用户的评过的物品个数;
步骤22:按照向量Yu中物品的顺序,统计该用户评过分的每个物品的历史评分中出现频次最高的评分,并将结果构成一个N维向量Xu;
步骤23:假设Xu与Yu之间有如下关系:
Yu=auXu+bu
利用上述N维向量对此式进行线性回归,利用最小二乘法估计出模型参数au与bu的值。
所述根据历史评分数据建立基于物品的线性回归模型具体包括:
步骤31:对于每个物品,将所有评过该物品的用户对其的历史评分构成一个M维向量Yi,其中M为评过该物品的用户数;
步骤32:按照向量Yi中用户的顺序,统计每个评过该物品的用户的历史评分中出现频次最高的评分,并将结果构成一个M为向量Xi;
步骤33:假设Xi与Yi之间满足如下关系:
Yi=aiXi+bi
利用上述M维向量对此式进行线性回归,利用最小二乘法估计出模型参数ai与bi的值。
所述预测用户对未评过的物品的评分并产生物品推荐具体包括:
步骤41:预测用户u对其未评过的某个物品i的评分,首先统计用户u的历史评分中频次最高的评分xu和物品i的历史评分中频次最高的评分xi;
步骤42:以物品i的历史评分频次最高的评分xi作为基于用户的线性回归模型的输入预测用户u对物品i的评分yu,以用户u的历史评分频次最高的评分xu作为基于物品的线性回归模型的输入预测用户u对物品i的评分yi;
步骤43:将步骤42得到预测评分yu和yi加权得到用户u对物品i的最终预测评分值pu,i;
步骤44:针对用户u所有未评过的物品,循环步骤41到步骤43,得到用户u对其所有未评过的物品的预测评分。
本发明实现的基于线性回归的推荐方法及***,其有益点如下:
1.算法性能相比于传统的协同过滤算法有非常大的提升,具有很好的实时性;具体表现在平均绝对误差MAE和均方根误差RMSE两项指标提高20%以上,模型建立所需时间降低100倍以上;
2.算法可以实现增量更新,当***有新的用户行为产生时,可在常数时间内完成模型参数更新,适用于实时推荐***;
3.算法使用统计信息,在一定程度上消除了评分噪声对模型参数估计的影响,具有很好的鲁棒性。
附图说明
图1是基于线性回归的推荐方法和***的流程图。
图2是基于用户的线性回归模型建立流程图。
图3是基于物品的线性回归模型建立流程图。
图4是基于线性回归的推荐方法的评分预测流程图。
图5是分别采用本发明提出的方法和传统基于项目的协同过滤方法的对比结果。
具体实施方式
下面结合附图,对优选实施例作详细说明。应该强调的是,下述说明仅仅是示例性的,而不是为了限制本发明的范围及其应用。
本发明解决问题的思路是:首先,遍历当前网络***中的所有用户和物品,获得所有用户和物品的历史评分数据;然后,分别建立基于用户的线性回归模型和基于物品的线性回归模型;接着,根据之前所建立的基于用户和物品线性回归模型,以用户或者物品的历史评分中最高频次评分作为模型输入,预测用户对物品的评分;最后,根据用户对所有未评过物品的预测评分排序,将排名较高的物品作为候选推荐给用户。
下面结合附图说明本发明的具体实现方式。图1是本发明所提供的基于线性回归的推荐方法和***的流程图。该方法包括如下的步骤:
步骤1:遍历当前网络***中的所有用户和物品,获得所有用户和物品的历史评分数据;
步骤2:根据历史评分数据建立基于用户的线性回归模型。图2是基于用户的线性回归模型建立流程图。
步骤21:对于每个用户,将该用户对其所评过的物品的历史评分构成一个N维向量Yu,其中N为该用户的评过的物品个数。
遍历所有用户,将每个用户u对所有已评物品的历史评分构成N维向量,其中N为用户u已评物品数目。
其中表示用户u对物品ik的评分。
步骤22:按照向量Yu中物品的顺序,统计该用户评过分的每个物品的历史评分中出现频次最高的评分,并将结果构成一个N维向量Xu。
计算Yu涉及物品的历史评分中频次最高的评分,并将结果按照Yu中物品的顺序构成向量Xu。
频次最高分是指以出现次数最多的分数为评分结果,若存在两个或两个以上的分数出现的次数相等且最高,则评分结果为它们的平均值。
其中为物品的历史评分中频次最高的评分。
步骤23:假设Xu与Yu之间有如下关系:
Yu=auXu+bu
利用上述N维向量对此式进行线性回归,利用最小二乘法估计出模型参数au与bu的值。
假设Yu与Xu之间满足关系Yu=auXu+bu,其中au与bu属于实数。应用最小二乘法我们有以下关系:
其中,
步骤3:根据历史评分数据建立基于用物品的线性回归模型。图3是基于物品的线性回归模型建立流程图。
步骤31:对于每个物品,将所有评过该物品的用户对其的历史评分构成一个M维向量Yi,其中M为评过该物品的用户数。
遍历所有物品,将每个物品i对其评过分的所有用户对该物品的历史评分构成M维向量Yi。
其中表示用户uk对物品i的评分。
步骤32:按照向量Yi中用户的顺序,统计每个评过该物品的用户的历史评分中出现频次最高的评分,并将结果构成一个M为向量Xi。
计算Yi涉及用户历史评分中频次最高的评分,并将结果按照Yi中用户的顺序构成向量Xi。
其中为用户uk的历史评分中频次最高的评分。
步骤33:假设Xi与Yi之间满足如下关系:
Yi=aiXi+bi
利用上述M维向量对此式进行线性回归,利用最小二乘法估计出模型参数ai与bi的值。
假设Yi与Xi之间满足关系Yi=aiXi+bi,其中ai与bi属于实数。应用最小二乘法我们有以下关系:
其中,
步骤4:利用用户和物品的线性回归模型预测用户对未评过分的物品的评分。图4是基于线性回归的推荐方法的评分预测和物品推荐的流程图。
步骤41:预测用户u对其未评过的某个物品i的评分,首先统计用户u的历史评分中频次最高的评分xu和物品i的历史评分中频次最高的评分xi;
步骤42:以物品i的历史评分频次最高的评分xi作为基于用户的线性回归模型的输入预测用户u对物品i的评分yu,以用户u的历史评分频次最高的评分xu作为基于物品的线性回归模型的输入预测用户u对物品i的评分yi。
步骤43:将步骤42得到预测评分yu和yi加权得到用户u对物品i的最终预测评分值pu,i。
最终用户u对未评过的物品i的预测评分pu,i=α*yu+β*yi,其中0<α,β<1且α+β=1。α,β的值可以根据基于用户或者物品的线性回归模型的可信度自适应调整。
步骤44:针对用户u所有未评过的物品,循环步骤41到步骤43,得到用户u对其所有未评过的物品的预测评分得到用户u对其所有未评过的物品的预测评分,按照评分预测值从高到低对用户未评过的物品进行排序;
步骤5:对每个用户的预测评分结果进行筛选,产生对每个用户的推荐物品。
图5是以“MovieLens1M”作为数据集,随机选择80%作为训练集,剩下20%作为测试集,分别采用本发明提出的方法(取α=β=1/2)和传统基于项目的协同过滤方法(利用皮尔逊相关系数计算相似性,最近邻数目为200)的平均绝对误差MAE、均方根误差RMSE以及模型建立时间和预测时间对比结果。
以上所述,仅为本发明较佳的具体实施方式,但本发明的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本发明揭露的技术范围内,可轻易想到的变化或替换,都应涵盖在本发明的保护范围之内。因此,本发明的保护范围应该以权利要求的保护范围为准。
Claims (4)
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:按照向量Yi中用户的顺序,统计每个评过该物品的用户的历史评分中出现频次最高的评分,并将结果构成一个M维向量Xi;
步骤33:假设Xi与Yi之间满足如下关系:
Yi=aiXi+bi
利用上述M维向量对此式进行线性回归,利用最小二乘法估计出模型参数ai与bi的值。
4.根据权利要求1所述的一种基于线性回归的推荐方法及***,其特征是所述预测用户对未评过的物品的评分具体包括:
步骤41:预测用户u对其未评过的某个物品i的评分,首先统计用户u的历史评分中频次最高的评分xu和物品i的历史评分中频次最高的评分xi;
步骤42:以物品i的历史评分频次最高的评分xi作为基于用户的线性回归模型的输入预测用户u对物品i的评分yu,以用户u的历史评分频次最高的评分xu作为基于物品的线性回归模型的输入预测用户u对物品i的评分yi;
步骤43:将步骤42得到预测评分yu和yi加权得到用户u对物品i的最终预测评分值pu,i;
步骤44:针对用户u所有未评过的物品,循环步骤41到步骤43,得到用户u对其所有未评过的物品的预测评分。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201410148936.9A CN103942298B (zh) | 2014-04-14 | 2014-04-14 | 基于线性回归的推荐方法及*** |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201410148936.9A CN103942298B (zh) | 2014-04-14 | 2014-04-14 | 基于线性回归的推荐方法及*** |
Publications (2)
Publication Number | Publication Date |
---|---|
CN103942298A true CN103942298A (zh) | 2014-07-23 |
CN103942298B CN103942298B (zh) | 2017-06-30 |
Family
ID=51189966
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201410148936.9A Active CN103942298B (zh) | 2014-04-14 | 2014-04-14 | 基于线性回归的推荐方法及*** |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN103942298B (zh) |
Cited By (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN106779181A (zh) * | 2016-11-29 | 2017-05-31 | 深圳北航新兴产业技术研究院 | 一种基于线性回归因子非负矩阵分解模型的医疗机构推荐方法 |
CN109389447A (zh) * | 2017-08-04 | 2019-02-26 | 北京京东尚科信息技术有限公司 | 项目推荐方法、项目推荐***以及计算机可读介质 |
CN111307798A (zh) * | 2018-12-11 | 2020-06-19 | 成都智叟智能科技有限公司 | 采用多种采集技术的物品查验方法 |
CN111667330A (zh) * | 2019-03-08 | 2020-09-15 | 天津大学 | 一种基于用户评价的大数据分析的服饰尺码推荐方法 |
CN112270586A (zh) * | 2020-11-12 | 2021-01-26 | 广东烟草广州市有限公司 | 一种基于线性回归的遍历方法、***、设备和存储介质 |
CN113221019A (zh) * | 2021-04-02 | 2021-08-06 | 合肥工业大学 | 基于即时学习的个性化推荐方法和*** |
Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20080189253A1 (en) * | 2000-11-27 | 2008-08-07 | Jonathan James Oliver | System And Method for Adaptive Text Recommendation |
CN103294812A (zh) * | 2013-06-06 | 2013-09-11 | 浙江大学 | 一种基于混合模型的商品推荐方法 |
-
2014
- 2014-04-14 CN CN201410148936.9A patent/CN103942298B/zh active Active
Patent Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20080189253A1 (en) * | 2000-11-27 | 2008-08-07 | Jonathan James Oliver | System And Method for Adaptive Text Recommendation |
CN103294812A (zh) * | 2013-06-06 | 2013-09-11 | 浙江大学 | 一种基于混合模型的商品推荐方法 |
Non-Patent Citations (1)
Title |
---|
F. XIE ET.AL.: "a simple and efficient rating-based recommender algorithm to cope with sparsity in recommender systems", 《PROCEEDINGS OF THE 26TH IEEE CONFERENCE ON ADVANCED INFORMATION NETWORKING AND APPLICATIONS WORKSHOPS》 * |
Cited By (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN106779181A (zh) * | 2016-11-29 | 2017-05-31 | 深圳北航新兴产业技术研究院 | 一种基于线性回归因子非负矩阵分解模型的医疗机构推荐方法 |
CN106779181B (zh) * | 2016-11-29 | 2021-04-06 | 深圳北航新兴产业技术研究院 | 一种基于线性回归因子非负矩阵分解模型的医疗机构推荐方法 |
CN109389447A (zh) * | 2017-08-04 | 2019-02-26 | 北京京东尚科信息技术有限公司 | 项目推荐方法、项目推荐***以及计算机可读介质 |
CN111307798A (zh) * | 2018-12-11 | 2020-06-19 | 成都智叟智能科技有限公司 | 采用多种采集技术的物品查验方法 |
CN111667330A (zh) * | 2019-03-08 | 2020-09-15 | 天津大学 | 一种基于用户评价的大数据分析的服饰尺码推荐方法 |
CN112270586A (zh) * | 2020-11-12 | 2021-01-26 | 广东烟草广州市有限公司 | 一种基于线性回归的遍历方法、***、设备和存储介质 |
CN112270586B (zh) * | 2020-11-12 | 2024-01-02 | 广东烟草广州市有限公司 | 一种基于线性回归的遍历方法、***、设备和存储介质 |
CN113221019A (zh) * | 2021-04-02 | 2021-08-06 | 合肥工业大学 | 基于即时学习的个性化推荐方法和*** |
CN113221019B (zh) * | 2021-04-02 | 2022-10-25 | 合肥工业大学 | 基于即时学习的个性化推荐方法和*** |
Also Published As
Publication number | Publication date |
---|---|
CN103942298B (zh) | 2017-06-30 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN103942298A (zh) | 基于线性回归的推荐方法及*** | |
CN103678431A (zh) | 一种基于标准标签和项目评分的推荐方法 | |
US8312056B1 (en) | Method and system for identifying a key influencer in social media utilizing topic modeling and social diffusion analysis | |
CN102508870B (zh) | 一种结合评分数据与标签数据的个性化推荐方法 | |
CN102708153B (zh) | 自适应在线社交网络热点话题发展趋势预测方法及*** | |
CN102591915A (zh) | 一种基于标签迁移学习的推荐方法 | |
CN102495864A (zh) | 基于评分的协同过滤推荐方法及*** | |
CN104834967A (zh) | 泛在网络下基于用户相似度的业务行为预测方法 | |
CN105302873A (zh) | 一种基于条件受限波尔兹曼机的协同过滤优化方法 | |
CN103745100A (zh) | 一种基于项目的混合显性隐性反馈的协同过滤推荐算法 | |
CN103399858A (zh) | 基于信任的社会化协同过滤推荐方法 | |
CN105069072A (zh) | 基于情感分析的混合用户评分信息推荐方法及其推荐装置 | |
CN107292390A (zh) | 一种基于混沌理论的信息传播模型及其传播方法 | |
CN103559407A (zh) | 一种用于度量有向加权图中节点亲密度的推荐***及方法 | |
CN103823888A (zh) | 一种基于节点亲密度的社交网站好友推荐方法 | |
CN105787100A (zh) | 一种基于深度神经网络的用户会话推荐方法 | |
Suzuki et al. | Stacked denoising autoencoder-based deep collaborative filtering using the change of similarity | |
CN103198228A (zh) | 基于广义关系隐话题模型的关系网络链接预测方法 | |
CN111709244A (zh) | 一种用于矛盾纠纷事件因果关系识别的深度学习方法 | |
CN103136694A (zh) | 基于搜索行为感知的协同过滤推荐方法 | |
CN105786983A (zh) | 一种基于学习地图与协同过滤的员工个性化学习推荐方法 | |
CN103294812A (zh) | 一种基于混合模型的商品推荐方法 | |
CN103473128A (zh) | 一种用于mashup应用推荐的协同过滤方法 | |
CN104239496A (zh) | 一种结合模糊权重相似性度量和聚类协同过滤的方法 | |
CN106384259A (zh) | 一种融合社交信息的推荐***解决方法 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |