Papers › Advanced Detection of Source Code Clones via an Ensemble of Unsupervised Similarity Measures

Advanced Detection of Source Code Clones via an Ensemble of Unsupervised Similarity Measures

3 May 2024arXiv:2405.02095archive 2025-07-28

Jorge Martinez-Gil

The capability of accurately determining code similarity is crucial in many tasks related to software development. For example, it might be essential to identify code duplicates for performing software maintenance. This research introduces a novel ensemble learning approach for code similarity assessment, combining the strengths of multiple unsupervised similarity measures. The key idea is that the strengths of a diverse set of similarity measures can complement each other and mitigate individual weaknesses, leading to improved performance. Preliminary results show that while Transformers-based CodeBERT and its variant GraphCodeBERT are undoubtedly the best option in the presence of abundant training data, in the case of specific small datasets (up to 500 samples), our ensemble achieves similar results, without prejudice to the interpretability of the resulting solution, and with a much lower associated carbon footprint due to training. The source code of this novel approach can be downloaded from https://github.com/jorge-martinez-gil/ensemble-codesim.

PaperPDFCode

Code

jorge-martinez-gil/ensemble-codesim officialmentioned in papermentioned on GitHub report

Repository list and official/mentioned flags are the archive's, frozen 2025-07-28. Reachability, where shown, is from one Syntology probe window (2026-09-16 to 2026-09-18); repositories not probed show nothing. GitHub stars are not tracked.

Code Syntology ran Syntology

Not run by Syntology. Nothing on this page verifies that the listed code works.

Tasks

Clone DetectionCode SearchEnsemble Learning

Results from the paper archive 2025-07-28

No leaderboard rows for this paper in the archive.

Methods

CodeBERTSET

Report a problem or propose a change · a person checks every report against the paper or source before anything changes; decisions are listed on /corrections