返回
Enhancing Semantic Clone Detection with Siamese Bi-LSTM for Multi-Level Source Code Representations
DOI:10.1007/s13369-025-10675-z.png)
摘要
En 中文
源代码克隆检测器是软件工程中的基础技术。尽管过去十年进行了大量研究,但现有方法在检测语义克隆方面仍需改进。机器学习技术的进步引起了研究人员的关注,激励他们提出新的语义克隆检测方法。然而,许多现有方法依赖人工设计的特征来表示源代码的语法和语义信息,这阻碍了语义克隆对的检测。本文介绍了一种新的语义克隆识别方法,利用Siamese双向长短期记忆(Siamese bidirectional LSTM)技术学习源代码表示中的隐藏语法和语义模式。该技术将源代码转换为两种不同表示:高层次源代码表示抽象语法树和低层次抽象编译代码中间表示(Baf和Jimple块程序依赖图)。在大型Java程序数据集(BigCloneBench)上进行了广泛实验,以评估所提出技术的有效性。结果表明,所提出的方法在检测复杂克隆类型(如MT-3(94%)和WT-3/4(93%))的F1分数方面优于基线方法,包括CCLearner、SourcererCC、NiCad、iClones、CCFinder、Oreo和Deckard。此外,在VST-3(97%)、ST-3(98%)、MT-3(94%)和WT-3/4(93%)的克隆识别F1分数性能方面,它优于CDLH、DLC、ASTNN和Quradaa等人,平均F1分数达到95.5%。这些结果突显了其卓越的检测能力。
Keyword:
Code clone detection
Code representation
Deep learning
Semantic clone
期刊
A
IF:
2.9
论文数:
1.2K
被引数:
0
机构
引用论文
Goner: Building Tree-Based N-Gram-Like Model for Semantic Code Clone DetectionGoner: 构建基于树的类n-gram语义代码克隆检测模型
Processing of clinical notes for efficient diagnosis with feedback attention–based bilstm基于反馈注意力机制的BiLSTM临床笔记处理以实现高效诊断
A novel code representation for detecting java code clones using high-level and abstract compiled code representations一种用于检测Java代码克隆的新型代码表示方法,利用高层和抽象的编译代码表示
A Generative AI-Driven Method-Level Semantic Clone Detection Based on the Structural and Semantical Comparison of Methods基于方法结构和语义比较的生成式AI驱动方法级语义克隆检测
IEEE ACCESS
IF3.6

