中文

利用静态分析增强深度学习的源代码表示

软件工程 2024-02-16 v1

摘要

应用于代码分类、摘要和缺陷检测等程序分析任务的深度学习技术已受到广泛关注。然而,传统方法将编程源代码视为自然语言文本,这可能忽略了重要的结构或语义细节。此外,大多数当前的源代码表示方法仅关注代码本身,而未考虑有益的额外上下文。本文探讨了将静态分析以及缺陷报告和设计模式等额外上下文集成到深度学习模型的源代码表示中。我们使用基于抽象语法树的神经网络(ASTNN)方法,并利用从缺陷报告和设计模式中获得的额外上下文信息对其进行增强,创建了一种丰富的源代码表示,显著提升了代码分类和代码克隆检测等常见软件工程任务的性能。利用现有的开源代码数据,我们的方法改进了源代码的表示和处理,从而提高了任务性能。

关键词

引用

@article{arxiv.2402.09557,
  title  = {Enhancing Source Code Representations for Deep Learning with Static Analysis},
  author = {Xueting Guan and Christoph Treude},
  journal= {arXiv preprint arXiv:2402.09557},
  year   = {2024}
}