SNEAK: Faster Interactive Search-based Software Engineering (using Semi-Supervised Learning)

10/06/2021
by   Andre Lustosa, et al.
0

When reasoning over complex models, AI tools can generate too many solutions for humans to read and understand. In this case, interactive search-based software engineering techniques might use human preferences to select relevant solutions (and discard the rest). Often, iSBSE methods rely on evolutionary methods that need to score thousands of mutants. Generating those scores can be overwhelming for humans or impractically slow (e.g. if some automated process required extensive CPU to computer those scores). To address that problem, this paper introduces SNEAK, a semi-supervised learner (SSL) that uses the structure of the data to label a very small number of points, then propagates those labels over its neighbors. Whereas standard SSL addresses single goal problems (classification, regression), SNEAK is unique in that it can handle multi-goal problems. As shown by the experiments of this paper, SNEAK asks for very few labels (30, or even less) even for models with 1000 variables and state spaces of 2^1000 possibilities. Also, the optimization solutions found in this way were within the best 1% of the entire space of solutions. Further, due to the logarithmic nature of its search, in theory, SNEAK should scale well to very large problems. Accordingly, we recommend SNEAKing since, at the very least, it is a baseline architecture against which other iSBSE work can be compared. To enable that comparison, all of ours scripts are available at https://github.com/zxcv123456qwe/sneak.

READ FULL TEXT

page 1

page 2

page 3

page 4

research
06/07/2021

Preference Discovery in Large Product Lines

When AI tools can generate many solutions, some human preference must be...
research
01/30/2018

Data-Driven Search-based Software Engineering

This paper introduces Data-Driven Search-based Software Engineering (DSE...
research
02/03/2023

Less, but Stronger: On the Value of Strong Heuristics in Semi-supervised Learning for Software Analytics

In many domains, there are many examples and far fewer labels for those ...
research
04/26/2023

SEAL: Simultaneous Label Hierarchy Exploration And Learning

Label hierarchy is an important source of external knowledge that can en...
research
11/03/2021

Can We Achieve Fairness Using Semi-Supervised Learning?

Ethical bias in machine learning models has become a matter of concern i...
research
08/22/2021

FRUGAL: Unlocking SSL for Software Analytics

Standard software analytics often involves having a large amount of data...
research
07/27/2020

Semi-Automatic Data Annotation guided by Feature Space Projection

Data annotation using visual inspection (supervision) of each training s...

Please sign up or login with your details

Forgot password? Click here to reset