CN111523037B - 一种开源软件开发中Pull Request的评审者推荐方法 - Google Patents

一种开源软件开发中Pull Request的评审者推荐方法 Download PDF

Info

Publication number
CN111523037B
CN111523037B CN202010338549.7A CN202010338549A CN111523037B CN 111523037 B CN111523037 B CN 111523037B CN 202010338549 A CN202010338549 A CN 202010338549A CN 111523037 B CN111523037 B CN 111523037B
Authority
CN
China
Prior art keywords
reviewer
pull request
pull
request
similarity
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
CN202010338549.7A
Other languages
English (en)
Other versions
CN111523037A (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.)
University of Shanghai for Science and Technology
Original Assignee
University of Shanghai for Science and 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 University of Shanghai for Science and Technology filed Critical University of Shanghai for Science and Technology
Priority to CN202010338549.7A priority Critical patent/CN111523037B/zh
Publication of CN111523037A publication Critical patent/CN111523037A/zh
Application granted granted Critical
Publication of CN111523037B publication Critical patent/CN111523037B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

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
    • 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/9536Search customisation based on social or collaborative filtering

Landscapes

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

Abstract

本发明涉及一种开源软件开发中Pull Request的评审者推荐方法,该推荐方法包括以下步骤:步骤1:提取计算Pull Request与评审者的相关性因素;步骤2:基于历史数据利用贝叶斯个性化排序模型优化确定每个评审者于步骤1中的各个相关性因素的权重;步骤3:对于当前Pull Request及每个评审者,利用各个相关性因素基于各自权重的得分进行加权,按照加权后的分数排序并进行推荐。该方法考虑了评审者与Pull Request内容的兴趣相关性、活跃度、社交关系影响程度及文件路径相关性四个方面的因素,通过贝叶斯个性化排序方法对四方面因素进行个性化加权,从而为Pull Request推荐合适的评审者。

Description

