软件缺陷预测:解决不平衡数据集的新型算法

需积分: 9 1 下载量 70 浏览量 更新于2024-09-09 收藏 869KB PDF 举报
"这篇论文研究了在不平衡数据集上的软件缺陷预测问题,提出了一种结合过抽样和随机向下抽样的新算法。该算法通过主成分分析进行数据降维,然后利用分布函数生成新的样本,并进行筛选,再与随机向下抽样结合。实验证明,这种方法在NASA MDP数据集上的预测效果优于传统的SMOTE+向下抽样方法,具有更高的G-mean和F-measure值。论文的研究方向包括软件失效预测、不平衡数据处理、主成分分析和分类回归树的应用。" 这篇学术论文关注的是软件开发中的一个重要问题——软件缺陷预测,尤其是在面对数据不平衡情况时的挑战。数据不平衡指的是分类任务中不同类别的样本数量显著不均等,这可能导致模型偏向于多数类别的预测,从而影响预测的准确性。为解决这个问题,作者提出了一个创新的算法,它结合了两种抽样策略:过抽样和随机向下抽样。 首先,算法利用主成分分析(PCA)进行数据降维,这是为了减少原始特征空间的复杂性,同时保留大部分信息。PCA通过对数据进行线性变换,找到数据的主要成分,降低数据的维度,使得后续处理更为高效。 接着,算法对降维后的主成分进行分布函数拟合。这意味着作者试图找到一个最佳的统计分布来描述这些主成分的分布特性,例如正态分布、指数分布或伽马分布。通过这种方式,算法能够生成新的样本,这些样本模拟了原有数据的分布。 然后,生成的随机数经过筛选,确保它们符合实际数据的分布特征,并且能够增加少数类别的样本数量,以平衡数据集。过抽样的目的是为了增加少数类别的代表性,防止模型在训练过程中忽视这些类别。 最后,生成的新样本与随机向下抽样相结合。随机向下抽样是另一种处理不平衡数据的方法,它随机删除部分多数类别的样本,以达到数据的相对平衡。这种结合策略旨在兼顾过抽样的增益和随机向下抽样的均衡性,从而优化预测模型的性能。 实验部分,作者采用了NASA的MDP数据集,这是一个广泛用于软件缺陷预测研究的数据集。通过与经典的合成少数类过抽样技术(SMOTE)和向下抽样方法对比,结果显示提出的算法在G-mean和F-measure这两个评价指标上表现更优,这意味着其在预测软件缺陷方面的精度更高。 这篇论文提出了一种有效处理不平衡数据集的新型算法,对于软件可靠性建模和测试领域具有重要价值,尤其是对于提高软件缺陷预测的准确性和模型泛化能力。未来的研究可以进一步探讨这个算法在其他领域的适用性,或者改进其生成新样本的策略,以提升在各种不平衡数据集上的预测效果。