CN103294812B - 一种基于混合模型的商品推荐方法 - Google Patents
一种基于混合模型的商品推荐方法 Download PDFInfo
- Publication number
- CN103294812B CN103294812B CN201310224975.8A CN201310224975A CN103294812B CN 103294812 B CN103294812 B CN 103294812B CN 201310224975 A CN201310224975 A CN 201310224975A CN 103294812 B CN103294812 B CN 103294812B
- Authority
- CN
- China
- Prior art keywords
- user
- commodity
- value
- scoring
- score
- 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.)
- Active
Links
- 238000000034 method Methods 0.000 title claims abstract description 32
- 239000000203 mixture Substances 0.000 title claims abstract description 19
- 230000008034 disappearance Effects 0.000 claims abstract description 16
- HUTDUHSNJYTCAR-UHFFFAOYSA-N ancymidol Chemical compound C1=CC(OC)=CC=C1C(O)(C=1C=NC=NC=1)C1CC1 HUTDUHSNJYTCAR-UHFFFAOYSA-N 0.000 claims abstract description 13
- 239000000284 extract Substances 0.000 claims abstract description 7
- 239000013065 commercial product Substances 0.000 claims abstract 2
- 239000011159 matrix material Substances 0.000 claims description 32
- 238000012417 linear regression Methods 0.000 claims description 5
- 238000010606 normalization Methods 0.000 claims description 3
- 239000000047 product Substances 0.000 claims description 2
- 239000004576 sand Substances 0.000 claims 1
- 238000001914 filtration Methods 0.000 description 3
- 238000005516 engineering process Methods 0.000 description 2
- 230000007547 defect Effects 0.000 description 1
- 238000010586 diagram Methods 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
Landscapes
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
- Management, Administration, Business Operations System, And Electronic Commerce (AREA)
Abstract
一种基于混合模型的商品推荐方法,从用户数据库中提取用户的历史评分数据,然后进行如下操作:首先从数据库中提取用户的历史评分数据,将数据集进行分割;使用部分数据集训练最近邻推荐模型和奇异值分解模型;随后再使用剩余的数据集训练线性混合模型;最后根据线性混合模型计算出的缺失评分的估计值进行相关推荐。本方法的优点在于使用线性模型混合最近邻推荐模型和奇异值分解模型,结合了两种推荐算法的优点,提高了商品推荐的准确率。
Description
技术领域
本发明涉及商品推荐方法的技术领域。
背景技术
推荐***是为了解决信息过载问题而提出的一种信息过滤的智能***,分析处理用户的个人资料数据和历史行为数据,得到用户的兴趣习惯,从而进一步向用户推荐符合其兴趣偏好的资源。随着互联网的普及和飞速发展,推荐***已经被广泛应用于各种领域,尤其是电子商务领域。目前几乎所有的大型的电子商务***都会有相关的配套推荐***,比如亚马逊,当当网,京东商城,淘宝网等等。
目前在推荐***领域,常用的推荐算法基本分三种:基于内容的推荐算法,基于协同过滤的推荐算法和混合推荐算法。在实际使用的推荐***,除了需要准确地预测那些用户没有看过的物品的评分外,还需要准确地预测用户对待推荐物品的相对兴趣。
发明内容
本发明要克服现有电子商务***的推荐***准确率不高的缺点,,本发明提出了一种基于混合模型的商品推荐方法,帮助电子商务***向每个用户推送个性化的商品促销信息,以提高电子商务***的商品成交率,该方法包括以下几个步骤:
步骤A,评分数据集合R,集合中的元素为{i,j,r}三元组,i表示用户ID,j表示商品ID,r表示用户i对商品j的评分,把评分数据集合R分成两个不相交子集合Rs和Rh,缺失评分数据集合Rm,为评分数据集合R的补集,该集合中的元素为同为三元组{i,j,r},用户i对商品j并没有进行过评分,所以相应的r为未知;
步骤B,使用Rs评分数据集合来训练最近邻推进模型和奇异值分解模型,然后分别使用这两种模型,预测出Rh集合的评分数值,分别为R′h和R″h,两个集合中的元素为{i,j,r′}和(i,j,r″),其中r′和r″是分别通过最近邻推荐模型和奇异值分解模型预测出来的用户i对商品j的评分;
步骤C,使用Rh、R′h和R″h三个评分集合计算出每个用户的线性回归模型参数 其中N表示用户的数量,进行使用线性回归模型对Rm,集合中的未知的r值进行预测得到集合
步骤D,根据预测结果针对每个用户进行相应的商品推荐,预测分数值较高的物品优先进行推荐。
进一步,
所述步骤A具体为:
步骤A1,处理数据库中所有的用户评分记录,对每一条记录中抽取出用户ID,i和商品ID,j,以及相应评分r,合成评分数据集合R;
步骤A2,在数据集合R中,对每一个用户取出其评分数据数量的a%,组成数据集合Rs,剩余的评分记录组成数据集合Rh,若遇到某用户的评分数据数量的a%,不是整数,则需进行四舍五入处理。
所述步骤B中具体为:
步骤B1,利用Rs评分集合转化成用户-商品评分矩阵,行数是用户的数量,列数是商品的数量,取出Rs评分集合中的每一个元素{i,j,r},令第i行,第j列的矩阵元素数值为r,其他矩阵元素设置值为0,得到评分矩阵Ms;
步骤B2,使用评分矩阵Ms,训练最近邻推荐模型和奇异值分解模型,得到评分预测矩阵M′s和M″s,遍历Rh集合,对每个元素{i,j,r},分别取M′s和M″s中相应的第i行,第j列上的预测评分数值r′和r″,和i,j一起组成三元组{i,j,r′}和{i,j,r″},分别加入到集合R′h和R″h。
所述步骤C中具体为:
步骤C1,在Rh中选出用户u的评分,组成向量其中rui为用户u在Rh中的第i个评分数据,然后再在R′h和R″h中找出对应和
步骤C2,以 作为目标函数,其中λ1和λ2是可调的参数;
步骤C3,随机初始化值αu和βu值;
步骤C4,
步骤C5,重复第4步直到目标函数收敛;
步骤C6,令u依次为所有用户的ID,重复1,2,3,4,5步,计算出每个用户的αu和βu,随后进行正规化处理
步骤C7,使用最近邻推荐模型和奇异值分解模型分别预测缺失评分数据集合,得到R′m和R″m;
步骤C8,对每个用户u,提取出该用户缺失的评分向量和 将rmu加入到元素组合
步骤C9,合并每个用户的得到缺失评分的预测集合
所述步骤D中具体为:
步骤D1,对于每个用户i,在预测集合中,取出其预测结果 其中if表示用户i在集合中的元素的数量;
步骤D2,可以采取Top-N的推荐方法,即在中取出ri最高的N个元素的j值,这些j值所代表的物品就是本方法给用户i推荐的物品。N是可以设定的系数。
步骤B2所使用的最近邻推荐模型,具体步骤如下:
步骤A,使用评分矩阵Ms计算两两用户之间的相似度,表示Ms的第i行,表示Ms的第j行,计算和的cosine相似度或者皮尔森相关系数,作为用户i和j的相似度;
步骤B,在预测用户i对商品j的评分的时候,计算前k个与用户i相似并且对商品j进行过评分的用户对商品j的评分值的加权平均,作为用户i对商品j的预测评分,k为可以设定的系数;
步骤C,重复步骤A和B,预测出所有的缺失评分,得到新评分矩阵M′s。
步骤B2所使用的奇异值分解模型,具体步骤:
步骤A,对评分矩阵Ms进行奇异值分解,获得矩阵U和V,U的第i行元素ui作为用户i的特征向量,V的第j行元素vj作为商品j的特征向量;
步骤B,对评分矩阵Ms每个缺失评分值,根据其行值i和列值j,将ui与vj的点积值作为该缺失评分值的预测值;
步骤C,重复步骤B,将评分矩阵Ms中的每个缺失评分值预测出来,得到新的评分矩阵M″s。
本发明的优点是:能结合基于内容的推荐和基于协同过滤的推荐两种方法的特点,能避免两种算法在单独使用时的缺陷。并且能够结合于应用场景的背景知识来提高推荐的效果,因此混合模型的商品推荐方法比单独的方法能获得更高的准确度。
附图说明
图1是本发明的方法流程图。
具体实施方式
参照附图,进一步说明本发明:
一种基于混合模型的商品推荐方法,该方法包括以下步骤:
步骤A、提取用户数据,评分数据集合R,集合中的元素为{i,j,r}三元组,i表示用户ID,j表示商品ID,r表示用户i对商品j的评分,把评分数据集合R分成两个不相交子集合Rs和Rh,缺失评分数据集合Rm,为评分数据集合R的补集,该集合中的元素为同为三元组{i,j,r},用户i对商品j并没有进行过评分,所以相应的r为未知;
具体步骤:
步骤A1,处理数据库中所有的用户评分记录,对每一条记录中抽取出用户ID,i和商品ID,j,以及相应评分r,合成评分数据集合R;
步骤A2,在数据集合R中,对每一个用户取出其评分数据数量的a%,组成数据集合Rs,剩余的评分记录组成数据集合Rh,若遇到某用户的评分数据数量的a%,不是整数,则需进行四舍五入处理。
步骤B,使用Rs评分数据集合来训练最近邻推荐模型和奇异值分解模型,然后分别使用这两种模型,预测出Rh集合的评分数值,分别为R′h和R″h,两个集合中的元素为{i,j,r′}和{i,j,r″},其中r′和r″是分别通过最近邻推荐模型和奇异值分解模型预测出来的用户i对商品j的评分,具体步骤:
步骤B1,利用Rs评分集合转化成用户-商品评分矩阵,行数是用户的数量,列数商品的数量,取出Rs评分集合中的每一个元素{i,j,r},令第i行,第j列的矩阵元素数值为r,其他矩阵元素设置值为0,得到评分矩阵Ms;
步骤B2,使用评分矩阵Ms,训练最近邻推荐模型和奇异值分解模型,得到评分预测矩阵M′s和M″s,遍历Rh集合,对每个元素{i,j,r},分别取M′s和M″s中相应的第i行,第j列上的预测评分数值r′和r″,和i,j一起组成三元组{i,j,r′}和{i,j,r″},分别加入到集合R′h和R″h。
步骤B2中使用的最近邻推荐模型,具体步骤如下:
步骤1,使用评分矩阵Ms计算两两用户之间的相似度,表示Ms的第i行,表示Ms的第j行,计算和的cosine相似度或者皮尔森相关系数,作为用户i和j的相似度;
步骤2,在预测用户i对商品j的评分的时候,计算前k个与用户i相似并且对商品j进行过评分的用户对商品j的评分值的加权平均,作为用户i对商品j的预测评分,k为可以设定的系数;
步骤3,重复步骤1和2,预测出所有的缺失评分,得到新评分矩阵M′s。
步骤B2中使用的奇异值分解模型,具体步骤如下:
步骤1,对评分矩阵Ms进行奇异值分解,获得矩阵U和V,U的第i行元素ui作为用户i的特征向量,V的第j行元素vj作为商品j的特征向量;
步骤2,对评分矩阵Ms每个缺失评分值,根据其行值i和列值j,将ui与vj的点积值作为该缺失评分值的预测值;
步骤3,重复步骤2,将评分矩阵Ms中的每个缺失评分值预测出来,得到新的评分矩阵M″s。
步骤C,提取混合模型训练数据和训练线性混合模型,具体步骤:
步骤C1,在Rh中选出用户u的评分,组成向量其中rui为用户u在Rh中的第i个评分数据,然后再在R′h和R″h中找出对应和
步骤C2,以 作为目标函数,其中λ1和λ2是可调的参数;
步骤C3,随机初始化值αu和βu值;
步骤C4,
步骤C5,重复第4步直到目标函数收敛;
步骤C6,令u依次为所有用户的id,重复1,2,3,4,5步,计算出每个用户的αu和βu,随后进行正规化处理
步骤C7,使用最近邻推荐模型和奇异值分解模型分别预测缺失评分数据集合,得到R′m和R″m;
步骤C8,对每个用户u,提取出该用户缺失的评分向量和 将rmu加入到元素组合
步骤C9,合并每个用户的得到缺失评分的预测集合
步骤D,生成推荐结果,具体步骤:
步骤D1,对于每个用户i,在预测集合中,取出其的预测结果 其中if表示用户i在集合中的元素的数量;
步骤D2,可以采取Top-N的推荐方法,即在中取出ri最高的N个元素的j值,这些j值所代表的物品就是本方法给用户i推荐的物品。N是可以设定的系数。
本说明书实施例所述的内容仅仅是对发明构思的实现形式的列举,本发明的保护范围不应当被视为仅限于实施例所陈述的具体形式,本发明的保护范围也及于本领域技术人员根据本发明构思所能够想到的等同技术手段。
Claims (4)
1.一种基于混合模型的商品推荐方法,该方法的特征在于获取用户对商品的评分数据后进行以下操作:
步骤A,评分数据集合R,集合中的元素为{i,j,r}三元组,i表示用户ID,j表示商品ID,r表示用户i对商品j的评分,把评分数据集合R分成两个不相交子集合Rs和Rh,缺失评分数据集合Rm为评分数据集合R的补集,该集合中的元素同为三元组{i,j,r},用户i对商品j并没有进行过评分,所以相应的r为未知;
步骤B,使用Rs评分数据集合来训练最近邻推荐模型和奇异值分解模型,然后分别使用这两种模型,预测出Rh集合的评分数值,分别为R′h和R″h,两个集合中的元素为{i,j,r′}和{i,j,r″},其中r′和r″是分别通过最近邻推荐模型和奇异值分解模型预测出来的用户i对商品j的评分;
在所述步骤B中具体为:
步骤B1,利用Rs评分集合转化成用户-商品评分矩阵,行数是用户的数量,列数是商品的数量,取出Rs评分集合中的每一个元素{i,j,r},令第i行,第j列的矩阵元素数值为r,其他矩阵元素设置值为0,得到评分矩阵Ms;
步骤B2,使用评分矩阵Ms,训练最近邻推荐模型和奇异值分解模型,得到评分预测矩阵M′s和M″s,遍历Rh集合,对每个元素{i,j,r},分别取M′s和M″s中相应的第i行,第j列上的预测评分数值r′和r″,和i,j一起组成三元组{i,j,r′}和{i,j,r″},分别加入到集合R′h和R″h;
步骤B2所使用的最近邻推荐模型,具体步骤如下:
步骤BA1,使用评分矩阵Ms计算两两用户之间的相似度,表示Ms的第i行,表示Ms的第j行,计算和的cosine相似度或者皮尔森相关系数,作为用户i和j的相似度;
步骤BA2,在预测用户i对商品j的评分的时候,计算前k个与用户i相似并且对商品j进行过评分的用户对商品j的评分值的加权平均,作为用户i对商品j的预测评分,k为可以设定的系数;
步骤BA3,重复步骤A和B,预测出所有的缺失评分,得到新评分矩阵M′s;
步骤B2所使用的奇异值分解模型,具体步骤:
步骤BB1,对评分矩阵Ms进行奇异值分解,获得矩阵U和V,U的第i行元素ui作为用户i的特征向量,V的第j行元素vj作为商品j的特征向量;
步骤BB2,对评分矩阵Ms每个缺失评分值,根据其行值i和列值j,将ui与vj的点积值作为该缺失评分值的预测值;
步骤BB3,重复步骤B,将评分矩阵Ms中的每个缺失评分值预测出来,得到新的评分矩阵M″s;
步骤C,使用Rh、R′h和R″h三个评分集合计算出每个用户的线性回归模型参数其中N表示用户的数量,进行使用线性回归模型对Rw集合中的未知的r值进行预测得到集合
步骤D,根据预测结果针对每个用户进行相应的商品推荐,预测分数值较高的物品优先进行推荐。
2.如权利要求1所述方法,其特征在于,在所述步骤A具体为:
步骤A1,处理数据库中所有的用户评分记录,从每一条记录中抽取出用户ID,i和商品ID,j,以及相应评分r,合成评分数据集合R;
步骤A2,在数据集合R中,对每一个用户取出其评分数据数量的a%,组成数据集合Rs,剩余的评分记录组成数据集合Rh,若遇到某用户的评分数据数量的a%,不是整数,则需进行四舍五入处理。
3.如权利要求1所述方法,其特征在于,所述步骤C中具体为:
步骤C1,在Rh中选出用户u的评分,组成向量其中rui为用户u在Rh中的第i个评分数据,然后再在R′h和R″h中找出对应和
步骤C2,以作为目标函数,其中λ1和λ2是可调的参数;
步骤C3,随机初始化值αu和βu值;
步骤C4,
步骤C5,重复第4步直到目标函数收敛;
步骤C6,令u依次为所有用户的ID,重复1,2,3,4,5步,计算出每个用户的αu和βu,随后进行正规化处理
步骤C7,使用最近邻推荐模型和奇异值分解模型分别预测缺失评分数据集合,得到R′m和R″m;
步骤C8,对每个用户u,提取出该用户缺失的评分向量和rmu=αur′mu+βur″mu,将rmu加入到元素组合
步骤C9,合并每个用户的得到缺失评分的预测集合
4.如权利要求1所述方法,其特征在于,所述步骤D中具体为:
步骤D1,对于每个用户i,在预测集合中,取出其预测结果其中if表示用户i在集合中的元素的数量;
步骤D2,可以采取Top-N的推荐方法,即在中取出ri最高的N个元素的j值,这些j值所代表的物品就是本方法给用户i推荐的物品,N是可以设定的系数。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201310224975.8A CN103294812B (zh) | 2013-06-06 | 2013-06-06 | 一种基于混合模型的商品推荐方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201310224975.8A CN103294812B (zh) | 2013-06-06 | 2013-06-06 | 一种基于混合模型的商品推荐方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN103294812A CN103294812A (zh) | 2013-09-11 |
CN103294812B true CN103294812B (zh) | 2016-02-10 |
Family
ID=49095674
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201310224975.8A Active CN103294812B (zh) | 2013-06-06 | 2013-06-06 | 一种基于混合模型的商品推荐方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN103294812B (zh) |
Families Citing this family (11)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103942298B (zh) * | 2014-04-14 | 2017-06-30 | 清华大学 | 基于线性回归的推荐方法及*** |
CN104063516B (zh) * | 2014-07-14 | 2017-06-06 | 福州大学 | 基于分布式矩阵分解特征提取的社交网络垃圾过滤方法 |
CN106037682A (zh) * | 2015-07-02 | 2016-10-26 | 中国农业科学院北京畜牧兽医研究所 | 一种牛体温的监测方法 |
CN105893609B (zh) * | 2016-04-26 | 2019-09-24 | 南通大学 | 一种基于加权混合的移动app推荐方法 |
CN106649732B (zh) * | 2016-12-23 | 2020-05-15 | 金蝶软件(中国)有限公司 | 一种信息推送方法及装置 |
CN107122989B (zh) * | 2017-03-21 | 2021-06-18 | 浙江工业大学 | 一种面向化妆品的多角度混合推荐方法 |
CN108804683B (zh) * | 2018-06-13 | 2021-11-23 | 重庆理工大学 | 结合矩阵分解和协同过滤算法的电影推荐方法 |
CN109064293B (zh) * | 2018-08-09 | 2023-04-18 | 平安科技(深圳)有限公司 | 商品推荐方法、装置、计算机设备及存储介质 |
CN109146193B (zh) * | 2018-09-05 | 2023-04-28 | 平安科技(深圳)有限公司 | 产品智能推荐方法、装置、计算机设备及存储介质 |
CN109670922B (zh) * | 2018-12-29 | 2022-02-08 | 北京工业大学 | 一种基于混合特征的线上图书价值发现方法 |
CN111611499B (zh) * | 2020-05-28 | 2021-08-17 | 贝壳找房(北京)科技有限公司 | 协同过滤方法、协同过滤装置及*** |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101783004A (zh) * | 2010-03-03 | 2010-07-21 | 陈嵘 | 快速智能化的商品推荐*** |
KR20110057927A (ko) * | 2009-11-25 | 2011-06-01 | 주식회사 가온웍스 | 개인 선호를 고려한 능동적 상품 추천 시스템 |
CN102542490A (zh) * | 2011-12-27 | 2012-07-04 | 纽海信息技术(上海)有限公司 | 基于模型匹配的商品推荐方法 |
-
2013
- 2013-06-06 CN CN201310224975.8A patent/CN103294812B/zh active Active
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR20110057927A (ko) * | 2009-11-25 | 2011-06-01 | 주식회사 가온웍스 | 개인 선호를 고려한 능동적 상품 추천 시스템 |
CN101783004A (zh) * | 2010-03-03 | 2010-07-21 | 陈嵘 | 快速智能化的商品推荐*** |
CN102542490A (zh) * | 2011-12-27 | 2012-07-04 | 纽海信息技术(上海)有限公司 | 基于模型匹配的商品推荐方法 |
Also Published As
Publication number | Publication date |
---|---|
CN103294812A (zh) | 2013-09-11 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN103294812B (zh) | 一种基于混合模型的商品推荐方法 | |
CN104935963B (zh) | 一种基于时序数据挖掘的视频推荐方法 | |
CN103544632A (zh) | 一种网络商品个性化推荐方法及*** | |
CN103309967B (zh) | 基于相似性传递的协同过滤方法及*** | |
CN102591915B (zh) | 一种基于标签迁移学习的推荐方法 | |
CN103678431A (zh) | 一种基于标准标签和项目评分的推荐方法 | |
CN108108380A (zh) | 搜索排序方法、搜索排序装置、搜索方法和搜索装置 | |
CN106471491A (zh) | 一种时变的协同过滤推荐方法 | |
CN103793476A (zh) | 基于网络社区的协同过滤推荐方法 | |
CN104462383A (zh) | 一种基于用户多种行为反馈的电影推荐方法 | |
CN103617289B (zh) | 基于用户特征及网络关系的微博推荐方法 | |
US20140258002A1 (en) | Semantic model based targeted search advertising | |
CN103729359A (zh) | 一种推荐搜索词的方法及*** | |
CN102495864A (zh) | 基于评分的协同过滤推荐方法及*** | |
CN101482884A (zh) | 一种基于用户偏好评分分布的协作推荐*** | |
CN105447045B (zh) | 信息排序方法、装置及信息提供方法、*** | |
CN106407349A (zh) | 一种产品推荐方法及装置 | |
CN108153791A (zh) | 一种资源推荐方法和相关装置 | |
CN108198045A (zh) | 基于电子商务网站数据挖掘的混合推荐***的设计方法 | |
CN106446189A (zh) | 一种资讯推荐方法及*** | |
CN106296286A (zh) | 广告点击率的预估方法和预估装置 | |
CN104318452A (zh) | 面向产品的零售点营销推荐方法 | |
CN105678590A (zh) | 一种面向社交网络基于云模型的topN推荐方法 | |
CN105843799A (zh) | 一种基于多源异构信息图模型的学术论文标签推荐方法 | |
CN103136257A (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 | ||
C14 | Grant of patent or utility model | ||
GR01 | Patent grant |