主题: On-the-Fly Adaptation of Source Code Models using Meta-Learning
摘要:
适应看不见的本地环境的能力是成功的源代码模型必须克服的重要挑战。动态模型评估是适应此类模型的最流行方法之一。通过动态评估,当在看不见的文件上运行模型时,在观察到文件中的每个标记后立即更新模型。在本工作中,我们建议将上下文适应问题构造为元学习问题。我们的目标是训练最能从文件中的信息中学习的基本源代码模型,以提供丢失令牌的改进预测。与动态评估不同,此公式允许我们选择更多针对性的信息(支持令牌)进行调整,即在文件中的目标孔之前和之后。我们考虑一种称为调用级维护的评估设置,该设置旨在反映IDE中代码自动完成的下游任务。利用一阶MAML和Reptile等元学习的最新发展,我们证明了与大规模的Java GitHub语料库相比,包括动态评估在内的其他适应性基准,改进了性能实验。此外,我们的分析表明,与非自适应基准相比,我们的方法将标识符和文字的性能分别提高了44%和15%。