CN110209946B - 基于社交和社群的产品推荐方法、***和存储介质 - Google Patents

基于社交和社群的产品推荐方法、***和存储介质 Download PDF

Info

Publication number
CN110209946B
CN110209946B CN201910496478.0A CN201910496478A CN110209946B CN 110209946 B CN110209946 B CN 110209946B CN 201910496478 A CN201910496478 A CN 201910496478A CN 110209946 B CN110209946 B CN 110209946B
Authority
CN
China
Prior art keywords
user
product
preference
feedback
relationship
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
Application number
CN201910496478.0A
Other languages
English (en)
Other versions
CN110209946A (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.)
Hefei University of Technology
Original Assignee
Hefei University of Technology
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 Hefei University of Technology filed Critical Hefei University of Technology
Priority to CN201910496478.0A priority Critical patent/CN110209946B/zh
Publication of CN110209946A publication Critical patent/CN110209946A/zh
Application granted granted Critical
Publication of CN110209946B publication Critical patent/CN110209946B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/90Details of database functions independent of the retrieved data types
    • G06F16/95Retrieval from the web
    • G06F16/953Querying, e.g. by the use of web search engines
    • G06F16/9535Search customisation based on user profiles and personalisation
    • 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
    • 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
    • G06Q50/00Information and communication technology [ICT] specially adapted for implementation of business processes of specific business sectors, e.g. utilities or tourism
    • G06Q50/01Social networking

