A Meta-Learning Approach for Software Refactoring
Hanieh Khosravi, Abbas Rasoolzadegan

TL;DR
This paper introduces a meta-learning approach using MAML to detect software refactoring opportunities efficiently, especially in low-data scenarios, achieving high accuracy with minimal annotated data.
Contribution
It formulates refactoring opportunity detection as a few-shot classification problem and applies MAML to improve performance in low-resource settings.
Findings
Achieved 91% accuracy in detecting refactoring opportunities.
Demonstrated effectiveness of meta-learning in software engineering tasks.
Reduced data requirements for accurate refactoring detection.
Abstract
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…
Peer Reviews
No public reviews on file for this paper yet. If you reviewed it on a platform where reviews are public (OpenReview, ICLR, NeurIPS, ICML), you can paste yours below so the community can read it here.
Videos
No videos yet. Explain this paper in a talk, walkthrough, or lecture? Add one.
Taxonomy
TopicsMachine Learning and Data Classification · Software Engineering Research
