准确率可提升50%以上,Facebook用迁移学习改进代码自动补全
共 3370字,需浏览 7分钟
· 2021-05-24
来自 Facebook 的研究团队将迁移学习用于代码自动补全,提出的方法在非常小的微调数据集上提高 50% 以上的准确率,在 50k 标记示例上提高了 10% 以上的准确率。
该研究从版本控制提交获得的源代码文件,预训练了两个 transformer 软件语言模型 GPT-2 和 BART,结果显示它们在自动补全预测方面的性能,比直接使用实际 IDE 代码序列的微调提高了 2.18%;
GPT-2 模型在两个真实数据集上进行了训练:IDE 编写程序期间和代码补全选择期间记录的代码序列。预训练和针对特定任务的微调相结合能够使模型性能更好,高出基准模型 3.29%;
该研究显示,与仅对 Python 实例进行训练的模型相比,与在 Hack 实例上进行了预训练并在 10k Python 实例上进行了微调的模型进行比较,在不同编程语言上进行预训练可将准确率提高 13.1%;
通过在线 A/B 测试,该研究证明了在三个迁移学习维度(任务、领域和语言)上的改进,自动补全工具的使用率分别提高了 3.86%、6.63% 和 4.64%。
GPT-2:一种解码器 transformer 模型,由于 transformer 具有同时观察所有序列元素及其自注意力块的能力,因此在代码预测中达到了 SOTA 性能;
PLBART:一种双向模型,该模型利用编码器对代码完成点周围的上下文进行编码,并使用类似 GPT-2 的解码器进行自动回归生成。
© THE END
转载请联系原公众号获得授权
投稿或寻求报道:content@jiqizhixin.com
点个在看 paper不断!