TranS^3:一种基于 Transformer 的统一代码摘要与代码搜索框架
软件工程
2020-03-10 v2
摘要
代码摘要与代码搜索已在软件开发与维护中被广泛采用。然而,鲜有研究探讨统一二者的成效。本文中,我们提出 TranS^3,一种基于 transformer 的框架,将代码摘要与代码搜索相集成。具体地,对于代码摘要,TranS^3 启用一种 actor-critic 网络,其中在 actor 网络中,我们通过基于 transformer 与树状 transformer 的编码器对收集的代码片段进行编码,并解码给定代码片段以生成其注释。同时,我们通过来自 critic 网络的反馈迭代调优 actor 网络,以提升生成注释的质量。此外,我们将生成的注释引入代码搜索以增强其准确率。为评估 TranS^3 的有效性,我们开展了一组实验研究与案例研究,实验结果表明 TranS^3 在代码摘要与代码搜索上均能显著优于多种最先进方法,且研究结果从开发者视角进一步强化了 TranS^3 的成效。
引用
@article{arxiv.2003.03238,
title = {TranS^3: A Transformer-based Framework for Unifying Code Summarization and Code Search},
author = {Wenhua Wang and Yuqun Zhang and Zhengran Zeng and Guandong Xu},
journal= {arXiv preprint arXiv:2003.03238},
year = {2020}
}