-
公开(公告)号: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代码可读性和理解性。
-
公开(公告)号:CN116483337A
公开(公告)日:2023-07-25
申请号:CN202310445624.3
申请日:2023-04-24
Applicant: 南通大学
IPC: G06F8/33 , G06F16/33 , G06N3/0455 , G06N3/0499 , G06N3/047 , G06N3/048 , G06N3/094
Abstract: 本发明提供了一种基于提示学习和数据增强的API补全方法,属于计算机领域。解决了基于生成技术的API推荐模型预测能力有限和用于API推荐的训练数据不足的问题。其技术方案为:包括以下步骤:S1:语料库预处理并构造提示前缀;S2:构建预训练模型CodeT5和ATCom对抗训练方法;S3:在模型嵌入层使用ATCom,生成多组对抗样本;S4:利用原语料库和生成的对抗样本微调CodeT5并生成完整的API。本发明的有益效果为:根据不完整的API前缀和提示信息进行API补全,提高开发人员的效率和编程体验,通过对抗样本的训练,增强模型的鲁棒性,提高模型的泛化能力,从而提高API补全的准确性和稳定性。
-
公开(公告)号:CN113743062A
公开(公告)日:2021-12-03
申请号:CN202110937182.5
申请日:2021-08-16
Applicant: 南通大学
IPC: G06F40/169 , G06F8/41 , G06N20/00
Abstract: 本发明提供了一种基于信息检索的智能合约代码注释生成方法,包括以下步骤:(1)搜集来自Etherscan.io的智能合约语料库,对该语料库进行预处理操作;(2)使用CodeBert提取代码语义特征,并通过BERT‑whitening进行关键特征提取和降维,计算语义相似度,选择排在前k位语义最相似的代码片段作为候选代码;(3)将代码片段视为由词元组成的集合,通过Jaccard相似度计算集合之间的词法相似度;(4)考虑智能合约代码的抽象语法树信息,通过编辑距离计算AST序列之间的语法相似度;(5)根据词法和语法相似度融合的比例计算出混合分数后,从候选代码中找出最相似的代码片段,用于生成代码注释。本发明的有益效果为:可以生成高质量的代码注释,提高智能合约代码的可读性和可理解性。
-
-
-