语言无关的代码示例表征
计算与语言
2023-10-26 v1 机器学习
摘要
近来,代码语言模型在解决多种重要的代码理解与生成任务上取得了显著进展。然而,该领域缺乏对多语言代码模型的代码嵌入(embeddings)的全面深入研究和理解。在本文中,我们对多语言代码嵌入进行了全面研究,重点关注这些嵌入在不同编程语言间的跨语言能力。通过探测实验,我们证明代码嵌入由两个不同的组成部分构成:一个深度绑定于特定语言的细微差别与语法,另一个则对这些细节保持无关,主要关注语义。进一步,我们展示当我们将语言特定成分分离并消除后,下游代码检索任务取得显著改进,平均倒数排名(MRR)绝对提升高达 +17。
引用
@article{arxiv.2310.16803,
title = {Language Agnostic Code Embeddings},
author = {Saiteja Utpala and Alex Gu and Pin Yu Chen},
journal= {arXiv preprint arXiv:2310.16803},
year = {2023}
}