一种源代码注释生成方法技术

技术编号:40419334 阅读:21 留言:0更新日期:2024-02-20 22:37
本发明专利技术公开了一种源代码注释生成方法,训练阶段包括S11,获取开源数据集,对数据集进行预处理,得到每个方法的语法图结构和句子序列;S12,使用预训练的嵌入层模型对数据集做嵌入操作,得到每个单词的向量表示;S13,将语法图中的节点用单词向量替换,同时将句子序列中的单词也用向量替换,分别输入到编码器E<subgt;1</subgt;和编码器E<subgt;2</subgt;中,分别得到表示源代码结构信息的特征向量H<subgt;s</subgt;和语义信息的特征向量H<subgt;c</subgt;;S14,将两个特征向量融合后输入到解码器D<subgt;1</subgt;,通过监督学习方式训练编码器E<subgt;1</subgt;,E<subgt;2</subgt;和解码器D<subgt;1</subgt;,得到生成目标注释的最大概率。本发明专利技术将优质的开源数据集进行训练,确定源代码的编码向量和解码向量,再结合搜索算法进行代码注释的预测,大大提高生成注释的质量。

【技术实现步骤摘要】

本专利技术属于计算机,特别涉及一种源代码注释生成方法


技术介绍

1、随着现代化信息环境的日益复杂,特别是移动互联网的大规模普及,出现了大量功能复杂的软件。而源代码的注释是为了提高源码可读性而编写的对应源代码的自然语言文本描述,主要目的是为了辅助程序员进行代码理解,提高软件系统的可维护性。优秀的软件项目需要有高质量的代码和准确、全面的注释及文档。对于大量的软件代码,如果不对软件代码匹配高质量、精确度高的代码注释,软件的维护工作将耗费程序人员大量的精力和时间。

2、早期的技术大多基于信息检索的方法。大多数研究通常从代码片段中抽取一些关键词作为对应代码的摘要。近年来的技术大多基于神经机器翻译,而常见的模型是单编码器-解码器模型。现有的技术存在以下问题:

3、1.基于单独的信息检索方法对于非常复杂或特定领域的代码,可能无法生成准确和有意义的注释;

4、2.基于单编码器方法无法完全理解上下文,可能使生成的注释不连贯,并且对源代码结构信息不敏感,生成的注释仅依靠单独的语义信息;

5、3.基于单独的神经网络方法对于低频词本文档来自技高网...

【技术保护点】

1.一种源代码注释生成方法,其特征在于,包括以下步骤:

2.根据权利要求1所述的源代码注释生成方法,其特征在于,所述S1包括以下步骤:

3.根据权利要求2所述的源代码注释生成方法,其特征在于,所述S11包括以下步骤:

4.根据权利要求2所述的源代码注释生成方法,其特征在于,所述S12包括以下步骤:

5.根据权利要求2所述的源代码注释生成方法,其特征在于,所述S13包括以下步骤:

6.根据权利要求5所述的源代码注释生成方法,其特征在于,所述S131包括以下步骤:

7.根据权利要求2所述的源代码注释生成方法,其特征在于,...

【技术特征摘要】

1.一种源代码注释生成方法,其特征在于,包括以下步骤:

2.根据权利要求1所述的源代码注释生成方法,其特征在于,所述s1包括以下步骤:

3.根据权利要求2所述的源代码注释生成方法,其特征在于,所述s11包括以下步骤:

4.根据权利要求2所述的源代码注释生成方法,其特征在于,所述s12包括以下步骤:

5.根据权利要求2所述的源代码注释生成方法,其特征在于,所述s13包括以下步骤:

6.根据权利要求5所述的源代码注释生...

【专利技术属性】
技术研发人员:赵建勇王文亮邬惠峰陈佰平
申请(专利权)人:杭州电子科技大学
类型:发明
国别省市:

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1