CN109284442A - 融合协同过滤的线性回归推荐方法 - Google Patents
融合协同过滤的线性回归推荐方法 Download PDFInfo
- Publication number
- CN109284442A CN109284442A CN201811426409.4A CN201811426409A CN109284442A CN 109284442 A CN109284442 A CN 109284442A CN 201811426409 A CN201811426409 A CN 201811426409A CN 109284442 A CN109284442 A CN 109284442A
- Authority
- CN
- China
- Prior art keywords
- user
- commodity
- scoring
- indicates
- indicate
- 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.)
- Withdrawn
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F17/00—Digital computing or data processing equipment or methods, specially adapted for specific functions
- G06F17/10—Complex mathematical operations
- G06F17/18—Complex mathematical operations for evaluating statistical data, e.g. average values, frequency distributions, probability functions, regression analysis
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06Q—INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
- G06Q30/00—Commerce
- G06Q30/06—Buying, selling or leasing transactions
- G06Q30/0601—Electronic shopping [e-shopping]
- G06Q30/0631—Item recommendations
Landscapes
- Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Data Mining & Analysis (AREA)
- Theoretical Computer Science (AREA)
- Business, Economics & Management (AREA)
- Accounting & Taxation (AREA)
- Computational Mathematics (AREA)
- Pure & Applied Mathematics (AREA)
- Mathematical Analysis (AREA)
- Mathematical Optimization (AREA)
- Finance (AREA)
- Mathematical Physics (AREA)
- Evolutionary Biology (AREA)
- Bioinformatics & Computational Biology (AREA)
- Probability & Statistics with Applications (AREA)
- Databases & Information Systems (AREA)
- Software Systems (AREA)
- General Engineering & Computer Science (AREA)
- Operations Research (AREA)
- Algebra (AREA)
- Bioinformatics & Cheminformatics (AREA)
- Life Sciences & Earth Sciences (AREA)
- Development Economics (AREA)
- Economics (AREA)
- Marketing (AREA)
- Strategic Management (AREA)
- General Business, Economics & Management (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
本发明提出一种融合协同过滤的线性回归推荐算法。首先,将用户历史评分以及用户和商品自身特征融入到相似性计算中,根据相似性矩阵选出最近邻集合;其次,基于协同过滤算法预测用户已评分项目的评分,通过预测评分与真实评分的差值建立线性回归模型;最后,根据该模型预测未知评分,从整体上提高用户预测评分的准确性。
Description
技术领域
本发明包括推荐算法、线性回归、相似性计算等技术领域知识,具体涉及一种融合协同过滤的线性回归推荐方法。适用于各类目前已经开展电子商务活动,有向用户推荐商品的需求,并且追求提升个性化推荐质量的企业。
技术背景
随着互联网技术的不断发展,购物方式从传统的线下购买到线上购买,各种信息不断暴增,导致了非常严重的“信息过载”问题。一方面,从用户的角度来看,要从大量的数据中获取自己有用或者感兴趣的信息变的越来越困难;另一方面,从服务提供商的角度来看,用户能够提供的有效信息非常少,满足用户个性化的需求变得越来越困难。推荐系统作为一种信息过滤技术,它可以根据用户偏好向用户推荐其可能感兴趣的商品或项目(如服装、电影等),在解决上述问题中起到了非常大的作用。
现阶段个性化推荐方法很多,主要包括协同过滤算法,基于内容的推荐算法以及混合推荐算法等。其中应用最广泛的技术之一是协同过滤算法,其主要分为基于用户的协同过滤算法和基于项目的协同过滤算法。基于用户的协同过滤算法给用户推荐与其背景知识相似的其他用户感兴趣的项目;基于项目的协同过滤算法给用户推荐与其之前感兴趣的商品相似的商品。这两种传统协同过滤算法都是先根据用户对商品的评分计算用户或商品之间的相似性,然后找出用户或商品的最近邻集合,最后根据Top-N算法产生推荐列表进行推荐。然而随着推荐系统中用户和商品的数量不断扩增,传统协同过滤算法面临着扩展性、数据稀疏等问题。其中,数据扩展性指随着数据量的不断增加,无法及时计算出相似用户或商品,导致推荐滞后;数据稀疏性指用户一般只对很少的商品进行评分,数据量越大,评分信息显得越少,相似性计算不够准确,导致推荐准确度降低。
为了解决上述问题,本发明提出一种融合协同过滤的线性回归推荐算法。首先,将用户历史评分以及用户和商品自身特征融入到相似性计算中,根据相似性矩阵选出最近邻集合;其次,基于协同过滤算法预测用户已评分项目的评分,通过预测评分与真实评分的差值建立线性回归模型;最后,根据该模型预测未知评分,从整体上提高用户预测评分的准确性。
发明内容
本发明要克服目前由于数据量不断扩展出现了扩展性、数据稀疏等问题,导致推荐准确度降低的问题,引入一种融合协同过滤的线性回归推荐方法,通过预测评分与真实评分的差值建立线性回归模型,根据该模型预测未知评分,从整体上提高用户预测评分的准确性。
本发明提出的融合协同过滤的线性回归推荐方法,包括以下步骤:
1.数据预处理;
定义User表示用户集合,User={u1,u2,...,um},其中um表示第m个客户,定义Item表示商品的集合,Item={i1,i2,...,in},其中in表示第n个商品,定义用户m的特征向量为UserFeaturem,UserFeaturem={ufm,1,ufm,2,...,ufm,p},其中ufm,p表示用户um的第p个特征,定义商品n的特征向量为ItemFeaturen,ItemFeaturen={ifn,1,,ifn,2,...,ifn,q},其中ifn,q表示商品in的第q个特征,定义用户对商品的评分S,用向量Sm,n表示,指用户um对商品in的评分值;
2.相似度计算;
a)在向量S中找出用户u已经评分过的商品集合和对商品i评分过的用户集合
b)根据Itemu、Useri分别生成对应的两两商品对集合ins={<ia,ib>|ia,ib∈Itemu}和用户对集合ups={<ua,ub>|ua,ub∈Useri};
c)对于ins中的每一对<ia,ib>在ItemFeature中找出对应的行,利用公式(1)计算相似度Xsc(ia,ib),其中令i=ia,j=ib;
其中,表示用户u对已经评分商品的平均评分,同理用公式(2)计算ups中每一对<ua,ub>的相似度Xsu(ua,ub),其中令i=ua,j=ub;表示对商品i的平均评分;表示对商品j的平均评分;
d)将前三步循环执行,就能得到每个用户和每个商品的相似性,建立用户相似性矩阵UserXs(m,m)以及商品相似性矩阵ItemXs(n,n);
e)在评分数据集合S上计算每一个用户在UserXs的相似性,选取前k个相似度最高的用户构成最近邻矩阵Nu并保存;同理将每一个商品中最相似的前k个构成商品最近邻矩阵Ni;
f)选择遍历整个S集合,选择商品i对应的最近邻集合Ni,根据公式(3)预测用户对商品的评分利用公式(4)算出评分的差值记为xi,同理选用用户u对应的最近邻集合Nu并使用公式(3)预测出用户对商品i的评分,记为使用公式(4)计算该评分的差值,设为xu;
x=spu,i-Su,i (4)
g)最后构建新的数据集Sj={xi,xu,Su,i};
3.生成推荐列表;
a)将前面得到的数据作为线性回归模型的输入,其中将训练数据的前两列作为线性回归模型的输入参数X,最后一列作为样本标签Y;
X={xi,xu}
Y=Su,i (5)
b)根据公式(6)(7)建立线性回归模型,利用梯度下降法求解损失函数,其中k表示特征的个数;α表示线性系数;h(α,x)表示预测值;h(α,xi)表示第i个特征向量的预测值;αT表示线性系数向量集合;x表示特征向量;xi表示第i个特征向量;Q(α)表示误差平方和;yi表示真实数值;
c)求损失函数Q(α)对参数α的偏导数,然后利用迭代公式(8)不断更新参数α,直到达到最大迭代次数后,将得到的参数α,带入公式(6),得到线性回归预测模型;
其中,表示特征向量xi的第j+1个参数;θ表示学习率;表示特征向量xi的第j个值;
d)根据线性回归预测模型,预测用户对还未评分的项目的评分,使用top-N算法生成商品推荐列表推荐给用户;
本发明的有益效果在于:通过预测评分与真实评分的差值建立线性回归模型,根据该模型预测未知评分,从整体上提高用户预测评分的准确性;
附图说明
图1是本发明的协同过滤算法相似度计算流程。
图2是本发明的线性回归预测评分流程。
具体实施方式
下面结合附图和具体实施方式对本发明做进一步详细说明。
本发明所述的一种融合了协同过滤的线性回归推荐方法,以图1中的协同过滤方法为基础,主要加入图2线性回归预测作出算法优化,包括如下步骤:
1.相似度计算;
a)在向量S中找出用户u已经评分过的商品集合和对商品i评分过的用户集合
b)根据Itemu、Useri分别生成对应的两两商品对集合ins={<ia,ib>|ia,ib∈Itemu}和用户对集合ups={<ua,ub>|ua,ub∈Useri};
c)对于ins中的每一对<ia,ib>在ItemFeature中找出对应的行,利用公式(1)计算相似度Xsc(ia,ib),其中令i=ia,j=ib;
其中,表示用户u对已经评分商品的平均评分,同理用公式(2)计算ups中每一对<ua,ub>的相似度Xsu(ua,ub),其中令i=ua,j=ub;表示对商品i的平均评分;表示对商品j的平均评分;
d)将前三步循环执行,就能得到每个用户和每个商品的相似性,建立用户相似性矩阵UserXs(m,m)以及商品相似性矩阵ItemXs(n,n);
e)在评分数据集合S上计算每一个用户在UserXs的相似性,选取前k个相似度最高的用户构成最近邻矩阵Nu并保存;同理将每一个商品中最相似的前k个构成商品最近邻矩阵Ni;
f)选择遍历整个S集合,选择商品i对应的最近邻集合Ni,根据公式(11)预测用户对商品的评分利用公式(12)算出评分的差值记为xi,同理选用用户u对应的最近邻集合Nu并使用公式(11)预测出用户对商品i的评分,记为使用公式(12)计算该评分的差值,设为xu;
x=spu,i-Su,i (4)
g)最后构建新的数据集Sj={xi,xu,Su,i};
2.生成推荐列表;
a)将前面得到的数据作为线性回归模型的输入,其中将训练数据的前两列作为线性回归模型的输入参数X,最后一列作为样本标签Y;
X={xi,xu}
Y=Su,i (5)
b)根据公式(14)(15)建立线性回归模型,利用梯度下降法求解损失函数,其中k表示特征的个数;α表示线性系数;h(α,x)表示预测值;h(α,xi)表示第i个特征向量的预测值;αT表示线性系数向量集合;x表示特征向量;xi表示第i个特征向量;Q(α)表示误差平方和;yi表示真实数值;。
c)求损失函数Q(α)对参数α的偏导数,然后利用迭代公式(16)不断更新参数α,直到达到最大迭代次数后,将得到的参数α,带入公式(14),得到线性回归预测模型。
其中,表示特征向量xi的第j+1个参数;θ表示学习率;表示特征向量xi的第j个值。
d)根据线性回归预测模型,预测用户对还未评分的项目的评分,使用top-N算法生成商品推荐列表推荐给用户。
本发明提出一种融合协同过滤的线性回归推荐算法。首先,将用户历史评分以及用户和商品自身特征融入到相似性计算中,根据相似性矩阵选出最近邻集合;其次,基于协同过滤算法预测用户已评分项目的评分,通过预测评分与真实评分的差值建立线性回归模型;最后,根据该模型预测未知评分,从整体上提高用户预测评分的准确性。
Claims (1)
1.融合协同过滤的线性回归推荐方法,包括如下步骤:
步骤1.数据预处理;
定义User表示用户集合,User={u1,u2,…,um},其中um表示第m个客户,定义Item表示商品的集合,Item={i1,i2,…,in},其中in表示第n个商品,定义用户m的特征向量为UserFeaturem,UserFeaturem={ufm,1,ufm,2,…,ufm,p},其中ufm,p表示用户um的第p个特征,定义商品n的特征向量为ItemFeaturen,ItemFeaturen={ifn,1,,ifn,2,…,ifn,q},其中ifn,q表示商品in的第q个特征,定义用户对商品的评分S,用向量Sm,n表示,指用户um对商品in的评分值;
步骤2.相似度计算;
2a)在向量S中找出用户u已经评分过的商品集合和对商品i评分过的用户集合
2b)根据Itemu、Useri分别生成对应的两两商品对集合ins={<ia,ib>|ia,ib∈Itemu}和用户对集合ups={<ua,ub>|ua,ub∈Useri};
2c)对于ins中的每一对<ia,ib>在ItemFeature中找出对应的行,利用公式(1)计算相似度Xsc(ia,ib),其中令i=ia,j=ib;
其中,表示用户u对已经评分商品的平均评分,同理用公式(2)计算ups中每一对<ua,ub>的相似度Xsu(ua,ub),其中令i=ua,j=ub;表示对商品i的平均评分;表示对商品j的平均评分;
2d)将前三步循环执行,就能得到每个用户和每个商品的相似性,建立用户相似性矩阵UserXs(m,m)以及商品相似性矩阵ItemXs(n,n);
2e)在评分数据集合S上计算每一个用户在UserXs的相似性,选取前k个相似度最高的用户构成最近邻矩阵Nu并保存;同理将每一个商品中最相似的前k个构成商品最近邻矩阵Ni;
2f)选择遍历整个S集合,选择商品i对应的最近邻集合Ni,根据公式(3)预测用户对商品的评分利用公式(4)算出评分的差值记为xi,同理选用用户u对应的最近邻集合Nu并使用公式(3)预测出用户对商品i的评分,记为使用公式(4)计算该评分的差值,设为xu;
x=spu,i-Su,i (4)
2g)最后构建新的数据集Sj={xi,xu,Su,i};
步骤3.生成推荐列表
3a)将前面得到的数据作为线性回归模型的输入,其中将训练数据的前两列作为线性回归模型的输入参数X,最后一列作为样本标签Y;
X={xi,xu}
Y=Su,i (5)
3b)根据公式(6)(7)建立线性回归模型,利用梯度下降法求解损失函数,其中k表示特征的个数;α表示线性系数;h(α,x)表示预测值;h(α,xi)表示第i个特征向量的预测值;αT表示线性系数向量集合;x表示特征向量;xi表示第i个特征向量;Q(α)表示误差平方和;yi表示真实数值;
3c)求损失函数Q(α)对参数α的偏导数,然后利用迭代公式(8)不断更新参数α,直到达到最大迭代次数后,将得到的参数α,带入公式(6),得到线性回归预测模型;
其中,表示特征向量xi的第j+1个参数;θ表示学习率;表示特征向量xi的第j个值;
3d)根据线性回归预测模型,预测用户对还未评分的项目的评分,使用top-N算法生成商品推荐列表推荐给用户。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201811426409.4A CN109284442A (zh) | 2018-11-27 | 2018-11-27 | 融合协同过滤的线性回归推荐方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201811426409.4A CN109284442A (zh) | 2018-11-27 | 2018-11-27 | 融合协同过滤的线性回归推荐方法 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN109284442A true CN109284442A (zh) | 2019-01-29 |
Family
ID=65173634
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201811426409.4A Withdrawn CN109284442A (zh) | 2018-11-27 | 2018-11-27 | 融合协同过滤的线性回归推荐方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN109284442A (zh) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110598092A (zh) * | 2019-08-12 | 2019-12-20 | 深圳市天天学农网络科技有限公司 | 一种内容推荐的方法 |
CN113221019A (zh) * | 2021-04-02 | 2021-08-06 | 合肥工业大学 | 基于即时学习的个性化推荐方法和系统 |
Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103412948A (zh) * | 2013-08-27 | 2013-11-27 | 北京交通大学 | 基于聚类的协同过滤的商品推荐方法及系统 |
CN108268464A (zh) * | 2016-12-30 | 2018-07-10 | 广东精点数据科技股份有限公司 | 一种基于协同过滤与logistic回归的个性化推荐方法及装置 |
-
2018
- 2018-11-27 CN CN201811426409.4A patent/CN109284442A/zh not_active Withdrawn
Patent Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103412948A (zh) * | 2013-08-27 | 2013-11-27 | 北京交通大学 | 基于聚类的协同过滤的商品推荐方法及系统 |
CN108268464A (zh) * | 2016-12-30 | 2018-07-10 | 广东精点数据科技股份有限公司 | 一种基于协同过滤与logistic回归的个性化推荐方法及装置 |
Non-Patent Citations (1)
Title |
---|
庞海龙 等: "融合协同过滤的线性回归推荐算法", 《计算机应用研究》 * |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110598092A (zh) * | 2019-08-12 | 2019-12-20 | 深圳市天天学农网络科技有限公司 | 一种内容推荐的方法 |
CN113221019A (zh) * | 2021-04-02 | 2021-08-06 | 合肥工业大学 | 基于即时学习的个性化推荐方法和系统 |
CN113221019B (zh) * | 2021-04-02 | 2022-10-25 | 合肥工业大学 | 基于即时学习的个性化推荐方法和系统 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN107145518B (zh) | 一种社交网络下基于深度学习的个性化推荐系统 | |
CN110162693A (zh) | 一种信息推荐的方法以及服务器 | |
Ajesh et al. | A random forest approach for rating-based recommender system | |
Bauer et al. | Recommender systems based on quantitative implicit customer feedback | |
CN103678329B (zh) | 推荐方法及装置 | |
CN109783738B (zh) | 一种基于多相似度的双极限学习机混合协同过滤推荐方法 | |
CN111553754A (zh) | 行为预测系统的更新方法及装置 | |
US10115146B1 (en) | Scoring candidates for set recommendation problems | |
CN103559622A (zh) | 基于特征的协同过滤推荐方法 | |
US11663661B2 (en) | Apparatus and method for training a similarity model used to predict similarity between items | |
CN106777051A (zh) | 一种基于用户组的多反馈协同过滤推荐方法 | |
CN112100512A (zh) | 一种基于用户聚类和项目关联分析的协同过滤推荐方法 | |
CN113190751B (zh) | 一种融合关键词生成的推荐方法 | |
CN109284442A (zh) | 融合协同过滤的线性回归推荐方法 | |
CN108694234A (zh) | 一种基于改进协同过滤算法的服务推荐模型 | |
CN109509051B (zh) | 一种物品推荐方法及装置 | |
Li et al. | Novel recommendation system for tourist spots based on hierarchical sampling statistics and SVD++ | |
Bhat et al. | Item-based hybrid recommender system for newly marketed pharmaceutical drugs | |
CN110020918B (zh) | 一种推荐信息生成方法和系统 | |
KR101734915B1 (ko) | 메타 데이터 및 소비 이력 정보를 이용한 컨텐츠 스킬업 시스템 | |
CN115409579A (zh) | 一种基于元学习的响应式推荐方法、系统及设备 | |
CN110874432A (zh) | 排序方法、信息推荐方法、系统及装置 | |
CN108830680A (zh) | 基于离散分解机的个性化推荐方法、系统及存储介质 | |
CN108228833B (zh) | 一种利用用户倾向性学习解决社区项目推荐任务的方法 | |
Khanom et al. | Bookception: A proposed framework for an artificially intelligent recommendation platform |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
WW01 | Invention patent application withdrawn after publication |
Application publication date: 20190129 |
|
WW01 | Invention patent application withdrawn after publication |