[发明专利]一种基于随机森林分类器的代码评审人推荐系统及方法有效
申请号: | 202010373726.5 | 申请日: | 2020-05-06 |
公开(公告)号: | CN111428142B | 公开(公告)日: | 2023-07-28 |
发明(设计)人: | 马瑾瑜;张贺;杨岚心;荣国平;邵栋 | 申请(专利权)人: | 南京大学 |
主分类号: | G06F16/9535 | 分类号: | G06F16/9535;G06F11/36;G06F8/77;G06F18/243 |
代理公司: | 北京华际知识产权代理有限公司 11676 | 代理人: | 曹书华 |
地址: | 210093 江苏*** | 国省代码: | 江苏;32 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 基于 随机 森林 分类 代码 评审 推荐 系统 方法 | ||
1.一种基于随机森林分类器的代码评审人推荐系统,其特征在于,包括:
输入模块(310),所述输入模块(310)用于获取项目历史代码评审记录;
计算模块(320),所述计算模块(320)用于根据项目历史代码评审记录,挖掘人员活跃度特征、代码变更特征和文件权重特征;
模型训练模块(330),所述模型训练模块(330)用于在随机森林分类器中,以项目历史评审记录的评审人作为分类标签,将计算好的特征向量作为数据集,训练分类模型;
推荐结果输出模块(340),所述推荐结果输出模块(340)用于从待评审代码变更中抽取特征,输入到随机森林分类器中,输出评审概率最高的N个类别作为推荐分类,每个推荐分类对应的评审人即推荐评审人,其中N为小于等于评审人总数的任意正整数。
2.根据权利要求1所述的一种基于随机森林分类器的代码评审人推荐系统,其特征在于,所述输入模块(310)用于获取项目历史代码评审记录,所述项目历史代码评审记录是与软件项目匹配的代码提交日志和代码评审日志;
所述代码提交日志包括:代码提交者、提交时间、分支、新增代码行数、删减代码行数、文件路径集合;所述代码评审日志包括:评审人、评审时间。
3.根据权利要求2所述的一种基于随机森林分类器的代码评审人推荐系统,其特征在于,所述计算模块(320)包括人员活跃度特征计算单元、代码变更特征计算单元和文件权重特征计算单元:
所述人员活跃度特征计算单元,根据所述项目历史代码评审记录,计算软件开发者在近一个月内进行代码提交的次数、参与代码评审的次数、当次代码提交时间与最近一次代码提交时间之间的时间差,组成一个向量,作为人员活跃度特征;
所述代码变更特征计算单元,根据所述项目历史代码评审记录,对代码提交日志内的分支进行编码,将分支编码与新增代码行数、删减代码行数进行结合,组成一个向量,作为代码变更特征;
所述文件权重特征计算单元,用于文件权重特征的计算,根据所述项目历史代码评审记录,计算所述项目历史代码评审记录中包含的每一个系统文件路径对应的权重,所得权重值组成一个向量,作为文件权重特征;
对所述代码提交日志内的分支进行编码包括:
数据层次划分单元,所述数据层次划分单元用于将代码提交日志内文本型的分支数据按照层次进行划分,组成一个向量;
标签转化单元,所述标签转化单元用于对向量中的每一维进行标签编码转化为数值型的特征;
所述文件权重特征计算单元包括:
路径层次划分单元,所述路径层次划分单元用于将项目历史代码评审记录中文本型的系统文件路径按照路径层次划分成多个路径名;
权重计算单元,所述权重计算单元用于将项目历史代码评审记录中包含的所有系统文件路径按照路径层次划分为多个子路径名作为语料库,利用TF-IDF算法,计算每一个系统文件路径名在语料库中的权重值,对每一个系统文件路径中包含的子路径名权重值进行求和作为文件路径权重值,将一条项目历史代码评审记录中包含的所有文件路径权重值组合为一个向量,作为该评审记录的文件权重特征。
4.根据权利要求3所述的一种基于随机森林分类器的代码评审人推荐系统,其特征在于,所述模型训练模块(330)用于对项目历史代码评审记录中每一条文本型项目历史代码评审记录,通过所述计算模块(320)转化为数值型数据,该数值型数据构成一个特征向量,所得结果包含人员活跃度特征、代码变更特征和文件权重特征,所述结果作为训练集,输入随机森林分类器中进行训练。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于南京大学,未经南京大学许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/202010373726.5/1.html,转载请声明来源钻瓜专利网。
- 上一篇:压铸锌合金用脱脂溶液及其制备方法
- 下一篇:一种超挖场地灌注桩定型化钢护筒