当前位置: X-MOL 学术Sci. Comput. Program. › 论文详情
Our official English website, www.x-mol.net, welcomes your feedback! (Note: you will need to create a separate account there.)
Adaptive selection of classifiers for bug prediction: A large-scale empirical analysis of its performances and a benchmark study
Science of Computer Programming ( IF 1.3 ) Pub Date : 2021-01-13 , DOI: 10.1016/j.scico.2021.102611
Fabiano Pecorelli , Dario Di Nucci

Bug prediction aims at locating defective source code components relying on machine learning models. Although some previous work showed that selecting the machine-learning classifier is crucial, the results are contrasting. Therefore, several ensemble techniques, i.e., approaches able to mix the output of different classifiers, have been proposed. In this paper, we present a benchmark study in which we compare the performance of seven ensemble techniques on 21 open-source software projects. Our aim is twofold. On the one hand, we aim at bridging the limitations of previous empirical studies that compared the accuracy of ensemble approaches in bug prediction. On the other hand, our goal is to verify how ensemble techniques perform in different settings such as cross- and local-project defect prediction. Our empirical experimentation results show that ensemble techniques are not a silver bullet for bug prediction. In within-project bug prediction, using ensemble techniques improves the prediction performance with respect to the best stand-alone classifier. We confirm that the models based on Validation and Voting achieve slightly better results. However, they are similar to those obtained by other ensemble techniques. Identifying buggy classes using external sources of information is still an open problem. In this setting, the use of ensemble techniques does not provide evident benefits with respect to stand-alone classifiers. The statistical analysis highlights that local and global models are mostly equivalent in terms of performance. Only one ensemble technique (i.e., ASCI) slightly exploits local learning to improve performance.



中文翻译:

错误预测的分类器的自适应选择:其性能的大规模实证分析和基准研究

错误预测旨在依靠机器学习模型来定位有缺陷的源代码组件。尽管先前的一些工作表明选择机器学习分类器至关重要,但结果却截然相反。因此,有几种合奏技术,已经提出了能够混合不同分类器的输出的方法。在本文中,我们提供了一个基准研究,在该研究中我们比较了21个开源软件项目中的7种集成技术的性能。我们的目标是双重的。一方面,我们旨在弥合以前的经验研究的局限性,后者比较了集成方法在错误预测中的准确性。另一方面,我们的目标是验证集成技术在不同设置(例如跨项目和本地项目缺陷预测)中的性能。我们的经验实验结果表明,集成技术并不是错误预测的灵丹妙药。在项目内错误预测中,相对于最佳独立分类器,使用集成技术可提高预测性能。我们确认模型基于验证和投票可以取得更好的结果。但是,它们类似于通过其他合奏技术获得的那些。使用外部信息源来识别错误类仍然是一个未解决的问题。在这种情况下,与独立分类器相比,使用集成技术不会带来明显的好处。统计分析强调,就绩效而言,本地和全局模型几乎是等效的。只有一种集成技术(ASCI)会稍微利用本地学习来提高性能。

更新日期:2021-01-22
down
wechat
bug