中文

CoTexT:基于代码-文本 Transformer 的多任务学习

人工智能 2021-06-22 v4 编程语言

摘要

我们提出 CoTexT,一个预训练的、基于 transformer 的编码器-解码器模型,用于学习自然语言(NL)与编程语言(PL)之间的代表性上下文。利用自监督,CoTexT 在大型编程语言语料库上预训练以学习对语言与代码的通用理解。CoTexT 支持下游 NL-PL 任务,如代码摘要/文档生成、代码生成、缺陷检测与代码调试。我们在包括“双模态”与“单模态”数据在内的不同可用 PL 语料组合上训练 CoTexT。此处,双模态数据是文本与相应代码片段的组合,而单模态数据仅为代码片段。我们首先以多任务学习评估 CoTexT:我们在 6 种不同编程语言上进行代码摘要,并在 CodeXGLUE 数据集中包含的小型和中型规模上进行代码精炼。我们进一步开展广泛实验以探究 CoTexT 在 CodeXGLUE 数据集内的其他任务,包括代码生成与缺陷检测。我们在这些任务中持续取得 SOTA 结果,展示了我们模型的通用性。

关键词

引用

@article{arxiv.2105.08645,
  title  = {CoTexT: Multi-task Learning with Code-Text Transformer},
  author = {Long Phan and Hieu Tran and Daniel Le and Hieu Nguyen and James Anibal and Alec Peltekian and Yanfang Ye},
  journal= {arXiv preprint arXiv:2105.08645},
  year   = {2021}
}