MUFIN:利用回译改进神经修复模型
软件工程
2023-04-06 v1
摘要
自动程序修复是自动修复软件缺陷的任务。该领域一个有前景的方向是自监督学习,一种在无代表缺陷/修复对的提交情况下训练修复模型的学习范式。在自监督神经程序修复中,这些缺陷/修复对以某种方式生成。主要问题在于生成有趣且多样的配对,以最大化训练效果。作为对该问题的贡献,我们提出使用回译,一种源自神经机器翻译的技术。我们设计并实现了MUFIN,一种用于程序修复的回译训练技术,配有专门设计的代码评判器以筛选高质量训练样本。我们的结果表明,MUFIN的回译循环以完全自动化、自监督的方式生成有价值的训练样本,生成了超过五十万对缺陷/修复。代码评判器的设计至关重要,因为评判器的限制程度与回译期间可用于优化的样本数量之间存在根本权衡。
引用
@article{arxiv.2304.02301,
title = {MUFIN: Improving Neural Repair Models with Back-Translation},
author = {André Silva and João F. Ferreira and He Ye and Martin Monperrus},
journal= {arXiv preprint arXiv:2304.02301},
year = {2023}
}