CN109656541A - 开发资源的推荐方法、装置、存储介质和电子设备 - Google Patents

开发资源的推荐方法、装置、存储介质和电子设备 Download PDF

Info

Publication number
CN109656541A
CN109656541A CN201811386627.XA CN201811386627A CN109656541A CN 109656541 A CN109656541 A CN 109656541A CN 201811386627 A CN201811386627 A CN 201811386627A CN 109656541 A CN109656541 A CN 109656541A
Authority
CN
China
Prior art keywords
user
matrix
eigenmatrix
known users
target user
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.)
Pending
Application number
CN201811386627.XA
Other languages
English (en)
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.)
Neusoft Corp
Original Assignee
Neusoft Corp
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 Neusoft Corp filed Critical Neusoft Corp
Priority to CN201811386627.XA priority Critical patent/CN109656541A/zh
Publication of CN109656541A publication Critical patent/CN109656541A/zh
Pending legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/30Creation or generation of source code

Landscapes

  • Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

本公开涉及一种开发资源的推荐方法、装置、存储介质和电子设备,涉及信息技术领域,该方法包括:根据目标用户与至少一个已知用户之间的交互数据,确定协作关系矩阵,对协作关系矩阵和评分矩阵进行矩阵分解,以将协作关系矩阵分解为第一用户特征矩阵和第二用户特征矩阵,以及将评分矩阵分解为第二用户特征矩阵和开发资源特征矩阵,根据概率图模型获取第一用户特征矩阵、第二用户特征矩阵和开发资源特征矩阵的联合后验概率,以联合后验概率最大化为条件,确定推荐矩阵,推荐矩阵中包括目标用户对至少一个开发资源的预测评分,根据预测评分,向目标用户推荐至少一个开发资源中的开发资源。能够提高开发资源推荐的覆盖率和准确度。

Description

