欢迎来到天天文库
浏览记录
ID:28059409
大小:17.72 KB
页数:4页
时间:2018-12-08
《基于相似度匹配的软件缺陷预测方法研究》由会员上传分享,免费在线阅读,更多相关内容在应用文档-天天文库。
1、为了确保“教学点数字教育资源全覆盖”项目设备正常使用,我校做到安装、教师培训同步进行。设备安装到位后,中心校组织各学点管理人员统一到县教师进修学校进行培训,熟悉系统的使用和维护。基于相似度匹配的软件缺陷预测方法研究 摘要:针对跨项目缺陷预测中为目标项目选择合适的训练数据问题,在已有相似度匹配方法的基础上,引入项目情境信息,从而提出一种改进的CPDP预测模型。实验结果表明:引入项目的情境信息,有助于提高CPDP性能;所提方法的F-measure值比已有方法提高了%和%,但相比WPDP方法,仍有待提高。 �P键词:软件质量保证;缺陷预测;相似度匹配;训练数据选择 DOIDOI:/
2、中图分类号:TP301 文献标识码:A文章编号文章编号:1672--0009-03 0引言 软件缺陷预测研究一直是软件工程领域中的热门方向,最早可以追溯到上世纪70年代。常规的方法是利用项目自身已有历史数据训练预测模型后,再用于后续版本的缺陷预测,即项目内缺陷预测,如图1所示。然而,已有研究表明训练高质量的WPDP模型要求有充足的历史数据,这对一些新项目或还不活跃的软件项目便难以满足。 近些年来随着互联网的蓬勃发展,尤其是开源社区如为了充分发挥“教学点数字教育资源全覆盖”项目设备的作用,我们不仅把资源运用于课堂教学,还利用系统的特色栏目开展课外活动,对学生进行安全教育、健康教育
3、、反邪教教育等丰富学生的课余文化生活。为了确保“教学点数字教育资源全覆盖”项目设备正常使用,我校做到安装、教师培训同步进行。设备安装到位后,中心校组织各学点管理人员统一到县教师进修学校进行培训,熟悉系统的使用和维护。Github的兴起,互联网上可供获取的公开缺陷数据集越来越多,而且数量仍在不断增长。为有效利用互联网上已有的丰富数据资源,一些研究者提出利用其它软件项目的数据来训练,构建跨项目的缺陷预测模型,用于解决WPDP中训练数据受限的瓶颈[1-5],如图1所示,为软件缺陷预测研究开辟了一条崭新的途径。 在CPDP早期研究中,都是将来自其它软件项目的所有数据作为训练集,并不涉及训练集
4、的精简。常常出现因训练数据包含过多噪声,从而降低了模型准确性[5]。在某种程度上,数据的质量远比数量对CPDP性能的影响更大。然而,如何才能从大量的可供使用的缺陷数据中挑选出质量更高的部分用于预测模型训练,仍然是CPDP研究中急需解决的一个问题[6]。 针对以上问题,目前主要有两种思路。一种是通过特征降维的方法减少冗余指标信息,从而减少数据噪音来改善缺陷预测的性能和效率[7]。另一种方法则是本文将考虑的通过减少数据量来减少重复的无价值的实例[8]。在训练数据总量的精简方面,以往研究都只是根据数据的度量指标信息进行相似度匹配,再返回top-k个最相关的实例构成新的训练数据集,但它们并没
5、有充分考虑项目的情境信息。实践中,每个项目的情境信息存在差异,例如项目的主题、服务对象、编程语言等。为了充分发挥“教学点数字教育资源全覆盖”项目设备的作用,我们不仅把资源运用于课堂教学,还利用系统的特色栏目开展课外活动,对学生进行安全教育、健康教育、反邪教教育等丰富学生的课余文化生活。为了确保“教学点数字教育资源全覆盖”项目设备正常使用,我校做到安装、教师培训同步进行。设备安装到位后,中心校组织各学点管理人员统一到县教师进修学校进行培训,熟悉系统的使用和维护。 本文在为CPDP预测选择合适跨项目训练数据集时,通过考虑项目的5个常规属性信息,并利用自然语言处理中的TF-IDF技术将它们
6、量化,从而得到每个项目的情境信息向量。最后,结合项目的情境信息与项目中实例特征值计算数据集的相似度。本文的主要贡献可归纳为: 引入项目的情境信息,提出一种改进的基于相似度匹配的CPDP预测方法,并使CPDP预测性能得到改进。 验证本文方法的CPDP预测模型在朴素贝叶斯分类器下效果最好。 1跨项目缺陷预测 CPDP形象表示为利用其它项目组成的缺陷数据集S={P1,P2,…,Ps}对目标项目Pt作缺陷预测。假设一个项目P由n实例组成,即P={I1,I2,…,Ii,…,In},实例Ii表示为Ii={fi1,fi2,…,fij,…,fim},fij为实例Ii在第j个度量指标上的值,m为
7、用于度量实例的指标个数。一个项目数据集P中度量指标Fi对应的向量可表示为Fi={f1i,f2i,…,fji,…,fni},fji为第j个实例在该度量指标上的值,各实例指标值的分布特性可表示为Ci={SCi1,SCi2,…,SCik},SC为对应的度量指标值的分布特性。因此,项目P可根据度量指标量化为V={C1,C2,…,Ck,…,Cm}。这样,项目A和B之间的相似性可表示为: Simmetric=cos=VA・VB
8、VA
9、
10、VB
11、为了充分发挥
此文档下载收益归作者所有