[发明专利]一种跨项目软件缺陷预测方法有效
申请号: | 201910721866.4 | 申请日: | 2019-08-06 |
公开(公告)号: | CN110442523B | 公开(公告)日: | 2023-08-29 |
发明(设计)人: | 冯落落;李锐;于治楼 | 申请(专利权)人: | 山东浪潮科学研究院有限公司 |
主分类号: | G06F11/36 | 分类号: | G06F11/36 |
代理公司: | 济南信达专利事务所有限公司 37100 | 代理人: | 冯春连 |
地址: | 250100 山东省济*** | 国省代码: | 山东;37 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | 本发明公开一种跨项目软件缺陷预测方法,涉及数据处理技术领域。针对软件缺陷预测过程经常受阻、且往往会出现类别分布不平衡的问题,采用方案基于TextCNN和Borderline‑SMOTE算法,包括训练阶段和预测阶段。在训练阶段,基于Java源文件的已知维度特征、语义信息特征、以及存在的软件缺陷,进行Word2vec模型、TextCNN、逻辑回归分类器的训练,在预测阶段,则直接利用训练好的Word2vec模型、TextCNN、逻辑回归分类器的进行目标Java源文件的预测,并最终预测输出目标Java源文件的软件缺陷数量。本发明的预测方法提高了预测的准确率和提高训练速度,不仅限于对同项目的软件缺陷进行预测,还可以用于跨项目的软件缺陷进行预测。 | ||
搜索关键词: | 一种 项目 软件 缺陷 预测 方法 | ||
【主权项】:
1.一种跨项目软件缺陷预测方法,其特征在于,其包括训练阶段和预测阶段;所述训练阶段包括:Ⅰ)提取Java源文件的原始多维特征,并对每一个Java源文件进行标记;Ⅱ)将Java源文件解析成抽象语法树,抽取抽象语法树的相关节点形成单词文件;Ⅲ)训练Word2vec模型,利用Word2vec模型对单词进行向量化,形成词向量;Ⅳ)已知Java源文件包含的语义信息,提取Java源文件所包含语义信息的特征,基于词向量和提取的特征训练TextCNN;Ⅴ)组合包含Java源文件语义信息的特征和Java源文件的原始多维特征,形成新特征向量;Ⅵ)利用Borderline‑SMOTE算法对组合后的新特征向量进行不平衡处理;Ⅶ)不平衡处理后的新特征向量和Java源文件具有的软件缺陷数量作为训练样本,利用训练样本训练逻辑回归分类器;所述预测阶段包括:Ⅰ)提取目标Java源文件的原始多维特征,并对每一个目标Java源文件进行标记;Ⅱ)将目标Java源文件解析成抽象语法树,抽取抽象语法树的相关节点形成单词文件;Ⅲ)利用Word2vec模型对单词进行向量化,形成词向量;Ⅳ)利用TextCNN对词向量进行包含语义信息的特征提取;Ⅴ)组合包含语义信息的特征和目标Java源文件的原始多维特征,形成新特征向量;Ⅵ)利用Borderline‑SMOTE算法对组合后的新特征向量进行不平衡处理;Ⅶ)将不平衡处理后的新特征向量输入逻辑回归分类器,逻辑回归分类器输出预测目标Java源文件的软件缺陷数量。
下载完整专利技术内容需要扣除积分,VIP会员可以免费下载。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于山东浪潮科学研究院有限公司,未经山东浪潮科学研究院有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/patent/201910721866.4/,转载请声明来源钻瓜专利网。