CN109214882A - 一种商品推荐方法 - Google Patents
一种商品推荐方法 Download PDFInfo
- Publication number
- CN109214882A CN109214882A CN201810743350.5A CN201810743350A CN109214882A CN 109214882 A CN109214882 A CN 109214882A CN 201810743350 A CN201810743350 A CN 201810743350A CN 109214882 A CN109214882 A CN 109214882A
- Authority
- CN
- China
- Prior art keywords
- commodity
- user
- factor
- matrix
- updated
- 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
- 238000000034 method Methods 0.000 title claims abstract description 43
- 239000011159 matrix material Substances 0.000 claims abstract description 159
- 238000000354 decomposition reaction Methods 0.000 claims abstract description 18
- 230000001550 time effect Effects 0.000 claims abstract description 16
- 239000013598 vector Substances 0.000 claims description 90
- 238000005457 optimization Methods 0.000 claims description 8
- RVRCFVVLDHTFFA-UHFFFAOYSA-N heptasodium;tungsten;nonatriacontahydrate Chemical compound O.O.O.O.O.O.O.O.O.O.O.O.O.O.O.O.O.O.O.O.O.O.O.O.O.O.O.O.O.O.O.O.O.O.O.O.O.O.O.[Na+].[Na+].[Na+].[Na+].[Na+].[Na+].[Na+].[W].[W].[W].[W].[W].[W].[W].[W].[W].[W].[W] RVRCFVVLDHTFFA-UHFFFAOYSA-N 0.000 claims description 6
- 241000531116 Blitum bonus-henricus Species 0.000 claims description 3
- 235000008645 Chenopodium bonus henricus Nutrition 0.000 claims description 3
- 230000003993 interaction Effects 0.000 claims description 3
- 230000002123 temporal effect Effects 0.000 abstract description 2
- 239000013065 commercial product Substances 0.000 abstract 2
- 230000000694 effects Effects 0.000 description 8
- 230000006870 function Effects 0.000 description 5
- 238000005516 engineering process Methods 0.000 description 2
- 238000001914 filtration Methods 0.000 description 2
- 238000007418 data mining Methods 0.000 description 1
- 238000010586 diagram Methods 0.000 description 1
- 238000011156 evaluation Methods 0.000 description 1
- 230000002452 interceptive effect Effects 0.000 description 1
- 238000010606 normalization Methods 0.000 description 1
Classifications
-
- 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
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F18/00—Pattern recognition
- G06F18/20—Analysing
- G06F18/22—Matching criteria, e.g. proximity measures
Landscapes
- Engineering & Computer Science (AREA)
- Business, Economics & Management (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- Data Mining & Analysis (AREA)
- Finance (AREA)
- Accounting & Taxation (AREA)
- General Physics & Mathematics (AREA)
- Bioinformatics & Computational Biology (AREA)
- Life Sciences & Earth Sciences (AREA)
- General Engineering & Computer Science (AREA)
- Evolutionary Biology (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Bioinformatics & Cheminformatics (AREA)
- Artificial Intelligence (AREA)
- Evolutionary Computation (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
本发明公开了一种商品推荐方法,用于为用户提供商品推荐序列,首先根据用户对商品的评分信息,建立第一用户‑商品评分矩阵,其次利用两两商品之间的相似性填充所述的第一用户‑商品评分矩阵,获得第二用户‑商品评分矩阵,接着对所述的第二用户‑商品评分矩阵进行分解,获得用户因子矩阵P以及商品因子矩阵Q,采用具有时间效应的缓存机制更新所述的用户因子矩阵P以及商品因子矩阵Q,获得商品评分序列,对所述的商品评分序列按照数值从大到小进行排序,获得商品推荐序列;本发明提供的商品推荐方法把用户对商品评论的时间特征融合进算法,使传统的矩阵分解算法具有了时间效应,提高了推荐算法的准确率。
Description
技术领域
本发明涉及数据挖掘推荐方法,具体涉及一种商品推荐方法。
背景技术
推荐方法在工业中应用范围越来越广泛,所推荐的物品可以是音 乐,书籍,电影,新闻,股票,甚至是旅游景点等等。
目前,针对不同场景的各类推荐算法在工业界得到了广泛的应 用,1994年GroupLens研究组首次提出了基于协同过滤来完成推荐 任务的思想;2009年Koren等人协同过滤的基础上提出矩阵分解模 型,该模型利用用户对商品的评分历史记录来生成一个用户商品评分 矩阵,通过矩阵分解技术为不同的用户生成不同的推荐商品列表,得 到了比较好的推荐准确率;由于研究者很少考虑到隐式反馈数据集, 2009年Hu等人提出基于隐式反馈数据的矩阵分解模型,这种方法对 隐式反馈数据集进行建模,再通过矩阵分解的技术完成推荐;2017 年He等人改进了矩阵分解模型,他们认为把用户商品评分矩阵中所 有的缺失数据赋予相同的权重,在实际应用场景中是不合理的,应该 对缺失的数据基于商品的流行度赋予不同的权重。实验结果表明,为 缺失值赋予不同的权值可以明显提高推荐系统的准确性。而且基于不 同的权重,用原来的最小二乘的办法求损失函数的权重也是不合适 的,所以He等人据此提出一个快速学习的模型,算法的效率和准确 率都得到了很大的提升。
现有技术中的矩阵分解模型均没有考虑到时间效应,由于越远离当前 时间点的样本,对模型的影响效果越微弱,因此现有的推荐方法的准确 率不高。
发明内容
本发明的目的在于提供一种商品推荐方法,用以解决现有技术中 的矩阵分解模型均没有考虑到时间效应,导致推荐方法的准确率不高 等问题。
为了实现上述任务,本发明采用以下技术方案:
一种商品推荐方法,用于为每个用户提供商品推荐序列,所述的 方法包括:
步骤1、根据用户对商品的评分信息,建立第一用户-商品评分矩 阵;
步骤2、利用两两商品之间的相似性填充所述的第一用户-商品评 分矩阵,获得第二用户-商品评分矩阵;
步骤3、对所述的第二用户-商品评分矩阵进行分解,获得初始用 户因子矩阵以及初始商品因子矩阵;
步骤4、对所述的初始用户因子矩阵以及初始商品因子矩阵进行N 次迭代更新,获得更新后的用户因子矩阵以及更新后的商品因子矩 阵,N为正整数;
其中,对所述的初始用户因子矩阵以及初始商品因子矩阵进行一 次迭代更新,获得本次更新后的用户因子矩阵以及本次更新后的商品 因子矩阵,包括:
步骤41、采用具有时间效应的缓存机制更新所述的用户因子矩阵 中所有用户的用户因子向量,获得本次更新后的用户因子矩阵,包括:
对于第u个用户的用户因子向量的第f个元素,采用式II进行更 新,获得第u个用户的用户因子向量更新后的第f个元素puf:
其中,Ru为被第u个用户评价过的所有商品的集合,wui为第u个 用户对第i个商品的评分数据的置信权重,wui>0,rui为第u个用户 对第i个商品的评分,T为时间衰减因子,T>0,ci为第i个商品的 流行度权重,ci>0,为第u个用户对第i个商品的预测评分,qif为 第i个商品的商品因子向量的第f个元素,puk为第u个用户的用户因 子向量的第k个元素,为第i个商品的商品因子向量中第k个元素 与第f个元素之间的缓存值,为第i个商品的商品因子向量中第f 个元素自身的缓存值,λ为时间衰减因子T的参数,λ>0;
其中,在首次更新时,puk为步骤3中分解获得的用户因子矩阵中 第u个用户的用户因子向量的第k个元素,qif为步骤3中分解获得的 商品因子矩阵中第i个商品的商品因子向量的第f个元素;
收集第u个用户的用户因子向量所有更新后的元素,获得更新后 的第u个用户的用户因子向量;
收集所有用户更新后的用户因子向量,获得本次更新后的用户因 子矩阵;
步骤42、采用具有时间效应的缓存机制更新所述的商品因子矩阵 的所有商品因子向量,获得本次更新后的商品因子矩阵,包括:
对于第i个商品的商品因子向量的第f个元素,采用式IV进行更 新,获得第i个商品的商品因子向量更新后的第f个元素qif:
其中,为第u个用户的用户因子向量中第k个元素与第f个元 素之间的缓存值,为第u个用户的用户因子向量中第f个元素自身 的缓存值,qik为第i个商品的商品因子向量第k个元素;
其中,在首次更新获得第1次更新后的商品因子矩阵中第i个商品 的商品因子向量的第f个元素qif时,qik为初始商品因子矩阵中第i个 商品的商品因子向量的第k个元素;
收集第i个商品因子向量所有更新后的元素,获得更新后的第i个 商品因子向量;
收集所有商品更新后的商品因子向量,获得本次更新后的商品因 子矩阵;
步骤5、将所述更新后的用户因子矩阵中的每一个用户因子向量 与所述更新后的商品因子矩阵中对应的商品因子向量进行内积后,从 大到小进行排列,获得每个用户的商品推荐序列。
进一步地,所述的步骤1、根据用户对商品的评分信息,建立第 一用户-商品评分矩阵,包括:
将评分信息转换成隐式反馈数据,获得所有用户对商品的隐式反 馈数据,其中0表示用户对商品未评分,1表示用户对商品评分;
从所有隐式反馈数据中删除交互记录少于阈值的部分隐式反馈数 据后,建立所述的第一用户-商品评分矩阵。
进一步地,所述的阈值为10。
进一步地,所述的步骤2、利用两两商品之间的相似性填充所述 的第一用户-商品评分矩阵,获得第二用户-商品评分矩阵,包括:
步骤21、利用式I计算两两商品之间的相似度:
式中,wij为第i个商品与第j个商品之间的相似度,N(i)为喜欢 第i个商品的用户数量,N(j)为喜欢第j个商品的用户数量;
步骤22、根据所有商品两两之间的相似度,获得商品相似度矩阵;
步骤23、根据所述的商品相似度矩阵,对所述第一用户-商品评 分矩阵中元素个数小于个数阈值的所有行向量进行填充,直至行向量 的元素个数达到个数阈值,获得第二用户-商品评分矩阵。
进一步地,所述的个数阈值为40。
进一步地,所述的步骤3、对所述的第二用户-商品评分矩阵进行 分解时,采用优化目标函数分解方法获得用户因子矩阵以及商品因子 矩阵。
进一步地,所述的步骤4中N=500。
本发明与现有技术相比具有以下技术特点:
1、本发明提供的商品推荐方法把用户对商品评论的时间特征融 合进算法,使传统的矩阵分解算法具有了时间效应,越靠近当前时间 点的样本,所占权重越大,反之越小;提高了推荐算法的准确率;
2、本发明提供的商品推荐方法,根据时间效应为样本赋予不同 的权重,没有增加算法时间复杂度,具有实用性。
附图说明
图1为时间衰减因子T的参数λ对数据集Yelp的影响示意图;
图2为时间衰减因子T的参数λ对数据集Amazon的影响示意图;
图3为时间衰减因子T的参数t0对数据集Amazon的影响示意图;
图4为时间衰减因子T的参数t0对数据集Amazon的影响示意图。
具体实施方式
以下是发明人提供的具体实施例,以对本发明的技术方案作进一 步解释说明。
实施例一
遵从上述技术方案,本发明公开了一种商品推荐方法,用于为用 户提供商品推荐序列,所述的方法包括:
步骤1、获取用户对商品的评分信息,建立第一用户-商品评分矩 阵;
在本发明的实施例中,商品可以是具体存在的实体物品,也可以 是一些虚拟物品,例如电影、电子期刊等。用户对商品的评分信息包 含了用户对商品的评价。例如,用户观看一部电影后,根据对该部电 影的喜爱程度,给出一个电影评分。
在具体实现中,操作人员可以通过系统提供的相关界面,输入收 集到的多个用户的评分信息。系统可以对这些评分信息进行处理,建 立一个第一用户-商品评分矩阵,其反映了用户对商品的实际评分。
例如,收集了U个用户对D个商品的评分信息,相应的,可以建 立一个U行D列的第一用户-商品评分矩阵。
在本步骤中,建立第一用户-商品评分矩阵时,包括以下步骤:
将评分信息转换成隐式反馈数据,获得所有用户对商品的隐式反 馈数据,其中[0]表示用户对商品未评分,[1]表示用户对商品评分;
从所有隐式反馈数据中删除交互记录少于阈值的部分隐式反馈数 据后,建立所述的第一用户-商品评分矩阵。
作为一种优选的实施方式,所述的阈值为10。
在本实施例中,建立第一用户-商品评分矩阵包括:
首先收集了25677个用户对25815个商品的评分记录信息,该记 录信息包括731671条记录;
对用户和商品信息进行编号,用户编号范围为0-25676,商品编 号范围为0-25814,据此建立一个25677行25815列的矩阵M。 M[m][n](m为行,n为列)的值为用户为商品的评分值;
遍历矩阵M,将评分信息转换成隐式反馈数据,如果M[m][n]有值, 则转成1,否则,转成0;
判断每个用户的评分数量,如果小于10个,则删除该用户-评分 矩阵记录。
步骤2、利用两两商品之间的相似性填充所述的第一用户-商品评 分矩阵,获得第二用户-商品评分矩阵;
在本步骤中,利用相似性填充第一用户-商品评分矩阵可以采用动 态填充方法等。
在本实施例中,利用两两商品之间的相似性填充所述的第一用户- 商品评分矩阵,获得第二用户-商品评分矩阵,包括:
步骤21、利用式I计算两两商品之间的相似度:
式中,wij为第i个商品与第j个商品之间的相似度,N(i)为喜欢 第i个商品的用户数量,N(j)为喜欢第j个商品的用户数量;
步骤22、根据所有商品两两之间的相似度,获得商品相似度矩阵;
在本实施例中,归一化后得到商品相似度矩阵。
步骤23、根据所述的商品相似度矩阵,对所述第一用户-商品评 分矩阵中元素个数小于个数阈值的所有行向量进行填充,直至行向量 的元素个数达到个数阈值,获得第二用户-商品评分矩阵。
在本步骤中,为每个用户的评分数量设置个数阈值,如果该用户 的评分数量小于个数阈值,根据物品之间的相似性,找到与该用户评 分历史物品相似度最高的一些商品,用这些商品来填充该用户的评分 记录,直至它的评分记录达到设置的个数阈值。
作为一种优选的实施方式,个数阈值为40。
通过实验发现,在数据集Yelp和Amazon Movies上,这个阈值 设置成40,算法的表现结果最好。
步骤3、对所述的第二用户-商品评分矩阵进行分解,获得用户因 子矩阵以及商品因子矩阵;
在本步骤中,对第二用户-商品评分矩阵进行分解时,可以采用 SVD矩阵分解,也可以采用优化目标函数分解。
作为一种优选的实施方式,对第二用户-商品评分矩阵进行分解时 采用优化目标函数分解,通过构造一个优化目标函数,用一些复杂的 算法求解优化问题。而这些优化问题往往是NP问题,只有局部最优 解。优化的指标通常是预测分值和实际分值之间的误差的平方 (RMSE)。
在本实施例中,对所述的第二用户-商品评分矩阵进行分解,获得 用户因子矩阵P以及商品因子矩阵Q;
步骤4、对所述的初始用户因子矩阵以及初始商品因子矩阵进行N 次迭代更新,获得更新后的用户因子矩阵以及更新后的商品因子矩 阵,N为正整数;
其中,对所述的初始用户因子矩阵以及初始商品因子矩阵进行一 次迭代更新,获得本次更新后的用户因子矩阵以及本次更新后的商品 因子矩阵,包括:
步骤41、采用具有时间效应的缓存机制更新用户因子矩阵中所有 用户的用户因子向量,获得本次更新后的用户因子矩阵,包括:
对于第u个用户的用户因子向量的第f个元素,采用式II进行更 新,获得第u个用户的用户因子向量更新后的第f个元素puf:
其中,Ru为被第u个用户评价过的所有商品的集合,wui为第u个 用户对第i个商品的评分数据的置信权重,wui>0,rui为第u个用户 对第i个商品的评分,T为时间衰减因子,T>0,ci为第i个商品的 流行度权重,ci>0,为第u个用户对第i个商品的预测评分,qif为 第i个商品的商品因子向量的第f个元素,puk为第u个用户的用户因 子向量的第k个元素,为第i个商品的商品因子向量中第k个元素 与第f个元素之间的缓存值,为第i个商品的商品因子向量中第f 个元素自身的缓存值,λ为时间衰减因子T的参数,λ>0;
其中,在首次更新获得第u个用户的用户因子向量的第f个元素 puf时,puk为初始用户因子矩阵中第u个用户的用户因子向量的第k 个元素,qif为初始商品因子矩阵中第i个商品的商品因子向量的第f 个元素;
收集第u个用户的用户因子向量所有更新后的元素,获得更新后 的第u个用户的用户因子向量;
收集所有用户更新后的用户因子向量,获得更新后的用户因子矩 阵;
在本步骤中,时间衰减因子利用式III获得:
T=t0eλt式III λ表示时间因子的衰减程度,λ越大表明时间周期越长,历史信息被遗忘的程度就越大,λ>0,t0是公式的系数,t0>0,表明其他一些 因素对时间效应的影响,比如用户的个人偏好,商品的热门度等等; t为用户对商品的评论时间,是该时间衰减因子模型中的自变量,通 过该公式把时间效应融合进快速矩阵分解模型中,让时间效应对模型产生一定的影响。
在本步骤中,为第i个商品的商品因子向量中第k个元素与第 f个元素之间的缓存值,N为商品总数,N≥1;为 第i个商品的商品因子向量中第f个元素自身的缓存值,步骤42、采用具有时间效应的缓存机制更新所述的商品因子矩阵 的所有商品因子向量,获得更新后的商品因子矩阵,包括:
对于第i个商品的商品因子向量的第f个元素,采用式IV进行更 新,获得第i个商品的商品因子向量更新后的第f个元素qif:
其中,为第u个用户的用户因子向量中第k个元素与第f个元 素之间的缓存值,为第u个用户的用户因子向量中第f个元素自身 的缓存值,qik为第i个商品的商品因子向量第k个元素;
其中,在首次更新获得第1次更新后的商品因子矩阵中第i个商品 的商品因子向量的第f个元素qif时,qik为初始商品因子矩阵中第i个 商品的商品因子向量的第k个元素;
在本步骤中,为第u个用户的用户因子向量中第k个元素与第 f个元素之间的缓存值,N为商品总数,N≥1;为 第u个用户的用户因子向量中第f个元素自身的缓存值,
收集第i个商品因子向量所有更新后的元素,获得更新后的第i个 商品因子向量;
收集所有商品更新后的商品因子向量,获得更新后的商品因子矩 阵。
在本实施例中,采用迭代更新的方法更新商品因子矩阵以及用户 因子矩阵,首先利用步骤3分解获得的商品因子矩阵以及用户因子矩 阵对用户因子矩阵进行第一次更新,获得第一次更新后的用户因子矩 阵,再利用第一次更新后的用户因子矩阵以及步骤3中分解获得的商 品因子矩阵去更新商品因子矩阵,获得第一次更新后的商品因子矩 阵,再进行循环,利用第一次更新后的用户因子矩阵以及商品因子矩 阵对用户因子矩阵进行第二次更新,同样地,完成对商品因子矩阵的 第二次更新,直至循环结束。
作为一种优选的实施方式,重复500次执行步骤41-42迭代更新 所述的用户因子矩阵以及商品因子矩阵,获得更新后的用户因子矩阵 以及更新后的商品因子矩阵。
步骤5、将所述更新后的用户因子矩阵中的每一个用户因子向量 与所述更新后的商品因子矩阵中对应的商品因子向量进行内积后,从 大到小进行排列,获得每个用户的商品推荐序列。
在本实施例中,用户因子矩阵P为:
商品因子矩阵Q为:
则用户1对商品1的预测评分为:
R11=0.758×0.258+0.958×0.947+0.452×0.852=1.4838
用户1对商品2的预测评分为:
R12=0.758×0.255+0.958×0.752+0.452×0.693=1.2269
用户1对商品3的预测评分为:
R13=0.758×0.448+0.958×0.885+0.452×0.774=1.5373
用户1对商品4的预测评分为:
R14=0.758×0.691+0.958×0.585+0.452×0.884=1.4838
按这4个预测评分得顺序从大到小为用户1生成一个用户1的商 品评分序列:[1:1.4838,2:1.2269,3:1.5373,4:1.4838]。
其他用户依次进行该操作,直到为所有用户均生成一个商品评分 序列。
在本实施例中,对用户1的商品评分序列:[1:1.4838,2:1.2269, 3:1.5373,4:1.4838]按照数值从大到小进行排序,获得[3:1.5373:1: 1.4832:4:1.4832:2:1.2269],其对应的用户1的商品推荐序列为 [3,1,4,2]。
实施例二
在本实施例中,将本发明提供的商品推荐方法与现有技术中的商 品推荐方法进行对比,使用准确率(Hit)和排名(NDCG)这两个指标来 评价算法的表现。准确率代表在算法为用户推荐的商品中,有多少商 品是用户真正交互的。排名指标代表算法如果将更相关的商品排到更 前面,那么用户的体验越好,计算得到的NDCG越高。
在本实施例中,采用的实验数据为公开的数据集Yelp和Amazon Movies,这两个数据集的信息见表1。
表1数据集信息
数据集 | 评论数 | 商品数 | 用户数 | 稀疏性 |
Yelp | 731671 | 25815 | 25677 | 99.89% |
Amazon | 5020705 | 75389 | 117176 | 99.94% |
首先验证时间衰减因子T中参数λ对两个数据集的影响,如图1、 2所示,在本实施例中为λ设置一个范围区间。随着λ的增大,俩个 数据集的Hit和NDCG指标都在不断的增大然后减小,Yelp数据集比 较曲折,Amazon数据集比较平缓。这是因为Amazon数据集比较大,时间跨度区域比较广,时间效应问题越突出,所以本发明提供的商品 推荐方法在Amazon上表现的越稳定,而Yelp数据量相对较小,因此 会比较曲折。当为0.8时,本发明在Yelp数据集上表现的最好,Hit 和NDCG可以达到0.2605和0.0641。当为0.7时,本发明在Amazon 上表现的最好,Hit和NDCG可以达到0.7109和0.1854。
其次验证时间衰减因子T中参数t0对两个数据集的影响,如图3、4所 示,在本实施例中t0设置一个范围区间。当t0为0.2时,本发明提供的方 法在Yelp数据集上表现的最好,Hit和NDCG可以达到0.2645和0.0651。 当t0为1.1时,本发明提供的方法在Yelp数据集上表现的最好,Hit和 NDCG可以达到0.7112和0.1869。
最后,将本发明提供的商品推荐方法与现有技术中的方法进行比 较,在两个数据集上的试验结果见表2和表3。
表2Yelp数据集试验结果
algorithm | Hit Ration | NDCG |
Fast-ALS | 0.2491 | 0.0603 |
Improved-Fast-ALS | 0.2691(2.00%+) | 0.0675(0.72%+) |
表3Amazon数据集试验结果
algorithm | Hit Ration | NDCG |
Fast-ALS | 0.7061 | 0.1812 |
Improved-Fast-ALS | 0.7119(0.58%+) | 0.1894(0.82%+) |
由表2、3可以看出,本发明提供的商品推荐方法与现有技术中 的方法相比,本发明提供的商品推荐方法在两个不同的数据集上的效 果均优于现有技术中的商品推荐方法。
Claims (7)
1.一种商品推荐方法,用于为每个用户提供商品推荐序列,其特征在于,所述的方法包括:
步骤1、根据用户对商品的评分信息,建立第一用户-商品评分矩阵;
步骤2、利用两两商品之间的相似性填充所述的第一用户-商品评分矩阵,获得第二用户-商品评分矩阵;
步骤3、对所述的第二用户-商品评分矩阵进行分解,获得初始用户因子矩阵以及初始商品因子矩阵;
步骤4、对所述的初始用户因子矩阵以及初始商品因子矩阵进行N次迭代更新,获得更新后的用户因子矩阵以及更新后的商品因子矩阵,N为正整数;
其中,对所述的初始用户因子矩阵以及初始商品因子矩阵进行一次迭代更新,获得本次更新后的用户因子矩阵以及本次更新后的商品因子矩阵,包括:
步骤41、采用具有时间效应的缓存机制更新用户因子矩阵中所有用户的用户因子向量,获得本次更新后的用户因子矩阵,包括:
对于第u个用户的用户因子向量的第f个元素,采用式II进行更新,获得第u个用户的用户因子向量更新后的第f个元素puf:
其中,Ru为被第u个用户评价过的所有商品的集合,wui为第u个用户对第i个商品的评分数据的置信权重,wui>0,rui为第u个用户对第i个商品的评分,T为时间衰减因子,T>0,ci为第i个商品的流行度权重,ci>0,为第u个用户对第i个商品的预测评分,qif为第i个商品的商品因子向量的第f个元素,puk为第u个用户的用户因子向量的第k个元素,为第i个商品的商品因子向量中第k个元素与第f个元素之间的缓存值,为第i个商品的商品因子向量中第f个元素自身的缓存值,λ为时间衰减因子T的参数,λ>0;
其中,在首次更新获得第u个用户的用户因子向量的第f个元素puf时,puk为初始用户因子矩阵中第u个用户的用户因子向量的第k个元素,qif为初始商品因子矩阵中第i个商品的商品因子向量的第f个元素;
收集第u个用户的用户因子向量所有更新后的元素,获得更新后的第u个用户的用户因子向量;
收集所有用户更新后的用户因子向量,获得本次更新后的用户因子矩阵;
步骤42、采用具有时间效应的缓存机制更新商品因子矩阵的所有商品因子向量,获得本次更新后的商品因子矩阵,包括:
对于第i个商品的商品因子向量的第f个元素,采用式IV进行更新,获得第i个商品的商品因子向量更新后的第f个元素qif:
其中,为第u个用户的用户因子向量中第k个元素与第f个元素之间的缓存值,为第u个用户的用户因子向量中第f个元素自身的缓存值,qik为第i个商品的商品因子向量第k个元素;
其中,在首次更新获得第1次更新后的商品因子矩阵中第i个商品的商品因子向量的第f个元素qif时,qik为初始商品因子矩阵中第i个商品的商品因子向量的第k个元素;
收集第i个商品因子向量所有更新后的元素,获得更新后的第i个商品因子向量;
收集所有商品更新后的商品因子向量,获得本次更新后的商品因子矩阵;
步骤5、将所述更新后的用户因子矩阵中的每一个用户因子向量与所述更新后的商品因子矩阵中对应的商品因子向量进行内积后,从大到小进行排列,获得每个用户的商品推荐序列。
2.如权利要求1所述的商品推荐方法,其特征在于,所述的步骤1、根据用户对商品的评分信息,建立第一用户-商品评分矩阵,包括:
将评分信息转换成隐式反馈数据,获得所有用户对商品的隐式反馈数据,其中0表示用户对商品未评分,1表示用户对商品评分;
从所有隐式反馈数据中删除交互记录少于阈值的部分隐式反馈数据后,建立所述的第一用户-商品评分矩阵。
3.如权利要求2所述的商品推荐方法,其特征在于,所述的阈值为10。
4.如权利要求1所述的商品推荐方法,其特征在于,所述的步骤2、利用两两商品之间的相似性填充所述的第一用户-商品评分矩阵,获得第二用户-商品评分矩阵,包括:
步骤21、利用式I计算两两商品之间的相似度:
式中,wij为第i个商品与第j个商品之间的相似度,N(i)为喜欢第i个商品的用户数量,N(j)为喜欢第j个商品的用户数量;
步骤22、根据所有商品两两之间的相似度,获得商品相似度矩阵;
步骤23、根据所述的商品相似度矩阵,对所述第一用户-商品评分矩阵中元素个数小于个数阈值的所有行向量进行填充,直至行向量的元素个数达到个数阈值,获得第二用户-商品评分矩阵。
5.如权利要求4所述的商品推荐方法,其特征在于,所述的个数阈值为40。
6.如权利要求1所述的商品推荐方法,其特征在于,所述的步骤3、对所述的第二用户-商品评分矩阵进行分解时,采用优化目标函数分解方法获得用户因子矩阵以及商品因子矩阵。
7.如权利要求1所述的商品推荐方法,其特征在于,所述的步骤4中N=500。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201810743350.5A CN109214882B (zh) | 2018-07-09 | 2018-07-09 | 一种商品推荐方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201810743350.5A CN109214882B (zh) | 2018-07-09 | 2018-07-09 | 一种商品推荐方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN109214882A true CN109214882A (zh) | 2019-01-15 |
CN109214882B CN109214882B (zh) | 2021-06-25 |
Family
ID=64990379
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201810743350.5A Active CN109214882B (zh) | 2018-07-09 | 2018-07-09 | 一种商品推荐方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN109214882B (zh) |
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110941758A (zh) * | 2019-11-14 | 2020-03-31 | 支付宝(杭州)信息技术有限公司 | 推荐系统的合成特征生成方法和装置 |
CN113947455A (zh) * | 2021-10-14 | 2022-01-18 | 中国平安财产保险股份有限公司 | 数据推荐方法、系统、设备及介质 |
CN117132356A (zh) * | 2023-08-29 | 2023-11-28 | 重庆大学 | 基于自适应用户兴趣变化周期的推荐方法、装置及系统 |
CN118096326A (zh) * | 2024-04-26 | 2024-05-28 | 杭州面朝信息科技有限公司 | 一种潜力商品挖掘方法、系统、设备及存储介质 |
Citations (11)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103093376A (zh) * | 2013-01-16 | 2013-05-08 | 北京邮电大学 | 基于奇异值分解算法的聚类协同过滤推荐系统 |
CN104216884A (zh) * | 2013-05-29 | 2014-12-17 | 酷盛(天津)科技有限公司 | 一种基于时间衰减的协同过滤系统及方法 |
CN104391849A (zh) * | 2014-06-30 | 2015-03-04 | 浙江大学苏州工业技术研究院 | 融入时间上下文信息的协同过滤推荐方法 |
EP2904509A1 (en) * | 2012-10-02 | 2015-08-12 | Google, Inc. | Improving access to network content |
CN105550950A (zh) * | 2015-11-20 | 2016-05-04 | 广东工业大学 | 一种基于位置服务的旅游推荐方法 |
CN106022865A (zh) * | 2016-05-10 | 2016-10-12 | 江苏大学 | 一种基于评分和用户行为的商品推荐方法 |
US9643165B2 (en) * | 2008-06-18 | 2017-05-09 | Board Of Trustees Of The University Of Arkansas | Doped-carbon composites, synthesizing methods and applications of the same |
CN107220303A (zh) * | 2017-05-10 | 2017-09-29 | 努比亚技术有限公司 | 一种应用的推荐方法、装置及计算机可读介质 |
CN107256508A (zh) * | 2017-05-27 | 2017-10-17 | 上海交通大学 | 基于时间场景的商品推荐系统及其方法 |
CN107506480A (zh) * | 2017-09-13 | 2017-12-22 | 浙江工业大学 | 一种基于评论挖掘与密度聚类的双层图结构推荐方法 |
CN108241619A (zh) * | 2016-12-23 | 2018-07-03 | 西北大学 | 一种基于用户多兴趣的推荐方法 |
-
2018
- 2018-07-09 CN CN201810743350.5A patent/CN109214882B/zh active Active
Patent Citations (11)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US9643165B2 (en) * | 2008-06-18 | 2017-05-09 | Board Of Trustees Of The University Of Arkansas | Doped-carbon composites, synthesizing methods and applications of the same |
EP2904509A1 (en) * | 2012-10-02 | 2015-08-12 | Google, Inc. | Improving access to network content |
CN103093376A (zh) * | 2013-01-16 | 2013-05-08 | 北京邮电大学 | 基于奇异值分解算法的聚类协同过滤推荐系统 |
CN104216884A (zh) * | 2013-05-29 | 2014-12-17 | 酷盛(天津)科技有限公司 | 一种基于时间衰减的协同过滤系统及方法 |
CN104391849A (zh) * | 2014-06-30 | 2015-03-04 | 浙江大学苏州工业技术研究院 | 融入时间上下文信息的协同过滤推荐方法 |
CN105550950A (zh) * | 2015-11-20 | 2016-05-04 | 广东工业大学 | 一种基于位置服务的旅游推荐方法 |
CN106022865A (zh) * | 2016-05-10 | 2016-10-12 | 江苏大学 | 一种基于评分和用户行为的商品推荐方法 |
CN108241619A (zh) * | 2016-12-23 | 2018-07-03 | 西北大学 | 一种基于用户多兴趣的推荐方法 |
CN107220303A (zh) * | 2017-05-10 | 2017-09-29 | 努比亚技术有限公司 | 一种应用的推荐方法、装置及计算机可读介质 |
CN107256508A (zh) * | 2017-05-27 | 2017-10-17 | 上海交通大学 | 基于时间场景的商品推荐系统及其方法 |
CN107506480A (zh) * | 2017-09-13 | 2017-12-22 | 浙江工业大学 | 一种基于评论挖掘与密度聚类的双层图结构推荐方法 |
Non-Patent Citations (5)
Title |
---|
WANG JUN等: "A Probabilistic View of Neighborhood-Based Recommendation Methods", 《IEEE》 * |
XIN GUAN等: "Matrix Factorization With Rating Completion: An Enhanced SVD Model for Collaborative Filtering Recommender Systems", 《IEEE ACCESS》 * |
朱思丞: "推荐算法时间动态特性研究及其分布式实现", 《中国优秀硕士学位论文全文数据库 信息科技辑》 * |
李帆等: "基于Hadoop个性化推荐算法设计与实现", 《陕西科技大学学报》 * |
段华杰: "考虑时间效应的矩阵分解技术在推荐系统中的应用", 《微型电脑应用》 * |
Cited By (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110941758A (zh) * | 2019-11-14 | 2020-03-31 | 支付宝(杭州)信息技术有限公司 | 推荐系统的合成特征生成方法和装置 |
CN110941758B (zh) * | 2019-11-14 | 2022-09-16 | 支付宝(杭州)信息技术有限公司 | 推荐系统的合成特征生成方法和装置 |
CN113947455A (zh) * | 2021-10-14 | 2022-01-18 | 中国平安财产保险股份有限公司 | 数据推荐方法、系统、设备及介质 |
CN113947455B (zh) * | 2021-10-14 | 2024-06-11 | 中国平安财产保险股份有限公司 | 数据推荐方法、系统、设备及介质 |
CN117132356A (zh) * | 2023-08-29 | 2023-11-28 | 重庆大学 | 基于自适应用户兴趣变化周期的推荐方法、装置及系统 |
CN117132356B (zh) * | 2023-08-29 | 2024-02-13 | 重庆大学 | 基于自适应用户兴趣变化周期的推荐方法、装置及系统 |
CN118096326A (zh) * | 2024-04-26 | 2024-05-28 | 杭州面朝信息科技有限公司 | 一种潜力商品挖掘方法、系统、设备及存储介质 |
Also Published As
Publication number | Publication date |
---|---|
CN109214882B (zh) | 2021-06-25 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN109299396B (zh) | 融合注意力模型的卷积神经网络协同过滤推荐方法及系统 | |
CN109214882B (zh) | 一种商品推荐方法 | |
CN109087178B (zh) | 商品推荐方法和装置 | |
CN110969516B (zh) | 一种商品推荐方法及装置 | |
CN111461841B (zh) | 物品推荐方法、装置、服务器及存储介质 | |
CN108509573B (zh) | 基于矩阵分解协同过滤算法的图书推荐方法及系统 | |
CN111242729A (zh) | 一种基于长短期兴趣的序列化推荐方法 | |
CN109684538A (zh) | 一种基于用户个人特征的推荐方法及推荐系统 | |
CN108647996A (zh) | 一种基于Spark的个性化推荐方法及系统 | |
CN110717098A (zh) | 基于元路径的上下文感知用户建模方法、序列推荐方法 | |
CN109840833B (zh) | 贝叶斯协同过滤推荐方法 | |
CN112115377A (zh) | 一种基于社交关系的图神经网络链路预测推荐方法 | |
CN104794367B (zh) | 基于隐语义模型的就医资源评分与推荐方法 | |
CN106250545A (zh) | 一种基于用户搜索内容的多媒体推荐方法及系统 | |
CN113159892B (zh) | 一种基于多模态商品特征融合的商品推荐方法 | |
CN108763367B (zh) | 一种基于深度对齐矩阵分解模型进行学术论文推荐的方法 | |
CN112612948B (zh) | 一种基于深度强化学习的推荐系统构建方法 | |
CN114896517A (zh) | 一种商品推荐方法、系统、设备及存储介质 | |
CN111695024A (zh) | 对象评估值的预测方法及系统、推荐方法及系统 | |
TW202009748A (zh) | 物流物件資訊處理方法、裝置及電腦系統 | |
CN116304299A (zh) | 一种融和用户兴趣演化和梯度提升算法的个性化推荐方法 | |
CN113761359A (zh) | 数据包推荐方法、装置、电子设备和存储介质 | |
CN111209469A (zh) | 一种个性化推荐方法、装置、计算机设备及存储介质 | |
CN110083766B (zh) | 一种基于元路径引导嵌入的查询推荐方法及装置 | |
CN110851694B (zh) | 基于用户记忆网络和树形结构的深度模型的个性化推荐系统 |
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 | ||
GR01 | Patent grant | ||
GR01 | Patent grant |