arrow
返回

Cross-language code clone detection via flow-enhanced graph attention network

delete2026-01-01
delete0
PRE
AI
M
Mengyao Hu
J
Jia Yang *
W
Weiqi Zhou
DOI:10.1093/comjnl/bxaf146delete
delete原文链接
delete原文求助
delete分享
delete收藏
摘要

摘要

En 中文
代码克隆是在语法或语义层面相似的代码片段,在软件开发中常见。过度克隆会损害可维护性并可能引入持续性错误。我们分析了跨语言代码克隆在精确语义层面的检测。大多数现有的克隆检测方法针对单语言环境,主要关注语法相似性。然而,复杂软件系统通常使用多种编程语言开发,导致语义相似的跨语言代码克隆。这些克隆提出了当前检测工具难以应对的挑战。在本文中,我们提出了一种新颖的流程增强图注意力网络方法,称为FEGAT,以有效检测语义层面的跨语言代码克隆。首先,我们设计了一个流程增强代码图,使用抽象语法树并添加了控制和数据流边。然后,我们将此代码图输入预训练模型CodeBERT,以学习具有语义信息的初始流程增强节点表示。第三,我们设计FEGAT,从其语义信息中学习跨语言代码的流程增强图表示,并通过计算相似度分数来检测克隆。最后,我们在AtCoder和CodeChef数据集上进行了实验,以评估FEGAT在精确度、召回率和F1分数方面的性能。实验结果表明,FEGAT优于现有的跨语言代码克隆检测工具。
Keyword:
code clone detection
cross-language
semantic level
graph attention network
flow-enhanced code graph

期刊

C
COMPUTER JOURNAL
IF:
1.5
论文数:
102
被引数:
0

机构

H
hubei university of technology
学者数:
2.9K
论文数: 872
被引数: 0
引用论文

引用论文

暂无论文信息