中文

针对软件缺陷预测外部有效性的 Bandit 算法仿真研究

软件工程 2020-03-18 v2 机器学习

摘要

已提出多种软件缺陷预测模型及构建算法的技术。许多研究对它们进行比较和评估以找出最有效者。然而在大多数情况下,此类模型与技术并非在每个数据集上都具有最佳性能。这是因为软件开发数据集具有多样性,因此所选模型或技术在某些数据集上表现糟糕存在风险。为避免选中低精度模型,我们应用 bandit 算法预测缺陷。设想玩家有 100 枚硬币可投注于数台老虎机。普通软件缺陷预测的使用类似于玩家将全部 100 枚硬币投注于一台老虎机。相反,bandit 算法逐步在每台机器(即使用预测模型)上投注一枚硬币以寻找最佳机器。实验中,我们开发了包含 100 个模块的人工数据集,其中 15 个含缺陷。随后我们开发了多种人工缺陷预测模型,并利用 bandit 算法动态选择它们。与仅使用单一预测模型相比,Thomson 采样算法表现出最佳或次佳的预测性能。

关键词

引用

@article{arxiv.2003.05094,
  title  = {A Simulation Study of Bandit Algorithms to Address External Validity of Software Fault Prediction},
  author = {Teruki Hayakawa and Masateru Tsunoda and Koji Toda and Keitaro Nakasai and Kenichi Matsumoto},
  journal= {arXiv preprint arXiv:2003.05094},
  year   = {2020}
}

备注

5 pages