将全局与局部层次信息植入基于序列的代码表示模型
软件工程
2023-03-15 v1 人工智能
摘要
基于深度学习技术的源代码表示是一个重要的研究领域。已有许多研究学习代码的序列或结构信息。但基于序列的模型与非序列模型均有其局限性。研究者试图将结构信息融入基于序列的模型,但他们仅挖掘了词元级层次结构信息的一部分。在本文中,我们分析了完整层次结构如何影响代码序列中的词元,并将此影响抽象为代码词元的一种属性,称为层次嵌入。该层次嵌入进一步划分为语句级全局层次与词元级局部层次。此外,我们提出了层次 Transformer(HiT),一种简单而有效的序列模型,将源代码的完整层次嵌入融入 Transformer 模型。我们通过变量作用域检测任务的实验展示了层次嵌入在学习代码结构上的有效性。进一步评估表明,HiT 在涉及分类与生成任务的三个源代码相关任务、跨越 8 个不同数据集上优于 SOTA 基线模型,并展现出稳定的训练效率。
引用
@article{arxiv.2303.07826,
title = {Implant Global and Local Hierarchy Information to Sequence based Code Representation Models},
author = {Kechi Zhang and Zhuo Li and Zhi Jin and Ge Li},
journal= {arXiv preprint arXiv:2303.07826},
year = {2023}
}
备注
Accepted by ICPC 2023