Institutional Research Information Service
UCL Logo
Please report any queries concerning the funding data grouped in the sections named "Externally Awarded" or "Internally Disbursed" (shown on the profile page) to your Research Finance Administrator. Your can find your Research Finance Administrator at https://www.ucl.ac.uk/finance/research/rs-contacts.php by entering your department
Please report any queries concerning the student data shown on the profile page to:

Email: portico-services@ucl.ac.uk

Help Desk: http://www.ucl.ac.uk/ras/portico/helpdesk
Publication Detail
Improving Clone Detection Precision Using Machine Learning Techniques
  • Publication Type:
  • Authors:
    Arammongkolvichai V, Koschke R, Ragkhitwetsagul C, Choetkiertikul M, Sunetnanta T
  • Publisher:
  • Publication date:
  • Pagination:
    31, 36
  • Published proceedings:
    Proceedings - 2019 10th International Workshop on Empirical Software Engineering in Practice, IWESEP 2019
  • ISBN-13:
  • Status:
  • Name of conference:
    2019 10th International Workshop on Empirical Software Engineering in Practice (IWESEP)
  • Conference place:
    Tokyo, Japan
  • Conference start date:
  • Conference finish date:
© 2019 IEEE. Code clones or similar segments of code in a software project can be detected by using a clone detection tool. Due to modifications applied after copying and pasting of the cloned code, the current code clone detection tools face challenges to accurately detect clones with heavy modifications (i.e., Type-3 clones or clones with added/deleted/modified statements). One challenge is because the clone results contain several false positives. In this paper, we propose an approach for increasing the precision of code clone detection using machine learning techniques. By training a decision tree on 19 clone class metrics, we use the trained decision tree as a clone filter by placing it in the last step in the clone detection pipeline. This aims to remove false positive clone classes reported by a clone detection tool. We found that the decision tree clone filter is helpful for decreasing the number of false positive clone classes in iClones, a well-known code clone detector. After training the decision tree on 537 clone classes in JFreeChart and evaluating it on the test data set, it could improve iClone's precision from 0.94 to 0.98. The findings show that decision tree can be used effectively for filtering false positive clones. Nonetheless, we found that the filter is only effective for Java and does not offer satisfying performance when running on a Django Python project.
Publication data is maintained in RPS. Visit https://rps.ucl.ac.uk
 More search options
There are no UCL People associated with this publication
University College London - Gower Street - London - WC1E 6BT Tel:+44 (0)20 7679 2000

© UCL 1999–2011

Search by