[发明专利]一种用于软件自承认型技术债务的检测方法在审
申请号: | 202110562267.X | 申请日: | 2021-05-24 |
公开(公告)号: | CN113407439A | 公开(公告)日: | 2021-09-17 |
发明(设计)人: | 殷茗;朱奎宇;方亚群;张小港;高存志;周盼;张淼;陈杨 | 申请(专利权)人: | 西北工业大学 |
主分类号: | G06F11/36 | 分类号: | G06F11/36;G06K9/62;G06N3/04;G06N3/08 |
代理公司: | 西北工业大学专利中心 61204 | 代理人: | 金凤 |
地址: | 710072 *** | 国省代码: | 陕西;61 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 用于 软件 承认 技术 债务 检测 方法 | ||
本发明公开了一种用于软件自承认型技术债务的检测方法,首先进行数据集的获取和处理;然后构建自承认型技术债务检测模型;包括三个并行的基分类器;分别为CNN、CNN‑LSTM混合模型和DPCNN;将词向量矩阵分别输入三个基分类器,每个基分类器输出各自对注释数据属于自承认型技术债务的概率;将三个基分类器输出分类结果进行融合,得到最终的注释数据属于自承认型技术债务的概率;最后判断概率和分类阈值的大小关系,输出检测注释数据是否为自承认型技术债务的结果。本发明可以克服误判率较高的问题,相对于其他方法能够识别出更多数量的SATD,同时减少了单一模型的偏见性,从而解决了在识别SATD时存在的误判,准确率低的问题。
技术领域
本发明属于软件技术领域,具体涉及一种自承认型技术债务的检测方法。
背景技术
技术债务是一种隐喻,它表达的是在软件开发过程中使用一种不完整、临时或者次优的解决方案。这一概念首次由Cunningham于1992年提出,他将“不完全正确的代码”视为债务的一种形式。后来,Potdar和Shihab对指向债务实例的源代码注释进行了研究,他们通过手动处理大量注释发现对于代码中可能存在的问题,开发人员往往倾向于在注释中表明。针对这一发现,Potdar和Shihab提出了自承认技术债务(Self- admitted TechnicalDebt),并总结了62种模式用于识别它。之后,研究者们开始关注 SATD的研究,探讨和改进各种方法和技术,为了更好地分析和管理自承认技术债务,识别成为当前研究的首要问题,也是目前的研究热点。
现有自承认技术债务识别的研究主要有四个方面:基于模式的方法、基于自然语言处理方法、文本挖掘方法及深度神经网络CNN的方法。其中,Ren et al.使用卷积神经网络进行了识别自承认技术债务的初步尝试,他们分析了SATD文本注释的五个特征,这些特征影响着基于模式的SATD检测和传统的基于文本挖掘的方法识别SATD 的性能、可概括性和适用性。为了提高SATD识别的准确性,尤其是跨项目识别准确性,并提高基于机器学习的识别结果的可解释性,他们的方法学习从评论数据中提取 SATD识别任务的信息文本功能。然而,使用卷积神经网络模型进行SATD识别时,过于关注于局部特征,丢失了部分全局特征。并且,单一模型通常仅利用分类模型对已知类别的训练数据进行学习,从而得到一个单一的分类器对未知数据进行分类。相比于多个模型来说,分类精度低,泛化能力弱。
发明内容
为了克服现有技术的不足,本发明提供了一种用于软件自承认型技术债务的检测方法,首先进行数据集的获取和处理;然后构建自承认型技术债务检测模型;包括三个并行的基分类器;分别为CNN、CNN-LSTM混合模型和DPCNN;将词向量矩阵分别输入三个基分类器,每个基分类器输出各自对注释数据属于自承认型技术债务的概率;将三个基分类器输出分类结果进行融合,得到最终的注释数据属于自承认型技术债务的概率;最后判断概率和分类阈值的大小关系,输出检测注释数据是否为自承认型技术债务的结果。本发明可以克服误判率较高的问题,相对于其他方法能够识别出更多数量的SATD,同时减少了单一模型的偏见性,从而解决了在识别SATD时存在的误判,准确率低的问题。
本发明解决其技术问题所采用的技术方案包括如下步骤:
步骤1:数据集的获取和处理;
采用公开的源代码注释数据集,将源代码注释数据集中的数据划分为多个项目数据集,然后分别进行符号化、移除停用词,然后进行文本表示转化为注释矩阵;
将注释矩阵输入神经网络的Embedding层,对Embedding层进行训练,输出词向量;再将词向量按照注释顺序拼接后得到词向量矩阵;
步骤2:构建自承认型技术债务检测模型;
所述自承认型技术债务检测模型包括三个并行的基分类器;
第一个基分类器为CNN;
第二个基分类器为CNN-LSTM混合模型;
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于西北工业大学,未经西北工业大学许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/202110562267.X/2.html,转载请声明来源钻瓜专利网。