基于广义半监督学习方法的软件质量预测研究

来源 :上海交通大学 | 被引量 : 9次 | 上传用户:ZJWLMX
下载到本地 , 更方便阅读
声明 : 本文档内容版权归属内容提供方 , 如果您对本文有版权争议 , 可与客服联系进行内容授权或下架
论文部分内容阅读
软件质量预测是对软件质量进行早期预测和控制的方法,其主要使用机器学习或者统计学方法来构建软件质量模型,并以此对软件中潜在的错误进行预测和预警。在软件开发和测试过程中正确预测和识别具有错误倾向的软件模块,可以帮助软件开发机构合理配置资源、降低研发成本、缩短产品开发周期,因此,有效的软件质量预测系统对于提高软件产品质量和企业声誉有着重要的工程意义和经济价值。传统软件质量预测的主要建模方法,在机器学习领域通常被称为监督学习方法,其要求训练过程中所用到的每个软件模块都要给出明确的质量标签。但是,准确可靠的软件质量标签只有经过详尽、完整的软件测试和对错误的精确定位才能得到,此过程耗时较长且成本较高,并且软件质量标签的可靠性还经常会被软件开发中的许多实际因素所削弱,这些都限制了软件质量预测模型的广泛使用。针对当前软件质量模型的不足,本论文旨在通过研究机器学习领域的一些新型广义半监督学习方法,探讨如何使用较少的软件质量标签来建立准确有效的软件质量模型,从而使其可以更快速、高效、经济和广泛地应用于实际的软件开发和测试中。半监督学习方法可以同时对有标签样本和无标签样本进行学习和训练,因此,基于半监督学习方法的软件质量系统具有构建快速、成本较低和应用范围广泛等优点。本文所研究的广义半监督学习方法主要包括多示例学习、结构化核函数方法和主动学习方法,目前,关于半监督学习方法在软件质量预测领域的研究还不多见,基于这三种新型广义半监督学习方法的软件质量模型也尚未见有文献报道。在对所研究广义半监督学习方法进行阐述之前,本文首先对传统软件质量预测领域的研究做了一个框架性的综述介绍。软件质量预测系统可以被分为四个主要的模块,即数据集构建、质量模型训练、模型的评估测试和不同算法模型比较。文中对每个部分的主要任务和相关的研究工作分别进行了阐述。在数据集构建中,系统主要对数据进行属性选择、归一化等预处理。数据集在预处理以后通常被划分为训练集和测试集,系统根据选定的具体算法在训练集上构建软件质量预测模型,并在测试集数据上进行测试。对于得到的模型需要进行参数计算以评估其性能,并以此对模型参数进行进一步的调整和优化。最后,根据一定的检验标准和具体的数据集,可以对基于不同算法的软件质量模型进行比较。此框架介绍中所涉及的具体内容包括软件质量概念、软件度量、各类统计和学习算法以及模型评估参数的选择策略。随后本文介绍了所研究的第一种广义半监督学习架构多示例学习方法,并创新性地将其引入到软件质量预测领域中。多示例学习方法使用由多个示例构成的示例包作为基本的学习对象,因此其在利用大量的软件模块信息的同时,只需要少量的软件质量标签就可以进行建模和预测。文中介绍了多示例学习(MIL)的基本概念和相关研究,随后将多示例学习与两种相关的监督学习架构SL-B和SL-I进行了深入的比较,并着重分析了SL-I对示例包产生错误分类的原因,给出了其理论表达式以及在多元正态分布假设下的近似估计。在实际工程数据集上的实验表明,多示例方法比SL-B的预测效果更好,并可以使用较少的质量标签构建与SL-I预测准确度相当的软件质量模型。然后,本文将面向对象型软件中的软件模块视为更加复杂的结构化数据,并引入新型的结构化核函数方法进行了软件质量建模和分类预测研究。文中介绍了结构化核函数及其相关研究,概述了新型学习算法支持向量机(SVM)的理论研究和一些支持向量机,并提出了使用结构化核函数方法对软件对象进行知识表示、模型构建和训练的流程,和一种新颖的分层核函数。在由二分树构成的人工数据集和实际工业软件数据集上的实验表明,与传统的监督学习方法相比,结构化核函数方法对于树形的结构化数据普遍有着较好的分类效果。相比于实验中的其它核函数,分层核函数能够更好地学习和预测面向对象软件中的结构化软件模块。在与前文的多示例学习方法进行的对比中发现,多示例学习对于具有上下层关系的软件模块具有普适性,但是随着模块结构的进一步复杂化,其预测准确率会逐渐降低,而结构化核函数方法,特别是分层核函数则在学习复杂结构化数据方面显示出较好的性能,因此其更适用于面向对象型软件中的软件质量预测。区别于前两种广义半监督学习方法的聚类策略,本文随后研究了采用主动选择策略的主动学习方法在软件质量预测中的应用。与传统监督学习批量性、一次性训练所有样本的方法不同,主动学习方法通过主动选择、逐次询问和增长性学习的方法来构建模型。其主要优点在于可以在不明显损失学习精度的情况下,利用主动选择的少量样本即可进行建模。文中介绍了主动学习方法的基本知识、相关研究和关键性问题。在具体的软件工程数据集上对两种典型的池式主动学习算法和一种新型的流式主动学习算法进行了实验研究。结果表明选用的主动学习算法可以使用数据集百分之十左右的样本有效地构建软件质量模型,其效果仅略逊于使用全部样本的监督学习式模型。因此,基于主动学习的软件质量预测对于指导灵活、快速的软件测试具有很强的应用潜力和工程价值。另外,文中还对三种学习方法进行了综合比较。最后,本文归纳了采用广义半监督学习进行软件质量预测的一些主要研究结论,并对未来工作作了一些展望。本文使用的实际数据集都来源于大型的重要软件工程,其中的一些数据集和软件质量模型出自过去三年中在阿尔卡特-朗讯公司光网络部的实际应用,从而保证了本文所提出的新型软件质量预测方法和模型除了在理论上具有创新性外,同时还具有很强的工程实用性。
其他文献
新冠肺炎疫情这一突发公共卫生事件不仅是对我国医学教育的检验,也为推动医学课程思政改革注入了动力。临床免疫学是基础医学与临床疾病的桥梁课程,也是发展迅猛且富含"思政
在医疗卫生行业中,将信息技术运用于档案管理中,能够提升档案管理的科学性和有效性,促使医院档案管理向着现代化方向发展,进一步提升管理水平。因此,本文主要概括提升医院档
目的:探讨鼻通气手术治疗阻塞性睡眠呼吸暂停低通气综合征(OSAHS)的疗效。方法:71例OSAHS患者经多道睡眠图(PSG)监测确诊,同时应用纤维鼻咽喉镜及电视摄像系统检查确定存在鼻
京津冀区域被看作是继“长三角”和“珠三角”之后中国经济增长的第三极。随着经济全球化的发展,区域经济一体化程度不断增强,而人才资源作为经济发展的第一资源,对区域经济
仓央嘉措是藏族的伟大诗人,也是藏传佛教第六代达赖喇嘛。仓央嘉措逝世,距今将近四百年了。这位天才只活了25岁,他是不幸卷进西藏、蒙古和清廷的政治斗争中夭折的。仓央嘉措
目的:探讨E-钙黏蛋白(E-cad)、MGMT和P-gp在胰腺癌组织中的表达与临床各病理指标及预后的关系。方法:采用免疫组织化学法对30例原发性胰腺导管腺癌组织和10例正常胰腺组织E-cad、MGMT和P-gp三种蛋白的阳性表达进行检测,并结合其临床病理资料进行综合分析。结果:E-cad、MGMT和P-gp在30例胰腺癌组织中的阳性率分别是46.7%,70%和50%,在正常胰腺组织中的阳性率分别是
目的观察普萘洛尔(心得安)治疗小儿血管瘤的临床效果与护理方法。方法选择本院2017年4月至2019年1月收治的43例小儿血管瘤患者为观察对象,所有患者进行普萘洛尔治疗,然后随机
当今人类很大一部分时间(90%左右)都是在室内环境中度过,建筑室内环境的质量对人员的健康和工作效率都有重大影响。长期以来,人们在努力追求高工作效率时却常常忽略室内环境
猪传染性胃肠炎是猪的高度接触传染性肠道传染病。各种年龄和品种的猪均易感染,但主要影响10日龄内的仔猪,死亡率高,35日龄以上的仔猪在无继发感染的情况下死亡率明显下降。其临
制造业是一个国家国民经济的主体,制造业效率的提升对于提高一个国家的竞争力水平具有举足轻重的作用。随着全球经济一体化的发展,“中国制造”成为世界制造的中心,中国是制