CN114240575A - 基于商品流行度及用户动态兴趣的商品推荐方法及系统 - Google Patents

基于商品流行度及用户动态兴趣的商品推荐方法及系统 Download PDF

Info

Publication number
CN114240575A
CN114240575A CN202111597448.2A CN202111597448A CN114240575A CN 114240575 A CN114240575 A CN 114240575A CN 202111597448 A CN202111597448 A CN 202111597448A CN 114240575 A CN114240575 A CN 114240575A
Authority
CN
China
Prior art keywords
commodity
target
alpha
user
commodities
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
Application number
CN202111597448.2A
Other languages
English (en)
Other versions
CN114240575B (zh
Inventor
张萱
苏凯
钱锋
张凯
马田雨
李明举
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Naval University of Engineering PLA
Original Assignee
Naval University of Engineering PLA
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Naval University of Engineering PLA filed Critical Naval University of Engineering PLA
Priority to CN202111597448.2A priority Critical patent/CN114240575B/zh
Publication of CN114240575A publication Critical patent/CN114240575A/zh
Application granted granted Critical
Publication of CN114240575B publication Critical patent/CN114240575B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION 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/00Commerce
    • G06Q30/06Buying, selling or leasing transactions
    • G06Q30/0601Electronic shopping [e-shopping]
    • G06Q30/0631Item recommendations
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F18/00Pattern recognition
    • G06F18/20Analysing
    • G06F18/22Matching criteria, e.g. proximity measures
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION 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/00Commerce
    • G06Q30/02Marketing; Price estimation or determination; Fundraising
    • G06Q30/0201Market modelling; Market analysis; Collecting market data
    • G06Q30/0202Market predictions or forecasting for commercial activities

Landscapes

  • Engineering & Computer Science (AREA)
  • Business, Economics & Management (AREA)
  • Finance (AREA)
  • Accounting & Taxation (AREA)
  • Strategic Management (AREA)
  • Development Economics (AREA)
  • Theoretical Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Data Mining & Analysis (AREA)
  • Physics & Mathematics (AREA)
  • Economics (AREA)
  • Entrepreneurship & Innovation (AREA)
  • General Business, Economics & Management (AREA)
  • Marketing (AREA)
  • Life Sciences & Earth Sciences (AREA)
  • Evolutionary Biology (AREA)
  • Artificial Intelligence (AREA)
  • General Engineering & Computer Science (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Game Theory and Decision Science (AREA)
  • Bioinformatics & Computational Biology (AREA)
  • Bioinformatics & Cheminformatics (AREA)
  • Evolutionary Computation (AREA)
  • Management, Administration, Business Operations System, And Electronic Commerce (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

本发明公开了一种基于商品流行度及用户动态兴趣的商品推荐方法及系统,包括流行度计算模块、流行度惩罚权重计算模块、商品相似度计算模块、用户兴趣衰减值计算模块、商品评分预测值计算模块、商品推荐模块。通过本发明所述方法和系统,解决热门商品相似度偏高的问题,同时根据每个用户的行为特征,在预测公式中加入时间函数,减弱历史数据对预测偏好的贡献。在提高推荐准确度的同时,有效挖掘并推荐数据集中的冷门商品,提高推荐的覆盖率,缓解了推荐系统“长尾效应”问题,提高了商品推荐的质量。

Description

基于商品流行度及用户动态兴趣的商品推荐方法及系统
技术领域
本发明属于电子商务中的商品推荐系统技术领域,具体涉及一种基于商品流行度及用户动态兴趣的推荐方法及系统。
背景技术
协同过滤被认为是最有应用前景的推荐算法之一,用来帮助用户找到他们可能喜欢的商品,由于其简单性和易于实现,广泛应用在电子商务网站以及各类音乐、短视频等app。基于商品的协同过滤通过比较用户对商品的评分识别商品之间的相似度,从而根据商品间的相似度预测用户对未评分商品的评分。因此计算商品的相似度和预测用户未评分商品的评分这两个关键步骤是否合理有效直接关系到商品推荐质量。
当前“长尾效应”和“兴趣漂移”问题是商品推荐系统难以忽视的两个问题。推荐系统中的“长尾效应”是指由于热门商品的评分数量较多,导致其占推荐列表比例较大,更能体现用户个性化的冷门商品仅占一小部分,造成了推荐结果单一、缺乏新颖性。用户“兴趣漂移”是指用户需求和兴趣会随着时间发生变化,推荐系统应该能够发现这些变化并减弱过去某些不重要评分在预测评分时的贡献,若不能识别这些变化容易造成对用户偏好的误判。
发明内容
实现本发明目的之一的基于商品流行度及用户动态兴趣的商品推荐方法,包括如下步骤:
S1、从商品推荐数据库中选取目标用户u未进行评分的目标商品集合S;
S2、从集合S中选取其中一个目标商品α,根据商品推荐数据库中目标商品α被用户评价的次数popitemα、商品推荐数据库中用户评价次数最多和最少的商品的评价次数Popmax和Popmin,计算目标商品α的流行度Popα
根据商品推荐数据库中除目标商品α外其它n个商品被用户评价的次数popitem1~popitemn以及商品推荐数据库中用户评价次数最多和最少的商品的评价次数Popmax和Popmin,分别计算其它n个商品的流行度Pop1~Popn
商品流行度Pop的计算方法包括:
Figure BDA0003431809680000021
其中Popi表示商品i的流行度;popitemi为商品i被用户评价的次数。
S3、根据目标商品α的流行度Popα以及其它n个商品的流行度Pop1~Popn计算目标商品α与其它n个商品的流行度差异PopBiasα,1~PopBiasα,n,所述流行度差异即两个商品的流行度的差值的绝对值;
S4、根据目标商品α的流行度Popα、目标商品α与其它n个商品的流行度差异PopBiasα,1~PopBiasα,n,计算目标商品α相对其它n个商品的流行度惩罚权重Weightα,1~Weightα,n;其计算方法包括:
Figure BDA0003431809680000031
以及其它n个商品相对目标商品α的流行度惩罚权重Weight1,α~Weightn,α,其计算方法包括:
Figure BDA0003431809680000032
S5、根据上述步骤计算的流行度惩罚权重Weightα,1~Weightα,n和Weight1,α~Weightn,α计算目标商品α与其它n个商品的相似度Sim(α,1)~Sim(α,n);其计算方法包括:
Figure BDA0003431809680000033
其中j∈[1,n],Sim(α,j)表示目标商品α与商品j的相似度;
Uαj表示共同评价过目标商品α和商品j的用户集合;
Uα、Uj分别表示评价过目标商品α的用户集合和评价过商品j的用户集合;
Figure BDA0003431809680000034
分别表示用户k、用户m对目标商品α的评分;
Figure BDA0003431809680000035
表示用户w对商品j的评分,其中k∈Uαj、m∈Uα、w∈Uj
Figure BDA0003431809680000036
分别为目标商品α和商品j的用户评分均值;
S6、根据目标商品α与其它n个商品的相似度Sim(α,1)~Sim(α,n)、目标用户u的兴趣衰减值f(t)计算目标用户u对目标商品α的评分预测值P,所述目标用户u的兴趣衰减值f(t)根据商品推荐数据库中目标用户u最早购买行为和最近购买行为发生的时间以及目标用户u购买商品j′的时间进行计算,商品j′为目标商品α的邻居集的其中一个商品,所述邻居集为选取目标商品α与其它n个商品的相似度Sim(α,1)~Sim(α,n)最高的前N个商品作为目标商品α的邻居集;在计算时商品j′需要依次取目标商品α的邻居集中的每一个商品进行评分预测值的计算;所述目标用户u对目标商品α的评分预测值P用于对目标用户u进行商品推荐;
其中目标用户u对目标商品α的评分预测值P的计算方法包括:
Figure BDA0003431809680000041
其中:
P表示目标用户u对目标商品α的评分预测值;
Figure BDA0003431809680000042
为目标商品α的评分均值;
sim(α,j′)为目标商品α相对商品j′的相似度,其中j′∈[1,N];
N为目标商品α的邻居集,所述邻居集为选取目标商品α与其它n个商品的相似度Sim(α,1)~Sim(α,n)最高的前N个商品作为目标商品α的邻居集;
ruj′是用户u对商品j′的评分;
Figure BDA0003431809680000043
为商品j′的评分均值;
f(t)为目标用户u的兴趣衰减值;其计算方法包括:
Figure BDA0003431809680000051
其中:
TMAX为商品推荐数据库中目标用户u最早购买行为发生的日期;
TMIN为商品推荐数据库中目标用户u最近购买行为发生的日期;
t为目标用户u购买商品j′的日期与目标用户u最早购买行为发生日期的差值,以天为单位;商品j′为目标商品α的邻居集的其中一个商品;
βu为目标用户u对商品j′所属商品类的评分次数,所述商品类为根据用户评分数据用聚类方法将商品聚类后形成的商品类。
S7、依次按照步骤S2~S6分别计算目标用户u对未进行评分的目标商品集合S中除目标商品α外其它每个商品的评分预测值;
S8、对上述步骤S7计算得到的目标用户u对每个未评分商品的评分预测值进行高低排序,基于此排序结果对目标用户u进行商品推荐。
实现本发明目的之二的基于商品流行度及用户动态兴趣的商品推荐系统,其特征在于,包括流行度计算模块、流行度惩罚权重计算模块、商品相似度计算模块、用户兴趣衰减值计算模块、商品评分预测值计算模块;
流行度计算模块用于根据商品推荐数据库中目标商品α被用户评价的次数popitemα、商品推荐数据库中用户评价次数最多和最少的商品的评价次数Popmax和Popmin,计算目标商品α的流行度Popα;根据商品推荐数据库中除目标商品α外其它n个商品被用户评价的次数popitem1~popitemn以及商品推荐数据库中用户评价次数最多和最少的商品的评价次数Popmax和Popmin,分别计算其它n个商品的流行度Pop1~Popn
流行度惩罚权重计算模块用于根据目标商品α的流行度Popα、目标商品α与其它n个商品的流行度差异PopBiasα,1~PopBiasα,n,计算目标商品α相对其它n个商品的流行度惩罚权重Weightα,1~Weightα,n、其它n个商品相对商品α的流行度惩罚权重Weight1,α~Weightn,α
商品相似度计算模块用于根据流行度惩罚权重计算模块计算的流行度惩罚权重Weightα,1~Weightα,n和Weight1,α~Weightn,α计算目标商品α与其它n个商品的相似度Sim(α,1)~Sim(α,n);
用户兴趣衰减值计算模块用于根据商品推荐数据库中目标用户u最早购买行为发生的日期TMAX、商品推荐数据库中目标用户u最近购买行为发生的日期TMIN以及目标用户u对商品j′进行评分的日期t计算用户兴趣随时间t衰减的兴趣衰减值f(t);所述商品j′为目标商品α的邻居集的其中一个商品,所述邻居集为选取目标商品α与其它n个商品的相似度Sim(α,1)~Sim(α,n)最高的前N个商品作为目标商品α的邻居集;
商品评分预测值计算模块:用于根据目标商品α与其它n个商品的相似度Sim(α,1)~Sim(α,n)、目标用户u的兴趣衰减值f(t)计算目标用户u对目标商品α的评分预测值P;所述目标用户u的兴趣衰减值f(t)根据商品推荐数据库中目标用户u最早购买行为和最近购买行为发生的时间以及目标用户u购买商品j的时间进行计算,商品j为目标商品α的邻居集的其中一个商品;所述目标用户u对目标商品α的评分预测值P用于对目标用户u进行商品推荐。
进一步地,本系统还包括商品推荐模块,用于根据商品评分预测值计算模块计算得到的目标用户u未评分商品的评分预测值进行从高到低的排序,将评分预测值靠前的多个商品推荐给目标用户u。
进一步地,所述流行度计算模块还包括流行度差异计算模块,用于根据两个商品的流行度计算两个商品的流行度差异。
利用本发明所述的系统和方法,解决热门商品相似度偏高的问题,同时根据每个用户的行为特征,在预测公式中加入时间函数,减弱历史数据对预测偏好的贡献。在提高推荐准确度的同时,有效挖掘并推荐数据集中的冷门商品,提高推荐的覆盖率,缓解了推荐系统“长尾效应”问题,提高了推荐的质量。
附图说明
图1是本发明所述方法的流程示意图;
图2是本发明所述系统的框图;
图3是对本发明所述方法中在movielens数据集进行实验,划分用户长期和短期兴趣商品类的阈值θ取值的实验数据图。
具体实施方式
下列具体实施方式用于对本发明权利要求技术方案的解释,以便本领域的技术人员理解本权利要求书。本发明的保护范围不限于下列具体的实施结构。本领域的技术人员做出的包含有本发明权利要求书技术方案而不同于下列具体实施方式的也是本发明的保护范围。
以下结合图1对本发明作进一步的详细说明。
首先、根据用户对商品的评分等级构建商品评分矩阵,所述商品评分矩阵包括每个用户对每个商品的评分等级;
如图1所示,用户在电子商务网站购物并对商品进行评价,电子商务网站数据库获取用户对商品的评分等级。
输入处理模块对电子商务网站数据库收集到的用户评分数据进行预处理,得到每个商品的流行度和用户对每个商品进行评分的时间,所述商品的流行度在本实施例中为商品在该电子商务网站所有购买过该商品的用户对该商品评价的次数,若用户未对商品进行评分则取用户购买该商品的时间代替用户评价该商品的时间,然后将其存储到推荐系统数据库。
假设推荐系统数据库中包含m个用户和n个商品,每个用户对每个商品的评分数据可以构建为m×n矩阵R,Rij表示用户i对商品j的评分值,未评分商品用0填充,如表1所示为用户历史数据构建的部分评分矩阵,一般评分用1-5五个等级表示,未评分商品填充为0。协同过滤推荐方法就是通过评分矩阵中已有的数据项来预测用户未评分商品的评分值,然后将预测评分值最高的商品推荐给目标用户。
Figure BDA0003431809680000081
Figure BDA0003431809680000091
表1
下面将进一步具体讲述如何根据评分矩阵中已有的数据项来预测用户未评分商品的评分值。
S1、从商品推荐数据库中选取目标用户u未进行评分的目标商品集合S;
如图1所示,用户在电子商务网站购物并对商品进行评价,电子商务网站数据库获取用户对商品的评分和用户对每个商品进行评分的时间,若用户未对商品进行评分则取用户购买该商品的时间代替用户评价该商品的时间,然后将其存储到商品推荐系统数据库。从推荐系统数据为中选定目标用户u及其未进行评分的目标商品集,记为集合S。
S2、从集合S中选取其中一个目标商品α,根据商品推荐数据库中目标商品α被用户评价的次数popitemα、商品推荐数据库中用户评价次数最多和最少的商品的评价次数Popmax和Popmin,计算目标商品α的流行度Popα
根据商品推荐数据库中除目标商品α外其它n个商品被用户评价的次数popitem1~popitemn以及商品推荐数据库中用户评价次数最多和最少的商品的评价次数Popmax和Popmin,分别计算其它n个商品的流行度Pop1~Popn
在推荐系统中某商品的被评价次数越多代表其流行度越高,可根据应用场景的实际需求将流行度较高的商品定为热门商品,较低的则为冷门商品。如上表1所示,根据流行度的定义I1、I2、I3、I4的用户评价数量分别为4、4、1、1,在本实施例将I1、I2定为热门商品,I3、I4定为冷门商品。热门商品由于其知名度或者性价比高被多数用户评价,在传统商品推荐算法中越热门的商品越有可能被推荐给更多的用户,因此两个或多个热门商品有可能被同一用户购买且评价,因此其都被同一用户评分的可能性较大。在用传统相似度计算这两个热门商品的相似度时可能会偏高。传统相似度算法一般用如下式(1)所示的余弦相似度计算商品间相似度:
Figure BDA0003431809680000101
其中Sim(i,j)表示商品i和商品j的相似度;Ui,j表示既评价过商品i也评价过商品j的用户集合,Ui、Uj分别为评价过商品i和商品j的用户集,rui、ruj分别表示用户u对商品i、j的评分,
Figure BDA0003431809680000102
表示商品i、j的评分均值,所述评分均值即该商品所有评分的总和与对该商品进行过评分的用户数量的比值。
由于流行度较低的商品都曾被同一用户评价的可能性比较小甚至没有,因此利用上式(1)计算相似度时共同评分集合Ui,j为0,因此计算得到的相似度Sim(i,j)为0,例如表1中商品I3与I4相似度为0。而流行度较高的商品与其他所有商品存在共同评分的可能性大,因而计算得到的相似度往往偏高。
在商品推荐系统中,将商品i被评价的次数作为流行度popitemi,popmax、popmin分别为被评价次数最多和最少的商品的评价次数。由于商品间的流行度差异过大,在后续计算流行度时会导致数值上偏差过大,计算得出的流行度权重出现远远大于1的情况,因此本发明对商品流行度进行归一化,如式(2),使其取值范围保持在[0,1],以此来降低数据偏差。
Figure BDA0003431809680000111
所述商品的流行度在本实施例中为商品在该电子商务网站所有购买过该商品的用户对该商品评价的次数;其中Popi表示商品i的流行度;popitemi为商品i被用户评价的次数。
S3、根据目标商品α的流行度Popα以及其它n个商品的流行度Pop1~Popn计算目标商品α与其它n个商品的流行度差异PopBiasα,1~PopBiasα,n,所述流行度差异即两个商品的流行度的差值的绝对值;
流行度相近的商品在知名度等方面较为相似,体现在推荐系统中即被评分的次数相近,这类商品被同一用户发现并购买的可能性更大,因而共同评价过这类商品的用户会较多,根据公式(1)计算得到的相似度会比真实值偏高。本发明把商品流行度差异定义为:商品流行度之差的绝对值。目标商品α和商品j的流行度差异定义为如下式(3)所示,所述商品j为其它n个商品中的其中一个商品。
PopBiasα,j=|Popα-Popj| 式(3)
商品间的流行度差异PopBias越小,则这两个商品由于流行度相近因而被多个用户共同评价的可能性大,导致评价过这两个商品的用户偏多;反之,如果商品间的流行度差异越大,则共同被同一用户评价的可能性越小。
S4、根据目标商品α的流行度Popα、目标商品α与其它n个商品的流行度差异PopBiasα,1~PopBiasα,n,计算目标商品α相对其它n个商品的流行度惩罚权重Weightα,1~Weightα,n以及其它n个商品相对目标商品α的流行度惩罚权重Weight1,α~Weightn,α;Weightα,1~Weightα,n的计算方法包括:
Figure BDA0003431809680000121
其它n个商品相对目标商品α的流行度惩罚权重Weight1,α~Weightn,α,其计算方法包括:
Figure BDA0003431809680000122
商品流行度高的商品对其评分的用户较多,那意味着与其它流行度比较低的商品会存在较多的共同评分,更容易被用户选择和评价,计算出来的热门商品与其他非热门商品的相似度会偏高,因此在计算相似度时需要平衡热门商品的权重,使商品流行度与惩罚权重成正相关,流行度越高则惩罚权重越高。
除商品自身流行度外,流行度差异也会影响相似度的计算。两个商品间的流行度差异越小,被用户发现并购买评价的可能性越大,共同评价过这两个商品的用户数量则相对也会较多,根据相似度公式的计算得到的相似度也偏高,因此需要降低流行度差异较小的商品之间的相似度,即流行度差异与惩罚权重负相关。
由于商品间的流行度差异较大,数值上会对惩罚权重影响较大,因此引入lg函数减弱流行度差异数值上的影响,当PopBiasi,j=0时,即两个商品的流行度相同时,此时惩罚权重等于归一化后的商品流行度。
S5、根据上述步骤计算的流行度惩罚权重Weightα,1~Weightα,n和Weight1,α~Weightn,α计算目标商品α与其它n个商品的相似度Sim(α,1)~Sim(α,n);将流行度惩罚权重函数与传统相似度计算方法结合,改进后的商品相似度计算公式为:
Figure BDA0003431809680000131
其中j∈[1,n],Sim(α,j)表示目标商品α与商品j的相似度;
Uαj表示共同评价过目标商品α和商品j的用户集合;
Uα、Uj分别表示评价过目标商品α的用户集合和评价过商品j的用户集合;
Figure BDA0003431809680000132
分别表示用户k、用户m对目标商品α的评分;
Figure BDA0003431809680000133
表示用户w对商品j的评分,其中k∈Uαj、m∈Uα、w∈Uj
Figure BDA0003431809680000134
分别为目标商品α和商品j的用户评分均值;
S6、根据目标商品α与其它n个商品的相似度Sim(α,1)~Sim(α,n)、目标用户u的兴趣衰减值f(t)计算目标用户u对目标商品α的评分预测值P,所述目标用户u的兴趣衰减值f(t)根据商品推荐数据库中目标用户u最早购买行为和最近购买行为发生的时间以及目标用户u购买商品j′的时间进行计算,商品j′为目标商品α的邻居集的其中一个商品;所述邻居集为选取目标商品α与其它n个商品的相似度Sim(α,1)~Sim(α,n)最高的前N个商品作为目标商品α的邻居集;所述目标用户u对目标商品α的评分预测值P用于对目标用户u进行商品推荐。
用户的购买兴趣与记忆都有随时间变化的特征,用户很难对一种商品保持长久的购买兴趣,一般来说呈现衰减的趋势。最近的购买数据对预测偏好应该有更大的贡献。因此本发明在预测评分时需要根据用户对商品的评分时间给用户对每个商品的评分不同的权重,以此来减弱旧数据对预测评分的贡献。用户的兴趣随时间的动态变化,更强调最近的购买兴趣,指数型函数的特点是先剧烈衰减然后变缓,在这种情况下,指数函数是最合适的衰减函数。因此本发明选择指数型函数作为用户兴趣的衰减函数,即f(t)=e-t。指数型函数的衰减速率太快,引入一个衰减系数ε来减缓衰减的速率。令ε=1/T,则时间函数为:
Figure BDA0003431809680000141
T为时间周期,T与ε衰减系数成反比。不同T值下时间函数f的曲线,T越大,时间函数变化越慢,历史数据的贡献越小;T越小,时间函数变化越缓快,历史数据越重要。T的取值决定了f对历史数据的衰减速度,应该选择合适的参数T精确预测用户未来偏好,从而提高算法的性能。
在商品推荐系统中,历史数据衰减速度应由每个用户的购买行为决定,每个用户的购买周期不同,兴趣变化规律也各有特点,因此时间函数f中时间周期T值的选择要根据用户的购买行为确定。选取一定时间段P,在此基础上定义用户u的购买周期Tu=TMAX-TMIN,TMAX、TMIN分别为用户u最早购买行为发生的时间和最近购买行为发生的时间。若某用户的购买周期Tu较长且较为频繁购买商品,购买周期Tu内购买的商品都能对预测偏好提供较为准确的数据支撑,应缓慢地衰变旧数据并赋一个较高值T给时间函数f(t)。反之,如果用户购买周期较短Tu且购买频率较低,旧评级无法预测用户未来对商品类型的偏好,这些旧数据尽可能快地衰减,应该给T赋一个较低值。在这种情况下,可以根据每名用户的购物周期选取不同的T值,此时时间函数为:
Figure BDA0003431809680000151
式中t表示目标用户u购买此商品j′的日期与目标用户u最早购买行为发生日期的差值,此商品j′与公式(9)中的j′指代同一个商品;TMAX表示目标用户u最早购买行为发生的时间;TMIN表示目标用户u最近购买行为发生的时间;TMAX和TMIN在本实施例中的单位为天数。
接下来根据用户行为划分商品类别,进一步优化时间函数f(t)。
本发明根据用户购买行为将商品分为瞬时兴趣商品类、一般兴趣商品类和长期兴趣商品类。若用户对某类物品的兴趣持续时间较长,可以认为用户对此类物品有长期爱好;若只出现过一次购买记录,则可认为用户对此类物品只有瞬时兴趣;介于两者之间的称为一般兴趣。用K-menas聚类方法,根据用户评分数据将商品聚类,定义αu为用户u对每个商品类的评分次数,设定阈值θ。αu若大于阈值θ划分为用户的长期兴趣商品类,小于阈值θ则归为用户短期兴趣商品类。长期兴趣商品类在用户兴趣周期内的喜爱程度并不会随时间的推移减少,因此时间函数f(t)对此类商品的评分没有减弱作用。而对于一般兴趣和瞬时兴趣的商品类,用户对其兴趣会随着时间的推移逐渐减弱,预测用户偏好时应减弱其评分的贡献。在此基础上,重新定义时间函数:
Figure BDA0003431809680000161
其中:
TMAX为商品推荐数据库中目标用户u最早购买行为发生的日期;
TMIN为商品推荐数据库中目标用户u最近购买行为发生的日期;
t为目标用户u购买商品j′的日期与目标用户u最早购买行为发生日期的差值,以天为单位,商品j′为目标商品α的邻居集的其中一个商品;
βu为目标用户u对商品j′所属商品类的评分次数,所述商品类为根据用户评分数据用聚类方法将商品聚类后形成的商品类;
θ为用户的长期兴趣商品类与用户短期兴趣商品类的分界值;当目标用户u对商品j′所属商品类的评分次数大于阈值θ则将此商品划分为目标用户u的长期兴趣商品类,表明其兴趣不会随着时间的推移逐渐减弱;当目标用户u对商品j′所属商品类的评分次数小于阈值θ则将此商品划分为目标用户u的短期兴趣商品类,表明其兴趣会随着时间的推移逐渐减弱;根据实验数据,当数据集为movielens 100k,聚类数目设置为20、邻居数量为15时对阈值θ的取值进行分析实验,如图3所示,其中横坐标为阈值θ的不同取值,纵坐标MAE为平均绝对误差,可看出此时阈值θ的优选范围为[70,130],优选值为90。
从式(8)中可以看出,对用户购买比较频繁的商品类,时间函数并没有削减评分的贡献,而对购买频率较低的商品类,在预测评分时时间函数根据用户的购买周期以及评分时间降低其贡献。计算得到目标用户未评分商品的预测分值后,将分值最高的商品按照一定方法推荐给目标用户u。结合时间函数后目标用户u对目标商品α的评分预测值P的计算方法包括:
Figure BDA0003431809680000171
其中:
P表示目标用户u对目标商品α的评分预测值;
Figure BDA0003431809680000172
为目标商品α的评分均值;
sim(α,j′)为目标商品α相对商品j′的相似度,其中j′∈[1,N];
N表示目标商品α的邻居集中商品数目,所述邻居集为选取目标商品α与其它n个商品的相似度Sim(α,1)~Sim(α,n)最高的前N个商品作为目标商品α的邻居集;N的取值与具体的数据集有关,根据实验数据,当数据集为Movielens 100K(943个用户,1682个项目)时,N取15为最优值,即取相似度最高的前15个商品作为目标商品α的邻居集;当数据集为Movielens 1M(6040个用户,4000个项目),N取20为最优值,即取相似度最高的前20个商品作为目标商品α的邻居集。
ruj′是用户u对商品j′的评分;
Figure BDA0003431809680000173
为商品j′的评分均值;
f(t)为目标用户u的兴趣衰减值;其计算方法如上式(8)所示。
S7、依次按照步骤S2~S6分别计算目标用户u对未进行评分的目标商品集合S中除目标商品α外其它每个商品的评分预测值;
S8、对上述步骤S7计算得到的目标用户u对每个未评分商品的评分预测值进行高低排序,基于此排序结果对目标用户u进行商品推荐。
利用优化后的预测公式Pui对目标用户u未评分商品i进行评分预测,直至完成对所有用户对未评分商品的评分预测,并将预测评分值最高的前多个商品推荐给目标用户。
应理解,上述实施例中各步骤的序号的大小并不意味着执行顺序的先后,各过程的执行顺序应以其功能和内在逻辑确定,而不应对本申请实施例的实施过程构成任何限定。
本说明书未作详细描述的内容属于本领域专业技术人员公知的现有技术。

Claims (10)

1.一种基于商品流行度及用户动态兴趣的商品推荐方法,其特征在于,包括如下步骤:
S1、从商品推荐数据库中选取目标用户u未进行评分的目标商品集合S;
S2、从集合S中选取其中一个目标商品α,根据商品推荐数据库中目标商品α被用户评价的次数popitemα、商品推荐数据库中用户评价次数最多和最少的商品的评价次数Popmax和Popmin,计算目标商品α的流行度Popα
根据商品推荐数据库中除目标商品α外其它n个商品被用户评价的次数popitem1~popitemn以及商品推荐数据库中用户评价次数最多和最少的商品的评价次数Popmax和Popmin,分别计算其它n个商品的流行度Pop1~Popn
S3、根据目标商品α的流行度Popα以及其它n个商品的流行度Pop1~Popn计算目标商品α与其它n个商品的流行度差异PopBiasα,1~PopBiasα,n,所述流行度差异即两个商品的流行度Pop的差值的绝对值;
S4、根据目标商品α的流行度Popα、目标商品α与其它n个商品的流行度差异PopBiasα,1~PopBiasα,n,计算目标商品α相对其它n个商品的流行度惩罚权重Weightα,1~Weightα,n、其它n个商品相对目标商品α的流行度惩罚权重Weight1,α~Weightn,α
S5、根据上述步骤计算的流行度惩罚权重Weightα,1~Weightα,n和Weight1,α~Weightn,α计算目标商品α与其它n个商品的相似度Sim(α,1)~Sim(α,n);
S6、根据目标商品α与其它n个商品的相似度Sim(α,1)~Sim(α,n)、目标用户u的兴趣衰减值f(t)计算目标用户u对目标商品α的评分预测值P,所述目标用户u的兴趣衰减值f(t)根据商品推荐数据库中目标用户u最早购买行为和最近购买行为发生的时间以及目标用户u购买商品j′的时间进行计算,商品j′为目标商品α的邻居集的其中一个商品,所述邻居集为选取目标商品α与其它n个商品的相似度Sim(α,1)~Sim(α,n)最高的前N个商品作为目标商品α的邻居集;所述目标用户u对目标商品α的评分预测值P用于对目标用户u进行商品推荐。
2.如权利要求1所述的基于商品流行度及用户动态兴趣的商品推荐方法,其特征在于,所述步骤S6后还包括S7和S8:
S7、依次按照步骤S2~S6分别计算目标用户u对未进行评分的目标商品集合S中除目标商品α外其它每个商品的评分预测值;
S8、对上述步骤S7计算得到的目标用户u对每个未评分商品的评分预测值进行高低排序,基于此排序结果对目标用户u进行商品推荐。
3.如权利要求1所述的基于商品流行度及用户动态兴趣的商品推荐方法,其特征在于,所述步骤S2中,商品流行度Pop的计算方法包括:
Figure FDA0003431809670000031
其中Popi表示商品i的流行度;popitemi为商品i被用户评价的次数。
4.如权利要求1所述的基于商品流行度及用户动态兴趣的商品推荐方法,其特征在于,所述步骤S4中,计算目标商品α相对其它n个商品的流行度惩罚权重Weightα,1~Weightα,n的方法包括:
Figure FDA0003431809670000032
计算其它n个商品相对目标商品α的流行度惩罚权重Weight1,α~Weightn,α的方法包括:
Figure FDA0003431809670000033
5.如权利要求1所述的基于商品流行度及用户动态兴趣的商品推荐方法,其特征在于,所述步骤S5中,计算目标商品α与其它n个商品的相似度Sim(α,1)~Sim(α,n)的方法包括:
Figure FDA0003431809670000034
其中j∈[1,n],Sim(α,j)表示目标商品α与商品j的相似度;
Uαj表示共同评价过目标商品α和商品j的用户集合;
Uα、Uj分别表示评价过目标商品α的用户集合和评价过商品j的用户集合;
Figure FDA0003431809670000035
分别表示用户k、用户m对目标商品α的评分,
Figure FDA0003431809670000036
表示用户w对商品j的评分,其中k∈Uαj、m∈Uα、w∈Uj
Figure FDA0003431809670000037
分别为目标商品α和商品j的用户评分均值。
6.如权利要求1所述的基于商品流行度及用户动态兴趣的商品推荐方法,其特征在于,所述步骤S6中,目标用户u对目标商品α的评分预测值P的计算方法包括:
Figure FDA0003431809670000041
其中:
P表示目标用户u对目标商品α的评分预测值;
Figure FDA0003431809670000042
为目标商品α的评分均值;
sim(α,j′)为目标商品α与商品j′的相似度,其中j′∈[1,N];
N为目标商品α的邻居集,所述邻居集为选取目标商品α与其它n个商品的相似度Sim(α,1)~Sim(α,n)最高的前N个商品作为目标商品α的邻居集;
ruj′是用户u对商品j′的评分;
Figure FDA0003431809670000043
为商品j′的评分均值;
f(t)为目标用户u的兴趣衰减值。
7.如权利要求6所述的基于商品流行度及用户动态兴趣的商品推荐方法,其特征在于,所述目标用户u的兴趣衰减值f(t)的计算方法包括:
Figure FDA0003431809670000044
其中:
TMAX为商品推荐数据库中目标用户u最早购买行为发生的日期;
TMIN为商品推荐数据库中目标用户u最近购买行为发生的日期;
t为目标用户u购买商品j′的日期与目标用户u最早购买行为发生日期的差值;商品j′为目标商品α的邻居集的其中一个商品;
βu为目标用户u对商品j′所属商品类的评分次数,所述商品类为根据用户评分数据用聚类方法将商品聚类后形成的商品类。
8.一种基于商品流行度及用户动态兴趣的商品推荐系统,其特征在于,包括流行度计算模块、流行度惩罚权重计算模块、商品相似度计算模块、用户兴趣衰减值计算模块、商品评分预测值计算模块;
流行度计算模块用于根据商品推荐数据库中目标商品α被用户评价的次数popitemα、商品推荐数据库中用户评价次数最多和最少的商品的评价次数Popmax和Popmin,计算目标商品α的流行度Popα;根据商品推荐数据库中除目标商品α外其它n个商品被用户评价的次数popitem1~popitemn以及商品推荐数据库中用户评价次数最多和最少的商品的评价次数Popmax和Popmin,分别计算其它n个商品的流行度Pop1~Popn
流行度惩罚权重计算模块用于根据目标商品α的流行度Popα、目标商品α与其它n个商品的流行度差异PopBiasα,1~PopBiasα,n,计算目标商品α相对其它n个商品的流行度惩罚权重Weightα,1~Weightα,n、其它n个商品相对商品α的流行度惩罚权重Weight1,α~Weightn,α
商品相似度计算模块用于根据流行度惩罚权重计算模块计算的流行度惩罚权重Weightα,1~Weightα,n和Weight1,α~Weightn,α计算目标商品α与其它n个商品的相似度Sim(α,1)~Sim(α,n);
用户兴趣衰减值计算模块用于根据商品推荐数据库中目标用户u最早购买行为发生的日期TMAX、商品推荐数据库中目标用户u最近购买行为发生的日期TMIN以及目标用户u对商品j′进行评分的日期t计算用户兴趣随时间t衰减的兴趣衰减值f(t);所述商品j′为目标商品α的邻居集的其中一个商品,所述邻居集为选取目标商品α与其它n个商品的相似度Sim(α,1)~Sim(α,n)最高的前N个商品作为目标商品α的邻居集;
商品评分预测值计算模块:用于根据目标商品α与其它n个商品的相似度Sim(α,1)~Sim(α,n)、目标用户u的兴趣衰减值f(t)计算目标用户u对目标商品α的评分预测值P,所述目标用户u的兴趣衰减值f(t)根据商品推荐数据库中目标用户u最早购买行为和最近购买行为发生的时间以及目标用户u购买商品j的时间进行计算,商品j为目标商品α的邻居集的其中一个商品;所述目标用户u对目标商品α的评分预测值P用于对目标用户u进行商品推荐。
9.如权利要求8所述的基于商品流行度及用户动态兴趣的商品推荐系统,其特征在于,还包括商品推荐模块,用于根据商品评分预测值计算模块计算得到的目标用户u未评分商品的评分预测值进行高低排序,基于此排序结果对目标用户u进行商品推荐。
10.如权利要求8所述的基于商品流行度及用户动态兴趣的商品推荐系统,其特征在于,所述流行度计算模块还包括流行度差异计算模块,用于根据两个商品的流行度计算两个商品的流行度差异。
CN202111597448.2A 2021-12-24 2021-12-24 基于商品流行度及用户动态兴趣的商品推荐方法及系统 Active CN114240575B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202111597448.2A CN114240575B (zh) 2021-12-24 2021-12-24 基于商品流行度及用户动态兴趣的商品推荐方法及系统

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202111597448.2A CN114240575B (zh) 2021-12-24 2021-12-24 基于商品流行度及用户动态兴趣的商品推荐方法及系统

Publications (2)

Publication Number Publication Date
CN114240575A true CN114240575A (zh) 2022-03-25
CN114240575B CN114240575B (zh) 2024-06-28

Family

ID=80762550

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202111597448.2A Active CN114240575B (zh) 2021-12-24 2021-12-24 基于商品流行度及用户动态兴趣的商品推荐方法及系统

Country Status (1)

Country Link
CN (1) CN114240575B (zh)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN114861783A (zh) * 2022-04-26 2022-08-05 北京三快在线科技有限公司 推荐模型训练方法、装置、电子设备及存储介质
CN116861323A (zh) * 2023-07-24 2023-10-10 深圳丰享信息技术有限公司 一种在推荐中解决长尾效应的方法和装置

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2016191959A1 (zh) * 2015-05-29 2016-12-08 深圳市汇游智慧旅游网络有限公司 一种时变的协同过滤推荐方法
CN106570090A (zh) * 2016-10-20 2017-04-19 杭州电子科技大学 基于兴趣变化和信任关系的协同过滤推荐方法
CN108288220A (zh) * 2018-04-04 2018-07-17 梧州井儿铺贸易有限公司 一种基于用户兴趣变化的电子商务推荐系统

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2016191959A1 (zh) * 2015-05-29 2016-12-08 深圳市汇游智慧旅游网络有限公司 一种时变的协同过滤推荐方法
CN106570090A (zh) * 2016-10-20 2017-04-19 杭州电子科技大学 基于兴趣变化和信任关系的协同过滤推荐方法
CN108288220A (zh) * 2018-04-04 2018-07-17 梧州井儿铺贸易有限公司 一种基于用户兴趣变化的电子商务推荐系统

Non-Patent Citations (2)

* Cited by examiner, † Cited by third party
Title
刘超慧;韩传福;陈天成;孔先进;: "融合惩罚因子和时间权重的协同过滤推荐算法", 信息技术与网络安全, no. 05, 10 May 2020 (2020-05-10) *
张萱等: "基于项目流行度及兴趣动态变化的协同过滤算法", 《火力与指挥控制》, 15 December 2022 (2022-12-15) *

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN114861783A (zh) * 2022-04-26 2022-08-05 北京三快在线科技有限公司 推荐模型训练方法、装置、电子设备及存储介质
CN114861783B (zh) * 2022-04-26 2023-05-12 北京三快在线科技有限公司 推荐模型训练方法、装置、电子设备及存储介质
CN116861323A (zh) * 2023-07-24 2023-10-10 深圳丰享信息技术有限公司 一种在推荐中解决长尾效应的方法和装置
CN116861323B (zh) * 2023-07-24 2024-02-23 深圳丰享信息技术有限公司 一种在推荐中解决长尾效应的方法和装置

Also Published As

Publication number Publication date
CN114240575B (zh) 2024-06-28

Similar Documents

Publication Publication Date Title
TWI591556B (zh) Search engine results sorting method and system
CN109543109B (zh) 一种融合时间窗技术和评分预测模型的推荐算法
CN110969516A (zh) 一种商品推荐方法及装置
US11263222B2 (en) System for calculating competitive interrelationships in item-pairs
CN114240575A (zh) 基于商品流行度及用户动态兴趣的商品推荐方法及系统
Dou Online purchase behavior prediction and analysis using ensemble learning
TW201501059A (zh) 訊息推薦方法及裝置
US20210366006A1 (en) Ranking of business object
CN108153792B (zh) 一种数据处理方法和相关装置
CN107016122B (zh) 基于时间迁移的知识推荐方法
EP2562712A1 (en) System, method and computer program product for parcel assessment
CN112100512A (zh) 一种基于用户聚类和项目关联分析的协同过滤推荐方法
CN109063120B (zh) 一种基于聚类的协同过滤推荐方法和装置
JP2020047156A (ja) 商品推薦装置及びプログラム
CN111966886A (zh) 对象推荐方法、对象推荐装置、电子设备及存储介质
CN110930219A (zh) 一种基于多特征融合的个性化电商推荐方法
Malik et al. EPR-ML: E-Commerce Product Recommendation Using NLP and Machine Learning Algorithm
CN116757794A (zh) 基于大数据的售酒小程序内产品推荐方法
CN107230104A (zh) 基于消费性格的商品多样性自适应推荐方法
CN111340572A (zh) 一种基于大数据的线上商品价格评估系统及评估方法
CN109446402B (zh) 一种搜索方法及装置
CN115659055A (zh) 基于事件序列的商品推荐方法、系统、设备及存储介质
CN107093122B (zh) 对象分类方法及装置
CN111861679A (zh) 一种基于人工智能的商品推荐方法
CN111754287A (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