面向少样本数据的软件缺陷预测技术研究

来源 :南京理工大学 | 被引量 : 0次 | 上传用户:zhongbeiljb
下载到本地 , 更方便阅读
声明 : 本文档内容版权归属内容提供方 , 如果您对本文有版权争议 , 可与客服联系进行内容授权或下架
论文部分内容阅读
软件产品的规模和复杂度随着互联网技术的发展与日俱增,使得交付高质量、低成本和易维护的软件产品难度增加,同时也增加了产生缺陷的概率。在软件产品发布之前,利用软件缺陷预测技术构建相关模型能够识别出软件中容易产生缺陷的模块,使公司合理分配有限资源以进行测试和维护,能够大大降低成本并提高软件质量。构建一个稳定高效的缺陷预测模型通常需要大量的类平衡缺陷数据集,但是在构建预测模型时,软件缺陷数据集通常面临两个问题:历史缺陷数据集中有缺陷的样本太少(即类不平衡)和新启动项目难以获取具有相同分布的历史缺陷数据,导致训练出的缺陷预测模型往往达不到预期效果。本文从少样本数据角度出发,针对少样本数据的软件缺陷预测技术进行了研究,主要内容如下:第一,基于GAN网络的类不平衡软件缺陷预测过采样方法。软件缺陷预测中有缺陷的模块远比无缺陷的模块少得多,使得两类样本分布不平衡。目前,提出了许多技术来解决类不平衡问题,过采样技术是最具代表性的方法之一。然而,大部分利用过采样技术的方法会同时生成许多非多样化的合成样本。利用这些非多样化的合成样本构建模型会降低模型的预测性能。GAN网络能够充分利用样本分布的空间关系,挖掘出样本之间隐藏的一些关联信息,通过生成器和判别器交替优化的方式使得生成的新样本更加多样化。鉴于此,提出了一种新颖的基于GAN网络的过采样方法来解决历史缺陷数据集中有缺陷的样本太少的问题。在26个不平衡的缺陷数据集上的实验表明,该方法的性能优于现有的过采样方法。第二,基于同步语义对齐的异构缺陷预测方法。由于在新启动项目中历史缺陷数据集难以获取,搜集训练数据又依赖于专家知识,费时费力且容易出错,我们探究了使用源项目的异构特征数据来预测目标项目中软件模块的缺陷倾向性。目前大多数异构缺陷预测方法通过学习域不变特征子空间以减少域之间的差异来解决异构问题。但是,源域和目标域通常呈现出巨大的异质性,使得域对齐效果并不好。究其原因,这些方法都忽略了分类器对于两个域中的同一类别应产生相似的分类概率分布这一潜在知识,没有挖掘数据中包含的内在语义信息。鉴于此,提出了一种基于同步语义对齐的异构缺陷预测方法。从异构角度化解了新启动项目难以获取具有相同分布的历史缺陷数据的问题,且利用挖掘的语义信息训练出的模型依然稳定高效。对来自30个不同项目的公共异构数据集进行的实验验证了该方法的有效性。第三,基于少样本数据的软件缺陷预测系统。针对上文提出的两种方法,设计了一个简易的基于少样本数据的软件缺陷预测系统。使用该系统可以直观地观察到数据集中有缺陷样本过少的问题,从而对类不平衡的数据进行处理。并且可以自行选择异构数据集,设置相应的参数后挖掘数据中的语义信息来进行异构缺陷预测。还可以清楚地看到在同步语义对齐的过程中公共特征子空间的具体形态。若发现学习到的特征子空间不够好,可以随时调整参数重新进行训练。该系统的实现,可以从视觉上直观地观察到本文所提方法的优劣,进一步验证本文方法的有效性。
其他文献
随着中国制造技术的飞速发展和压电陶瓷的应用不断深入,对压电陶瓷合格率与一致性要求也在不断提高。因此,本文通过对压电陶瓷生产工艺和特点的分析,总结出压电陶瓷生产过程中影响产品质量的工艺参数。并结合压电陶瓷生产过程中的实际要求,通过工序的质量控制方法,构建了压电陶瓷生产过程的质量管理体系。论文的主要内容如下:首先通过分别从采购、生产、检验、不合格品及改进措施五个方面对压电陶瓷生产过程的质量管理体系进行
商用车驾驶室是整个商用车结构性能要求最高的部位,其结构性能以及可靠性直接影响整车生命周期以及车辆市场竞争力。本文基于多目标拓扑优化的结构优化方法,对商用车驾驶室白车身进行了结构优化,提出了轻量化方案并进行了分析。通过疲劳寿命分析,对方案的合理性进行了评估。首先,分析了国内外结构优化以及疲劳分析的研究现状与发展趋势,讨论了结构优化以及疲劳分析的主要方法。介绍了结构优化的基础理论,引入本文使用的多目标
学位
随着水利工程建设的不断增加,水利工程安全监测逐渐被关注,其中渗漏监测属于水利工程安全监测的重要组成部分,基于分布式光纤温度传感系统的渗漏监测方法的出现,为渗漏监测开辟了新的篇章,本文对如下内容进行了研究:(1)总结了渗漏监测的主要方法,并分析这些方法的优缺点,对分布式光纤温度传感系统应用于渗漏监测的优势进行详细介绍,该技术可以实现长距离、大范围渗漏监测,且抗电磁干扰能力强,耐久性良好。(2)研发了
对于大多数Android应用程序而言,图片加载行为是不可避免的。图片加载行为是计算密集型和内存密集型的操作,不恰当的图片加载行为会导致应用的性能低下,严重时可能会导致应用崩溃。现有的图片加载行为缺陷的分析方法集中在静态检测上,但由于静态分析的特性,结果可能会存在误报,需要额外的工作来验证结果的正确性。而由于图片加载行为缺陷主要表现在性能缺陷上,可能无法通过即时故障来体现,现有的Android应用的
无人机(Unmanned Aerial Vehicle,UAV)自从问世以来就被广泛应用到军事领域中。近年来,世界军事强国对防空力量的需求持续增加,进一步推动了无人机的研究和发展。为了使无人机隐身的能力得到提升,降低其雷达散射截面(Radar Cross Section,RCS)显得尤为重要。在面临复杂任务或者为了提高任务执行效率时,需要考虑多架无人机协同工作。无人机群的RCS随机群规模的增大显著
服务是Android应用的四大组件之一,主要运行在应用的后台,能实现多种功能。服务大多对用户不可见,但能长时间保持运行,发挥着重要的作用。当服务中存在缺陷或服务使用不当时,可能会导致应用崩溃、资源消耗快等问题。目前Android应用测试的相关研究主要关注Android应用的GUI测试方法。关于服务测试的研究较少,且存在一定的不足,难以发现应用运行时的服务使用相关缺陷。为解决上述问题,本文提出一种静
服装除了满足人们日常生活防寒保暖以及遮挡的需求,还反映了人们的时尚品味,更是不同个体身份和地位的象征。故越来越多的工作基于服装展开研究,例如:服装检索、服装推荐、虚拟换衣等,服装解析任务也应运而生。随着深度学习技术在计算机视觉领域广泛的应用,服装解析工作取得了一定的成功。然而当前服装解析工作为提高模型的解析性能,往往设计了复杂的网络结构或引用额外的辅助信息,导致参数量大、计算复杂等问题,因此并不完
环境感知是自动驾驶系统的核心技术,而可通行区域检测是环境感知的重要内容,对自动驾驶的路径规划有重要意义。高光谱图像因其对光谱感知范围广,包含感知对象材质相关的物理性质,一直以来在遥感领域和目标检测领域都有广泛的应用。本文主要研究基于高光谱图像的可通行区域检测,利用高光谱图像包含的感知对象的材质信息解决基于RGB图像的可通行区域检测中存在的问题,通过对高光谱图像进行道路分割实现可通行区域的检测,主要
随着人们对医疗健康的重视,药品的需求量不断增加,自动售药机行业迎来了新契机。为了抗击新型冠状病毒,积极响应疫情期间所提出的“无人接触”的号召,设计一款能够避免交叉感染的自动售药机系统势在必行。然而传统的自动售药机大部分存在运营管理难、药损率高、药品种类单一、监控难、交互使用体验差、测试难等问题,使自动售药机的发展受到限制。为解决上述问题,本文在传统自动售药机的基础上设计了一套基于B/S与C/S架构