一种开源软件开发中Pull Request的评审者推荐方法
技术领域
本发明涉及计算机技术领域,尤其是涉及一种开源软件开发中Pull Request的评审者推荐方法。
背景技术
Pull Request是开源软件社区大部分开发者提供代码的主要方式,为了保证软件项目的质量,对Pull Request评审是开源软件开发中必不可少的一部分。在Pull Request评审中,自动推荐合适的代码评审人员,能够有效为代码评审降低成本和节约时间。
Pull Request的评审者推荐受到了广泛的关注。目前的方法以粗粒度的模式对代码评审人员进行推荐。例如,基于文件路径相似度、基于社交关系、基于信息检索及基于活跃度等进行评审者推荐。这些方法归根到底,是以不同方面的相似度作为推荐的最终条件,但并没有考虑到不同候选评审用户在选择Pull Request进行评审时有不同的选择偏好。
发明内容
本发明的目的就是为了克服上述现有技术存在的缺陷而提供一种开源软件开发中Pull Request的评审者推荐方法,在实际应用中,将相关因素与评审者本身的选择偏好相结合,有助于提高推荐效果,
本发明的目的可以通过以下技术方案来实现:
一种开源软件开发中Pull Request的评审者推荐方法,该推荐方法包括以下步骤:
步骤1:提取计算Pull Request与评审者的相关性因素;
步骤2:基于历史数据利用贝叶斯个性化排序模型优化确定每个评审者于步骤1中的各个相关性因素的权重;
步骤3:对于当前Pull Request及每个评审者,利用各个相关性因素基于各自权重的得分进行加权,按照加权后的分数排序并进行推荐。
进一步地,所述的步骤1包括以下分步骤:
步骤101:提取计算Pull Request的内容与评审者的兴趣相关性;
步骤102:提取计算评审者的当前活跃度;
步骤103:提取计算开发人员与Pull Request提交人员的社交相关性;
步骤104:提取计算当前Pull Request所涉及的文件路径与开发人员之前评审过的Pull Request的文件路径的相似性。
进一步地,所述的步骤101中的Pull Request的内容与评审者的兴趣相关性,其计算公式为:
式中,SimCont(Revieweri,pnew)为Pull Request的内容与评审者的兴趣相关性,PRi为第i个评审者Revieweri以前审核过的Pull Request集合,similarity(pnew,p')为开发人员之前评审过的Pull Request与目标Pull Request之间的相似性。
进一步地,所述的开发人员之前评审过的Pull Request与目标Pull Request之间的相似性,其计算公式为:
式中,vnew和v'分别为pnew和p'各自对应的向量,pnew和p'分别为目标Pull Request和历史记录中的Pull Request。
进一步地,所述的步骤102中的评审者的当前活跃度,其计算公式为:
式中,Act(Revieweri,pnew)为评审者的当前活跃度,ComSi为第i个评审者Revieweri各个Pull Request中的所有评论集合,γ为时间窗口的长度,λ为时间衰减因子,为新Pull Request的创建时间,/>为第i个评审者Revieweri的某条评论Cj的创建时间。
进一步地,所述的步骤103中的开发人员与Pull Request提交人员的社交相关性,其计算公式为:
式中,PRsubmitter为贡献者submitter提交且处于新Pull Request之前的所有PullRequest集合,nij为第i个评审者Revieweri在Pull Request pj中留下的第nij条评论,β为调节参数,SocRel(Revieweri,pnew)为开发人员与Pull Request提交人员的社交相关性。
进一步地,所述的步骤104中的当前Pull Request所涉及的文件路径与开发人员之前评审过的Pull Request的文件路径的相似性,其计算公式为:
式中,Fp'为历史记录中的Pull Request更改的相关文件,为目标PullRequest更改的相关文件,similarity(f,f')为历史记录中的Pull Request和目标PullRequest各自更改的相关文件之间相似度,FileRel(Revieweri,pnew)为当前Pull Request所涉及的文件路径与开发人员之前评审过的Pull Request的文件路径的相似性。
进一步地,所述的历史记录中的Pull Request和目标Pull Request各自更改的相关文件之间相似度,其计算公式为:
式中,commonPath(f,f')为两个文件路径中的公共目录的数量,max(Length(f),Length(f'))为两个文件的长度的最大值。
进一步地,所述的步骤2中利用贝叶斯个性化排序模型优化确定每个评审者于步骤1中的各个相关性因素的权重,该过程中对应的迭代求解的计算公式为:
式中,W'和W分别为迭代后和迭代前的用户的偏好用权重矩阵,α和λ为超参数,和/>分别为第u个用户Revieweru对第i或第j个Pull Request的评审倾向得分,Wu为偏好用权重矩阵第u列元素构成的列向量,/>和/>分别为第u个用户Revieweru与第i或第j个PullRequest之间的相关性用词向量的转置矩阵。
进一步地,所述的步骤3中的加权后的分数,即每个评审者对当前目标PullRequest的得分,其计算公式为:
式中,Supred为每个评审者对当前目标Pull Request的得分,为第u个用户Revieweru与第p个Pull Request之间的相关性用词向量的转置矩阵。
与现有技术相比,本发明具有以下优点:
(1)本发明方法作为一种基于贝叶斯个性化排序方法,对评审者与Pull Request内容的兴趣相关性、活跃度、社交关系影响程度及文件路径相关性四个方面的因素的权重进行学习,从而能够为每一个Pull Request推荐合适的评审人员,推荐更加精准。
附图说明
图1为本发明的方法流程示意图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明的一部分实施例,而不是全部实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动的前提下所获得的所有其他实施例,都应属于本发明保护的范围。
具体实施例;
(1)Pull Request与评审者的相关性因素度量
第一步,Pull Request的内容与评审者的兴趣相关性提取。将Pull Request历史数据作为输入,并提取出每个Pull Request的描述及标题并形成语料库,然后使用TF-IDF算法将Pull Request向量化处理,其中TF-IDF算法如下所示:
式中,t是某个Pull Request中抽取的技术术语,pr为某个Pull Request,corpusPR是由历史数据的Pull Request的描述及标题形成的语料库,nt为技术术语t在pr中出现的总次数,Npr为技术术语在语料库中出现的总的次数。
利用余弦相似度衡量开发人员之前评审过的Pull Request与目标Pull Request之间的相似性公式如下所示:
式中,vnew和v分别为pnew和p各自对应的向量,pnew和p′分别为目标Pull Request和历史记录中的Pull Request。
则Pull Request的内容与评审者的兴趣相关性,其计算公式为:
式中,SimCont(Revieweri,pnew)为Pull Request的内容与评审者的兴趣相关性,PRi为第i个评审者Revieweri以前审核过的Pull Request集合,similarity(pnew,p')为开发人员之前评审过的Pull Request与目标Pull Request之间的相似性。
第二步,评审者活跃度提取。据调查显示,候选评审者的积极性会随时间的变化而变化,某些代码评审者可能不活跃或短期时间内不活跃,最近活跃的代码评审者倾向于对新的Pull Request做出评论。本发明方法中使用最近的评论来衡量用户的活跃度,如下所示:
式中,Act(Revieweri,pnew)为评审者的当前活跃度,ComSi为第i个评审者Revieweri各个Pull Request中的所有评论集合,γ为时间窗口的长度,λ为时间衰减因子,为新Pull Request的创建时间,/>为第i个评审者Revieweri的某条评论Cj的创建时间。
第三步,社交关系影响程度的提取。通过社交关系可以快速获取具有参考价值的候选代码评审者。开发人员之间的社交关系紧密程度可直接通过评审者和贡献者之间的评论关系来体现,其社交关系影响程度如下所示:
式中,PRsubmitter为贡献者submitter提交且处于新Pull Request之前的所有PullRequest集合,nij为第i个评审者Revieweri在Pull Request pj中留下的第nij条评论,β为调节参数,经实验将值设置为0.8最为合适,SocRel(Revieweri,pnew)为开发人员与PullRequest提交人员的社交相关性。
第四步,Pull Request文件路径相关性。基于同一个目录下的文件密切相关且代码功能相关的思想,计算用户评审过的Pull Request与新Pull Request的文件路径相关性如下:
式中,Fp'为历史记录中的Pull Request更改的相关文件,为目标PullRequest更改的相关文件,similarity(f,f')为历史记录中的Pull Request和目标PullRequest各自更改的相关文件之间相似度,FileRel(Revieweri,pnew)为当前Pull Request所涉及的文件路径与开发人员之前评审过的Pull Request的文件路径的相似性。
历史记录中的Pull Request和目标Pull Request各自更改的相关文件之间相似度,具体如下式所示:
式中,commonPath(f,f')为两个文件路径中的公共目录的数量,max(Length(f),Length(f'))为两个文件的长度的最大值,其中,两个文件路径中的公共目录的数量,具体计算方法如下:首先,根据文件路径,将路径字符串其目录分隔符进行切分,得到该文件所处位置的目录层次列表;然后比较两文件的目录前缀,取重合的公共目录数为得到的结果。例如,对于某安卓项目,有以下两个文件,分别为/src/camera/photo/a.java和/src/camera/video/a.java,则可得两者公共祖先目录为/src/camera文件夹,因而两路径的公共目录数量为2。
对于用户集U和Pull Request集PR,其中的第u个用户Revieweru与某一PullRequest p,将Revieweru与p之间的相关性用向量spu表示,由上文中的Pull Request的文本特征相似度、评审者活跃度、社交关系影响程度及文件路径相似性值组成,具体表达式如下所示:
(2)提取评审者的选择偏好
评审者选择偏好模型为:
式中,将用户的偏好用权重矩阵记作W,其维度为4×||U||,4代表评审者特征维数。Wu为偏好用权重矩阵第u列元素构成的列向量(u=1,2,3,…,||U||),表示Revieweru在本特征相似度、评审者活跃度、社交关系影响程度及文件路径相似性值四个维度上的权重,具体表示如下所示:
其中,代码评审者的偏好权重,属于评审者的自身属性,不会因Pull Request的更改发生相应的变化。
评审者的偏好信息可从评审者是否参与评审的行为直接体现。因此,在求解用户偏好向量前,需对评审者的行为进行记录,用来作为求解模型参数。具体记录方式为当评审者参与过目标Pull Request的评审,记为数字1,反之记为0,整个记录用矩阵A表示,该矩阵是一个||PR||×||U||的二维矩阵,其值由0、1组成。使用变量S代表评审者对不同Pull请求之间的关系矩阵,其维度为||PR||×||U||×4,具体表达式形式如下所示:
其中,各个元素代表Pull请求和用户Revieweru之间的特征向量,定义于spu
是衡量代码评审者的得分排序矩阵,参与过评审的评审者得分越高,反之越低,具体形式表示如下:
其中,各个元素代表用户Revieweru对Pull请求的评审得分,其计算可以由下式定义:
针对某个特定的Pull Request,需满足评审者分数高于未评审者分数,这里借助贝叶斯个性化排序思想,从已记录的矩阵A中将评审者对Pull Request的评论进行标记,如果评审者Revieweru同时面对pri和prj时,评论了pri却没有评论prj,则记录一个三元组<u,i,j>,其含义针对评审者Revieweru来说,pri的排序要比prj靠前。如果针对评审者Revieweru,这样的反馈有m组,则可得到m组评审者Revieweru对应的训练样本。
基于最大后验估计P(wu|>u),用>u表示候选代码评审者Revieweru对应的所有PullRequest的全序关系,则优化目标是P((wu|>u)。根据贝叶斯公式可知如下公式:
由每个代码评审者的偏好行为相互独立,则对于任意一位代码评审者Revieweru来说,P(>u)对所有的Pull Request一样,则有如下公式:
P(wu|>u)∝P(>u|wu)P(wu)
根据上式可将优化目标转化为两部分。第一部分和样本数据集D有关,第二部分和样本数据集D无关。针对第一部分,根据代码评审者的偏好行为相互独立及同一候选评审者对不同Pull Request的偏序相互独立,可推导如下公式:
其中δ(b)公式如下:
由排序关系满足的完整性和反对称性,将第一部分优化目标简化为:
为进一步优化计算,将优化目标转化为:
其中,σ(x)是逻辑回归函数,如果j>ui时,反之i>uj时,这里的/>和/>用来表示候选评审者Revieweru与pri与prj之间的潜在关系,即根据Revieweru对所有Pull Request评审情况,组建所有的偏序对。所以进一步将优化目标转化为:
基于贝叶斯假设,可知第二部分P(wu)符合正态分布,其均值为0,协方差矩阵是λWS,是模型中的正则化参数,如下所示:
P(wu)~N(0,λWS)
P(wu)的对数和||wu||2成正比,如下所示:
lnP(wu)=λ||wu||2
最终根据最大对数后验估计函数将优化目标成:
将优化目标函数推导之后,使用梯度上升法求解参数,对用户的偏好用权重矩阵求导:
由于
其中,表示Revieweru针对Pull请求i评分,/>表示Revieweru针对Pull请求j评分,wu表示Revieweru的权重向量,siu表示Revieweru对Pull Request i之间的关系向量,sju表示Revieweru对Pull Request j之间的关系向量,可以得出:
在优化过程中,对偏好用权重矩阵进行随机初始化,并迭代更新模型参数,当偏好用权重矩阵达到收敛状态可得用户的偏好用权重矩阵W,由以上推导可得偏好用权重矩阵参数梯度迭代如下所示:
式中,W'和W分别为迭代后和迭代前的用户的偏好用权重矩阵,α和λ为超参数,和/>分别为第u个用户Revieweru对第i或第j个Pull Request的评审倾向得分,Wu为偏好用权重矩阵第u列元素构成的列向量,/>和/>分别为第u个用户Revieweru与第i或第j个PullRequest之间的相关性用词向量的转置矩阵。
(3)对当前Pull Request,进行评审者推荐
从训练阶段可得评审者的偏好向量,针对模型预测阶段,本发明方法使用预测阶段的数据集作为模型的输入,从输入的数据集中提取出评审者与目标Pull Request之间的相似向量,则评审者对目标Pull Request的得分为:
式中,Supred为每个评审者对当前目标Pull Request的得分,为第u个用户Revieweru与第p个Pull Request之间的相关性用词向量的转置矩阵。
通过对所有的评审者计算该得分,分数越高的评审者越适合作为被推荐人员,最终使用降序排序,取前K名作为推荐候选人选。
综上所述,本发明方法流程如图1所示,包括以下步骤:
步骤1:提取计算Pull Request与评审者的相关性因素;
步骤2:基于历史数据利用贝叶斯个性化排序模型优化确定每个评审者于步骤1中的各个相关性因素的权重;
步骤3:对于当前Pull Request及每个评审者,利用各个相关性因素基于各自权重的得分进行加权,按照加权后的分数排序并进行推荐。
以上所述,仅为本发明的具体实施方式,但本发明的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本发明揭露的技术范围内,可轻易想到各种等效的修改或替换,这些修改或替换都应涵盖在本发明的保护范围之内。因此,本发明的保护范围应以权利要求的保护范围为准。

Claims (8)

1.一种开源软件开发中Pull Request的评审者推荐方法,其特征在于,该推荐方法包括以下步骤:
步骤1:提取计算Pull Request与评审者的相关性因素;
步骤2:基于历史数据利用贝叶斯个性化排序模型优化确定每个评审者于步骤1中的各个相关性因素的权重;
步骤3:对于当前Pull Request及每个评审者,利用各个相关性因素基于各自权重的得分进行加权,按照加权后的分数排序并进行推荐;
所述的步骤1包括以下分步骤:
步骤101:提取计算Pull Request的内容与评审者的兴趣相关性;
步骤102:提取计算评审者的当前活跃度;
步骤103:提取计算开发人员与Pull Request提交人员的社交相关性;
步骤104:提取计算当前Pull Request所涉及的文件路径与开发人员之前评审过的Pull Request的文件路径的相似性;
所述的步骤2中利用贝叶斯个性化排序模型优化确定每个评审者于步骤1中的各个相关性因素的权重,该过程中对应的迭代求解的计算公式为:
式中,W'和W分别为迭代后和迭代前的用户的偏好用权重矩阵,α和λ为超参数,和/>分别为第u个用户Revieweru对第i或第j个Pull Request的评审倾向得分,Wu为偏好用权重矩阵第u列元素构成的列向量,/>为第u个用户Revieweru与第i个Pull Request之间的相关性用词向量siu的转置矩阵,/>为第u个用户Revieweru与第j个Pull Request之间的相关性用词向量sju的转置矩阵;
对于用户集U和Pull Request集PR,其中的第u个用户Revieweru与某一Pull Requestp,将Revieweru与p之间的相关性用向量spu表示,即spu为第u个用户Revieweru与某一PullRequest p之间的相关性用词向量,由Pull Request的文本特征相似度、评审者活跃度、社交关系影响程度及文件路径相似性值组成,具体表达式如下所示:
其中,SimCont(Revieweru,p)、Act(Revieweru,p)、SocRel(Revieweru,p)、FileRel(Revieweru,p)分别为Pull Request的文本特征相似度、评审者活跃度、社交关系影响程度、文件路径相似性值。
2.根据权利要求1所述的一种开源软件开发中Pull Request的评审者推荐方法,其特征在于,所述的步骤101中的Pull Request的内容与评审者的兴趣相关性,其计算公式为:
式中,SimCont(Revieweri,pnew)为Pull Request的内容与评审者的兴趣相关性,PRi为第i个评审者Revieweri以前审核过的Pull Request集合,similarity(pnew,p')为开发人员之前评审过的Pull Request与目标Pull Request之间的相似性。
3.根据权利要求2所述的一种开源软件开发中Pull Request的评审者推荐方法,其特征在于,所述的开发人员之前评审过的Pull Request与目标Pull Request之间的相似性,其计算公式为:
式中,vnew和v'分别为pnew和p'各自对应的向量,pnew和p'分别为目标Pull Request和历史记录中的Pull Request。
4.根据权利要求1所述的一种开源软件开发中Pull Request的评审者推荐方法,其特征在于,所述的步骤102中的评审者的当前活跃度,其计算公式为:
式中,Act(Revieweri,pnew)为评审者的当前活跃度,ComSi为第i个评审者Revieweri各个Pull Request中的所有评论集合,γ为时间窗口的长度,λ为时间衰减因子,为新Pull Request的创建时间,/>为第i个评审者Revieweri的某条评论Cj的创建时间。
5.根据权利要求1所述的一种开源软件开发中Pull Request的评审者推荐方法,其特征在于,所述的步骤103中的开发人员与Pull Request提交人员的社交相关性,其计算公式为:
式中,PRsubmitter为贡献者submitter提交且处于新Pull Request之前的所有PullRequest集合,nij为第i个评审者Revieweri在Pull Request pj中留下的第nij条评论,β为调节参数,SocRel(Revieweri,pnew)为开发人员与Pull Request提交人员的社交相关性。
6.根据权利要求1所述的一种开源软件开发中Pull Request的评审者推荐方法,其特征在于,所述的步骤104中的当前Pull Request所涉及的文件路径与开发人员之前评审过的Pull Request的文件路径的相似性,其计算公式为:
式中,Fp'为历史记录中的Pull Request更改的相关文件,为目标Pull Request更改的相关文件,similarity(f,f')为历史记录中的Pull Request和目标Pull Request各自更改的相关文件之间相似度,FileRel(Revieweri,pnew)为当前Pull Request所涉及的文件路径与开发人员之前评审过的Pull Request的文件路径的相似性。
7.根据权利要求6所述的一种开源软件开发中Pull Request的评审者推荐方法,其特征在于,所述的历史记录中的Pull Request和目标Pull Request各自更改的相关文件之间相似度,其计算公式为:
式中,commonPath(f,f')为两个文件路径中的公共目录的数量,max(Length(f),Length(f'))为两个文件的长度的最大值。
8.根据权利要求1所述的一种开源软件开发中Pull Request的评审者推荐方法,其特征在于,所述的步骤3中的加权后的分数,即每个评审者对当前目标Pull Request的得分,其计算公式为:
式中,Supred为每个评审者对当前目标Pull Request的得分,为第u个用户Revieweru与第p个Pull Request之间的相关性用词向量的转置矩阵。
CN202010338549.7A 2020-04-26 2020-04-26 一种开源软件开发中Pull Request的评审者推荐方法 Active CN111523037B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202010338549.7A CN111523037B (zh) 2020-04-26 2020-04-26 一种开源软件开发中Pull Request的评审者推荐方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202010338549.7A CN111523037B (zh) 2020-04-26 2020-04-26 一种开源软件开发中Pull Request的评审者推荐方法

