中文

有限领域内的自顶向下自动化开发:从可表达到可执行的神经符号框架

软件工程 2023-08-25 v4 机器学习 编程语言

摘要

深度代码生成是面向软件工程的深度学习(DL4SE)的一个课题,其采用神经模型为预期功能生成代码。由于端到端神经方法缺乏领域知识和软件层次意识,它们在项目级任务上往往表现不佳。为系统性地探索代码生成的潜在改进,我们让其参与从\emph{可表达(expressibles)}到\emph{可执行(executables)}的整个自顶向下开发过程,这在有限领域内是可行的。在此过程中,它受益于海量样本、特征与知识。作为基础,我们建议利用代码信息的分类构建代码数据的分类法,即代码分类法(code taxonomy)。此外,我们引入三层语义金字塔(SP)以关联文本数据与代码数据。它识别不同抽象层级的信息,从而引入开发领域的知识并揭示软件的层次结构。进一步地,我们提出语义金字塔框架(SPF)作为方法,聚焦于高模块化、低复杂度的软件。SPF将代码生成过程划分为若干阶段,并为潜在的交互预留位置。另外,我们在软件开发中构思了初步应用以验证该神经符号框架。

关键词

引用

@article{arxiv.2209.01566,
  title  = {Towards Top-Down Automated Development in Limited Scopes: A Neuro-Symbolic Framework from Expressibles to Executables},
  author = {Jian Gu and Harald C. Gall},
  journal= {arXiv preprint arXiv:2209.01566},
  year   = {2023}
}

备注

5 pages, 3 figures, 2 tables, accepted by ESEC/FSE 2023, the camera-ready version