中文

基于语句记忆的神经源代码摘要方法

人工智能 2023-07-24 v1

摘要

源代码摘要是为源代码行为撰写自然语言描述的任务。代码摘要构成了程序员软件文档的基础。代码的简短描述帮助程序员快速理解程序,而无需阅读代码本身。近来,神经源代码摘要已成为自动化代码摘要技术研究的尖端。迄今为止最流行的摘要目标是程序子例程。其核心理念是利用从代码仓库中提取的大量子例程示例集训练编码器-解码器神经架构。编码器表示代码,解码器表示摘要。然而,当前多数方法试图将子例程视为单一单元。例如,将整个子例程作为Transformer或基于RNN的编码器的输入。但代码行为往往依赖于语句间的流转。通常动态分析可阐明此流转,但对大型数据集中数十万示例进行动态分析并不现实。本文中,我们提出一种基于语句的记忆编码器,在训练中学习流转的重要元素,从而获得基于语句的子例程表示而无需动态分析。我们实现了用于代码摘要的编码器,并展示相较最先进方法显著提升。

关键词

引用

@article{arxiv.2307.11709,
  title  = {Statement-based Memory for Neural Source Code Summarization},
  author = {Aakash Bansal and Siyuan Jiang and Sakib Haque and Collin McMillan},
  journal= {arXiv preprint arXiv:2307.11709},
  year   = {2023}
}

备注

10 pages 2 figures