开发资源的推荐方法、装置、存储介质和电子设备
技术领域
本公开涉及信息技术领域,具体地,涉及一种开发资源的推荐方法、装置、存储介质和电子设备。
背景技术
随着计算机技术和软件开发技术的不断发展,为了满足用户的各种需求,应用程序(英文:Application,缩写:APP)的功能越来越多样化,在应用程序在开发过程中,经常会采用软件众包或者协作开发的模式,因此集合了众多开发资源(开源软件、工具、接口、代码库等)的计算机社区、软件众包平台等公共平台大大提升了应用程序的开发效率和质量。然而,这些公共平台中包括了海量的开发资源,如何从多种开发资源中向用户推荐满足具体开发需求的开发资源一直是相关研究中的重点。现有的推荐方法通常是根据开发资源和多个用户之间的关系,利用评分矩阵进行推荐,而由于评分矩阵中数据稀疏和新用户冷启动等问题,会导致推荐的覆盖率和准确度都不高。
发明内容
本公开的目的是提供一种开发资源的推荐方法、装置、存储介质和电子设备,用以解决现有技术中开发资源推荐的覆盖率和准确度低的问题。
为了实现上述目的,根据本公开实施例的第一方面,提供一种开发资源的推荐方法,所述方法包括:
根据目标用户与至少一个已知用户之间的交互数据,确定协作关系矩阵,所述协作关系矩阵中包括所述目标用户与所述至少一个已知用户的用户相似度;
对所述协作关系矩阵和评分矩阵进行矩阵分解,以将所述协作关系矩阵分解为第一用户特征矩阵和第二用户特征矩阵,以及将所述评分矩阵分解为第二用户特征矩阵和开发资源特征矩阵,所述评分矩阵中包括所述至少一个已知用户对至少一个开发资源的评分;
根据概率图模型获取所述第一用户特征矩阵、所述第二用户特征矩阵和所述开发资源特征矩阵的联合后验概率,所述概率图模型为以所述协作关系矩阵和所述评分矩阵作为节点构建的模型;
以所述联合后验概率最大化为条件,确定推荐矩阵,所述推荐矩阵中包括所述目标用户对所述至少一个开发资源的预测评分;
根据所述预测评分,向所述目标用户推荐所述至少一个开发资源中的开发资源。
可选的,所述根据目标用户与至少一个已知用户之间的交互数据,确定协作关系矩阵,包括:
根据所述目标用户与所述至少一个已知用户之间的交互次数,确定所述目标用户与所述至少一个已知用户的显式相似度;
根据所述目标用户对应的社交标签集合,和所述至少一个已知用户对应的至少一个社交标签集合,确定所述目标用户与所述至少一个已知用户的社交相似度;
根据所述显式相似度和所述社交相似度,确定所述目标用户与所述至少一个已知用户的所述用户相似度;
根据所述目标用户与所述至少一个已知用户的所述用户相似度,确定所述协作关系矩阵。
可选的,所述社交标签集合中包括至少一个能够描述用户所属社交圈的标签;
所述根据所述目标用户与所述至少一个已知用户之间的交互次数,确定所述目标用户与所述至少一个已知用户的显式相似度,包括:
根据所述目标用户与所述至少一个已知用户之间的交互次数,利用第一公式计算所述目标用户与所述至少一个已知用户的显式相似度;
所述根据所述目标用户对应的社交标签集合,和所述至少一个已知用户对应的至少一个社交标签集合,确定所述目标用户与所述至少一个已知用户的社交相似度,包括:
根据所述目标用户对应的社交标签集合,和所述至少一个已知用户对应的至少一个社交标签集合,利用第二公式计算所述目标用户与所述至少一个已知用户的社交相似度;
所述第一公式包括:
所述第二公式包括:
其中,ui为所述目标用户,uj为所述至少一个已知用户中第j个已知用户,ec(ui,uj)为ui与uj的显式相似度,{a1,a2,...,an}为ui与uj之间交互行为集合,ak为所述交互行为集合中的第k个交互行为,v(ui,uj,ak)为ui与uj进行ak的次数,ωk为ak的权重;sc(ui,uj)为ui与uj的社交相似度,C(ui)为ui对应的社交标签集合,C(uj)为uj对应的社交标签集合。
可选的,所述根据所述显式相似度和所述社交相似度,确定所述目标用户与所述至少一个已知用户的所述用户相似度,包括:
根据所述显式相似度和所述社交相似度,利用第三公式计算所述目标用户与所述至少一个已知用户的所述用户相似度;
所述第三公式包括:
dc(ui,uj)=λ1*ec(ui,uj)+λ2*sc(ui,uj)
其中,dc(ui,uj)为ui与uj的用户相似度,λ1为所述显式相似度的权重,λ2为所述社交相似度的权重。
可选的,所述对所述协作关系矩阵和评分矩阵进行矩阵分解,以将所述协作关系矩阵分解为第一用户特征矩阵和第二用户特征矩阵,以及将所述评分矩阵分解为第二用户特征矩阵和开发资源特征矩阵,包括:
利用第一分解公式对所述协作关系矩阵进行概率矩阵分解,以获取所述第一用户特征矩阵和所述第二用户特征矩阵;
利用第二分解公式对所述评分矩阵进行概率矩阵分解,以获取所述第二用户特征矩阵和所述开发资源特征矩阵;
所述第一分解公式包括:
所述第二分解公式包括:
其中,ui为所述至少一个已知用户中第i个已知用户,uj为所述至少一个已知用户中第j个已知用户,vp为所述至少一个开发资源中第p个开发资源,DC为包含了ui和m-1个所述已知用户的相似度的所述协作关系矩阵,dc(ui,uj)为ui与uj的用户相似度,R为包含了ui和m-1个所述已知用户对n个开发资源的评分矩阵,r(ui,vp)为ui对vp的评分,σDC 2为DC的方差,σR 2为R的方差,Iij DC为DC的指示函数,Iip R为R的指示函数,Q为所述第一用户特征矩阵,Qj为Q的第j行,M为所述第二用户特征矩阵,Mi为M的第i行,V为所述开发资源特征矩阵,Vp为V的第p行,g(Mi TQj)为Mi和Qj的logistic回归函数,g(Mi TVp)为Mi和Vp的logistic回归函数,N(dc(ui,uj)|g(Mi TQj),σDC 2)为DC满足高斯分布时的概率密度函数,N(r(ui,vp)|g(Mi TVk),σR 2)为R满足高斯分布时的概率密度函数,p(DC|M,Q,σDC 2)为DC的条件概率分布,p(R|M,V,σR 2)为R的条件概率分布。
可选的,所述根据概率图模型获取所述第一用户特征矩阵、所述第二用户特征矩阵和所述开发资源特征矩阵的联合后验概率,包括:
根据所述概率图模型和概率计算公式,获取所述联合后验概率;
所述概率计算公式包括:
其中,σM 2为M的方差,σV 2为V的方差,σQ 2为Q的方差,p(M,V,Q|R,DC,σR 2DC 2M 2V 2Q 2)为所述联合后验概率,l为根据高斯先验概率确定的维数,c为预设的常数。
可选的,所述根据所述预测评分,向所述目标用户推荐所述至少一个开发资源中的开发资源,包括:
所述目标用户对所述至少一个开发资源中的每个开发资源的所述预测评分,确定所述每个开发资源的顺序;
根据所述顺序从所述至少一个开发资源中确定预设数量的开发资源;
向所述目标用户推荐所述预设数量的开发资源。
根据本公开实施例的第二方面,提供一种开发资源的推荐装置,所述装置包括:
第一确定模块,用于根据目标用户与至少一个已知用户之间的交互数据,确定协作关系矩阵,所述协作关系矩阵中包括所述目标用户与所述至少一个已知用户的用户相似度;
分解模块,用于对所述协作关系矩阵和评分矩阵进行矩阵分解,以将所述协作关系矩阵分解为第一用户特征矩阵和第二用户特征矩阵,以及将所述评分矩阵分解为第二用户特征矩阵和开发资源特征矩阵,所述评分矩阵中包括所述至少一个已知用户对至少一个开发资源的评分;
获取模块,用于根据概率图模型获取所述第一用户特征矩阵、所述第二用户特征矩阵和所述开发资源特征矩阵的联合后验概率,所述概率图模型为以所述协作关系矩阵和所述评分矩阵作为节点构建的模型;
第二确定模块,用于以所述联合后验概率最大化为条件,确定推荐矩阵,所述推荐矩阵中包括所述目标用户对所述至少一个开发资源的预测评分;
推荐模块,用于根据所述预测评分,向所述目标用户推荐所述至少一个开发资源中的开发资源。
可选的,所述第一确定模块包括:
显式相似度确定子模块,用于根据所述目标用户与所述至少一个已知用户之间的交互次数,确定所述目标用户与所述至少一个已知用户的显式相似度;
社交相似度确定子模块,用于根据所述目标用户对应的社交标签集合,和所述至少一个已知用户对应的至少一个社交标签集合,确定所述目标用户与所述至少一个已知用户的社交相似度;
用户相似度确定子模块,用于根据所述显式相似度和所述社交相似度,确定所述目标用户与所述至少一个已知用户的所述用户相似度;
矩阵确定子模块,用于根据所述目标用户与所述至少一个已知用户的所述用户相似度,确定所述协作关系矩阵。
可选的,所述社交标签集合中包括至少一个能够描述用户所属社交圈的标签;
所述显式相似度确定子模块用于:
根据所述目标用户与所述至少一个已知用户之间的交互次数,利用第一公式计算所述目标用户与所述至少一个已知用户的显式相似度;
所述社交相似度确定子模块用于:
根据所述目标用户对应的社交标签集合,和所述至少一个已知用户对应的至少一个社交标签集合,利用第二公式计算所述目标用户与所述至少一个已知用户的社交相似度;
所述第一公式包括:
所述第二公式包括:
其中,ui为所述目标用户,uj为所述至少一个已知用户中第j个已知用户,ec(ui,uj)为ui与uj的显式相似度,{a1,a2,...,an}为ui与uj之间交互行为集合,ak为所述交互行为集合中的第k个交互行为,v(ui,uj,ak)为ui与uj进行ak的次数,ωk为ak的权重;sc(ui,uj)为ui与uj的社交相似度,C(ui)为ui对应的社交标签集合,C(uj)为uj对应的社交标签集合。
可选的,所述用户相似度确定子模块用于:
根据所述显式相似度和所述社交相似度,利用第三公式计算所述目标用户与所述至少一个已知用户的所述用户相似度;
所述第三公式包括:
dc(ui,uj)=λ1*ec(ui,uj)+λ2*sc(ui,uj)
其中,dc(ui,uj)为ui与uj的用户相似度,λ1为所述显式相似度的权重,λ2为所述社交相似度的权重。
可选的,所述分解模块包括:
第一分解子模块,用于利用第一分解公式对所述协作关系矩阵进行概率矩阵分解,以获取所述第一用户特征矩阵和所述第二用户特征矩阵;
第二分解子模块,用于利用第二分解公式对所述评分矩阵进行概率矩阵分解,以获取所述第二用户特征矩阵和所述开发资源特征矩阵;
所述第一分解公式包括:
所述第二分解公式包括:
其中,ui为所述至少一个已知用户中第i个已知用户,uj为所述至少一个已知用户中第j个已知用户,vp为所述至少一个开发资源中第p个开发资源,DC为包含了ui和m-1个所述已知用户的相似度的所述协作关系矩阵,dc(ui,uj)为ui与uj的用户相似度,R为包含了ui和m-1个所述已知用户对n个开发资源的评分矩阵,r(ui,vp)为ui对vp的评分,σDC 2为DC的方差,σR 2为R的方差,Iij DC为DC的指示函数,Iip R为R的指示函数,Q为所述第一用户特征矩阵,Qj为Q的第j行,M为所述第二用户特征矩阵,Mi为M的第i行,V为所述开发资源特征矩阵,Vp为V的第p行,g(Mi TQj)为Mi和Qj的logistic回归函数,g(Mi TVp)为Mi和Vp的logistic回归函数,N(dc(ui,uj)|g(Mi TQj),σDC 2)为DC满足高斯分布时的概率密度函数,N(r(ui,vp)|g(Mi TVk),σR 2)为R满足高斯分布时的概率密度函数,p(DC|M,Q,σDC 2)为DC的条件概率分布,p(R|M,V,σR 2)为R的条件概率分布。
可选的,所述获取模块用于:
根据所述概率图模型和概率计算公式,获取所述联合后验概率;
所述概率计算公式包括:
其中,σM 2为M的方差,σV 2为V的方差,σQ 2为Q的方差,p(M,V,Q|R,DC,σR 2DC 2M 2V 2Q 2)为所述联合后验概率,l为根据高斯先验概率确定的维数,c为预设的常数。
可选的,所述推荐模块包括:
顺序确定子模块,用于所述目标用户对所述至少一个开发资源中的每个开发资源的所述预测评分,确定所述每个开发资源的顺序;
选择子模块,用于根据所述顺序从所述至少一个开发资源中确定预设数量的开发资源;
推荐子模块,用于向所述目标用户推荐所述预设数量的开发资源。
根据本公开实施例的第三方面,提供一种计算机可读存储介质,其上存储有计算机程序,该计算机程序被处理器执行时实现第一方面提供的开发资源的推荐方法的步骤。
根据本公开实施例的第四方面,提供一种电子设备,包括:
存储器,其上存储有计算机程序;
处理器,用于执行所述存储器中的所述计算机程序,以实现第一方面提供的开发资源的推荐方法的步骤。
通过上述技术方案,本公开首先根据目标用户与至少一个已知用户之间的交互数据,确定包括了目标用户与每个已知用户之间用户相似度的协作关系矩阵,再对协作关系矩阵进行矩阵分解得到第一用户特征矩阵和第二用户特征矩阵,对评分矩阵进行分解得到第二用户特征矩阵和开发资源特征矩阵,之后根据概率图模型获取第一用户特征矩阵、第二用户特征矩阵和开发资源特征矩阵的联合后验概率,再以联合后验概率最大化为条件,来确定包括了目标用户对每个开发资源的预测评分的推荐矩阵,最后根据预测评分向目标用户推荐开发资源。能够综合考虑多个用户之间的协作关系,和开发资源与多个用户之间的评分关系,来推荐适合目标用户的开发资源,提高了开发资源推荐的覆盖率和准确度。
本公开的其他特征和优点将在随后的具体实施方式部分予以详细说明。
附图说明
附图是用来提供对本公开的进一步理解,并且构成说明书的一部分,与下面的具体实施方式一起用于解释本公开,但并不构成对本公开的限制。在附图中:
图1a是根据一示例性实施例示出的一种开发资源的推荐方法的流程图;
图1b是图1a所述方法中一种概率图模型的示意图;
图2是根据一示例性实施例示出的另一种开发资源的推荐方法的流程图;
图3是根据一示例性实施例示出的另一种开发资源的推荐方法的流程图;
图4是根据一示例性实施例示出的另一种开发资源的推荐方法的流程图;
图5是根据一示例性实施例示出的一种开发资源的推荐装置的框图;
图6是根据一示例性实施例示出的另一种开发资源的推荐装置的框图;
图7是根据一示例性实施例示出的另一种开发资源的推荐装置的框图;
图8是根据一示例性实施例示出的另一种开发资源的推荐装置的框图;
图9是根据一示例性实施例示出的一种电子设备的框图。
具体实施方式
这里将详细地对示例性实施例进行说明,其示例表示在附图中。下面的描述涉及附图时,除非另有表示,不同附图中的相同数字表示相同或相似的要素。以下示例性实施例中所描述的实施方式并不代表与本公开相一致的所有实施方式。相反,它们仅是与如所附权利要求书中所详述的、本公开的一些方面相一致的装置和方法的例子。
图1a是根据一示例性实施例示出的一种开发资源的推荐方法的流程图,如图1a所示,该方法包括:
步骤101,根据目标用户与至少一个已知用户之间的交互数据,确定协作关系矩阵,协作关系矩阵中包括目标用户与至少一个已知用户的用户相似度。
举例来说,目标用户在软件开发的过程中,可以通过计算机社区、软件众包平台等公共平台来获取很多开发资源,例如Topcoder平台、StackOverflow社区、CSDN(英文:Chinese Software Developer Network)社区、全球开发者竞争中心(英文:CompetencyCenter)等,开发资源可以包括:开源软件、工具、应用程序接口、代码库等。而在这些计算机社区、软件众包平台中活跃着大量的用户,这些用户可以进行发帖、回答、下载、点赞、分享、代码评审等行为,也可以加入各种感兴趣的社交圈,还可设置或者为其他用户标记各种标签等,因此,各个用户之间也存在相互协作的关系,越是相似的用户,在选择开发资源时,越有可能具有相似的倾向性。可以通过日志采集工具或网络爬虫工具收集一定时间段内目标用户与至少一个已知用户之间的交互数据,来确定目标用户与至少一个已知用户的用户相似度,并根据目标用户与至少一个已知用户的用户相似度生成协作关系矩阵。
步骤102,对协作关系矩阵和评分矩阵进行矩阵分解,以将协作关系矩阵分解为第一用户特征矩阵和第二用户特征矩阵,以及将评分矩阵分解为第二用户特征矩阵和开发资源特征矩阵,评分矩阵中包括至少一个已知用户对至少一个开发资源的评分。
示例的,对协作关系矩阵进行矩阵分解,以得到第一用户特征矩阵和第二用户特征矩阵,第一用户特征矩阵和第二用户特征矩阵能够反映目标用户和至少一个已知用户的特征。对评分矩阵进行矩阵分解,以得到第二用户特征矩阵和开发资源特征矩阵,开发资源特征矩阵能够反映至少一个开发资源的特征。其中,评分矩阵中包括至少一个已知用户对至少一个开发资源的评分,评分矩阵中的每一个数值,代表一个已知用户对一个开发资源的评分,评分矩阵中的最后一行可以表示目标用户对每个开发资源的预测评分,可以全部预设为0,即表示当前状态下,预测评分为未知状态。
需要说明的,矩阵分解算法可以采用基础矩阵分解、概率矩阵分解、张量分解(英文:Tensor Decomposition)、正则化奇异值分解(英文:Regularized Singular ValueDecomposition)等算法。对协作关系矩阵和评分矩阵进行矩阵分解时,得到是多种第一用户特征矩阵和第二用户特征矩阵的组合、多种第二用户特征矩阵和开发资源特征矩阵的组合,其中,每种第一用户特征矩阵和第二用户特征矩阵的乘积均约等于协作关系矩阵,每种第二用户特征矩阵和开发资源特征矩阵的乘积均约等于评分矩阵。
步骤103,根据概率图模型获取第一用户特征矩阵、第二用户特征矩阵和开发资源特征矩阵的联合后验概率,概率图模型为以协作关系矩阵和评分矩阵作为节点构建的模型。
举例来说,由于协作关系矩阵和评分矩阵中,共享了用户的特征,因此以协作关系矩阵和评分矩阵作为节点构建的模型,利用概率图模型的属性,能够将多个用户(包括目标用户和已知用户)的特征和开发资源的特征融合起来,即可以理解为多个用户和开发资源之间的概率依赖关系。如图1b所示,协作关系矩阵反映的是第一用户特征矩阵和第二用户特征矩阵之间的关系,评分矩阵反映的是第二用户特征矩阵和开发资源特征矩阵之间的关系,协作关系矩阵和评分矩阵共享了第二用户特征矩阵,因此,能够利用概率图模型将协作关系矩阵和评分矩阵融合起来,以得到第一用户特征矩阵、第二用户特征矩阵和开发资源特征矩阵的联合后验概率。
步骤104,以联合后验概率最大化为条件,确定推荐矩阵,推荐矩阵中包括目标用户对至少一个开发资源的预测评分。
示例的,在步骤103中,联合后验概率能够将第一用户特征矩阵、第二用户特征矩阵和开发资源特征矩阵融合起来,因此,能够将步骤102中得到的多种第一用户特征矩阵和第二用户特征矩阵的组合、多种第二用户特征矩阵和开发资源特征矩阵的组合,融合为多种第一用户特征矩阵、第二用户特征矩阵和开发资源特征矩阵的组合。按照联合后验概率最大化为条件,选取最合适的一种第一用户特征矩阵、第二用户特征矩阵和开发资源特征矩阵的组合,从而确定包括了目标用户对每一个开发资源的预测评分的推荐矩阵。
步骤105,根据预测评分,向目标用户推荐至少一个开发资源中的开发资源。
示例的,根据预测评分的大小,向目标用户推荐多个开发资源中的满足预设条件的开发资源。例如可以向目标用户推荐预测评分最大的预设数量(例如:3个)的开发资源,也可以向目标用户推荐预测评分大于预设阈值的开发资源。
综上所述,本公开首先根据目标用户与至少一个已知用户之间的交互数据,确定包括了目标用户与每个已知用户之间用户相似度的协作关系矩阵,再对协作关系矩阵进行矩阵分解得到第一用户特征矩阵和第二用户特征矩阵,对评分矩阵进行分解得到第二用户特征矩阵和开发资源特征矩阵,之后根据概率图模型获取第一用户特征矩阵、第二用户特征矩阵和开发资源特征矩阵的联合后验概率,再以联合后验概率最大化为条件,来确定包括了目标用户对每个开发资源的预测评分的推荐矩阵,最后根据预测评分向目标用户推荐开发资源。能够综合考虑多个用户之间的协作关系,和开发资源与多个用户之间的评分关系,来推荐适合目标用户的开发资源,提高了开发资源推荐的覆盖率和准确度。
图2是根据一示例性实施例示出的另一种开发资源的推荐方法的流程图,如图2所示,步骤101包括:
步骤1011,根据目标用户与至少一个已知用户之间的交互次数,确定目标用户与至少一个已知用户的显式相似度。
步骤1012,根据目标用户对应的社交标签集合,和至少一个已知用户对应的至少一个社交标签集合,确定目标用户与至少一个已知用户的社交相似度。
举例来说,用户在使用或浏览计算机社区、软件众包平台时,会产生各种关系,可以包括用户之间能够感知的显式关系:例如:发帖、评价、问答、评论、下载、访问、点赞、分享、‘@’、代码评审等行为,还可以包括用户之间不会感知,但共同具有某些特征的社交关系,例如:用户之间共属于某个社交圈、具有某些共同的属性标签等,社交圈可以是用户主动加入的小组(例如:“Java开发小组”、“神经网络讨论组”等),属性标签可以由用户自己设置或者多个用户互相标记各种标签(例如:“软件工程师”、“C++”、“数据挖掘”、“可视化界面”)。可以通过日志采集工具或网络爬虫工具收集一定时间段内目标用户与至少一个已知用户之间的交互数据,其中,根据显式关系中包括的行为对应的交互次数,确定目标用户与至少一个已知用户的社交相似度,根据目标用户和已知用户的社交标签集合,确定目标用户与至少一个已知用户的社交相似度。
步骤1013,根据显式相似度和社交相似度,确定目标用户与至少一个已知用户的用户相似度。
步骤1014,根据目标用户与至少一个已知用户的用户相似度,确定协作关系矩阵。
示例的,结合目标用户与至少一个已知用户的显式相似度和社交相似度之后,来确定目标用户与至少一个已知用户的用户相似度,并根据目标用户与至少一个已知用户的用户相似度生成协作关系矩阵。
可选的,社交标签集合中包括至少一个能够描述用户所属社交圈的标签(例如可以是:“串口调试工具讨论组”、“Java工程师分享站”等)。
步骤1011可以通过以下方式来实现:
根据目标用户与至少一个已知用户之间的交互次数,利用第一公式计算目标用户与至少一个已知用户的显式相似度。
步骤1012可以通过以下方式来实现:
根据目标用户对应的社交标签集合,和至少一个已知用户对应的至少一个社交标签集合,利用第二公式计算目标用户与至少一个已知用户的社交相似度。
其中,第一公式包括:
第二公式包括:
其中,ui为目标用户,uj为至少一个已知用户中第j个已知用户,ec(ui,uj)为ui与uj的显式相似度,{a1,a2,...,an}为ui与uj之间交互行为集合,ak为交互行为集合中的第k个交互行为,v(ui,uj,ak)为ui与uj进行ak的次数,ωk为ak的权重;sc(ui,uj)为ui与uj的社交相似度,C(ui)为ui对应的社交标签集合,C(uj)为uj对应的社交标签集合。
示例的,U为包含了m个元素的用户集合,包含了ui和m-1个已知用户,A={a1,a2,...,an}为包含了n种交互行为的交互行为集合,社交相似度可以理解为Jaccard相似性系数。其中,两个用户之间的显式相似度能够反映两个用户的协作关系的紧密程度,显式相似度越大,协作关系越紧密,表明两个用户的兴趣偏好也越相似。而两个用户之间的社交相似度,能够反映两个用户的社交标签的重合度,同样的,社交相似度越大,表明两个用户的兴趣偏好也越相似。
步骤1013可以通过以下方式来实现:
根据显式相似度和社交相似度,利用第三公式计算目标用户与至少一个已知用户的用户相似度。
其中,第三公式包括:
dc(ui,uj)=λ1*ec(ui,uj)+λ2*sc(ui,uj)
其中,dc(ui,uj)为ui与uj的用户相似度,λ1为显式相似度的权重,λ2为社交相似度的权重。
图3是根据一示例性实施例示出的另一种开发资源的推荐方法的流程图,如图3所示,步骤102可以通过以下步骤来实现:
步骤1021,利用第一分解公式对协作关系矩阵进行概率矩阵分解,以获取第一用户特征矩阵和第二用户特征矩阵。
步骤1022,利用第二分解公式对评分矩阵进行概率矩阵分解,以获取第二用户特征矩阵和开发资源特征矩阵。
第一分解公式包括:
第二分解公式包括:
其中,ui为至少一个已知用户中第i个已知用户,uj为至少一个已知用户中第j个已知用户,vp为至少一个开发资源中第p个开发资源,DC为包含了ui和m-1个已知用户的相似度的协作关系矩阵,dc(ui,uj)为ui与uj的用户相似度,R为包含了ui和m-1个已知用户对n个开发资源的评分矩阵,r(ui,vp)为ui对vp的评分,σDC 2为DC的方差,σR 2为R的方差,Iij DC为DC的指示函数,Iip R为R的指示函数,Q为第一用户特征矩阵,Qj为Q的第j行,M为第二用户特征矩阵,Mi为M的第i行,V为开发资源特征矩阵,Vp为V的第p行,为Mi和Qj的logistic回归函数,g(Mi TVp)为Mi和Vp的logistic回归函数,为DC满足高斯分布时的概率密度函数,N(r(ui,vp)|g(Mi TVk),σR 2)为R满足高斯分布时的概率密度函数,p(DC|M,Q,σDC 2)为DC的条件概率分布,为R的条件概率分布。
举例来说,概率矩阵分解首先假设分解后的两个特征矩阵满足均值为0的高斯分布,特征矩阵中的每个特征向量都是独立同分布的,以第一分解公式对协作关系矩阵进行概率矩阵分解来举例,Q和M均满足均值为0,方差为σQ 2和σM 2的高斯分布:
其中,I为单位矩阵。
可选的,步骤103可以通过以下方式来实现:
根据概率图模型和概率计算公式,获取联合后验概率。
概率计算公式包括:
其中,σM 2为M的方差,σV 2为V的方差,σQ 2为Q的方差,p(M,V,Q|R,DC,σR 2DC 2M 2V 2Q 2)为联合后验概率,l为根据高斯先验概率确定的维数,c为预设的常数。
举例来说,在步骤103确定了联合后验概率后,在步骤104中的联合后验概率最大化,等价于最小化损失函数,损失函数包括:
其中,表示Frobenius范数,为正则化因子,用于防止最小化损失函数过拟合的问题。
在求最小化损失函数的过程中,可以采用SGD(英文:Stochastic GradientDescent,,中文:随机梯度下降法)算法,对损失函数求偏导,即:
其中,g′(x)=exp(x)(1+exp(x))2为logistic回归函数的倒数。可以将初值设置为经验值,经过多次迭代,最后求得损失函数最小时的M和V,从而确定推荐矩阵,即推荐矩阵中ui对vp的预测评分为
图4是根据一示例性实施例示出的另一种开发资源的推荐方法的流程图,如图4所示,步骤105包括以下步骤:
步骤1051,目标用户对至少一个开发资源中的每个开发资源的预测评分,确定每个开发资源的顺序。
步骤1052,根据顺序从至少一个开发资源中确定预设数量的开发资源。
步骤1053,向目标用户推荐预设数量的开发资源。
示例的,首先根据每个开发资源的预测评分的大小,确定每个开发资源的顺序,再根据确定的顺序向目标用户推荐至少一个开发资源中预设数量的开发资源。例如可以按照预测评分由大到小降序的顺序对至少一个开发资源中的每个开发资源进行排序,再向目标用户推荐预测评分最大的预设数量(例如可以是5个)的开发资源。还可以预先设置一个预测评分阈值,向目标用户推荐预测评分大于预测评分阈值的开发资源。
综上所述,本公开首先根据目标用户与至少一个已知用户之间的交互数据,确定包括了目标用户与每个已知用户之间用户相似度的协作关系矩阵,再对协作关系矩阵进行矩阵分解得到第一用户特征矩阵和第二用户特征矩阵,对评分矩阵进行分解得到第二用户特征矩阵和开发资源特征矩阵,之后根据概率图模型获取第一用户特征矩阵、第二用户特征矩阵和开发资源特征矩阵的联合后验概率,再以联合后验概率最大化为条件,来确定包括了目标用户对每个开发资源的预测评分的推荐矩阵,最后根据预测评分向目标用户推荐开发资源。能够综合考虑多个用户之间的协作关系,和开发资源与多个用户之间的评分关系,来推荐适合目标用户的开发资源,提高了开发资源推荐的覆盖率和准确度。
图5是根据一示例性实施例示出的一种开发资源的推荐装置的框图,如图5所示,该装置200包括:
第一确定模块201,用于根据目标用户与至少一个已知用户之间的交互数据,确定协作关系矩阵,协作关系矩阵中包括目标用户与至少一个已知用户的用户相似度。
分解模块202,用于对协作关系矩阵和评分矩阵进行矩阵分解,以将协作关系矩阵分解为第一用户特征矩阵和第二用户特征矩阵,以及将评分矩阵分解为第二用户特征矩阵和开发资源特征矩阵,评分矩阵中包括至少一个已知用户对至少一个开发资源的评分。
获取模块203,用于根据概率图模型获取第一用户特征矩阵、第二用户特征矩阵和开发资源特征矩阵的联合后验概率,概率图模型为以协作关系矩阵和评分矩阵作为节点构建的模型。
第二确定模块204,用于以联合后验概率最大化为条件,确定推荐矩阵,推荐矩阵中包括目标用户对至少一个开发资源的预测评分。
推荐模块205,用于根据预测评分,向目标用户推荐至少一个开发资源中的开发资源。
图6是根据一示例性实施例示出的另一种开发资源的推荐装置的框图,如图6所示,第一确定模块201包括:
显式相似度确定子模块2011,用于根据目标用户与至少一个已知用户之间的交互次数,确定目标用户与至少一个已知用户的显式相似度。
社交相似度确定子模块2012,用于根据目标用户对应的社交标签集合,和至少一个已知用户对应的至少一个社交标签集合,确定目标用户与至少一个已知用户的社交相似度。
用户相似度确定子模块2013,用于根据显式相似度和社交相似度,确定目标用户与至少一个已知用户的用户相似度。
矩阵确定子模块2014,用于根据目标用户与至少一个已知用户的用户相似度,确定协作关系矩阵。
可选的,社交标签集合中包括至少一个能够描述用户所属社交圈的标签。
显式相似度确定子模块2011可以实现以下步骤:
根据目标用户与至少一个已知用户之间的交互次数,利用第一公式计算目标用户与至少一个已知用户的显式相似度。
社交相似度确定子模块2012可以实现以下步骤:
根据目标用户对应的社交标签集合,和至少一个已知用户对应的至少一个社交标签集合,利用第二公式计算目标用户与至少一个已知用户的社交相似度。
第一公式包括:
第二公式包括:
其中,ui为目标用户,uj为至少一个已知用户中第j个已知用户,ec(ui,uj)为ui与uj的显式相似度,{a1,a2,...,an}为ui与uj之间交互行为集合,ak为交互行为集合中的第k个交互行为,v(ui,uj,ak)为ui与uj进行ak的次数,ωk为ak的权重;sc(ui,uj)为ui与uj的社交相似度,C(ui)为ui对应的社交标签集合,C(uj)为uj对应的社交标签集合。
可选的,用户相似度确定子模块2013可以实现以下步骤:
根据显式相似度和社交相似度,利用第三公式计算目标用户与至少一个已知用户的用户相似度。
第三公式包括:
dc(ui,uj)=λ1*ec(ui,uj)+λ2*sc(ui,uj)
其中,dc(ui,uj)为ui与uj的用户相似度,λ1为显式相似度的权重,λ2为社交相似度的权重。
图7是根据一示例性实施例示出的另一种开发资源的推荐装置的框图,如图7所示,分解模块202包括:
第一分解子模块2021,用于利用第一分解公式对协作关系矩阵进行概率矩阵分解,以获取第一用户特征矩阵和第二用户特征矩阵。
第二分解子模块2022,用于利用第二分解公式对评分矩阵进行概率矩阵分解,以获取第二用户特征矩阵和开发资源特征矩阵。
第一分解公式包括:
第二分解公式包括:
其中,ui为至少一个已知用户中第i个已知用户,uj为至少一个已知用户中第j个已知用户,vp为至少一个开发资源中第p个开发资源,DC为包含了ui和m-1个已知用户的相似度的协作关系矩阵,dc(ui,uj)为ui与uj的用户相似度,R为包含了ui和m-1个已知用户对n个开发资源的评分矩阵,r(ui,vp)为ui对vp的评分,σDC 2为DC的方差,σR 2为R的方差,Iij DC为DC的指示函数,Iip R为R的指示函数,Q为第一用户特征矩阵,Qj为Q的第j行,M为第二用户特征矩阵,Mi为M的第i行,V为开发资源特征矩阵,Vp为V的第p行,为Mi和Qj的logistic回归函数,g(Mi TVp)为Mi和Vp的logistic回归函数,为DC满足高斯分布时的概率密度函数,为R满足高斯分布时的概率密度函数,p(DC|M,Q,σDC 2)为DC的条件概率分布,p(R|M,V,σR 2)为R的条件概率分布。
可选的,获取模块203用于实现以下步骤:
根据概率图模型和概率计算公式,获取联合后验概率。
概率计算公式包括:
其中,σM 2为M的方差,σV 2为V的方差,σQ 2为Q的方差,p(M,V,Q|R,DC,σR 2DC 2M 2V 2Q 2)为联合后验概率,l为根据高斯先验概率确定的维数,c为预设的常数。
图8是根据一示例性实施例示出的另一种开发资源的推荐装置的框图,如图8所示,推荐模块205包括:
顺序确定子模块2051,用于目标用户对至少一个开发资源中的每个开发资源的预测评分,确定每个开发资源的顺序。
选择子模块2052,用于根据顺序从至少一个开发资源中确定预设数量的开发资源。
推荐子模块2053,用于向目标用户推荐预设数量的开发资源。
关于上述实施例中的装置,其中各个模块执行操作的具体方式已经在有关该方法的实施例中进行了详细描述,此处将不做详细阐述说明。
综上所述,本公开首先根据目标用户与至少一个已知用户之间的交互数据,确定包括了目标用户与每个已知用户之间用户相似度的协作关系矩阵,再对协作关系矩阵进行矩阵分解得到第一用户特征矩阵和第二用户特征矩阵,对评分矩阵进行分解得到第二用户特征矩阵和开发资源特征矩阵,之后根据概率图模型获取第一用户特征矩阵、第二用户特征矩阵和开发资源特征矩阵的联合后验概率,再以联合后验概率最大化为条件,来确定包括了目标用户对每个开发资源的预测评分的推荐矩阵,最后根据预测评分向目标用户推荐开发资源。能够综合考虑多个用户之间的协作关系,和开发资源与多个用户之间的评分关系,来推荐适合目标用户的开发资源,提高了开发资源推荐的覆盖率和准确度。
图9是根据一示例性实施例示出的一种电子设备300的框图。如图9所示,该电子设备300可以包括:处理器301,存储器302。该电子设备300还可以包括多媒体组件303,输入/输出(I/O)接口304,以及通信组件305中的一者或多者。
其中,处理器301用于控制该电子设备300的整体操作,以完成上述的开发资源的推荐方法中的全部或部分步骤。存储器302用于存储各种类型的数据以支持在该电子设备300的操作,这些数据例如可以包括用于在该电子设备300上操作的任何应用程序或方法的指令,以及应用程序相关的数据,例如联系人数据、收发的消息、图片、音频、视频等等。该存储器302可以由任何类型的易失性或非易失性存储设备或者它们的组合实现,例如静态随机存取存储器(Static Random Access Memory,简称SRAM),电可擦除可编程只读存储器(Electrically Erasable Programmable Read-Only Memory,简称EEPROM),可擦除可编程只读存储器(Erasable Programmable Read-Only Memory,简称EPROM),可编程只读存储器(Programmable Read-Only Memory,简称PROM),只读存储器(Read-Only Memory,简称ROM),磁存储器,快闪存储器,磁盘或光盘。多媒体组件303可以包括屏幕和音频组件。其中屏幕例如可以是触摸屏,音频组件用于输出和/或输入音频信号。例如,音频组件可以包括一个麦克风,麦克风用于接收外部音频信号。所接收的音频信号可以被进一步存储在存储器302或通过通信组件305发送。音频组件还包括至少一个扬声器,用于输出音频信号。I/O接口304为处理器301和其他接口模块之间提供接口,上述其他接口模块可以是键盘,鼠标,按钮等。这些按钮可以是虚拟按钮或者实体按钮。通信组件305用于该电子设备300与其他设备之间进行有线或无线通信。无线通信,例如Wi-Fi,蓝牙,近场通信(Near FieldCommunication,简称NFC),2G、3G或4G,或它们中的一种或几种的组合,因此相应的该通信组件305可以包括:Wi-Fi模块,蓝牙模块,NFC模块。
在一示例性实施例中,电子设备300可以被一个或多个应用专用集成电路(Application Specific Integrated Circuit,简称ASIC)、数字信号处理器(DigitalSignal Processor,简称DSP)、数字信号处理设备(Digital Signal Processing Device,简称DSPD)、可编程逻辑器件(Programmable Logic Device,简称PLD)、现场可编程门阵列(Field Programmable Gate Array,简称FPGA)、控制器、微控制器、微处理器或其他电子元件实现,用于执行上述的开发资源的推荐方法。
在另一示例性实施例中,还提供了一种包括程序指令的计算机可读存储介质,该程序指令被处理器执行时实现上述的开发资源的推荐方法的步骤。例如,该计算机可读存储介质可以为上述包括程序指令的存储器302,上述程序指令可由电子设备300的处理器301执行以完成上述的开发资源的推荐方法。
综上所述,本公开首先根据目标用户与至少一个已知用户之间的交互数据,确定包括了目标用户与每个已知用户之间用户相似度的协作关系矩阵,再对协作关系矩阵进行矩阵分解得到第一用户特征矩阵和第二用户特征矩阵,对评分矩阵进行分解得到第二用户特征矩阵和开发资源特征矩阵,之后根据概率图模型获取第一用户特征矩阵、第二用户特征矩阵和开发资源特征矩阵的联合后验概率,再以联合后验概率最大化为条件,来确定包括了目标用户对每个开发资源的预测评分的推荐矩阵,最后根据预测评分向目标用户推荐开发资源。能够综合考虑多个用户之间的协作关系,和开发资源与多个用户之间的评分关系,来推荐适合目标用户的开发资源,提高了开发资源推荐的覆盖率和准确度。
以上结合附图详细描述了本公开的优选实施方式,但是,本公开并不限于上述实施方式中的具体细节,在本公开的技术构思范围内,本领域技术人员在考虑说明书及实践本公开后,容易想到本公开的其它实施方案,均属于本公开的保护范围。
另外需要说明的是,在上述具体实施方式中所描述的各个具体技术特征,在不矛盾的情况下,可以通过任何合适的方式进行组合。同时本公开的各种不同的实施方式之间也可以进行任意组合,只要其不违背本公开的思想,其同样应当视为本公开所公开的内容。本公开并不局限于上面已经描述出的精确结构,本公开的范围仅由所附的权利要求来限制。

