arXivDaily arXiv每日学术速递 周一至周五更新
arXiv周末暂无论文更新,休息一下吧,周末愉快~~
arXiv 2302.01997cs.SEcs.AI
收藏

更少,但更强:强启发式在软件分析半监督学习中的价值

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

North Carolina State University(北卡罗来纳州立大学)

Huy Tu, Tim Menzies

摘要:

在许多领域中,有许多示例,而这些示例的标签却少得多;例如,我们可以访问数百万行源代码,但只能访问有关该代码的少数警告。在这些领域中,半监督学习器(SSL)可以将标签从少量示例外推到其余数据。标准SSL算法使用“弱”知识(即那些不基于特定SE知识的知识),例如(例如)共同训练两个学习器,并使用一个学习器的良好标签来训练另一个学习器。SSL在软件分析中的另一种方法是潜在地使用使用SE知识的“强”知识。例如,SE中经常使用的启发式方法是,异常大的工件包含不期望的属性(例如,更多的bug)。本文认为,这样的“强”算法比那些标准的,较弱的,SSL算法的性能更好。我们通过从使用弱SSL或我们的“更强”FRUGAL算法生成的标签中学习模型来证明这一点。在四个领域(区分与安全相关的错误报告;减轻决策中的偏见;预测问题关闭时间;以及(减少静态代码警告中的错误警报),FRUGAL只需要标记2.5%的数据,但性能优于依赖于(例如)的标准半监督学习器。一些独立于领域的图论概念。因此,对于未来的工作,我们强烈建议使用强大的算法来进行SE应用程序的半监督学习。为了更好地支持其他研究人员,我们的脚本和数据在https://github.com/HuyTu7/FRUGAL上在线。

英文摘要:

In many domains, there are many examples and far fewer labels for those examples; e.g. we may have access to millions of lines of source code, but access to only a handful of warnings about that code. In those domains, semi-supervised learners (SSL) can extrapolate labels from a small number of examples to the rest of the data. Standard SSL algorithms use ``weak'' knowledge (i.e. those not based on specific SE knowledge) such as (e.g.) co-train two learners and use good labels from one to train the other. Another approach of SSL in software analytics is potentially use ``strong'' knowledge that use SE knowledge. For example, an often-used heuristic in SE is that unusually large artifacts contain undesired properties (e.g. more bugs). This paper argues that such ``strong'' algorithms perform better than those standard, weaker, SSL algorithms. We show this by learning models from labels generated using weak SSL or our ``stronger'' FRUGAL algorithm. In four domains (distinguishing security-related bug reports; mitigating bias in decision-making; predicting issue close time; and (reducing false alarms in static code warnings), FRUGAL required only 2.5% of the data to be labeled yet out-performed standard semi-supervised learners that relied on (e.g.) some domain-independent graph theory concepts. Hence, for future work, we strongly recommend the use of strong heuristics for semi-supervised learning for SE applications. To better support other researchers, our scripts and data are on-line at https://github.com/HuyTu7/FRUGAL.

机构、总结、中文摘要均由AI分析而来,可能存在错误,请以论文正文为准。

↑