Exploring the Impact of Code Clones on Deep Learning Software

被引:2
|
作者
Mo, Ran [1 ]
Zhang, Yao [1 ]
Wang, Ush Uo [1 ]
Zhang, Uan [1 ]
Xiong, Pu [1 ]
Li, Zengyang [1 ]
Zhao, Yang [1 ]
机构
[1] Cent China Normal Univ, Wuhan, Hubei, Peoples R China
基金
中国国家自然科学基金;
关键词
Deep learning software; code clone; co-changed clone; CCFINDER;
D O I
10.1145/3607181
中图分类号
TP31 [计算机软件];
学科分类号
081202 ; 0835 ;
摘要
Deep learning (DL) is a really active topic in recent years. Code cloning is a common code implementation that could negatively impact software maintenance. For DL software, developers rely heavily on frameworks to implement DL features. Meanwhile, to guarantee efficiency, developers often reuse the steps and configuration settings for building DL models. These may bring code copy-pastes or reuses inducing code clones. However, there is little work exploring code clones' impact on DL software. In this article, we conduct an empirical study and show that: (1) code clones are prevalent in DL projects, about 16.3% of code fragments encounter clones, which is almost twice larger than the traditional projects; (2) 75.6% of DL projects contain co-changed clones, meaning changes are propagated among cloned fragments, which can bring maintenance difficulties; (3) Percentage of the clones and Number of clone lines are associated with the emergence of co-changes; (4) the prevalence of Code clones varies in DL projects with different frameworks, but the difference is not significant; (5) Type 1 co-changed clones often spread over different folders, but Types 2 and 3 co-changed clones mainly occur within the same files or folders; (6) 57.1% of all co-changed clones are involved in bugs.
引用
收藏
页数:34
相关论文
共 50 条
  • [1] Exploring Code Clones in Programmable Logic Controller Software
    Thaller, Hannes
    Ramler, Rudolf
    Pichler, Josef
    Egyed, Alexander
    2017 22ND IEEE INTERNATIONAL CONFERENCE ON EMERGING TECHNOLOGIES AND FACTORY AUTOMATION (ETFA), 2017,
  • [2] A Deep Learning Based Approach to Detect Code Clones
    Li, Guangjie
    Tang, Yi
    Zhang, Xiang
    Yi, Biyi
    2020 INTERNATIONAL CONFERENCE ON INTELLIGENT COMPUTING AND HUMAN-COMPUTER INTERACTION (ICHCI 2020), 2020, : 337 - 340
  • [3] Clones in deep learning code: what, where, and why?
    Hadhemi Jebnoun
    Md Saidur Rahman
    Foutse Khomh
    Biruk Asmare Muse
    Empirical Software Engineering, 2022, 27
  • [4] Clones in deep learning code: what, where, and why?
    Jebnoun, Hadhemi
    Rahman, Md Saidur
    Khomh, Foutse
    Muse, Biruk Asmare
    EMPIRICAL SOFTWARE ENGINEERING, 2022, 27 (04)
  • [5] Tracking code clones in evolving software
    Duala-Ekoko, Ekwa
    Robillard, Martin P.
    ICSE 2007: 29TH INTERNATIONAL CONFERENCE ON SOFTWARE ENGINEERING, PROCEEDINGS, 2007, : 158 - +
  • [6] Software analysis by code clones in open source software
    Uchida, S
    Kamiya, T
    Monden, A
    Matsumoto, KI
    Ohsugi, N
    Kudo, H
    JOURNAL OF COMPUTER INFORMATION SYSTEMS, 2005, 45 (03) : 1 - 11
  • [7] Software quality analysis by code clones in industrial legacy software
    Monden, A
    Nakae, D
    Kamiya, T
    Sato, S
    Matsumoto, K
    EIGHTH IEEE SYMPOSIUM ON SOFTWARE METRICS, PROCEEDINGS, 2002, : 87 - 94
  • [8] Automatic Software Code Repair Using Deep Learning Techniques
    Abdollahpour, Mohammad Mahdi
    Ashtiani, Mehrdad
    Bakhshi, Fatemeh
    SSRN, 2022,
  • [9] Deep Learning for Software Vulnerabilities Detection Using Code Metrics
    Zagane, Mohammed
    Abdi, Mustapha Kamel
    Alenezi, Mamdouh
    IEEE ACCESS, 2020, 8 : 74562 - 74570
  • [10] Automatic software code repair using deep learning techniques
    Abdollahpour, Mohammad Mahdi
    Ashtiani, Mehrdad
    Bakhshi, Fatemeh
    SOFTWARE QUALITY JOURNAL, 2024, 32 (02) : 361 - 390