Back to Search Start Over

Learning from Very Little Data: On the Value of Landscape Analysis for Predicting Software Project Health.

Authors :
Lustosa, Andre
Menzies, Tim
Source :
ACM Transactions on Software Engineering & Methodology; Mar2024, Vol. 33 Issue 3, p1-22, 22p
Publication Year :
2024

Abstract

When data is scarce, software analytics can make many mistakes. For example, consider learning predictors for open source project health (e.g., the number of closed pull requests in 12 months time). The training data for this task may be very small (e.g., 5 years of data, collected every month means just 60 rows of training data). The models generated from such tiny datasets can make many prediction errors. Those errors can be tamed by a landscape analysis that selects better learner control parameters. Our niSNEAK tool (a) clusters the data to find the general landscape of the hyperparameters, then (b) explores a few representatives from each part of that landscape. niSNEAK is both faster and more effective than prior state-of-the-art hyperparameter optimization algorithms (e.g., FLASH, HYPEROPT, OPTUNA). The configurations found by niSNEAK have far less error than other methods. For example, for project health indicators such as C = number of commits, I = number of closed issues, and R = number of closed pull requests, niSNEAK 's 12-month prediction errors are {I=0%, R=33% C=47%}, whereas other methods have far larger errors of {I=61%,R=119% C=149%}. We conjecture that niSNEAK works so well since it finds the most informative regions of the hyperparameters, then jumps to those regions. Other methods (that do not reflect over the landscape) can waste time exploring less informative options. Based on the preceding, we recommend landscape analytics (e.g., niSNEAK) especially when learning from very small datasets. This article only explores the application of niSNEAK to project health. That said, we see nothing in principle that prevents the application of this technique to a wider range of problems. To assist other researchers in repeating, improving, or even refuting our results, all our scripts and data are available on GitHub at https://github.com/zxcv123456qwe/niSneak. [ABSTRACT FROM AUTHOR]

Details

Language :
English
ISSN :
1049331X
Volume :
33
Issue :
3
Database :
Complementary Index
Journal :
ACM Transactions on Software Engineering & Methodology
Publication Type :
Academic Journal
Accession number :
176329730
Full Text :
https://doi.org/10.1145/3630252