一种残膜回收机防缠绕挑膜装置的制 一种秧草收获机用电力驱动行走机构

一种注释预测方法、装置、设备及可读存储介质与流程

2022-03-19 22:57:27 来源:中国专利 TAG:

技术特征:
1.一种注释预测的方法,其特征在于,包括:获取项目提交数据;提取所述项目提交数据中的代码修改文件;从所述代码修改文件中,提取所述代码修改文件的抽象语法树ast信息,并将所述ast信息序列化,得到所述ast信息的序列化信息;将所述代码修改文件及所述ast信息的序列化信息输入预设的注释预测模型,得到代码修改的提交注释,其中,所述注释预测模型以训练代码修改文件及所述训练代码修改文件抽取的ast的序列化信息为训练样本,以所述训练代码修改文件中的代码修改的注释为样本标签训练得到。2.根据权利要求1所述注释预测方法,其特征在于,在所述提取所述项目提交数据中的代码修改文件之前,还包括:剔除所述项目提交数据中符合以下条件的数据:merge、rollback版本的项目提交数据;修改代码的提交注释不是以动宾结构开头的项目提交数据;修改代码的提交注释的词超过预设的阈值的项目提交数据。3.根据权利要求1所述注释预测方法,其特征在于,所述提取所述项目提交数据中的代码修改文件,包括:从所述项目提交数据中,提取每次提交的项目提交数据修改前后的代码之间的差异信息,形成代码修改文件。4.根据权利要求1所述注释预测方法,其特征在于,所述从所述代码修改文件中,提取所述代码修改文件的ast信息,并将所述ast信息序列化,得到所述ast信息的序列化信息,包括:剔除所述代码修改文件中不存在修改的函数,得到过滤后的代码修改文件;提取所述过滤后的代码修改文件的ast信息;基于所述ast信息,确定所述过滤后的代码修改文件中每行代码的语法节点;对所述过滤后的代码修改文件中每行代码的语法节点进行哈希计算,得到各行代码的各个语法节点的哈希值;将所述各行代码的各个语法节点的哈希值相加得到所述过滤后的代码修改文件中每行代码的哈希值;将所述过滤后代码修改文件中每行代码的哈希值依次排列,得到所述ast信息的序列化信息。5.一种注释预测装置,其特征在于,包括:项目提交数据获取单元,用于获取项目提交数据;代码修改文件提取单元,用于提取所述项目提交数据中的代码修改文件;ast信息提取单元,用于从所述代码修改文件提取所述代码修改文件的ast信息,并将所述ast信息序列化,得到所述ast信息的序列化信息;注释预测单元,用于将所述代码修改文件及所述ast信息的序列化信息输入预设的注释预测模型,得到代码修改的提交注释,其中,所述注释预测模型以训练代码修改文件及所述训练代码修改文件抽取的ast的序列化信息为训练样本,以所述训练代码修改文件中的
代码修改的注释为样本标签训练得到。6.根据权利要求5所述注释预测装置,其特征在于,还包括:第一过滤单元,用于剔除所述项目提交数据中符合以下条件的数据:merge、rollback版本的项目提交数据;修改代码的提交注释不是以动宾结构开头的项目提交数据;修改代码的提交注释的词超过预设的阈值的项目提交数据。7.根据权利要求5所述注释预测装置,其特征在于,所述代码修改文件提取单元执行所述提取所述项目提交数据中的代码修改文件的步骤,包括:从所述项目提交数据中提取每次提交的项目提交数据修改前后的代码之间的差异信息,形成代码修改文件。8.根据权利要求5所述的注释预测装置,其特征在于,所述ast信息提取单元,包括:第二过滤单元,用于剔除所述代码修改文件中不存在修改的函数,得到过滤后的代码修改文件;提取单元,用于提取所述过滤后的代码修改文件的ast信息;语法节点确定单元,用于基于所述ast信息,确定所述过滤后的代码修改文件中每行代码的语法节点;第一哈希值计算单元,用于对所述过滤后的代码修改文件中每行代码的语法节点进行哈希计算,得到各行代码的各个语法节点的哈希值;第二哈希值计算单元,用于将所述各行代码的各个语法节点的哈希值相加得到所述过滤后的代码修改文件中每行代码的哈希值;序列化单元,用于将所述过滤后代码修改文件中每行代码的哈希值依次排列得到所述ast信息的序列化信息。9.一种注释预测设备,其特征在于,包括存储器和处理器;所述存储器,用于存储程序;所述处理器,用于执行所述程序,实现如权利要求1-4中任一项的注释预测方法的各个步骤。10.一种可读存储介质,其上存储有计算机程序,其特征在于,所述计算机程序被处理器执行时,实现如权利要求1-4中任一项的注释预测方法的各个步骤。

技术总结
本申请公开了一种注释预测方法、装置、设备及可读存储介质。可获取并过滤项目提交数据;从项目提交数据中的代码修改文件提取并序列化所述代码修改文件的AST信息,继而,将代码修改文件及AST信息的序列化信息输入预设的注释预测模型,得到代码修改的提交注释。本申请除了将原有的代码修改的信息作为分析的样本之外,还将修改的代码的AST信息作为分析的样本,从而输出更准确的提交注释信息。以帮助开发人员更好地理解每次提交代码修改的具体的结构及语法信息,有助于提高开发人员的阅读效率及研发效率。率及研发效率。率及研发效率。


技术研发人员:周浩杰 陈湘萍 陈亮 郑子彬
受保护的技术使用者:中山大学
技术研发日:2021.12.15
技术公布日:2022/3/18
再多了解一些

本文用于企业家、创业者技术爱好者查询,结果仅供参考。

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表

相关文献