-
公开(公告)号:CN113961237A
公开(公告)日:2022-01-21
申请号:CN202111220663.0
申请日:2021-10-20
Applicant: 南通大学
IPC: G06F8/73 , G06F40/169 , G06F40/253 , G06F40/284 , G06F40/30 , G06N20/00
Abstract: 本发明提供了一种基于双重信息检索的Bash代码注释生成方法,包括以下步骤:(1)搜集数据得到一个高质量语料库,对该语料库进行去重操作,得到数据集;(2)使用CodeBert提取代码语义特征;(3)将代码片段视为由词元组成的集合,通过文本编辑距离计算集合之间的词法相似度,通过词法相似度从k个候选代码片段中检索出与目标代码词法相似度最高的代码片段;(4)从数据集中检索出与目标代码最相似代码片段,将该代码对应的注释作为目标代码的代码注释。本发明的有益效果为:可以根据目标代码在代码库中检索出最相似代码,从而生成高质量的代码注释,提高Bash代码的可读性和可理解性,帮助开发人员快速理解Bash代码。
-
公开(公告)号:CN114418033B
公开(公告)日:2024-05-24
申请号:CN202210170049.6
申请日:2022-02-24
Applicant: 南通大学
IPC: G06F18/2415 , G06F18/2431 , G06F18/214 , G06F40/211 , G06F40/284 , G06F40/30 , G06F16/35 , G06N3/08 , G06N3/0442 , G06N3/045
Abstract: 本发明提供了一种基于CodeBert的代码编程语言分类方法,属于计算机应用技术领域。其技术方案为:包括以下步骤:(1)对原始数据集进行处理,去除其中的噪音,并使用BPE方法进行分词;(2)从CodeBert的每一层中提取表征信息作为表征信息序列,使用双向循环神经网络(Bi‑LSTM)和注意力机制关注可提供重要表征信息的层;(3)基于语料库对构建的模型进行训练,得到代码编程语言分类模型。本发明的有益效果为:该方法能快速识别源代码所属的编程语言类型,降低手工分类源代码编程语言的成本。
-
公开(公告)号:CN114880206A
公开(公告)日:2022-08-09
申请号:CN202210038845.4
申请日:2022-01-13
Applicant: 南通大学
Abstract: 本发明提供了一种移动应用程序代码提交故障预测模型的可解释性方法,包括以下步骤:(1)通过挖掘版本控制系统,搜集来自移动应用程序项目内的代码提交,随后对代码提交进行度量和标注,形成数据集;(2)根据数据集,借助随机森林构建出移动应用程序代码提交故障预测模型;(3)当面对新的代码提交时,对该代码提交进行度量,然后输入到代码提交故障预测模型中,得到预测结果;(4)对局部可解释性技术LIME进行超参优化,使用超参优化的LIME方法ExplainApp生成该预测结果的解释。本发明的有益效果为:预测出新的代码提交是否会引入故障,同时可以给出相应的高质量解释,辅助开发人员完成后续故障的理解、定位和修复。
-
公开(公告)号:CN114880206B
公开(公告)日:2024-06-11
申请号:CN202210038845.4
申请日:2022-01-13
Applicant: 南通大学
Abstract: 本发明提供了一种移动应用程序代码提交故障预测模型的可解释性方法,包括以下步骤:(1)通过挖掘版本控制系统,搜集来自移动应用程序项目内的代码提交,随后对代码提交进行度量和标注,形成数据集;(2)根据数据集,借助随机森林构建出移动应用程序代码提交故障预测模型;(3)当面对新的代码提交时,对该代码提交进行度量,然后输入到代码提交故障预测模型中,得到预测结果;(4)对局部可解释性技术LIME进行超参优化,使用超参优化的LIME方法ExplainApp生成该预测结果的解释。本发明的有益效果为:预测出新的代码提交是否会引入故障,同时可以给出相应的高质量解释,辅助开发人员完成后续故障的理解、定位和修复。
-
公开(公告)号:CN114880022A
公开(公告)日:2022-08-09
申请号:CN202210469925.5
申请日:2022-04-28
Applicant: 南通大学
Abstract: 本发明提供了一种基于CodeBERT微调和检索增强的Bash代码注释生成方法,属于计算机技术领域,解决了Bash代码开发过程中需要耗费人工成本手动编写注释的问题。其技术方案为:(1)使用构建的数据集对预训练模型CodeBERT进行微调;(2)在代码注释生成阶段,使用构建的双重信息检索方法检索出目标代码的最相似代码;(4)将目标代码和相似代码输入到微调后的CodeBERT编码器中,对得到的两个表征向量经过归一化操作;(5)将两个表征向量输入到融合层得到融合向量;(6)将融合向量输入到解码器中得到代码注释。本发明的有益效果为:快速根据现有Bash代码生成对应注释,提高Bash代码可读性和理解性。
-
公开(公告)号:CN114579471A
公开(公告)日:2022-06-03
申请号:CN202210417496.7
申请日:2022-04-20
Applicant: 南通大学
Abstract: 本发明提供了一种基于主动学习的缺陷报告严重程度预测方法,属于软件质量保障技术领域。解决了缺陷报告预测模型构建过程耗费大量人工成本进行缺陷报告严重程度标签的手工标记。其技术方案为:首先从项目所在的缺陷跟踪系统中,搜集历史缺陷报告并下载,对下载的数据集进行预处理,得到目标缺陷报告数据集;然后使用基于主动学习的逻辑回归分类方法,构建缺陷报告严重程度预测模型。本发明的有益效果为:该发明使用基于主动学习的逻辑回归分类方法,因其使用了逻辑回归分类方法,具有易实现、执行效率高、效果好的的优点;使用主动学习方法可在较少的人工成本下,进一步提高模型的预测能力。
-
公开(公告)号:CN113961237B
公开(公告)日:2024-08-20
申请号:CN202111220663.0
申请日:2021-10-20
Applicant: 南通大学
IPC: G06F8/73 , G06F40/169 , G06F40/253 , G06F40/284 , G06F40/30 , G06N20/00
Abstract: 本发明提供了一种基于双重信息检索的Bash代码注释生成方法,包括以下步骤:(1)搜集数据得到一个高质量语料库,对该语料库进行去重操作,得到数据集;(2)使用CodeBert提取代码语义特征;(3)将代码片段视为由词元组成的集合,通过文本编辑距离计算集合之间的词法相似度,通过词法相似度从k个候选代码片段中检索出与目标代码词法相似度最高的代码片段;(4)从数据集中检索出与目标代码最相似代码片段,将该代码对应的注释作为目标代码的代码注释。本发明的有益效果为:可以根据目标代码在代码库中检索出最相似代码,从而生成高质量的代码注释,提高Bash代码的可读性和可理解性,帮助开发人员快速理解Bash代码。
-
公开(公告)号:CN114880022B
公开(公告)日:2024-06-14
申请号:CN202210469925.5
申请日:2022-04-28
Applicant: 南通大学
Abstract: 本发明提供了一种基于CodeBERT微调和检索增强的Bash代码注释生成方法,属于计算机技术领域,解决了Bash代码开发过程中需要耗费人工成本手动编写注释的问题。其技术方案为:(1)使用构建的数据集对预训练模型CodeBERT进行微调;(2)在代码注释生成阶段,使用构建的双重信息检索方法检索出目标代码的最相似代码;(4)将目标代码和相似代码输入到微调后的CodeBERT编码器中,对得到的两个表征向量经过归一化操作;(5)将两个表征向量输入到融合层得到融合向量;(6)将融合向量输入到解码器中得到代码注释。本发明的有益效果为:快速根据现有Bash代码生成对应注释,提高Bash代码可读性和理解性。
-
公开(公告)号:CN117608998A
公开(公告)日:2024-02-27
申请号:CN202211723126.2
申请日:2022-12-30
Applicant: 南通大学
IPC: G06F11/36
Abstract: 本发明提供了一种融合多维度特征的多目标代码提交缺陷倾向性预测方法,属于计算机技术领域。解决了多目标缺陷预测模型中特征提取部分缺乏语义特征的问题,使得模型获得更多的代码特征信息。其技术方案为:包括以下步骤:S1:抽取代码提交变更信息和提交日志消息;S2:使用CodeBert提取语义特征,并使用CommitGuru提取专家特征;S3:构建基于多目标优化的帕累托最优解集;S4:基于验证集,从帕累托最优解集中选出最优模型;S5:使用最优模型来预测一个新的代码提交是否引入缺陷。本发明的有益效果为:将专家特征和语义特征进行融合,从而提高缺陷预测的质量和可靠性。
-
公开(公告)号:CN114546397B
公开(公告)日:2024-08-20
申请号:CN202210041705.2
申请日:2022-01-14
Applicant: 南通大学
IPC: G06F8/41 , G06F8/73 , G06F40/169 , G06F40/237 , G06F18/22 , G06N3/0455 , G06N3/048 , G06N3/08
Abstract: 本发明提供了一种基于对偶学习的shellcode代码和注释生成方法,包括以下步骤:(1)搜集来自shellstorm和Exploit Database的shellcode语料库;(2)将shellcode注释生成和shellcode代码生成这两个任务形式化为一个对偶学习问题,并通过为输入添加前缀来区分两个任务,使用浅层的Transformer进行同步学习,实现知识共享,提高训练模型的性能和泛化能力;(3)提出了一种改进自注意力计算的归一化方法Adjust_QKNorm,以使Transformer适应低资源任务;(4)提出一个基于规则的修复组件。本发明的有益效果为:有利于软件的开发和维护,生成的高质量注释和代码可以帮助提高开发人员的工作效率,进而提高软件质量。
-
-
-
-
-
-
-
-
-