基于排序损失的ECC多标签代码异味检测方法研究

来源 :上海师范大学 | 被引量 : 0次 | 上传用户:cxy153
下载到本地 , 更方便阅读
声明 : 本文档内容版权归属内容提供方 , 如果您对本文有版权争议 , 可与客服联系进行内容授权或下架
论文部分内容阅读
代码异味是由开发人员不良的编程习惯或者违背设计原则而引入的深层次软件质量问题,是糟糕的代码或设计的体现。在实际的软件系统中,一个类或方法可能同时存在多种代码异味,且一些代码异味有一定的相关性,一起频繁出现的概率较大,它们之间的相互作用使得代码的可读性和可理解性降低,增加了软件系统的复杂度和可维护性难度,从而导致软件质量明显下降。此外,代码异味有多种出现形式,如方法级的代码异味往往引起类级的代码异味,这种出现顺序对建议重构策略有很大的作用。多标签分类任务适用于检测上述至少存在一种代码异味的情况,该方法可将具有相关性的代码异味对视为一个标签组,更好地考虑它们之间的依赖关系,但现有的多标签代码异味检测方法未考虑同一标签组中多种代码异味的出现顺序。因此,本文结合代码异味的相关性和出现顺序,提出了一种基于排序损失的集成分类器链(ensemble of classifier chains,ECC)多标签代码异味检测方法,主要工作内容如下:(1)代码异味相关性:采用关联规则和因子分析挖掘代码异味相关性,将得到的相关代码异味对构建成多标签数据集(multi-label dataset,MLD);(2)算法性能对比:比较逻辑回归(logistic regression,LR)、支持向量机(support vector machine,SVM)、C4.5、随机森林(random forest,RF)以及extreme gradient boosting(XGBoost)检测结果,确定适用于代码异味检测的分类器;(3)代码异味检测顺序:考虑同一代码组件中多种异味检测顺序的影响,模拟代码异味的生成机理,并将排序损失作为多标签分类的损失函数,以其最小化为目标,选择最优的标签序列集,从而检测出同一代码元素是否存在上述相关代码异味对。本文基于4个Java开源系统的9种代码异味进行实验。首先,通过验证实验,发现固定的标签顺序不能有效地考虑代码异味之间的相关性;其次,比较了在本文提出的多标签方法框架下树分类器的检测结果,发现XGBoost的效果较优;再者,对比分析了同一分类器下,本文方法和其它2种多标签方法分类器链(classifier chains,Cl C)和ECC的检测效果,结果表明本文多标签方法优于现有的多标签方法;最后,对单标签分类和本文多标签方法下每种代码异味的检测结果进行分析,进一步证实了本文方法的有效性。
其他文献
天然气作为一种相比于煤和石油更为清洁的能源,已经引起了各国政府的重视。近年来,随着各国政府对天然气需求量的增加,同时也给能源管理者带来了巨大的调度压力,当出现天燃气调度不均时,调度过少的行业就会导致巨大的经济损失。此外,燃气合同是一种提前购买合同,当购买量不足以满足社会需求时,购买者违反合同也会导致巨大的经济损失。合理预测天然气负荷可以减轻上述经济损失。在燃气负荷预测领域,国内外已经有很多研究者进
随着气动技术的发展,气体精密控制在智能机器人、工业自动化、医疗器械等领域的应用越来越多,对气体流量控制技术的要求也越来越高。采用压电双晶片作为驱动器的压电驱动精密气体流量阀具有功耗低、位移大、响应速度快等一系列优点,但在实际应用中,压电双晶片材料自身固有的迟滞等非线性特性会导致压电驱动气体流量阀存在控制精度变差、响应速度变慢等问题。本文主要研究面向气动控制领域的压电驱动精密气体流量阀的建模及控制技
全球可持续发展目标(Sustainable Development Goals,SDGs)的正式建立,为各国构建了涵盖经济、社会、环境三个方面的可持续发展综合目标体系。但评估报告显示,我国的生态环境相关指标表现不佳,在实现2030年目标过程中还存在很大的挑战。作为经济发展较快、人口集聚程度高,人类活动最为强烈的地区,长三角在我国经济发展中占有不可或缺的地位。但近年来,大气污染、植被锐减、土地退化等
现实世界中存在的各类关系均可以抽象成一个个网络,且都存在着一个共同的特性,即社区结构。它真实地反映了网络结构背后所蕴含的各类特征,如社交网络中潜在的兴趣小组、引文网络中的学科关联性、蛋白质网络中的潜在功能模块等。这类网络无时无刻不在变化,对动态网络的研究有助于更好地分析、预测网络中的个体行为,实现精准群体推广,大幅降低营销成本;发现、探索潜在关联关系,实现高效目标搜索,提高进程效率;理解、挖掘未知
随着互联网的快速发展与人们对于医疗资源和服务的需求不断提升,结合了人工智能和大数据技术的智慧医疗发展如火如荼。考虑到宫颈癌对女性健康的巨大危害以及早期筛查预防对于早期癌变检测的有效性,结合人工处理宫颈细胞样本图像费时费力的同时准确率也无法保障的现状,采用基于机器学习的宫颈细胞图像自动化处理技术具有重要的意义。针对真实环境下宫颈细胞图像存在的细胞重叠粘连较多、图像像素尺度极大、检测精度达到区域级别即
膜分离作为一种高效低能耗的环境友好型分离技术已被广泛研究及应用,其中膜的通量和截留作为评价膜性能的两个关键指标,对膜在分离应用过程有着重要影响。本课题基于多孔共价有机骨架材料(COF-LZU1),采用不同的设计方案,进行新型复合膜的开发及其在染料废水处理中的应用。首先,选用聚醚砜(PES)微滤基底代替传统超滤基底,采用界面聚合的方法室温条件下在PES底膜表面原位生长COF-LZU1,通过调节反应单
自上世纪九十年代起,信息无障碍就引起发达国家的注意。让更多的残障人士、老年人等信息获取弱势群体通过互联网获得平等信息获取机会、继续为社会创造价值,成为越来越多的国家推进信息无障碍的目标。我国的信息无障碍发展比发达国家起步晚,即使目前仍有差距,但是现在信息无障碍建设工作的开展在国内正在获得社会各界的重视和帮助,并取得了相应成就。公共图书馆网站作为一个蕴含无数数字信息资源的信息知识传播中心,肩负着缩小
长期以来,我国农业采取粗放型生产方式,农业经济发展建立在化肥、农药等生产要素高消耗、低利用和污染物高排放基础上,造成我国农业生态环境不断恶化,可持续发展严重受阻。因此,需要寻求生态友好的农业发展模式,突破当前农业发展面临的困境,循环农业遵循“3R”发展原则,保护生态环境,资源高效利用,是农业可持续发展有效模式之一。近年来,我国循环农业蓬勃发展,形成一些典型模式,需要科学依据评价这些模式应用的可行性
学位
随着智能语音技术的快速发展和人工智能相关应用的兴起,声学场景分类(Acoustic Scene Classification,ASC)已逐渐被应用到人们的日常生活中,它是利用音频信号处理和深度学习技术完成对声学场景(家庭、公园、街道场景…)的识别与分类,从而达到识别周围环境的目的。针对声学场景分类问题,本文从3个角度展开研究,分别是基于传统声学表征的声场分类、基于端到端的声学建模及基于多特征系统的
随着工业化进程加快,纺织业市场需求量不断扩大,生态环境中存在大量难处理的印染纺织废水。本文以聚丙烯无纺布织物(PP)为基材,通过辐射接枝的手段接枝甲基丙烯酸缩水甘油酯(GMA)进行预处理,后续分别选择胺类和β-环糊精,针对GMA支链的环氧基团进行开环,分别制备了用于催化还原4-硝基苯酚的PP-g-EDA@Ag/Cu、PP-g-DEA@Ag/Cu和用于吸附双酚A和其他染料的PP-g-βCD。本论文主