[发明专利]一种启发式自引入技术债务数据标注及训练方法和系统在审
申请号: | 202111654306.5 | 申请日: | 2021-12-31 |
公开(公告)号: | CN114612211A | 公开(公告)日: | 2022-06-10 |
发明(设计)人: | 曲豫宾;李芳 | 申请(专利权)人: | 江苏派陶网络科技有限公司 |
主分类号: | G06Q40/02 | 分类号: | G06Q40/02;G06F16/953;G06F16/906;G06N20/00 |
代理公司: | 南通国鑫智汇知识产权代理事务所(普通合伙) 32606 | 代理人: | 顾新民 |
地址: | 226000 江苏省南通市崇川*** | 国省代码: | 江苏;32 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 启发式 引入 技术 债务 数据 标注 训练 方法 系统 | ||
本申请公开了一种启发式自引入技术债务数据标注及训练方法和系统,通过基于注释信息,选择一个开源软件项目的注释信息进行标注得到代码注释关键词、构建训练数据集,并通过训练数据集对预训练模型进行训练及微调,获得分类模型;利用分类模型对所述待标注软件项目的代码注释进行分类预测,当预测分类结果为有引入技术债务时,获得模糊分类结果,判断两个分类结果是否匹配,当匹配成功时,将待标注软件项目的代码注释标注为有引入技术债务存入训练数据集持续对分类模型训练,不断迭代完成所有数据集的标注。解决现有代码标注为纯人工进行,存在费时费力且影响模型训练效率的技术问题。达到自动标注,大幅提高标注及模型训练效率的技术效果。
技术领域
本申请涉及软件产品质量保障技术领域,尤其涉及一种启发式自引入技术债务数据标注及训练方法和系统。
背景技术
区块链技术具有较高的研发门槛,大部分的应用系统都需要借助开源的框架来实现自己的业务逻辑。开源代码仓库GitHub中存在大量这样的开源框架。这些基于区块链技术的开源软件系统大部分还处于试验阶段。这就要求区块链应用开发者能够快速跟进新框架,并针对框架中潜在的缺陷或者兼容性等问题要做出及时的响应。自引入技术债务可以用来在软件系统指示潜存的框架缺陷等。软件质量保障团队的任务就是从大量的软件代码中识别出自引入技术债务。目前针对自引入技术债务的发现有多种技术手段,比如模式识别、卷积神经网络、文本挖掘等等。采用深度学习的技术来探测自引入技术债务遇到的最大问题就是数据集的问题。要训练一个可用的面向区块链软件系统的自引入技术债务探测模型,必须要解决数据集的快速创建以及模型的训练部署问题。短时间内即可以从开源代码仓库GitHub中获取百万行级别的代码,但是如果针对这些代码全部进行人工标注是一件极为费时费力的工作。
发现上述技术至少存在如下技术问题:
现有技术中代码标注为纯人工进行,存在费时费力且影响模型训练效率的技术问题。
发明内容
本申请的目的是提供一种启发式自引入技术债务数据标注及训练方法和系统,用以解决现有技术中代码标注为纯人工进行,存在费时费力且影响模型训练效率的技术问题。达到了采用自动化的标注方法,大幅度减少了构建自引入技术债务数据集的人工成本,提升了构建效率,同时相比现有的有监督学习的标注训练方法标注训练效率大比例提升,相比现有的半监督学习方法,模型训练复杂度为原来的一半,复杂度大幅降低,弥补了软件工程领域自引入技术债务标注数据集的不足的技术效果。
鉴于上述问题,本申请实施例提供了一种启发式自引入技术债务数据标注及训练方法和系统。
第一方面,本申请提供了一种启发式自引入技术债务数据标注及训练方法,所述方法应用于区块链软件系统中,所述方法包括:从开源代码仓库GitHub爬取基于区块链的软件系统源代码,所述软件系统源代码为标注star满足预设要求的系统源代码; 通过语法分析器从所述软件系统源代码中提取注释,获得注释信息;基于所述注释信息,选择一个开源软件项目的注释信息进行标注,基于标注为有引入技术债务的注释信息得到代码注释关键词;根据标注信息构建训练数据集,并通过所述训练数据集对预训练模型进行训练及微调,获得分类模型;获得待标注软件项目,利用所述分类模型对所述待标注软件项目的代码注释进行分类预测,得到预测分类结果;当所述预测分类结果为有引入技术债务时,获得模糊分类结果,并判断所述模糊分类结果与所述预测分类结果是否匹配,当匹配成功时,将所述待标注软件项目的代码注释标注为有引入技术债务存入所述训练数据集进行更新,利用更新的所述训练数据集进行分类模型的训练,持续迭代,完成所有待标注数据集的标注。
另一方面,本申请还提供了一种启发式自引入技术债务数据标注及训练系统,用于执行如第一方面所述的一种启发式自引入技术债务数据标注及训练方法,所述系统包括:
第一执行单元,所述第一执行单元用于从开源代码仓库GitHub爬取基于区块链的软件系统源代码,所述软件系统源代码为标注star满足预设要求的系统源代码;
第一获得单元,所述第一获得单元用于通过语法分析器从所述软件系统源代码中提取注释,获得注释信息;
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于江苏派陶网络科技有限公司,未经江苏派陶网络科技有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/202111654306.5/2.html,转载请声明来源钻瓜专利网。
- 上一篇:一种制备纳米微孔绝热板的硅灰分选方法及装置
- 下一篇:多音源的噪声处理方法