双曲代码检索:利用双曲空间嵌入实现高效代码搜索的新方法
软件工程
2023-08-30 v1
摘要
在高级代码检索领域,现有方法主要依赖复杂的匹配与基于注意力的机制。然而,这些方法常导致计算与内存效率低下,对其实际适用性构成重大挑战。为应对该挑战,我们提出一种新方法——双曲代码问答匹配(HyCoQA)。该方法利用双曲空间的独特性质表达代码片段与其对应查询间的关联,从而免去了复杂交互层的必要。过程始于将代码检索挑战重构于问答(QA)匹配框架内,构建以 \texttt{<}负例代码、描述、正例代码\texttt{>}为特征的三元组匹配数据集。这些匹配随后经静态 BERT 嵌入层处理,得到初始嵌入。此后,双曲嵌入器将这些表示变换至双曲空间,计算代码与描述间的距离。过程最后在这些距离上实现打分层,并利用铰链损失进行模型训练。特别地,HyCoQA 的设计天然促进自组织,可在学习阶段自动检测嵌入的层次模式。实验上,HyCoQA 在我们的评估中展现出显著有效性:相较最先进代码检索技术,平均性能提升 3.5% 至 4%。
引用
@article{arxiv.2308.15234,
title = {Hyperbolic Code Retrieval: A Novel Approach for Efficient Code Search Using Hyperbolic Space Embeddings},
author = {Xunzhu Tang and zhenghan Chen and Saad Ezzini and Haoye Tian and Yewei Song and Jacques Klein and Tegawende F. Bissyande},
journal= {arXiv preprint arXiv:2308.15234},
year = {2023}
}