A Meta-Learning Approach for Software Refactoring

01/19/2023
by   Hanieh Khosravi, et al.
0

Software refactoring is the process of changing the structure of software without any alteration in its behavior and functionality. Presuming it is carried out in appropriate opportunities, refactoring enhances software quality characteristics such as maintainability and extensibility. Thus far, various studies have addressed the problem of detecting proper opportunities for refactoring. Most of them are based on human expertise and are prone to error and non-meticulous. Fortunately, in recent efforts, machine learning methods have produced outstanding results in finding appropriate opportunities for refactoring. Sad to say, Machine learning methods mostly need plenty of data and, consequently, long processing time. Furthermore, there needs to be more annotated data for many types of refactoring, and data collection is time-consuming and costly. Accordingly, in this paper, we have formulated the problem of detecting appropriate opportunities for refactoring as a few-shot classification problem. We have utilized model-agnostic meta-learning (MAML), a recognized meta-learning algorithm, to learn a neural network on tasks from high-resource data. The trained model, then, is adapted to a model with high accuracy for tasks from low-resource data. Experimental results revealed 91 accuracy, which illustrates the effectiveness and competitiveness of our proposed meta-learning model.

READ FULL TEXT
research
05/14/2019

Meta-Learning for Low-resource Natural Language Generation in Task-oriented Dialogue Systems

Natural language generation (NLG) is an essential component of task-orie...
research
03/06/2023

Knowledge-embedded meta-learning model for lift coefficient prediction of airfoils

Aerodynamic performance evaluation is an important part of the aircraft ...
research
01/19/2023

Concept Discovery for Fast Adapatation

The advances in deep learning have enabled machine learning methods to o...
research
08/27/2020

learn2learn: A Library for Meta-Learning Research

Meta-learning researchers face two fundamental issues in their empirical...
research
07/20/2022

Bitwidth-Adaptive Quantization-Aware Neural Network Training: A Meta-Learning Approach

Deep neural network quantization with adaptive bitwidths has gained incr...
research
01/26/2022

Challenges and Opportunities for Machine Learning Classification of Behavior and Mental State from Images

Computer Vision (CV) classifiers which distinguish and detect nonverbal ...
research
03/05/2023

Time Associated Meta Learning for Clinical Prediction

Rich Electronic Health Records (EHR), have created opportunities to impr...

Please sign up or login with your details

Forgot password? Click here to reset