基于决策的融合信息检索和深度学习的代码注释生成方法

    公开(公告)号:CN113743064B

    公开(公告)日:2024-09-06

    申请号:CN202111060940.6

    申请日:2021-09-10

    Applicant: 南通大学

    Abstract: 本发明提供了一种基于决策的融合信息检索和深度学习的代码注释生成方法,包括以下步骤:(1)基于GitHub网站,挖掘高质量开源项目,搜集代码内的函数及其注释形成语料库,并划分成训练集和验证集;(2)构建基于信息检索的模型,通过融合语义、词法和语法相似度,在训练集中搜索出与目标代码段c最为相似的代码段csim,并复用其注释;(3)构建基于深度学习的模型,考虑对抗样本,并使用一种基于Transformer的模型生成代码注释;(4)在验证集上分析这两种模型的性能与两个代码段c和csim之间相似度分数的关系,确定相似度阈值;(5)当为一个新的目标代码生成注释时,根据决策模块输出对应的代码注释。本发明的有益效果为:可以生成高质量的代码注释。

    一种基于质量过滤器的缺陷报告标题自动生成方法

    公开(公告)号:CN114676298A

    公开(公告)日:2022-06-28

    申请号:CN202210379210.0

    申请日:2022-04-12

    Applicant: 南通大学

    Abstract: 本发明提供了一种基于质量过滤器的缺陷报告标题自动生成方法,属于软件质量保障技术领域。其技术方案为:首先从GitHub上选择高质量开源项目,再对数据集进行数据预处理,训练自动生成模型,当预测新的缺陷报告时,分别基于通过学习低质量缺陷报告特征进行过滤的深度学习模块和通过判断历史数据集中是否存在与新缺陷报告内容相似的数据实现预测的信息检索模块,来协同预测该缺陷报告能否生成高质量标题,若预测能,则通过自动生成模型生成标题,反之则提出警告。本发明的有益效果为:通过使用正则表达式进行数据预处理,提高了数据处理效率和方法的兼容性;通过双模块协同过滤,提高了自动生成模型生成的标题质量与效率。

    一种基于Transformer的代码编程语言分类方法

    公开(公告)号:CN113139054A

    公开(公告)日:2021-07-20

    申请号:CN202110430772.9

    申请日:2021-04-21

    Applicant: 南通大学

    Abstract: 本发明提供了一种基于Transformer的代码编程语言分类方法,包括以下步骤:(1)从Stack Overflow上搜集问答帖子作为数据集,对原始数据集中的数据进行数据预处理;(2)对使用BPE分词后的数据进行词嵌入将词转换成向量;(3)基于上述构建的数据集,对RoBERTa模型进行微调,将生成的词向量输入进RoBERTa模型,通过双层的Transformer编码器进行代码语义的学习,生成语义表示向量Xsemantic;(4)将语义向量Xsemantic通过线性层映射到编程语言类别标签上,通过Softmax算法得到相应的编程语言。本发明的有益效果为:可以根据代码片段快速识别代码类型,以起到辅助开发人员在问答网站上快速寻找到解决方案的作用。

    一种基于信息检索的智能合约代码注释生成方法

    公开(公告)号:CN113743062B

    公开(公告)日:2024-09-03

    申请号:CN202110937182.5

    申请日:2021-08-16

    Applicant: 南通大学

    Abstract: 本发明提供了一种基于信息检索的智能合约代码注释生成方法,包括以下步骤:(1)搜集来自Etherscan.io的智能合约语料库,对该语料库进行预处理操作;(2)使用CodeBert提取代码语义特征,并通过BERT‑whitening进行关键特征提取和降维,计算语义相似度,选择排在前k位语义最相似的代码片段作为候选代码;(3)将代码片段视为由词元组成的集合,通过Jaccard相似度计算集合之间的词法相似度;(4)考虑智能合约代码的抽象语法树信息,通过编辑距离计算AST序列之间的语法相似度;(5)根据词法和语法相似度融合的比例计算出混合分数后,从候选代码中找出最相似的代码片段,用于生成代码注释。本发明的有益效果为:可以生成高质量的代码注释,提高智能合约代码的可读性和可理解性。

    一种基于BART模型的正则表达式描述生成方法

    公开(公告)号:CN113515957B

    公开(公告)日:2023-09-19

    申请号:CN202110429680.9

    申请日:2021-04-21

    Applicant: 南通大学

    Abstract: 本发明提供了一种基于BART模型的正则表达式描述生成方法,包括以下步骤:(1)搜集高质量的正则表达式,对正则表达式人工标注对应的自然语言描述,针对数据进行预处理;(2)将分词输入嵌入层生成最终的特征向量X;(3)改进BART模型。本发明的有益效果为:该方法对输入的正则表达式生成高质量的自然语言描述,从而帮助计算机科学初学者以及开发人员更加快速的理解正则表达式。

    一种基于CodeBERT微调和检索增强的Bash代码注释生成方法

    公开(公告)号:CN114880022A

    公开(公告)日:2022-08-09

    申请号:CN202210469925.5

    申请日:2022-04-28

    Applicant: 南通大学

    Abstract: 本发明提供了一种基于CodeBERT微调和检索增强的Bash代码注释生成方法,属于计算机技术领域,解决了Bash代码开发过程中需要耗费人工成本手动编写注释的问题。其技术方案为:(1)使用构建的数据集对预训练模型CodeBERT进行微调;(2)在代码注释生成阶段,使用构建的双重信息检索方法检索出目标代码的最相似代码;(4)将目标代码和相似代码输入到微调后的CodeBERT编码器中,对得到的两个表征向量经过归一化操作;(5)将两个表征向量输入到融合层得到融合向量;(6)将融合向量输入到解码器中得到代码注释。本发明的有益效果为:快速根据现有Bash代码生成对应注释,提高Bash代码可读性和理解性。

    一种基于Transformer的编程问题帖标题自动生成方法

    公开(公告)号:CN114238621A

    公开(公告)日:2022-03-25

    申请号:CN202111441323.0

    申请日:2021-11-30

    Applicant: 南通大学

    Abstract: 本发明提供了一种基于Transformer的编程问题帖标题自动生成方法,属于计算机应用技术领域;其技术方案为:包括以下步骤:(1)收集开发人员问答网站上与Java、C#、Python和JavaScript四种编程语言相关的问题帖,基于三种启发式规则以过滤掉其中的低质量问题帖;(2)基于上述构建的语料库,对构建的基于Transformer的T5模型进行微调,利用AdaFactor优化器以及注意力机制进行优化,构建出问题帖标题自动生成模型。本发明的有益效果为:为开发人员问答网站(例如Stack Overflow)的问题帖生成既简洁又准确的标题,实现了针对Java、C#、Python和JavaScript四种编程语言的问题帖标题生成的自动化。

    基于决策的融合信息检索和深度学习的代码注释生成方法

    公开(公告)号:CN113743064A

    公开(公告)日:2021-12-03

    申请号:CN202111060940.6

    申请日:2021-09-10

    Applicant: 南通大学

    Abstract: 本发明提供了一种基于决策的融合信息检索和深度学习的代码注释生成方法,包括以下步骤:(1)基于GitHub网站,挖掘高质量开源项目,搜集代码内的函数及其注释形成语料库,并划分成训练集和验证集;(2)构建基于信息检索的模型,通过融合语义、词法和语法相似度,在训练集中搜索出与目标代码段c最为相似的代码段csim,并复用其注释;(3)构建基于深度学习的模型,考虑对抗样本,并使用一种基于Transformer的模型生成代码注释;(4)在验证集上分析这两种模型的性能与两个代码段c和csim之间相似度分数的关系,确定相似度阈值;(5)当为一个新的目标代码生成注释时,根据决策模块输出对应的代码注释。本发明的有益效果为:可以生成高质量的代码注释。

    一种基于BART模型的正则表达式描述生成方法

    公开(公告)号:CN113515957A

    公开(公告)日:2021-10-19

    申请号:CN202110429680.9

    申请日:2021-04-21

    Applicant: 南通大学

    Abstract: 本发明提供了一种基于BART模型的正则表达式描述生成方法,包括以下步骤:(1)搜集高质量的正则表达式,对正则表达式人工标注对应的自然语言描述,针对数据进行预处理;(2)将分词输入嵌入层生成最终的特征向量X;(3)改进BART模型。本发明的有益效果为:该方法对输入的正则表达式生成高质量的自然语言描述,从而帮助计算机科学初学者以及开发人员更加快速的理解正则表达式。

Patent Agency Ranking