联合学习修复代码与生成提交信息
计算与语言
2021-09-28 v1
摘要
我们提出了一种联合修复程序代码与生成提交信息的新任务。代码修复与提交信息生成是软件开发中两项基本且相关的任务。然而,现有工作通常独立执行这两项任务。我们针对这一新任务构建了一个包含错误代码、修复后代码与提交信息的多语言三元数据集。我们提供了级联模型作为基线,并通过不同的训练方法对其进行增强,包括教师-学生方法、多任务方法与回译方法。为处理级联方法的错误传播问题,提出了联合模型,该模型可在统一框架中同时修复代码并生成提交信息。实验结果表明,采用教师-学生方法与多任务学习方法增强的级联模型在自动化代码修复的不同指标上取得了最佳分数,且联合模型在提交信息生成上优于级联模型。
引用
@article{arxiv.2109.12296,
title = {Jointly Learning to Repair Code and Generate Commit Message},
author = {Jiaqi Bai and Long Zhou and Ambrosio Blanco and Shujie Liu and Furu Wei and Ming Zhou and Zhoujun Li},
journal= {arXiv preprint arXiv:2109.12296},
year = {2021}
}
备注
Accepted to the 2021 Conference on Empirical Methods in Natural Language Processing