论文部分内容阅读
软件度量数据库的复杂性使得缺陷数据集和无缺陷数据集模块难以区分,而从数据模型的发展过程来看,软件度量数据集对于度量数据的预处理至关重要,旨在提高机器预测模型数据集精度和性能。在计算领域,研究人员的关注主要集中在软件数据集模型中存在的缺陷数量,由于易变形数据集与准确性有着密不可分的关系,研究人员的主要目的是快速识别和纠正软件中存在的易变形缺陷。目前,世界上最大的科技公司也有自己的一致性注册方案,解决软件畸形相关问题,并监控畸形相关数据集模型的准确性。预测漏洞的准确性有助于提高软件的质量。漏洞指示器对于故障预测的突破有着至关重要的作用,可以提高设备的可靠性。漏洞预测的有效性提高了应用程序的一致性。漏洞指示器对故障预测技术的进步和设备可靠性的实现有着重要的贡献。在过去的二十年中,科学家们利用一些数学和机器学习方法来研究软件缺陷估计的问题。由于有缺陷和无缺陷的软件组件的数据不平衡,使得软件缺陷易感知识存在类不平衡的问题。一般来说,机器学习公式中假设每个类的知识检查量是相等的,并预计每个类的错误耗费是可比较的。随着当今可用的大量漏洞数据集的出现,使用各种机器学习来预测漏洞的估计值是可行的。通过使用分类技术,机器学习算法可用于检测程序数据集中的漏洞。分类是一种数据挖掘和深度学习技术,在缺陷倾斜的计算中很有优势。它主要将软件模块分类为四种不同程度的缺陷,这是由一系列从先前的生产风险结果中的到的软件复杂度度量所定。复杂性度量所决定的。如今,数据挖掘是应用程序开发人员用来解决软件测试和评审过程中存在的软件故障的主要来源,从而实现基于机器学习的漏洞预测。本文对软件缺陷预测进行了详细的研究,并通过三种算法实现软件缺陷预测。为了克服数据集模型中的类不平衡问题,采用了 smote算法,数据预处理和分类技术。由于类不平衡对缺陷预测的准确性有影响,这与快速解决这一问题有关。有各种各样的方法可以用来解决阶级失衡问题,包括过度抽样和抽样不足。我们通过使用SMOTE来确定这一点,SMOTE是一种在重新返回类不平衡方面相当过采样的算法。SMOTE被用来解决数据集中的过度拟合或过度泛化问题,导致少数群体数量的增加。多次试验/反馈是一种被提议的策略,用于避免SMOTE缺乏变通能力。为了对文件进行过度拟合,我们使用了 SMOTE和ONE-R及其MinBucketsize数n=1、2、3、4、5和6,结果表明MinBucketsize n=1和2在缺陷易发数据集模型中的基本精度和效率方面是非常好的。我们以三种不同的形式对数据集范式进行了实验,发现使用训练数据集比其他两种方法更好。此外,我们了解到,通过使用培训数据集模型,所有评估步骤的结果都非常成功。我们发现,数据预处理隐含地假设了多个软件缺陷度量数据集的类型,在总体分类输出特征方面,使用决策树的命题数据预处理变得最强大。这些实验的主要目的是验证使用各种分类方案进行数据预处理的实用性。我们还提出了一个数据预处理的框架,包括命题(RELAGGS),主成分分析(PCA)和NASA MDP数据集模型的特征选择。在研究特征选择方法的过程中,发现与对软件缺陷模型数据集使用其他预处理方法相比,特征选择方法在许多分类中的性能降低。我们的分析模型方法是使用线性搜索分类方法来提高易变形软件的预测精度。实验结果表明,参数K=N=3、4、5适用于linearnsearch,可用于提高易受linearnsearch影响的软件的正精度。在K=N=5,6时用IBK滤波邻域扫描实验也能提高易变形软件的阳性准确率。我们使用LibSVM和LibLinear分类技术对机器缺陷倾向模型的有效性、精度和性能进行分类。在我们的研究中,我们了解到LibSVM以训练集的方式提高了分类精度和性能。与大多数其他策略相比,TP率和F-度量的乐观精度显著提高。另外,利用LibSVM对训练数据集的曲线下区域进行扩展。但是,所有分类中正确分类的实例数都有所提高。即便如此,在使用百分位数中断的情况下,LibLinear和SVM都能有效地在几个性能步骤中实现精度和性能的最大化性能步骤。