Claims (10)

1.一种开发资源的推荐方法,其特征在于,所述方法包括:
根据目标用户与至少一个已知用户之间的交互数据,确定协作关系矩阵,所述协作关系矩阵中包括所述目标用户与所述至少一个已知用户的用户相似度;
对所述协作关系矩阵和评分矩阵进行矩阵分解,以将所述协作关系矩阵分解为第一用户特征矩阵和第二用户特征矩阵,以及将所述评分矩阵分解为第二用户特征矩阵和开发资源特征矩阵,所述评分矩阵中包括所述至少一个已知用户对至少一个开发资源的评分;
根据概率图模型获取所述第一用户特征矩阵、所述第二用户特征矩阵和所述开发资源特征矩阵的联合后验概率,所述概率图模型为以所述协作关系矩阵和所述评分矩阵作为节点构建的模型;
以所述联合后验概率最大化为条件,确定推荐矩阵,所述推荐矩阵中包括所述目标用户对所述至少一个开发资源的预测评分;
根据所述预测评分,向所述目标用户推荐所述至少一个开发资源中的开发资源。
2.根据权利要求1所述的方法,其特征在于,所述根据目标用户与至少一个已知用户之间的交互数据,确定协作关系矩阵,包括:
根据所述目标用户与所述至少一个已知用户之间的交互次数,确定所述目标用户与所述至少一个已知用户的显式相似度;
根据所述目标用户对应的社交标签集合,和所述至少一个已知用户对应的至少一个社交标签集合,确定所述目标用户与所述至少一个已知用户的社交相似度;
根据所述显式相似度和所述社交相似度,确定所述目标用户与所述至少一个已知用户的所述用户相似度;
根据所述目标用户与所述至少一个已知用户的所述用户相似度,确定所述协作关系矩阵。
3.根据权利要求2所述的方法,其特征在于,所述社交标签集合中包括至少一个能够描述用户所属社交圈的标签;
所述根据所述目标用户与所述至少一个已知用户之间的交互次数,确定所述目标用户与所述至少一个已知用户的显式相似度,包括:
根据所述目标用户与所述至少一个已知用户之间的交互次数,利用第一公式计算所述目标用户与所述至少一个已知用户的显式相似度;
所述根据所述目标用户对应的社交标签集合,和所述至少一个已知用户对应的至少一个社交标签集合,确定所述目标用户与所述至少一个已知用户的社交相似度,包括:
根据所述目标用户对应的社交标签集合,和所述至少一个已知用户对应的至少一个社交标签集合,利用第二公式计算所述目标用户与所述至少一个已知用户的社交相似度;
所述第一公式包括:
所述第二公式包括:
其中,ui为所述目标用户,uj为所述至少一个已知用户中第j个已知用户,ec(ui,uj)为ui与uj的显式相似度,{a1,a2,...,an}为ui与uj之间交互行为集合,ak为所述交互行为集合中的第k个交互行为,v(ui,uj,ak)为ui与uj进行ak的次数,ωk为ak的权重;sc(ui,uj)为ui与uj的社交相似度,C(ui)为ui对应的社交标签集合,C(uj)为uj对应的社交标签集合。
4.根据权利要求3所述的方法,其特征在于,所述根据所述显式相似度和所述社交相似度,确定所述目标用户与所述至少一个已知用户的所述用户相似度,包括:
根据所述显式相似度和所述社交相似度,利用第三公式计算所述目标用户与所述至少一个已知用户的所述用户相似度;
所述第三公式包括:
dc(ui,uj)=λ1*ec(ui,uj)+λ2*sc(ui,uj)
其中,dc(ui,uj)为ui与uj的用户相似度,λ1为所述显式相似度的权重,λ2为所述社交相似度的权重。
5.根据权利要求1所述的方法,其特征在于,所述对所述协作关系矩阵和评分矩阵进行矩阵分解,以将所述协作关系矩阵分解为第一用户特征矩阵和第二用户特征矩阵,以及将所述评分矩阵分解为第二用户特征矩阵和开发资源特征矩阵,包括:
利用第一分解公式对所述协作关系矩阵进行概率矩阵分解,以获取所述第一用户特征矩阵和所述第二用户特征矩阵;
利用第二分解公式对所述评分矩阵进行概率矩阵分解,以获取所述第二用户特征矩阵和所述开发资源特征矩阵;
所述第一分解公式包括:
所述第二分解公式包括:
其中,ui为所述至少一个已知用户中第i个已知用户,uj为所述至少一个已知用户中第j个已知用户,vp为所述至少一个开发资源中第p个开发资源,DC为包含了ui和m-1个所述已知用户的相似度的所述协作关系矩阵,dc(ui,uj)为ui与uj的用户相似度,R为包含了ui和m-1个所述已知用户对n个开发资源的评分矩阵,r(ui,vp)为ui对vp的评分,σDC 2为DC的方差,σR 2为R的方差,Iij DC为DC的指示函数,Iip R为R的指示函数,Q为所述第一用户特征矩阵,Qj为Q的第j行,M为所述第二用户特征矩阵,Mi为M的第i行,V为所述开发资源特征矩阵,Vp为V的第p行,g(Mi TQj)为Mi和Qj的logistic回归函数,g(Mi TVp)为Mi和Vp的logistic回归函数,N(dc(ui,uj)g(Mi TQj),σDC 2)为DC满足高斯分布时的概率密度函数,N(r(ui,vp)g(Mi TVk),σR 2)为R满足高斯分布时的概率密度函数,p(DC|M,Q,σDC 2)为DC的条件概率分布,p(R|M,V,σR 2)为R的条件概率分布。
6.根据权利要求5所述的方法,其特征在于,所述根据概率图模型获取所述第一用户特征矩阵、所述第二用户特征矩阵和所述开发资源特征矩阵的联合后验概率,包括:
根据所述概率图模型和概率计算公式,获取所述联合后验概率;
所述概率计算公式包括:
其中,σM 2为M的方差,σV 2为V的方差,σQ 2为Q的方差,p(M,V,Q|R,DC,σR 2DC 2M 2V 2Q 2)为所述联合后验概率,l为根据高斯先验概率确定的维数,c为预设的常数。
7.根据权利要求1所述的方法,其特征在于,所述根据所述预测评分,向所述目标用户推荐所述至少一个开发资源中的开发资源,包括:
所述目标用户对所述至少一个开发资源中的每个开发资源的所述预测评分,确定所述每个开发资源的顺序;
根据所述顺序从所述至少一个开发资源中确定预设数量的开发资源;
向所述目标用户推荐所述预设数量的开发资源。
8.一种开发资源的推荐装置,其特征在于,所述装置包括:
第一确定模块,用于根据目标用户与至少一个已知用户之间的交互数据,确定协作关系矩阵,所述协作关系矩阵中包括所述目标用户与所述至少一个已知用户的用户相似度;
分解模块,用于对所述协作关系矩阵和评分矩阵进行矩阵分解,以将所述协作关系矩阵分解为第一用户特征矩阵和第二用户特征矩阵,以及将所述评分矩阵分解为第二用户特征矩阵和开发资源特征矩阵,所述评分矩阵中包括所述至少一个已知用户对至少一个开发资源的评分;
获取模块,用于根据概率图模型获取所述第一用户特征矩阵、所述第二用户特征矩阵和所述开发资源特征矩阵的联合后验概率,所述概率图模型为以所述协作关系矩阵和所述评分矩阵作为节点构建的模型;
第二确定模块,用于以所述联合后验概率最大化为条件,确定推荐矩阵,所述推荐矩阵中包括所述目标用户对所述至少一个开发资源的预测评分;
推荐模块,用于根据所述预测评分,向所述目标用户推荐所述至少一个开发资源中的开发资源。
9.一种计算机可读存储介质,其上存储有计算机程序,其特征在于,该程序被处理器执行时实现权利要求1-7中任一项所述方法的步骤。
10.一种电子设备,其特征在于,包括:
存储器,其上存储有计算机程序;
处理器,用于执行所述存储器中的所述计算机程序,以实现权利要求1-7中任一项所述方法的步骤。
CN201811386627.XA 2018-11-20 2018-11-20 开发资源的推荐方法、装置、存储介质和电子设备 Pending CN109656541A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201811386627.XA CN109656541A (zh) 2018-11-20 2018-11-20 开发资源的推荐方法、装置、存储介质和电子设备

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201811386627.XA CN109656541A (zh) 2018-11-20 2018-11-20 开发资源的推荐方法、装置、存储介质和电子设备

