[发明专利]一种文本代码相结合的缺陷原因自动分类方法有效
申请号: | 201811346186.0 | 申请日: | 2018-11-13 |
公开(公告)号: | CN109492106B | 公开(公告)日: | 2022-05-13 |
发明(设计)人: | 周澄;李斌;孙小兵;陈定山 | 申请(专利权)人: | 扬州大学 |
主分类号: | G06F16/35 | 分类号: | G06F16/35;G06F16/33 |
代理公司: | 南京理工大学专利中心 32203 | 代理人: | 马鲁晋 |
地址: | 226009 *** | 国省代码: | 江苏;32 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 文本 代码 相结合 缺陷 原因 自动 分类 方法 | ||
1.一种文本代码相结合的缺陷原因自动分类方法,其特征在于,包括以下步骤:
步骤1、提取缺陷报告中的文本内容以及附录中的patch文件,之后进行数据清洗形成缺陷数据集;
步骤2、从所述缺陷数据集中选取状态为VERIFIED FIXED且附有patch文件的缺陷,构建待分类缺陷集;
步骤3、抽取待分类缺陷集中缺陷的文本内容,并对其进行自然语言处理,之后根据缺陷原因分类标准对待分类缺陷集进行类别标注,构建缺陷原因分类集;
步骤4、自定义缺陷修改结构类别,并从所述patch文件中抽取缺陷修复前、后的diff代码,之后获取缺陷修复过程中修改的diff代码对应的缺陷修改结构类别;所述获取缺陷修复过程中修改的diff代码对应的缺陷修改结构类别,具体为:
步骤4-1、将缺陷修复前、后的diff代码分别转换为抽象语法树AST;
步骤4-2、通过对比两个抽象语法树AST识别出发生变化的节点;
步骤4-3、根据所述发生变化的节点获取修改的diff代码对应的缺陷修改结构类别;
步骤5、利用深度学习方法对缺陷原因分类集进行训练,获取缺陷原因自动分类器,新缺陷输入缺陷原因自动分类器即可完成缺陷原因的自动分类;所述利用深度学习方法对缺陷原因分类集进行训练,获取缺陷原因自动分类器,具体为:
步骤5-1、将缺陷原因分类集划分为训练集和测试集;
步骤5-2、利用深度学习模型对所述训练集进行训练;
步骤5-3、将步骤4获取的缺陷修复过程中修改的diff代码对应的缺陷修改结构类别作为特征,利用word2vec对缺陷原因分类集进行训练,获得词向量模型,并将词向量模型作为深度学习模型的embedding输入;
步骤5-4、对所述测试集进行交叉验证得缺陷原因自动分类器。
2.根据权利要求1所述的文本代码相结合的缺陷原因自动分类方法,其特征在于,步骤1所述文本内容包括标题、描述和评论。
3.根据权利要求1所述的文本代码相结合的缺陷原因自动分类方法,其特征在于,步骤3所述自然语言处理包括去停用词、去符号、统计词频、分句、分词、统计缺陷文本长度。
4.根据权利要求1所述的文本代码相结合的缺陷原因自动分类方法,其特征在于,步骤3所述缺陷原因分类标准包括12种,分别为Compatibility、Environment、Norm、Configuration、Performance、User interface、Function、Interface、Logic、Computation、Assignment、Documentation。
5.根据权利要求1所述的文本代码相结合的缺陷原因自动分类方法,其特征在于,步骤4所述自定义缺陷修改结构类别具体包括5种缺陷修改结构类别,如下表1所示:
表1缺陷修改结构类别定义表
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于扬州大学,未经扬州大学许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201811346186.0/1.html,转载请声明来源钻瓜专利网。
- 上一篇:一种基于多特征集成学习的文本情感分类方法
- 下一篇:一种导诊的方法及装置