Skip to main content
QUICK REVIEW

[论文解读] TDSelector: A Training Data Selection Method for Cross-Project Defect Prediction

Peng He, Yutao Ma|arXiv (Cornell University)|Dec 29, 2016
Software Engineering Research参考文献 37被引用 10
一句话总结

TDSelector 是一种用于跨项目缺陷预测的新型训练数据选择方法,通过结合实例相似度与缺陷密度(每实例的缺陷数量)来提升性能。在14个项目上评估,相比基线方法,AUC最高提升10.6%,表明选择缺陷数量更高的实例可进一步提高预测器准确率。

ABSTRACT

In recent years, cross-project defect prediction (CPDP) attracted much attention and has been validated as a feasible way to address the problem of local data sparsity in newly created or inactive software projects. Unfortunately, the performance of CPDP is usually poor, and low quality training data selection has been regarded as a major obstacle to achieving better prediction results. To the best of our knowledge, most of existing approaches related to this topic are only based on instance similarity. Therefore, the objective of this work is to propose an improved training data selection method for CPDP that considers both similarity and the number of defects each training instance has (denoted by defects), which is referred to as TDSelector, and to demonstrate the effectiveness of the proposed method. Our experiments were conducted on 14 projects (including 15 data sets) collected from two public repositories. The results indicate that, in a specific CPDP scenario, the TDSelector-based bug predictor performs, on average, better than those based on the baseline methods, and the AUC (area under ROC curve) values are increased by up to 10.6 and 4.3%, respectively. Besides, an additional experiment shows that selecting those instances with more bugs directly as training data can further improve the performance of the bug predictor trained by our method.

研究动机与目标

  • 为解决因训练数据选择质量低下导致的跨项目缺陷预测(CPDP)性能不佳问题。
  • 克服现有方法仅依赖实例相似度进行训练数据选择的局限性。
  • 提出一种新方法,结合实例相似度与每实例缺陷数量,以提升训练数据质量。
  • 通过实证验证所提方法在提升缺陷预测性能方面的有效性。
  • 探究优先选择缺陷数量更高的实例是否能进一步提升预测准确率。

提出的方法

  • TDSelector 通过结合实例间的余弦相似度及其缺陷密度(每实例的缺陷数量)来选择训练实例。
  • 它计算一个综合评分,平衡相似度与缺陷数量,以对最具有信息量的训练实例进行排序和选择。
  • 该方法采用相似度与缺陷数量的加权组合,数值越高表示越适合作为训练数据的候选实例。
  • 该方法使用标准机器学习分类器在所选数据上进行训练并评估。
  • 消融研究评估了仅选择高缺陷实例的影响,并与完整版 TDSelector 方法进行比较。
  • 该方法在两个公共代码库的14个项目中应用,使用15个数据集进行评估。

实验结果

研究问题

  • RQ1将实例相似度与缺陷密度结合,能否提升跨项目缺陷预测中的训练数据选择效果?
  • RQ2与仅使用相似度的基线方法相比,TDSelector 在 AUC 性能上表现如何?
  • RQ3选择缺陷数量更高的训练实例是否能带来进一步的性能提升?
  • RQ4TDSelector 的性能提升在多样化的软件项目中是否具有一致性?
  • RQ5在最终选择决策中,缺陷密度与相似度各自贡献如何?

主要发现

  • 基于 TDSelector 的缺陷预测器在 AUC 值上优于基线方法,在特定 CPDP 场景中最高提升10.6%。
  • 在所评估的数据集中,平均 AUC 提升了4.3%。
  • 在与 TDSelector 结合使用时,仅选择缺陷数量更高的实例作为训练数据,可进一步提升预测器性能。
  • 该方法在多个项目中均表现出一致的性能提升,表明对项目特异性差异具有鲁棒性。
  • 缺陷密度的引入显著提升了训练数据选择质量,优于仅依赖相似度的方法。
  • 结果表明,缺陷密度是实现高效跨项目缺陷预测中训练数据选择的关键因素。

更好的研究,从现在开始

从阅读论文到最终审阅,大幅缩短您的研究时间。

无需绑定信用卡

本解读由 AI 生成,并经人工编辑审核。