A Novel Source Code Clone Detection Method Based on Dual-GCN and IVHFS

被引:0
|
作者
Yang, Haixin [1 ]
Li, Zhen [1 ]
Guo, Xinyu [1 ]
机构
[1] Hebei Univ, Sch Cyber Secur & Comp, Baoding 071002, Peoples R China
关键词
source code clone detection; software engineering; graph convolutional network; interval-valued hesitant fuzzy set; abstract syntax tree; control flow graph;
D O I
10.3390/electronics12061315
中图分类号
TP [自动化技术、计算机技术];
学科分类号
0812 ;
摘要
Source code clone detection, which can identify code fragments with similar functions, plays a significant role in software development and quality assurance. Existing methods either extract single syntactic or semantic information, or ignore the associated information between code statements in different structures. It is difficult for these methods to effectively detect clone pairs with similar functions. In this paper, we propose a new model based on a dual graph convolutional network (GCN) and interval-valued hesitant fuzzy set (IVHFS), which we named DG-IVHFS. Specifically, we simplified and grouped the abstract syntax tree (AST) of source code to obtain the group representations. The group representations of the AST, as well as the control flow graph (CFG) representations, were transformed into graph structures, and then we applied GCNs on them to learn dependencies between nodes. In addition, we introduced IVHFS into the model for a more comprehensive evaluation of similarity. Our experimental results demonstrated that the precision, recall, and F1-scores of DG-IVHFS on the BigCloneBench and GoogleCodeJam datasets reached 98, 97 and 97% and 98, 93 and 95%, respectively, exceeding current state-of-the-art models. Moreover, our model performed well in terms of time consumption.
引用
收藏
页数:18
相关论文
共 50 条
  • [31] Applying a code clone detection method to domain analysis of device drivers
    Ma, Yu-Seung
    Woo, Duk-Kuyn
    14TH ASIA-PACIFIC SOFTWARE ENGINEERING CONFERENCE, PROCEEDINGS, 2007, : 254 - +
  • [32] A collaborative method for code clone detection using a deep learning model
    Karthik, S.
    Rajdeepa, B.
    ADVANCES IN ENGINEERING SOFTWARE, 2022, 174
  • [33] Graph-based code semantics learning for efficient semantic code clone detection
    Yu, Dongjin
    Yang, Quanxin
    Chen, Xin
    Chen, Jie
    Xu, Yihang
    INFORMATION AND SOFTWARE TECHNOLOGY, 2023, 156
  • [34] Clone-based code method usage pattern mining
    Xue, Zhipeng
    Zhang, Yuanhang
    Xu, Rulin
    30TH IEEE/ACM INTERNATIONAL CONFERENCE ON PROGRAM COMPREHENSION (ICPC 2022), 2022, : 543 - 547
  • [35] A Method for Constructing a Clone Code Case Library Based on Bugs
    Zhai Ye
    Zhao Yuwu
    Liu Dong Sheng
    PROCEEDINGS OF 2019 IEEE 3RD INFORMATION TECHNOLOGY, NETWORKING, ELECTRONIC AND AUTOMATION CONTROL CONFERENCE (ITNEC 2019), 2019, : 2480 - 2486
  • [36] SJBCD: A Java']Java Code Clone Detection Method Based on Bytecode Using Siamese Neural Network
    Wan, Bangrui
    Dong, Shuang
    Zhou, Jianjun
    Qian, Ying
    APPLIED SCIENCES-BASEL, 2023, 13 (17):
  • [37] VDHGT: A Source Code Vulnerability Detection Method Based on Heterogeneous Graph Transformer
    Yang, Hongyu
    Yang, Haiyun
    Zhang, Liang
    CYBERSPACE SAFETY AND SECURITY, CSS 2022, 2022, 13547 : 217 - 224
  • [38] CloneTM: A Code Clone Detection Tool Based on Latent Dirichlet Allocation
    Reddivari, Sandeep
    Khan, Mohammed Salman
    2019 IEEE 43RD ANNUAL COMPUTER SOFTWARE AND APPLICATIONS CONFERENCE (COMPSAC), VOL 1, 2019, : 930 - 931
  • [39] TPCaps: a framework for code clone detection and localization based on improved CapsNet
    Li, Yuancheng
    Yu, Chaohang
    Cui, Yaqi
    APPLIED INTELLIGENCE, 2023, 53 (13) : 16594 - 16605
  • [40] Index-Based Code Clone Detection: Incremental, Distributed, Scalable
    Hummel, Benjamin
    Juergens, Elmar
    Heinemann, Lars
    Conradt, Michael
    2010 IEEE INTERNATIONAL CONFERENCE ON SOFTWARE MAINTENANCE, 2010,