ESALE:增强源代码摘要对齐学习的方法
本研究提出了一种新的抽取式 - 生成式混合框架来自动生成代码摘要,该框架结合了抽取式方法和生成式方法,能够提取关键的事实性细节,并生成简明、类似于人工撰写的自然语言摘要,实验证明 EACS 显著优于现有的技术,包括 BLEU,METEOR 和 ROUGH-L 等三个广泛使用的评估指标。
Jun, 2022
本文提出了一个新的端到端模型来同时处理代码摘要生成和检索两个任务通过引入额外的代码生成任务,利用双向学习明确地利用了代码摘要和代码生成之间的概率相关性,通过多任务学习利用用于代码摘要和代码生成的两个编码器训练代码检索任务。作者在现有的 SQL 和 Python 数据集上进行了广泛的实验,结果表明,我们的模型可以显著提高代码检索任务的结果,同时在代码摘要任务的 BLEU 得分方面也能够达到竞争性的性能。
Feb, 2020
本文提出一种基于 Actor-Critic 模型和抽象语法树的深度强化学习框架,用于代码摘要。该模型在训练时采用 BLEU 指标进行奖励,实验证明该模型在真实世界数据集上的表现优于一些最先进的方法。
Nov, 2018
本文探讨使用 Transformer 模型和自注意力机制来生成代码表示以进行源代码概述的任务,并提出其相对编码表现显著优于绝对编码,并通过实验验证其在处理长距离依赖性方面的有效性,实现了领先于现有技术的性能表现。
May, 2020
本文采用系统性和深入分析方法,分析了 5 种最先进的神经代码自动摘要模型在 6 种广泛使用的 BLEU 变量、4 种预处理操作及其组合以及 3 种广泛使用的数据集上的评估结果,发现评估代码摘要模型的三个主要因素 ——BLEU 评估指标、代码预处理选择和数据集特征 —— 对模型的性能和排名有重要影响。文章提出了可行建议来评估代码自动摘要和在不同情景下选择最佳方法,并建立了一个共享代码自动摘要工具箱促进未来研究。
Jul, 2021
本文提出了一种用于代码摘要的新型提示学习框架,称为 PromptCS,该框架训练了一个能够生成连续提示的提示代理,以释放大语言模型在代码摘要中的潜力,相比于人工编写的离散提示,连续提示更易于大语言模型理解。PromptCS 在 CodeSearchNet 数据集上的评估结果表明,优于所有四个广泛使用的度量标准的指导学习方案,并且在某些基础大语言模型上,例如 CodeGen-Multi-2B 和 StarCoderBase-1B 和 - 3B,甚至优于任务导向的微调方案。重要的是,PromptCS 的训练效率比任务导向的微调方案更快,在较大的大语言模型上具有更明显的优势。人工评估的结果表明,与基准相比,PromptCS 能够生成更好的摘要。
Dec, 2023
源代码摘要是编写源代码行为的自然语言描述的任务。近来,神经源代码摘要已成为研究自动化代码摘要技术的前沿,本文介绍了一种基于语句的记忆编码器,通过训练学习了流程的重要元素,从而实现了基于语句的子程序表示,并展示了与最新技术相比的显著改进。
Jul, 2023
AST-MHSA 是一个使用多头注意力机制从抽象语法树中提取重要语义信息的模型,它包括编码器和解码器两个主要组件,编码器将代码的抽象语法树作为输入生成隐藏状态序列,解码器以这些隐藏状态为输入生成代码的自然语言摘要。
Aug, 2023
现有研究表明,代码摘要有助于开发人员理解和维护源代码。然而,软件项目中的这些摘要通常缺失或过时。本文提出了一种名为 EditSum 的新型检索编辑方法,用于代码摘要,旨在自动生成源代码的自然语言描述。实验结果表明,EditSum 在预测模式化单词和关键词方面表现出色,而且人工评估也证明了 EditSum 生成的摘要更具信息量和实用性。
Aug, 2023
本研究提出了一种新的神经网络模型,它可以将源代码的单词和代码结构(AST)结合起来,从而能够生成准确的注释文档。与传统的基于模板的系统不同,该模型可以更好地学习代码结构,即使程序缺乏内部文档,也可以在演示中提供连贯的描述,并在 SE 文献和 NLP 文献中得到进一步的改进和应用验证。
Feb, 2019