中文

采用偏最小二乘回归结合判别分析进行缺陷预测

软件工程 2024-07-30 v1 应用统计

摘要

预测源代码的缺陷倾向长期以来一直是主要的研究关注点。对软件系统中最可能包含缺陷的部分进行估计,有助于集中测试工作、降低成本并提升产品质量。过去几十年中,人们提出了许多预测模型与方法,试图基于静态源代码度量、变更与历史度量或二者结合来预测存在缺陷的代码元素。然而,该问题至今仍无通用的理想解决方案,因为最合适的特征与模型随数据集不同而变化,并取决于使用它们的上下文。因此,关于该主题的新方法和进一步研究极为必要。本文采用一种化学计量学方法——偏最小二乘判别分析(PLS-DA)——基于静态源代码度量预测 Java 程序中有缺陷倾向的类。据我们所知,PLS-DA 此前从未作为统计方法用于软件维护领域以预测软件错误。此外,我们采用了严格的统计处理,包括自助重采样与随机化(置换)检验,以及对软件工程结果的评估。我们表明,在最大的开放缺陷数据集上,当不进行数据重采样时,我们基于 PLS-DA 的预测模型相比最先进的方法(即在 90% 置信水平下 F-measure 为 0.44–0.47)取得了更优性能,而在应用上采样时与其他方法相当,同时模型训练显著更快,从而更易找到最优参数。在完整性方面(衡量被预测为缺陷的 Java 类中包含的缺陷数量),PLS-DA 优于其他所有算法:在不重采样和上采样的情况下,分别发现了总缺陷数的 69.3% 和 79.4%。

关键词

引用

@article{arxiv.2011.01214,
  title  = {Employing Partial Least Squares Regression with Discriminant Analysis for Bug Prediction},
  author = {Rudolf Ferenc and István Siket and Péter Hegedűs and Róbert Rajkó},
  journal= {arXiv preprint arXiv:2011.01214},
  year   = {2024}
}