# Code Smell Detection using Multilabel Classification Approach

arXiv: https://arxiv.org/abs/1902.03222 · HTML: https://mlsanity.com/paper/1902.03222/

## Key facts

- Cited by 6 papers in the map (data through 14 Oct 2026).
- First posted on arXiv 8 Feb 2019.

## Built on by (most cited first, 6 of 6)

- [A Survey on Machine Learning Techniques for Source Code Analysis](https://mlsanity.com/paper/2110.09610/) (2021)
- [CodePori: Large-Scale System for Autonomous Software Development Using Multi-Agent Technology](https://mlsanity.com/paper/2402.01411/) (2024)
- [Can I Solve It? Identifying APIs Required to Complete OSS Task](https://mlsanity.com/paper/2103.12653/) (2021)
- [A systematic literature review on the code smells datasets and validation mechanisms](https://mlsanity.com/paper/2306.01377/) (2023)
- [Tag that issue: Applying API-domain labels in issue tracking systems](https://mlsanity.com/paper/2304.02877/) (2023)
- [A Flexible Cell Classification for ML Projects in Jupyter Notebooks](https://mlsanity.com/paper/2403.07562/) (2024)

## Abstract (arXiv)

Code smells are characteristics of the software that indicates a code or design problem which can make software hard to understand, evolve, and maintain. The code smell detection tools proposed in the literature produce different results, as smells are informally defined or are subjective in nature. To address the issue of tool subjectivity, machine learning techniques have been proposed which can learn and distinguish the characteristics of smelly and non-smelly source code elements (classes or methods). However, the existing machine learning techniques can only detect a single type of smell in the code element which does not correspond to a real-world scenario. In this paper, we have used multilabel classification methods to detect whether the given code element is affected by multiple smells or not. We have considered two code smell datasets for this work and converted them into a multilabel dataset. In our experimentation, Two multilabel methods performed on the converted dataset which demonstrates good performances in the 10-fold cross-validation, using ten repetitions.
