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

arxiv(2021)

引用 0|浏览4
暂无评分
摘要
When reasoning over complex models, AI tools can generate too many solutions for humans to read and understand. In this case, \textit{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), \sffamily{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.
更多
查看译文
AI 理解论文
溯源树
样例
生成溯源树,研究论文发展脉络
Chat Paper
正在生成论文摘要