Landscapes

  • Engineering & Computer Science (AREA)
  • Business, Economics & Management (AREA)
  • Theoretical Computer Science (AREA)
  • Databases & Information Systems (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Marketing (AREA)
  • General Business, Economics & Management (AREA)
  • Strategic Management (AREA)
  • Accounting & Taxation (AREA)
  • Finance (AREA)
  • Economics (AREA)
  • Development Economics (AREA)
  • General Engineering & Computer Science (AREA)
  • Data Mining & Analysis (AREA)
  • Computing Systems (AREA)
  • Health & Medical Sciences (AREA)
  • General Health & Medical Sciences (AREA)
  • Human Resources & Organizations (AREA)
  • Primary Health Care (AREA)
  • Tourism & Hospitality (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
  • Management, Administration, Business Operations System, And Electronic Commerce (AREA)

Abstract

本发明提供一种基于社交和社群的产品推荐方法、***和存储介质,涉及数据处理领域。包括以下步骤:获取用户与产品的交互数据、社交关系数据和社群关系数据,并形成历史数据;基于所述历史数据和预先设置的偏序关系,确定用户和产品的反馈关系;基于所述历史数据和所述反馈关系确定用户对产品的偏好关系;确定所述偏好关系的目标函数;基于所述目标函数获取用户对产品的偏好得分;基于所述偏好得分对用户的未交互产品进行排序,得到产品推荐结果。本发明可以准确地将产品推荐给用户。

Description

基于社交和社群的产品推荐方法、***和存储介质
技术领域
本发明涉及数据处理领域,具体涉及一种基于社交和社群的产品推荐方法、***和存储介质。
背景技术
随着互联网技术的发展,基于社交网络的个性化推荐的研究愈发活跃。而社交推荐方法可分为基于显式反馈数据的评分预测算法和基于隐式反馈数据的个性化排序算法。其中,显式反馈数据一般指评分,即1-5的评分,可以明显地反映用户对产品的偏好程度。而隐式反馈数据指用户和产品的交互关系,如浏览、购买、收藏等,不能明显地反映用户对产品的偏好程度。对于那些用户和产品没有交互的产品,不能表明用户就不喜欢该产品,可能是用户还没有发现该产品。由于隐式反馈数据广泛存在、获取成本低、贴近现实,因此,基于隐式反馈数据的排序算法得到了越来越多的关注。
现有技术提供的社交推荐方法主要基于贝叶斯个性化排序算法来优化排序。通过将与用户交互过的产品设为正向反馈,用户未交互过的产品设为负向反馈,并且假设用户对交互过的产品的偏好大于未交互过的产品,考虑到用户的好友社交关系利用贝叶斯个性化排序算法进而对产品推荐进行优化。
然而本申请的发明人发现上述的推荐方法在实际应用时,在线社交网络中用户的社交关系相对稀疏,因此仅考虑社交关系不能够准确的得到产品的推荐结果。因此现有技术的推荐方法不够准确。
发明内容
(一)解决的技术问题
针对现有技术的不足,本发明提供了一种基于社交和社群的产品推荐方法、***和存储介质,解决了现有技术无法准确推荐产品的技术问题。
(二)技术方案
为实现以上目的,本发明通过以下技术方案予以实现:
本发明解决其技术问题所提供的一种基于社交和社群的产品推荐方法,所述推荐方法由计算机执行,包括以下步骤:
获取用户与产品的交互数据、社交关系数据和社群关系数据,并形成历史数据;
基于所述历史数据和预先设置的偏序关系,确定用户和产品的反馈关系;
基于所述历史数据和所述反馈关系确定用户对产品的偏好关系;
确定所述偏好关系的目标函数;
基于所述目标函数获取用户对产品的偏好得分;
基于所述偏好得分对用户的未交互产品进行排序,得到产品推荐结果。
优选的,所述历史数据包括:
用户集合U,产品集合P,用户和产品有过交互的集合D,社交关系集合S和社群关系集合G。
优选的,所述预先设置的偏序关系为:
正反馈>社交反馈>社群反馈>负反馈;
所述用户和产品的反馈关系包括:
正反馈集合:PFu={<u,pi>},
其中:<u,pi>∈D,表示用户u与产品pi有过交互;
社交反馈集合:SFu={<u,ps>},
其中:<u,ps>表示用户u的社交好友有过交互,而用户u本身没有交互的产品;
社群反馈集合:GFu={<u,pg>},
其中:<u,pg>表示用户u的社群好友有过交互,而用户u本身没有交互且用户u的社交好友也没有交互的产品;
负反馈集合:NFu={<u,pj>},
其中:<u,pj>表示用户u本身没有交互,用户u的社交好友和社群好友也没有交互的产品。
优选的,所述用户对产品的偏好关系用基于用户集合U对产品集合P的矩阵分解模型表示:
Figure GDA0002888269470000031
其中:
Figure GDA0002888269470000032
表示用户集合U对产品集合P的偏好集合;
W表示用户集合U的特征矩阵;
H表示产品集合P的特征矩阵;
b表示产品集合P的偏差项。
优选的,所述偏好关系的目标函数为:
Figure GDA0002888269470000041
其中:
Figure GDA0002888269470000042
表示用户u对正反馈集合PFu中产品pi的偏好;
Figure GDA0002888269470000043
表示用户u对社交反馈集合SFu中产品ps的偏好;
Figure GDA0002888269470000044
表示用户u对社群反馈集合GFu中产品pg的偏好;
Figure GDA0002888269470000045
表示用户u对负反馈集合NFu中产品pj的偏好;
σ(·)表示logistic函数;
Θ表示所述矩阵分解模型中的参数集合,即Θ={W,H,b};
λΘ为正则化参数;
CS表示用户u与产品ps没有交互,但是用户u的好友中与该产品有过交互的好友个数;
Cg表示用户u与产品pg无交互,且其社交好友对该产品无交互,但是用户u的社群好友中对该产品有交互的社群好友个数。
优选的,基于所述目标函数获取用户对产品的偏好得分,具体为:
S501、设定迭代次数为iter,其中,iter=1;
S502、基于正态分布随机初始化参数集合:
Θiter={Witer,Hiter,biter}
S503、设定循环变量为η,其中,η=1;
S504、在第iter次迭代下遍历用户和产品的交互关系集合D;
S505、在第η次循环过程中,随机选取一个用户u,同时从该用户u对应的正反馈集合、社交反馈集合、社群反馈集合和负反馈集合中取出相应的正反馈产品pi、社交反馈产品ps、社群反馈产品pg和负反馈产品pj;从而获得第iter次迭代下第η次遍历的一组用户偏序产品组合
Figure GDA0002888269470000051
S506、将用户偏序产品组合
Figure GDA0002888269470000052
代入所述目标函数中,得到第iter次迭代下第η个循环的目标函数
Figure GDA0002888269470000053
S507、基于随机梯度上升方法更新目标函数
Figure GDA0002888269470000054
中参数
Figure GDA0002888269470000055
Figure GDA0002888269470000056
的梯度;
S508、将η+1赋值给η,并判断η>|D|是否成立,若成立,则执行步骤S509;否则,返回步骤S505;
S509、判断参数
Figure GDA0002888269470000057
是否均为收敛,若均为收敛,则获得最优参数集合
Figure GDA0002888269470000058
否则,将iter+1赋值给iter,并返回步骤S503。
优选的,所述得到产品推荐结果,具体为:
随机选取所述产品集合U中一个用户v,根据所述偏好得分对用户v在产品集合P中的所有未交互产品进行降序排序,得到产品推荐结果。
优选的,还包括:
对所述产品推荐结果进行评估,所述评估包括:准确率Precision@K评估、召回率Recall@K评估、MRR@K评估、MAP@K评估。
本发明解决其技术问题所提供的一种基于社交和社群的产品推荐***,所述推荐***包括计算机,所述计算机包括:
至少一个存储单元;
至少一个处理单元;
其中,所述至少一个存储单元中存储有至少一条指令,所述至少一条指令由所述至少一个处理单元加载并执行以实现以下步骤:
获取用户与产品的交互数据、社交关系数据和社群关系数据,并形成历史数据;
基于所述历史数据和预先设置的偏序关系,确定用户和产品的反馈关系;
基于所述历史数据和所述反馈关系确定用户对产品的偏好关系;
确定所述偏好关系的目标函数;
基于所述目标函数获取用户对产品的偏好得分;
基于所述偏好得分对用户的未交互产品进行排序,得到产品推荐结果。
本发明解决其技术问题所提供的一种计算机可读存储介质,该介质上存储有至少一条指令,至少所述一条指令由处理器加载并执行以实现如上述的方法
(三)有益效果
本发明提供了一种基于社交和社群的产品推荐方法、***和存储介质。与现有技术相比,具备以下有益效果:
本发明通过获取用户与产品的交互数据、社交关系数据和社群关系数据,形成历史数据;基于历史数据和预先设置的偏序关系,确定用户和产品的反馈关系;基于历史数据和反馈关系确定用户对产品的偏好关系;并确定偏好关系的目标函数;基于目标函数获取用户对产品的偏好得分;基于偏好得分对用户的未交互产品进行排序,得到产品推荐结果。本发明结合用户的社交关系和社群关系对用户和产品的交互进行分析,对用户偏好进行了更细粒度的划分,从而使推荐结果更加准确。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1为本发明实施例中的基于社交和社群的产品推荐方法的整体流程图。
具体实施方式
为使本发明实施例的目的、技术方案和优点更加清楚,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
本申请实施例通过提供一种基于社交和社群的产品推荐方法、***和存储介质,解决了现有技术无法准确推荐产品的问题,实现产品的准确推荐。
本申请实施例中的技术方案为解决上述技术问题,总体思路如下:
本发明实施例通过获取用户与产品的交互数据、社交关系数据和社群关系数据,形成历史数据;基于历史数据和预先设置的偏序关系,确定用户和产品的反馈关系;基于历史数据和反馈关系确定用户对产品的偏好关系;并确定偏好关系的目标函数;基于目标函数获取用户对产品的偏好得分;基于偏好得分对用户的未交互产品进行排序,得到产品推荐结果。本发明实施例结合用户的社交关系和社群关系对用户和产品的交互进行分析,对用户偏好进行了更细粒度的划分,从而使推荐结果更加准确。
为了更好的理解上述技术方案,下面将结合说明书附图以及具体的实施方式对上述技术方案进行详细的说明。
本发明实施例提供了一种基于社交和社群的产品推荐方法,如图1所示,上述方法由计算机执行,包括以下步骤:
S1、获取用户与产品的交互数据、社交关系数据和社群关系数据,并形成历史数据;
S2、基于所述历史数据和预先设置的偏序关系,确定用户和产品的反馈关系;
S3、基于所述历史数据和所述反馈关系确定用户对产品的偏好关系;
S4、确定所述偏好关系的目标函数;
S5、基于所述目标函数获取用户对产品的偏好得分;
S6、基于所述偏好得分对用户的未交互产品进行排序,得到产品推荐结果。
本发明实施例通过获取用户与产品的交互数据、社交关系数据和社群关系数据,形成历史数据;基于历史数据和预先设置的偏序关系,确定用户和产品的反馈关系;基于历史数据和反馈关系确定用户对产品的偏好关系;并确定偏好关系的目标函数;基于目标函数获取用户对产品的偏好得分;基于偏好得分对用户的未交互产品进行排序,得到产品推荐结果。本发明实施例结合用户的社交关系和社群关系对用户和产品的交互进行分析,对用户偏好进行了更细粒度的划分,从而使推荐结果更加准确。
下面对各步骤进行详细描述:
在步骤S1中,获取用户与产品的交互数据、社交关系数据和社群关系数据,并形成历史数据。
具体的,本发明实施例基于互联网平台可获取以下数据信息:
用户集合U,产品集合P,用户和产品有过交互的集合D,社交关系集合S和社群关系集合G。
设定二元组<u,pi>∈D表示用户u与产品pi有过交互。其中,u∈U,pi∈P,共有用户|U|=M个,产品|P|=N个。
二元组<ui,uj>∈S表示用户ui和用户uj是好友;二元组<ui,uj>∈G表示用户ui和用户uj加入了同一个社群。
在步骤S2中,基于所述历史数据和预先设置的偏序关系,确定用户和产品的反馈关系。
具体的,反馈关系用正反馈集合、社交反馈集合、社群反馈集合和负反馈集合来表示。
在实际应用中,社交关系为好友之间的双向连接,属于强连接。而社群关系则是用户根据自己的兴趣加入的,属于单向连接。一个用户会加入多个社群,一个社群会有多个用户。而用户本身存在多个兴趣,所以属于同一社群中的用户两两之间的连接属于弱连接。因此本发明实施例预先设定反馈集合具有如下偏序关系:
正反馈>社交反馈>社群反馈>负反馈。
基于上述设定,可得到反馈关系为:
正反馈集合为PFu={<u,pi>}。
其中:<u,pi>∈D。
社交反馈集合为SFu={<u,ps>}。
其中:<u,ps>是用户u的社交好友有过交互,而用户u本身没有交互的产品。
社群反馈集合为GFu={<u,pg>}。
其中:<u,pg>是用户u的社群好友有过交互,而用户u本身没有交互且用户u的社交好友也没有交互的产品。
负反馈集合为NFu={<u,pj>}。
其中:<u,pj>是用户u本身没有交互且用户u的社交和社群好友也没有交互的产品。
以上集合同时满足下述条件:
Figure GDA0002888269470000111
PFu∪SFu∪GFu∪NFu=P
即四个反馈集合包括了所有的产品数据,且没有产品数据同时存在于任意两个反馈集合中。
在步骤S3中,基于所述历史数据和所述反馈关系确定用户对产品的偏好关系。
具体的,基于用户集合U对产品集合P的矩阵分解模型表示偏好关系,偏好关系具体为:
Figure GDA0002888269470000112
其中:
Figure GDA0002888269470000113
表示用户集合U对产品集合P的偏好集合;
W表示用户集合U的特征矩阵;
H表示产品集合P的特征矩阵;
b表示产品集合P的偏差项。
W的维度是M*K维的,H的维度是N*K维的。
基于上述偏好关系对应的反馈集合可知:
Figure GDA0002888269470000114
Figure GDA0002888269470000115
Figure GDA0002888269470000116
Figure GDA0002888269470000117
其中:
Figure GDA0002888269470000118
表示用户u对正反馈集合PFu中产品pi的偏好;
Figure GDA0002888269470000119
表示用户u对社交反馈集合SFu中产品ps的偏好;
Figure GDA0002888269470000121
表示用户u对社群反馈集合GFu中产品pg的偏好;
Figure GDA0002888269470000122
表示用户u对负反馈集合NFu中产品pj的偏好。
在步骤S4中,确定所述偏好关系的目标函数。
具体的,基于贝叶斯个性化排序方法构建目标函数。将矩阵分解模型作为偏序关系的度量。利用梯度上升算法进行优化求解,得到矩阵分解模型中的各个参数值。
目标函数具体为:
Figure GDA0002888269470000123
其中:
Figure GDA0002888269470000124
表示用户u对正反馈集合PFu中产品pi的偏好;
Figure GDA0002888269470000125
表示用户u对社交反馈集合SFu中产品ps的偏好;
Figure GDA0002888269470000126
表示用户u对社群反馈集合GFu中产品pg的偏好;
Figure GDA0002888269470000127
表示用户u对负反馈集合NFu中产品pj的偏好;
σ(·)表示logistic函数;
Θ表示所述矩阵分解模型中的参数集合,即Θ={W,H,b};
λΘ为正则化参数;
CS表示用户u与产品ps没有交互,但是用户u的好友中与该产品有过交互的好友个数;
Cg表示用户u与产品pg无交互,且其社交好友对该产品无交互,但是用户u的社群好友中对该产品有交互的社群好友个数。
其中,CS值越大,表示用户u对产品pi与产品ps的偏好越接近;Cg值越大,表示用户对产品ps与产品pg的偏好差异越接近。
该目标函数的目的是为了训练用户对产品的偏好得分,使之满足本发明提出的偏序关系。
在步骤S5中,基于所述目标函数获取用户对产品的偏好得分。
具体的,包括以下步骤:
S501、设定迭代次数为iter,其中,iter=1;
S502、基于正态分布随机初始化参数集合:
Θiter={Witer,Hiter,biter}
S503、设定循环变量为η,其中,η=1;
S504、在第iter次迭代下遍历用户和产品的交互关系集合D,对偏序关系进行|D|次随机抽样;
S505、在第η次循环过程中,随机选取一个用户u,同时从该用户u对应的正反馈集合PFu中随机选取一个正反馈产品pi,从该用户u对应的社交反馈集合SFu中随机选取一个社交反馈产品ps,从该用户u对应的社群反馈集合GFu中随机选取一个社群反馈产品pg、从该用户u对应的负反馈集合中NFu随机选取一个负反馈产品pj;从而获得第iter次迭代下第η次遍历的一组用户偏序产品组合
Figure GDA0002888269470000131
S506、将用户偏序产品组合
Figure GDA0002888269470000132
代入所述目标函数中,得到第iter次迭代下第η个循环的目标函数
Figure GDA0002888269470000133
S507、基于随机梯度上升方法更新目标函数
Figure GDA0002888269470000134
中参数
Figure GDA0002888269470000135
Figure GDA0002888269470000136
的梯度;
S508、将η+1赋值给η,并判断η>|D|是否成立,若成立,则执行步骤S509;否则,返回步骤S505;
S509、判断参数
Figure GDA0002888269470000141
是否均为收敛,若均为收敛,则获得最优参数集合
Figure GDA0002888269470000142
否则,将iter+1赋值给iter,并返回步骤S503。
在步骤S6中,基于所述偏好得分对用户的未交互产品进行排序,得到产品推荐结果。
具体的,随机选取所述产品集合U中一个用户v,根据所述偏好得分对用户v在产品集合P中所有的未交互产品进行降序排序,可预先设置为提取前n个产品形成产品推荐列表,得到产品推荐结果并推荐给用户。
本发明实施例在用户与产品交互的基础上,考虑社交信息和社群信息,构建了用户对未交互产品的偏好顺序,从而将用户偏好进行了更细粒度的划分。
本发明实施例还包括:
S7、对所述产品推荐结果进行评估。
具体的,本发明实施例使用准确率Precision@K、召回率Recall@K、MRR@K、MAP@K评估推荐结果。
首先,将数据集划分为训练集和测试集。本发明使用训练集训练模型,得到用户对产品的偏好得分x。根据偏好得分得到每个用户的推荐列表,利用训练集得到的推荐列表和测试集进行对比评估,从而得到推荐结果的好坏。
其中,precision@K表示推荐列表中用户喜欢的物品所占的比例。针对单个用户u的推荐准确率为:
Figure GDA0002888269470000151
其中:
hit表示用户u的推荐列表中有多少个是用户u实际购买的;
K为推荐结果长度。
总体的准确率为:
Figure GDA0002888269470000152
即总体样本的预测准确率为个人准确率的平均。
Recall@K表示测试集中有多少用户喜欢的物品出现在推荐列表中。
针对单个用户u的推荐召回率为:
Figure GDA0002888269470000153
其中:
hit表示用户u的推荐列表中有多少个是用户u实际购买的。
Figure GDA0002888269470000154
为用户u实际购买的产品的个数。
总体的召回率为:
Figure GDA0002888269470000155
即总体样本的召回率为个人召回率的平均。
MRR@K具体为:
Figure GDA0002888269470000161
其中:
ranku表示用户u的推荐列表中第一个预测准确的产品所在的位置。
MAP@K具体为:
Figure GDA0002888269470000162
Figure GDA0002888269470000163
其中:
hit表示用户u的推荐列表中有多少个命中了用户u实际购买的产品。
本发明实施例还提供了一种基于社交和社群的产品推荐***,所述***包括计算机,所述计算机包括:
至少一个存储单元;
至少一个处理单元;
其中,所述至少一个存储单元中存储有至少一条指令,所述至少一条指令由所述至少一个处理单元加载并执行以实现以下步骤:
获取用户与产品的交互数据、社交关系数据和社群关系数据,并形成历史数据;
基于所述历史数据和预先设置的偏序关系,确定用户和产品的反馈关系;
基于所述历史数据和所述反馈关系确定用户对产品的偏好关系;
确定所述偏好关系的目标函数;
基于所述目标函数获取用户对产品的偏好得分;
基于所述偏好得分对用户的未交互产品进行排序,得到产品推荐结果。
可理解的是,本发明实施例提供的上述推荐***与上述推荐方法相对应,其有关内容的解释、举例、有益效果等部分可以参考基于社交和社群的产品推荐方法中的相应内容,此处不在赘述。
本发明实施例还提供一种计算机可读存储介质,上述存储介质中存储有至少一条指令,至少上述一条指令由处理器加载并执行以实现如上述方法。
综上所述,与现有技术相比,具备以下有益效果:
本发明实施例通过获取用户与产品的交互数据、社交关系数据和社群关系数据,形成历史数据;基于历史数据和预先设置的偏序关系,确定用户和产品的反馈关系;基于历史数据和反馈关系确定用户对产品的偏好关系;并确定偏好关系的目标函数;基于目标函数获取用户对产品的偏好得分;基于偏好得分对用户的未交互产品进行排序,得到产品推荐结果。本发明实施例结合用户的社交关系和社群关系对用户和产品的交互进行分析,对用户偏好进行了更细粒度的划分,从而使推荐结果更加准确。
需要说明的是,通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到各实施方式可借助软件加必需的通用硬件平台的方式来实现。基于这样的理解,上述技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品可以存储在计算机可读存储介质中,如ROM/RAM、磁碟、光盘等,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行各个实施例或者实施例的某些部分所述的方法。
在此处所提供的说明书中,说明了大量具体细节。然而,能够理解,本发明的实施例可以在没有这些具体细节的情况下实践。在一些实例中,并未详细示出公知的方法、结构和技术,以便不模糊对本说明书的理解。
在本文中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同要素。
以上实施例仅用以说明本发明的技术方案,而非对其限制;尽管参照前述实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本发明各实施例技术方案的精神和范围。

Claims (8)

1.一种基于社交和社群的产品推荐方法,其特征在于,所述推荐方法由计算机执行,包括以下步骤:
获取用户与产品的交互数据、社交关系数据和社群关系数据,并形成历史数据;
基于所述历史数据和预先设置的偏序关系,确定用户和产品的反馈关系;
基于所述历史数据和所述反馈关系确定用户对产品的偏好关系;
确定所述偏好关系的目标函数;
基于所述目标函数获取用户对产品的偏好得分;
基于所述偏好得分对用户的未交互产品进行排序,得到产品推荐结果;
所述用户对产品的偏好关系用基于用户集合U对产品集合P的矩阵分解模型表示:
Figure FDA0002888269460000011
其中:
Figure FDA0002888269460000012
表示用户集合U对产品集合P的偏好集合;
W表示用户集合U的特征矩阵;
H表示产品集合P的特征矩阵;
b表示产品集合P的偏差项;
所述偏好关系的目标函数为:
Figure FDA0002888269460000021
其中:
Figure FDA0002888269460000022
表示用户u对正反馈集合PFu中产品pi的偏好;
Figure FDA0002888269460000023
表示用户u对社交反馈集合SFu中产品ps的偏好;
Figure FDA0002888269460000024
表示用户u对社群反馈集合GFu中产品pg的偏好;
Figure FDA0002888269460000025
表示用户u对负反馈集合NFu中产品pj的偏好;
σ(·)表示logistic函数;
Θ表示所述矩阵分解模型中的参数集合,即Θ={W,H,b};
λΘ为正则化参数;
CS表示用户u与产品ps没有交互,但是用户u的好友中与该产品有过交互的好友个数;
Cg表示用户u与产品pg无交互,且其社交好友对该产品无交互,但是用户u的社群好友中对该产品有交互的社群好友个数。
2.如权利要求1所述的推荐方法,其特征在于,所述历史数据包括:
用户集合U,产品集合P,用户和产品有过交互的集合D,社交关系集合S和社群关系集合G。
3.如权利要求2所述的推荐方法,其特征在于,所述预先设置的偏序关系为:
正反馈>社交反馈>社群反馈>负反馈;
所述用户和产品的反馈关系包括:
正反馈集合:PFu={<u,pi>},
其中:<u,pi>∈D,表示用户u与产品pi有过交互;
社交反馈集合:SFu={<u,ps>},
其中:<u,ps>表示用户u的社交好友有过交互,而用户u本身没有交互的产品;
社群反馈集合:GFu={<u,pg>},
其中:<u,pg>表示用户u的社群好友有过交互,而用户u本身没有交互且用户u的社交好友也没有交互的产品;
负反馈集合:NFu={<u,pj>},
其中:<u,pj>表示用户u本身没有交互,用户u的社交好友和社群好友也没有交互的产品。
4.如权利要求1所述的推荐方法,其特征在于,基于所述目标函数获取用户对产品的偏好得分,具体为:
S501、设定迭代次数为iter,其中,iter=1;
S502、基于正态分布随机初始化参数集合:
Θiter={Witer,Hiter,biter}
S503、设定循环变量为η,其中,η=1;
S504、在第iter次迭代下遍历用户和产品的交互关系集合D;
S505、在第η次循环过程中,随机选取一个用户u,同时从该用户u对应的正反馈集合、社交反馈集合、社群反馈集合和负反馈集合中取出相应的正反馈产品pi、社交反馈产品ps、社群反馈产品pg和负反馈产品pj;从而获得第iter次迭代下第η次遍历的一组用户偏序产品组合
Figure FDA0002888269460000041
S506、将用户偏序产品组合
Figure FDA0002888269460000042
代入所述目标函数中,得到第iter次迭代下第η个循环的目标函数
Figure FDA0002888269460000043
S507、基于随机梯度上升方法更新目标函数
Figure FDA0002888269460000044
中参数
Figure FDA0002888269460000045
Figure FDA0002888269460000046
的梯度;
S508、将η+1赋值给η,并判断η>|D|是否成立,若成立,则执行步骤S509;否则,返回步骤S505;
S509、判断参数
Figure FDA0002888269460000047
是否均为收敛,若均为收敛,则获得最优参数集合
Figure FDA0002888269460000048
否则,将iter+1赋值给iter,并返回步骤S503。
5.如权利要求2所述的推荐方法,其特征在于,所述得到产品推荐结果,具体为:
随机选取所述产品集合U中一个用户v,根据所述偏好得分对用户v在产品集合P中的所有未交互产品进行降序排序,得到产品推荐结果。
6.如权利要求1所述的推荐方法,其特征在于,还包括:
对所述产品推荐结果进行评估,所述评估包括:准确率Precision@K评估、召回率Recall@K评估、MRR@K评估、MAP@K评估。
7.一种基于社交和社群的产品推荐***,其特征在于,所述推荐***包括计算机,所述计算机包括:
至少一个存储单元;
至少一个处理单元;
其中,所述至少一个存储单元中存储有至少一条指令,所述至少一条指令由所述至少一个处理单元加载并执行以实现以下步骤:
获取用户与产品的交互数据、社交关系数据和社群关系数据,并形成历史数据;
基于所述历史数据和预先设置的偏序关系,确定用户和产品的反馈关系;
基于所述历史数据和所述反馈关系确定用户对产品的偏好关系;
确定所述偏好关系的目标函数;
基于所述目标函数获取用户对产品的偏好得分;
基于所述偏好得分对用户的未交互产品进行排序,得到产品推荐结果;
所述用户对产品的偏好关系用基于用户集合U对产品集合P的矩阵分解模型表示:
Figure FDA0002888269460000051
其中:
Figure FDA0002888269460000052
表示用户集合U对产品集合P的偏好集合;
W表示用户集合U的特征矩阵;
H表示产品集合P的特征矩阵;
b表示产品集合P的偏差项;
所述偏好关系的目标函数为:
Figure FDA0002888269460000061
其中:
Figure FDA0002888269460000062
表示用户u对正反馈集合PFu中产品pi的偏好;
Figure FDA0002888269460000063
表示用户u对社交反馈集合SFu中产品ps的偏好;
Figure FDA0002888269460000064
表示用户u对社群反馈集合GFu中产品pg的偏好;
Figure FDA0002888269460000065
表示用户u对负反馈集合NFu中产品pj的偏好;
σ(·)表示logistic函数;
Θ表示所述矩阵分解模型中的参数集合,即Θ={W,H,b};
λΘ为正则化参数;
CS表示用户u与产品ps没有交互,但是用户u的好友中与该产品有过交互的好友个数;
Cg表示用户u与产品pg无交互,且其社交好友对该产品无交互,但是用户u的社群好友中对该产品有交互的社群好友个数。
8.一种计算机可读存储介质,该介质上存储有至少一条指令,至少所述一条指令由处理器加载并执行以实现如权利要求1所述的方法。
CN201910496478.0A 2019-06-10 2019-06-10 基于社交和社群的产品推荐方法、***和存储介质 Active CN110209946B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201910496478.0A CN110209946B (zh) 2019-06-10 2019-06-10 基于社交和社群的产品推荐方法、***和存储介质

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201910496478.0A CN110209946B (zh) 2019-06-10 2019-06-10 基于社交和社群的产品推荐方法、***和存储介质

Publications (2)

Publication Number Publication Date
CN110209946A CN110209946A (zh) 2019-09-06
CN110209946B true CN110209946B (zh) 2021-03-09

Family

ID=67791600

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201910496478.0A Active CN110209946B (zh) 2019-06-10 2019-06-10 基于社交和社群的产品推荐方法、***和存储介质

Country Status (1)

Country Link
CN (1) CN110209946B (zh)

Families Citing this family (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN110837598B (zh) * 2019-11-11 2021-03-19 腾讯科技(深圳)有限公司 信息推荐方法、装置、设备及存储介质
CN112231579B (zh) * 2019-12-30 2022-10-28 北京邮电大学 基于隐式社群发现的社会化视频推荐***与方法
CN111667298B (zh) * 2020-04-15 2022-09-30 合肥工业大学 用户个性化需求预测方法和***
CN112149003B (zh) * 2020-10-28 2023-06-20 浙江集享电子商务有限公司 商品社群推荐方法、装置和计算机设备
CN116594712B (zh) * 2023-05-29 2024-02-23 上海炫稷网络科技有限公司 基于数据分析的用户中心展示方法及***

Family Cites Families (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20120123837A1 (en) * 2010-11-17 2012-05-17 Wellstar Gmbh & Co Kg Social network shopping system and method
EP2915063A4 (en) * 2012-11-05 2016-04-13 Nara Logics Inc SYSTEMS AND METHODS FOR PROVIDING ENHANCED NEURAL NETWORK GENESIS AND RECOMMENDATIONS TO ONE OR MORE USERS
CN106777123B (zh) * 2016-12-16 2019-07-19 合肥工业大学 一种基于双向张量分解模型的群推荐方法
CN107391637B (zh) * 2017-07-10 2021-01-26 江苏省现代企业信息化应用支撑软件工程技术研发中心 针对具备地理社交信息的群组推荐方法
CN107833117B (zh) * 2017-12-13 2020-03-17 合肥工业大学 一种考虑标签信息的贝叶斯个性化排序推荐方法
CN108763314B (zh) * 2018-04-26 2021-01-19 深圳市腾讯计算机***有限公司 一种兴趣推荐方法、装置、服务器及存储介质

Also Published As

Publication number Publication date
CN110209946A (zh) 2019-09-06

Similar Documents

Publication Publication Date Title
CN110209946B (zh) 基于社交和社群的产品推荐方法、***和存储介质
CN111797321B (zh) 一种面向不同场景的个性化知识推荐方法及***
CN107451894B (zh) 数据处理方法、装置和计算机可读存储介质
CN108920503A (zh) 一种基于社交网络信任度的微视频个性化推荐算法
CN104199818B (zh) 一种基于分类的社会化推荐方法
CN109840833B (zh) 贝叶斯协同过滤推荐方法
CN109034960B (zh) 一种基于用户节点嵌入的多属性推断的方法
CN113379494B (zh) 基于异质社交关系的商品推荐方法、装置和电子设备
WO2020220757A1 (zh) 基于强化学习模型向用户推送对象的方法和装置
CN112115358A (zh) 一种利用知识图谱中多跳路径特征的个性化推荐方法
CN115712780A (zh) 一种基于云计算和大数据的信息推送方法及装置
CN110727872A (zh) 基于隐式反馈进行不明确选择行为挖掘的方法及装置
CN113420221A (zh) 融合用户隐式物品偏好与显式特征偏好的可解释推荐方法
CN109190040B (zh) 基于协同演化的个性化推荐方法及装置
CN109684561B (zh) 基于用户签到行为变化的深层语义分析的兴趣点推荐方法
CN108491477B (zh) 基于多维云和用户动态兴趣的神经网络推荐方法
CN110717103B (zh) 基于堆栈降噪编码器改进的协同过滤方法
CN108763515B (zh) 一种基于概率矩阵分解的时间敏感个性化推荐方法
CN117216376A (zh) 一种基于深度图神经网络的公平感知推荐***及推荐方法
KR20200142871A (ko) 명시적 및 내연적 평가 정보를 이용한 아이템 추천 방법 및 장치
CN114418701A (zh) 一种生成推荐列表的方法、装置、电子设备及存储介质
CN110956528B (zh) 一种电商平台的推荐方法及***
CN110825967A (zh) 一种提高推荐***多样性的推荐列表重排名方法
Sridhar et al. Extending Deep Neural Categorisation Models for Recommendations by Applying Gradient Based Learning
KR20200122652A (ko) 영양 성분 프로파일링 기반 사료추천 시스템

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