How to Improve Deep Learning for Software Analytics (a case study with code smell detection)

02/02/2022
by   Rahul Yedida, et al.
0

To reduce technical debt and make code more maintainable, it is important to be able to warn programmers about code smells. State-of-the-art code small detectors use deep learners, without much exploration of alternatives within that technology. One promising alternative for software analytics and deep learning is GHOST (from TSE'21) that relies on a combination of hyper-parameter optimization of feedforward neural networks and a novel oversampling technique to deal with class imbalance. The prior study from TSE'21 proposing this novel "fuzzy sampling" was somewhat limited in that the method was tested on defect prediction, but nothing else. Like defect prediction, code smell detection datasets have a class imbalance (which motivated "fuzzy sampling"). Hence, in this work we test if fuzzy sampling is useful for code smell detection. The results of this paper show that we can achieve better than state-of-the-art results on code smell detection with fuzzy oversampling. For example, for "feature envy", we were able to achieve 99+% AUC across all our datasets, and on 8/10 datasets for "misplaced class". While our specific results refer to code smell detection, they do suggest other lessons for other kinds of analytics. For example: (a) try better preprocessing before trying complex learners (b) include simpler learners as a baseline in software analytics (c) try "fuzzy sampling" as one such baseline.

READ FULL TEXT
research
01/15/2021

When SIMPLE is better than complex: A case study on deep learning for predicting Bugzilla issue close time

Is deep learning over-hyped? Where are the case studies that compare sta...
research
08/22/2021

FRUGAL: Unlocking SSL for Software Analytics

Standard software analytics often involves having a large amount of data...
research
03/13/2018

Applications of Psychological Science for Actionable Analytics

Actionable analytics are those that humans can understand, and operation...
research
08/25/2015

A Neuro-Fuzzy Method to Improving Backfiring Conversion Ratios

Software project estimation is crucial aspect in delivering software on ...
research
06/16/2020

Foreground-Background Imbalance Problem in Deep Object Detectors: A Review

Recent years have witnessed the remarkable developments made by deep lea...
research
12/08/2014

A tool for implementation of a domain model based on fuzzy relationships

The domain model is one of the important components used by adaptive lea...
research
08/24/2022

Transformer-Boosted Anomaly Detection with Fuzzy Hashes

Fuzzy hashes are an important tool in digital forensics and are used in ...

Please sign up or login with your details

Forgot password? Click here to reset