作者:Freda Shi, Daniel Fried, Marjan Ghazvininejad,等

简介:本文研究预训练代码模型中程序语义议题。在大型程序语料库上预训练的代码生成模型在将自然语言转换为代码方面取得了巨大成功 。虽然这些模型在训练期间没有明确地结合程序语义(即执行结果),但它们能够为许多问题生成正确的解决方案。然而,从每个问题的生成集中选择一个正确的程序仍然具有挑战性。在这项工作中,作者引入了基于执行结果的最小贝叶斯风险解码 (MBR-EXEC) 用于程序选择,并表明它提高了预训练代码模型在自然语言到代码任务上的小样本性能。作者通过边缘化共享相同语义的程序实现从生成的候选集中选择输出程序。因为精确等价难以处理,作者在少量测试输入上执行每个程序以近似语义等价;跨数据集、执行或模拟执行:都明显优于不涉及程序语义的方法。作者发现 MBR-EXEC 比所有不知道如何执行的选择方法都有持续的改进,实验表明 MBR-EXEC是一种有效的自然语言代码转换方法。

论文下载:https://arxiv.org/pdf/2204.11454

内容中包含的图片若涉及版权问题,请及时与我们联系删除