Publications (2)

Publication Number Publication Date
CN111523037A CN111523037A (zh) 2020-08-11
CN111523037B true CN111523037B (zh) 2023-08-04

Family

ID=71904599

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202010338549.7A Active CN111523037B (zh) 2020-04-26 2020-04-26 一种开源软件开发中Pull Request的评审者推荐方法

Country Status (1)

Country Link
CN (1) CN111523037B (zh)

Families Citing this family (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN112347373B (zh) * 2020-11-13 2022-06-17 浙江工业大学 一种基于开源软件邮件网络的角色推荐方法
CN114239409A (zh) * 2021-12-20 2022-03-25 南京邮电大学 一种基于多元回归模型分析影响Pull Request被拒绝的方法
CN115048526B (zh) * 2022-08-15 2022-10-25 中国人民解放军国防科技大学 基于状态标记的拉请求修订进度跟踪方法、装置和设备

Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN104182543A (zh) * 2014-09-05 2014-12-03 上海理工大学 基于相似性传播与流行度降维的混合推荐方法
CN105913323A (zh) * 2016-05-06 2016-08-31 浙江大学 一种GitHub开源社区的PullRequest评审者推荐方法
CN106934071A (zh) * 2017-04-27 2017-07-07 北京大学 基于异构信息网络和贝叶斯个性化排序的推荐方法及装置
CN109885776A (zh) * 2019-02-27 2019-06-14 中南大学 开源社区pr评审者可解释推荐模型
CN110474944A (zh) * 2018-05-10 2019-11-19 腾讯科技(深圳)有限公司 网络信息的处理方法、装置及存储介质
CN110609963A (zh) * 2019-08-09 2019-12-24 北京三快在线科技有限公司 推荐榜单生成方法及装置、电子设备及存储介质

Family Cites Families (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7617519B2 (en) * 2004-03-18 2009-11-10 Microsoft Corporation System and method for intelligent recommendation with experts for user trust decisions

Patent Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN104182543A (zh) * 2014-09-05 2014-12-03 上海理工大学 基于相似性传播与流行度降维的混合推荐方法
CN105913323A (zh) * 2016-05-06 2016-08-31 浙江大学 一种GitHub开源社区的PullRequest评审者推荐方法
CN106934071A (zh) * 2017-04-27 2017-07-07 北京大学 基于异构信息网络和贝叶斯个性化排序的推荐方法及装置
CN110474944A (zh) * 2018-05-10 2019-11-19 腾讯科技(深圳)有限公司 网络信息的处理方法、装置及存储介质
CN109885776A (zh) * 2019-02-27 2019-06-14 中南大学 开源社区pr评审者可解释推荐模型
CN110609963A (zh) * 2019-08-09 2019-12-24 北京三快在线科技有限公司 推荐榜单生成方法及装置、电子设备及存储介质

Non-Patent Citations (5)

* Cited by examiner, † Cited by third party
Title
"A Recommendation Algorithm for Collaborative Conceptual Modeling Based on Co-occurrence Graph";Kai Fu et al.;《APRES 2015》;20151231;第51–63页 *
"RevRec A two-layer reviewer recommendation algorithm in pull-based development model";YANG Cheng et al.;《Journal of Central South University》;20181231;第1129–1143页 *
"基于加权贝叶斯的小学英语个性化资源推荐";刘玉婷等;《现代中小学教育》;20171231;第33卷(第12期);第53–58页 *
"开源软件开发中的代码评审";赵海燕等;《小型微型计算机系统》;20200409(第4期);第861-867页 *
"混合分层抽样统计与贝叶斯个性化排序的旅游景点推荐模型研究";李广丽等;《华中师范大学学报(自然科学版)》;20190430;第53卷(第2期);第214–221页 *

Also Published As

Publication number Publication date
CN111523037A (zh) 2020-08-11

Similar Documents

Publication Publication Date Title
CN111523037B (zh) 一种开源软件开发中Pull Request的评审者推荐方法
CN106503022B (zh) 推送推荐信息的方法和装置
EP4181026A1 (en) Recommendation model training method and apparatus, recommendation method and apparatus, and computer-readable medium
Kawamae Serendipitous recommendations via innovators
CN109685212B (zh) 一种机器阅读理解模型的分阶段训练方法及装置
CN111488137A (zh) 一种基于共同注意力表征学习的代码搜索方法
CN109960749B (zh) 模型获取方法、关键词生成方法、装置、介质及计算设备
Huang et al. Neural embedding collaborative filtering for recommender systems
CN112800344A (zh) 一种基于深度神经网络的电影推荐方法
Wang et al. Research on hybrid collaborative filtering recommendation algorithm based on the time effect and sentiment analysis
Wu et al. Optimization matrix factorization recommendation algorithm based on rating centrality
CN113221019A (zh) 基于即时学习的个性化推荐方法和系统
CN111125428B (zh) 基于评分预测函数拟合结构的时间相关电影推荐方法
Huang et al. Multi-task learning for entity recommendation and document ranking in web search
Devi et al. Image captioning using reinforcement learning with BLUDEr optimization
Salampasis et al. Comparison of RNN and Embeddings Methods for Next-item and Last-basket Session-based Recommendations
CN117056601A (zh) 一种基于超图的音乐推荐方法与系统
CN114491296B (zh) 提案联名人推荐方法、系统、计算机设备及可读存储介质
Pawar et al. Movies Recommendation System using Cosine Similarity
Attalariq et al. Chatbot-Based Book Recommender System Using Singular Value Decomposition
Ferrer-Sapena et al. Self-defined information indices: application to the case of university rankings
Pujahari et al. Modeling users’ preference changes in recommender systems via time-dependent Markov random fields
Ramadhan et al. Music Recommender System Based on Play Count Using Singular Value Decomposition++
Gawinecki et al. What makes a good movie recommendation? Feature selection for content-based filtering
Liu et al. Individualized tourism recommendation based on self-attention

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