Publications (1)

Publication Number Publication Date
CN109656541A true CN109656541A (zh) 2019-04-19

Family

ID=66111469

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201811386627.XA Pending CN109656541A (zh) 2018-11-20 2018-11-20 开发资源的推荐方法、装置、存储介质和电子设备

Country Status (1)

Country Link
CN (1) CN109656541A (zh)

Cited By (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN110110235A (zh) * 2019-05-14 2019-08-09 北京百度网讯科技有限公司 用于处理数据的方法和装置
CN110609960A (zh) * 2019-09-25 2019-12-24 华中师范大学 学习资源推荐方法、装置、数据处理设备及存储介质
CN110941727A (zh) * 2019-11-29 2020-03-31 北京达佳互联信息技术有限公司 一种资源推荐方法、装置、电子设备及存储介质
CN111581509A (zh) * 2020-04-30 2020-08-25 中国工商银行股份有限公司 信息处理方法、装置、电子设备和介质
CN112948701A (zh) * 2021-04-16 2021-06-11 泰康保险集团股份有限公司 信息推荐装置、方法、设备及存储介质
CN113592290A (zh) * 2021-07-28 2021-11-02 青岛海尔工业智能研究院有限公司 产业链协作解决方案推荐方法、装置、设备、及存储介质

Citations (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103678431A (zh) * 2013-03-26 2014-03-26 南京邮电大学 一种基于标准标签和项目评分的推荐方法
CN104915444A (zh) * 2015-06-29 2015-09-16 北京邮电大学 信息推荐方法及装置
CN106844557A (zh) * 2016-12-30 2017-06-13 东软集团股份有限公司 信息推荐方法及装置
CN106886559A (zh) * 2016-12-28 2017-06-23 浙江浙大网新集团有限公司 同时融入好友特征和相似用户特征的协同过滤方法
CN107341204A (zh) * 2017-06-22 2017-11-10 电子科技大学 一种融合物品标签信息的协同过滤推荐方法及系统
CN107358533A (zh) * 2017-06-15 2017-11-17 桂林理工大学 一种网络社区的用户推荐方法及系统
EP3293646A1 (en) * 2016-09-09 2018-03-14 Yandex Europe AG Method and server for training a machine learning algorithm (mla) for content recommendation generation
CN107862012A (zh) * 2017-10-30 2018-03-30 江苏大学 一种针对大学生群体的信息资源自动推荐方法

Patent Citations (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103678431A (zh) * 2013-03-26 2014-03-26 南京邮电大学 一种基于标准标签和项目评分的推荐方法
CN104915444A (zh) * 2015-06-29 2015-09-16 北京邮电大学 信息推荐方法及装置
EP3293646A1 (en) * 2016-09-09 2018-03-14 Yandex Europe AG Method and server for training a machine learning algorithm (mla) for content recommendation generation
CN106886559A (zh) * 2016-12-28 2017-06-23 浙江浙大网新集团有限公司 同时融入好友特征和相似用户特征的协同过滤方法
CN106844557A (zh) * 2016-12-30 2017-06-13 东软集团股份有限公司 信息推荐方法及装置
CN107358533A (zh) * 2017-06-15 2017-11-17 桂林理工大学 一种网络社区的用户推荐方法及系统
CN107341204A (zh) * 2017-06-22 2017-11-10 电子科技大学 一种融合物品标签信息的协同过滤推荐方法及系统
CN107862012A (zh) * 2017-10-30 2018-03-30 江苏大学 一种针对大学生群体的信息资源自动推荐方法

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
YUSHENG LI 等: "Recommender_System_Using_Implicit_Social_Information", 《IEICE TRANSACTIONS ON INFORMATION AND SYSTEMS》 *

Cited By (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN110110235A (zh) * 2019-05-14 2019-08-09 北京百度网讯科技有限公司 用于处理数据的方法和装置
CN110609960A (zh) * 2019-09-25 2019-12-24 华中师范大学 学习资源推荐方法、装置、数据处理设备及存储介质
CN110609960B (zh) * 2019-09-25 2022-02-22 华中师范大学 学习资源推荐方法、装置、数据处理设备及存储介质
CN110941727A (zh) * 2019-11-29 2020-03-31 北京达佳互联信息技术有限公司 一种资源推荐方法、装置、电子设备及存储介质
CN110941727B (zh) * 2019-11-29 2023-09-29 北京达佳互联信息技术有限公司 一种资源推荐方法、装置、电子设备及存储介质
CN111581509A (zh) * 2020-04-30 2020-08-25 中国工商银行股份有限公司 信息处理方法、装置、电子设备和介质
CN112948701A (zh) * 2021-04-16 2021-06-11 泰康保险集团股份有限公司 信息推荐装置、方法、设备及存储介质
CN112948701B (zh) * 2021-04-16 2023-10-20 泰康保险集团股份有限公司 信息推荐装置、方法、设备及存储介质
CN113592290A (zh) * 2021-07-28 2021-11-02 青岛海尔工业智能研究院有限公司 产业链协作解决方案推荐方法、装置、设备、及存储介质
CN113592290B (zh) * 2021-07-28 2024-05-17 卡奥斯工业智能研究院(青岛)有限公司 产业链协作解决方案推荐方法、装置、设备、及存储介质

Similar Documents

Publication Publication Date Title
CN109656541A (zh) 开发资源的推荐方法、装置、存储介质和电子设备
Feng et al. Poi2vec: Geographical latent representation for predicting future visitors
Moon et al. Modeling and simulating terrorist networks in social and geospatial dimensions
Yin et al. Spatio-temporal recommendation in social media
CN107562875A (zh) 一种模型的更新方法、装置及系统
Li et al. Location inference for non-geotagged tweets in user timelines
Lin et al. Domain-independent user simulation with transformers for task-oriented dialogue systems
Huang et al. Multi-modal Bayesian embedding for point-of-interest recommendation on location-based cyber-physical–social networks
CN106845644A (zh) 一种通过相互关系学习用户及移动应用的联系的异构网络
CN106530010A (zh) 融合时间因素的协同过滤方法和装置
Chen et al. Next POI recommendation based on location interest mining with recurrent neural networks
CN111931067A (zh) 兴趣点推荐方法、装置、设备和介质
Gao et al. Mining human mobility in location-based social networks
CN110097193A (zh) 训练模型的方法及系统和预测序列数据的方法及系统
Xiao et al. Simulation optimization using genetic algorithms with optimal computing budget allocation
CN109753275A (zh) 应用编程接口的推荐方法、装置、存储介质和电子设备
Liu et al. Evolving graph construction for successive recommendation in event-based social networks
CN110781405B (zh) 基于联合卷积矩阵分解的文档上下文感知推荐方法及系统
CN112131261A (zh) 基于社区网络的社区查询方法、装置和计算机设备
CN110347314A (zh) 一种内容展示方法、装置、存储介质和计算机设备
Zhou et al. Familiarity-dependent computational modelling of indoor landmark selection for route communication: a ranking approach
Das et al. A key review on graph data science: The power of graphs in scientific studies
Revelle et al. Persistent roles in online social networks
Lan et al. Spatio-temporal position-extended and gated-deep network for next POI recommendation
De Paola et al. A multi‐agent system for itinerary suggestion in smart environments

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
RJ01 Rejection of invention patent application after publication

Application publication date: 20190419

RJ01 Rejection of invention patent application after publication