FSD-CLCD: Functional semantic distillation graph learning for cross-language code clone detection

Linghao Zhang, Senlin Luo, Limin Pan*, Zhouting Wu, Kun Gong

*此作品的通讯作者

科研成果: 期刊稿件文章同行评审

摘要

Code clone detection can find similar or the same code snippets, which is important in analyzing homologous components, discovering redundant code, and improving software system development and maintenance efficiency. A crucial challenge is to extract more functional semantic similarity from code in heterogeneous conditions, such as a cross-language scenario. Existing methods mainly exploit sequence models with only lexical and statistical features to compare code pairs, which are susceptible to linguistic feature noise and misclassify code pairs that have similar structure dependencies such as control flow. Meanwhile, there are issues with inconsistent node types and a great variation of node numbers while capturing structure-dependent features, resulting in a misaligned distribution of clone pairs, and weakening the detection precision. This work presents a novel cross-language code clone detection method. It represents code with a graph structure based on abstract syntax trees and introduces a global node to strengthen the connection between control flows. Prune the graph structure based on key node protection rules to reduce the impact of linguistic feature noise. Besides, optimize graph matching networks for cross-language abstract syntax trees by using contrastive loss to align the functional semantic distribution of clone pairs. The method distills the invariant functional semantic similarity with a huge discrepancy of the code graph in heterogeneous cross-language conditions. Experiment results show that the proposed method achieves scores of 0.95, 0.98, and 0.96 in terms of precision, recall and F1-score and substantially outperforms the state-of-the-art baselines.

源语言英语
文章编号108199
期刊Engineering Applications of Artificial Intelligence
133
DOI
出版状态已出版 - 7月 2024

指纹

探究 'FSD-CLCD: Functional semantic distillation graph learning for cross-language code clone detection' 的科研主题。它们共同构成独一无二的指纹。

引用此

Zhang, L., Luo, S., Pan, L., Wu, Z., & Gong, K. (2024). FSD-CLCD: Functional semantic distillation graph learning for cross-language code clone detection. Engineering Applications of Artificial Intelligence, 133, 文章 108199. https://doi.org/10.1016/j.engappai.2024.108199