Improving performance with hybrid feature selection and ensemble machine learning techniques for code smell detection

被引:38
|
作者
Jain, Shivani [1 ]
Saha, Anju [1 ]
机构
[1] GGS Indraprastha Univ, USIC&T, Sect 16 C, Delhi 110078, India
关键词
Code smell; Machine learning; Ensemble machine learning; Hybrid feature selection; Stacking; CLASSIFIER; REGRESSION; DESIGN;
D O I
10.1016/j.scico.2021.102713
中图分类号
TP31 [计算机软件];
学科分类号
081202 ; 0835 ;
摘要
Maintaining large and complex software is a significant task in IT industry. One reason for that is the development of code smells which are design flaws that lead to future bugs and errors. Code smells can be treated with regular refactoring, and their detection is the first step in the software maintenance process. Detecting code smells with machine learning algorithms eliminate the need of extensive knowledge required regarding properties of code smell and threshold values. Ensemble machine learning algorithms use a combination of several same or different classifiers to further aid the performance and reduces the variance. In our study, three hybrid feature selection techniques with ensemble machine learning algorithms are employed to improve the performance in detecting code smells. Seven machine learning classifiers with different kernel variations, along with three boosting designs, two stacking methods, and bagging were implemented. For feature selection, combination of filter-wrapper, filter-embedded, and wrapper-embedded methods have been executed. Performance measures for detecting four code smells are evaluated and are compared with the performance when feature selection is not employed. It is found out that performance measure after application of hybrid feature selection increased, accuracy by 21.43%, AUC value by 53.24%, and f-measure by 76.06%. Univariate ROC with Lasso is the best hybrid feature selection technique with 90.48% accuracy and 94.5% ROC AUC value. Random Forest and Logistic regression are the best performing machine learning classifiers. Data class is most detectable code smell. Stacking always gave better results when compared with individual classifiers. (C) 2021 Elsevier B.V. All rights reserved.
引用
收藏
页数:34
相关论文
共 50 条
  • [1] Improving Code Smell Detection by Reducing Dimensionality Using Ensemble Feature Selection and Machine Learning
    Nandini A.
    Singh R.
    Rathee A.
    SN Computer Science, 5 (6)
  • [2] Code Smell Detection Using Ensemble Machine Learning Algorithms
    Dewangan, Seema
    Rao, Rajwant Singh
    Mishra, Alok
    Gupta, Manjari
    APPLIED SCIENCES-BASEL, 2022, 12 (20):
  • [3] Rank-based univariate feature selection methods on machine learning classifiers for code smell detection
    Shivani Jain
    Anju Saha
    Evolutionary Intelligence, 2022, 15 : 609 - 638
  • [4] Rank-based univariate feature selection methods on machine learning classifiers for code smell detection
    Jain, Shivani
    Saha, Anju
    EVOLUTIONARY INTELLIGENCE, 2022, 15 (01) : 609 - 638
  • [5] Code smell detection using feature selection and stacking ensemble: An empirical investigation
    Alazba, Amal
    Aljamaan, Hamoud
    INFORMATION AND SOFTWARE TECHNOLOGY, 2021, 138
  • [6] Machine Learning and Ensemble Learning Techniques for Intrusion Detection Systems: A Performance Analysis Based on Feature Selection Methods
    Basarslan, Muhammet Sinan
    Turgut, Zeynep
    INTELLIGENT AND FUZZY SYSTEMS, VOL 3, INFUS 2024, 2024, 1090 : 117 - 124
  • [7] A Novel Four-Way Approach Designed With Ensemble Feature Selection for Code Smell Detection
    Kaur, Inderpreet
    Kaur, Arvinder
    IEEE ACCESS, 2021, 9 : 8695 - 8707
  • [8] Revisiting "code smell severity classification using machine learning techniques"
    Hu, Wenhua
    Liu, Lei
    Yang, Peixin
    Zou, Kuan
    Li, Jiajun
    Lin, Guancheng
    Xiang, Jianwen
    2023 IEEE 47TH ANNUAL COMPUTERS, SOFTWARE, AND APPLICATIONS CONFERENCE, COMPSAC, 2023, : 840 - 849
  • [9] Hybrid ensemble techniques used for classifier and feature selection in intrusion detection systems
    Kharwar, Ankit
    Thakor, Devendra
    INTERNATIONAL JOURNAL OF COMMUNICATION NETWORKS AND DISTRIBUTED SYSTEMS, 2022, 28 (04) : 389 - 413
  • [10] Improving and comparing performance of machine learning classifiers optimized by swarm intelligent algorithms for code smell detection
    Jain, Shivani
    Saha, Anju
    SCIENCE OF COMPUTER PROGRAMMING, 2024, 237