基于字节码和深度学习的代码克隆检测研究

来源 :杭州电子科技大学 | 被引量 : 0次 | 上传用户:jingjing0890
下载到本地 , 更方便阅读
声明 : 本文档内容版权归属内容提供方 , 如果您对本文有版权争议 , 可与客服联系进行内容授权或下架
论文部分内容阅读
软件开发过程中经常出现的代码复制、粘贴等行为,造成软件系统中都存在着所谓的“克隆代码”。一般认为,克隆代码会增加日后的软件维护代价。为此,研究者提出了许多代码克隆检测的方法和技术,用于在软件系统中识别隐藏的克隆代码。然而,当前的代码克隆检测研究仍然存在一些问题。一方面,大部分研究者关注的是基于源代码的代码克隆检测,事实上字节码比源代码更能反映代码语义信息;另一方面,现有的基于深度学习的克隆代码检测效率并不是十分理想,特别是对于那些功能性克隆代码的检测。基于以上问题,本文尝试提出更加有效的基于字节码和深度学习的代码克隆检测方法,主要成果如下:(1)提出了一种基于字节码序列匹配(Byte Code Squence Alignment,简称BSA)的方法来检测代码克隆。BSA方法首先根据字节码指令执行和跳转情况,构建字节码指令路径图;然后,通过采用树状网络指令模型来归一化指令序列;最后,将含有静态加速扣分策略的Smith-Waterman算法应用到字节码序列的匹配上,从而实现代码克隆检测。(2)提出了一种新的基于深度学习的代码克隆检测方法(Detecting Code Clones based on Deep Learning,简称DCCDL)。DCCDL方法首先将源代码转换为了抽象语法树并提取方法级别代码片段;然后,利用AST分别提取代码的语义、结构和功能特征,并构建任意两个方法之间的特征相似度向量;最后,通过训练集训练基于深度神经网络模型的分类器,利用已训练的分类器来预测软件系统中的克隆代码。(3)本文在5个开源软件和1个大数据集上进行了大规模的实验,并与其他方法相对比。实验结果表明,本文的BSA方法,相比于其他基于源代码的方法,其平均F-measure值至少提高了14.4%;本文的DCCDL方法,相比于其他基于深度学习的方法,其F-measure值至少提高了8%,并且能够有效地检测出部分的功能性克隆。
其他文献
相对于指纹识别和面部识别等生物识别技术,手指静脉识别技术具有内部特征、活体识别以及安全等级高的特点,具有较大的技术优势和发展前景。现有的手指静脉识别方法通常是以包含静脉分布的灰度图为对象进行算法设计,但由于采集装置的局限性、光照强度的不确定性和手指血管周围组织的复杂性等因素,导致采集到的图像样本即使经过了一系列的图像处理操作,得到的灰度图中依然会存在着不规则的阴影和非静脉特征。因此,本文提出基于遗
随着互联网、信息技术的发展,共享经济在人们生活中的地位日益提升,对经济增长的贡献也越来越显著,不仅为中国经济发展带来了机遇也带来了挑战。它将实现社会资源的优化配置,
对于投保人未依约交付保险费,而在逾期期间发生保险事故,保险人是否承担保险责任的问题,实务界与学术界都存在不同观点。为规避风险,保险公司通常都会在财产保险合同中设置各种类型的保费支付条款,以明确此种情形下的责任承担问题。观察司法实践可知,关于保费支付条款的争议主要集中在约定交费后保险责任开始这类条款上,其常见表述为“本公司在投保人履行交付保险费义务后开始承担保险责任”。法院与学界对该条款的涵义有着迥
在企业的整个生命周期中,投资活动对企业的生存发展发挥着巨大作用,良好的投资效率可以帮助企业更加显著的提升企业价值。但是在现实资本市场中,普遍存在着市场不完善的情况,高速的经济发展导致企业出现了更加严重的委托代理问题和信息不对称问题,给企业带来了更严重的非效率投资问题。针对目前企业所处环境愈发复杂的情况,越来越多的学者开始寻找解决非效率投资问题的途径,通过研究发现,财务柔性是一种可以帮助企业抓住投资
近年来,有机铅卤钙钛矿材料MAPb X_3(MA=CH_3NH_3;X=Cl,Br,I)因其优异的光学性能引起了人们的持续关注和研究,其在照明、显示和光通信等领域展现出巨大的应用潜力。MAPb X_3发光材料以量子点为主,其制备需要在液相环境下并且还需要分散在溶剂中保存,而MAPb X_3量子点的较强的离子特性却使得溶剂的选择非常受限。金属-有机框架(MOFs)是一种多功能的多孔材料,其作为主体可
宅基地从最初的所有权与使用权分离到如今“三权分置”模式下探索财产价值的新路径,这一转变不仅有利于重新塑造城乡土地权利体系也对激发农村潜在活力具有重大意义。从过去着力保障农户基本的居住到如今转向积极开发宅基地在市场中应有的财富价值,这既需要政治层面的鼓励和引导,还要在法律领域通过科学的构建做出积极地回应,才能够丰富农村产权制度的同时更为有效的提升振兴乡村产业的治理水平。通过梳理我国宅基地在不同历史阶
随着经济全球化的不断发展,我国的资本市场日趋完善,多层次资本市场体系已初步建成。对于众多中小企业来说,融资难、融资贵一直是困扰它们的难题。新三板市场恰好为中小企业开辟了一个新的融资渠道。“新三板”是业界对全国中小企业股份转让系统(NEEQ)的俗称,其目的是让那些暂时还没有达到上市要求,但是有较强的发展潜力、符合国家产业政策的高新技术型、创新型、成长型企业能够在新三板市场流通股份,实现融资。但是,目
城镇化是一项持续的工程,农村土地被征收难以避免。提及土地征收,不外乎有两种声音:农民利益被侵犯或者一夜暴富,认知过于肤浅。十八大倡议的共享发展,要求发展成果由全体人民公平共享,人民又可在共享中发展自我。《土地管理法》自2004年修订以来,呼吁重修或者另立土地征收制度的声音绵延不绝,但是2012年和2018年人大常委会都未通过其草案。十九大强调推进土地制度改革与乡村振兴,本文将剖析农村土地征收补偿机
水下拖曳系统因具有较高的可靠性和易回收特性被广泛用于水下勘探、环境监测、援潜救生、目标搜索等方面。而这些应用需要高效可靠的水下通信技术支持,以实现观测数据的实时回收及控制指令的及时传达。因此研究实时高效的水下通信方法,对发展水下拖曳系统具有重要意义。水下拖缆电磁信号传输方法,以具有传导特性的电磁信号作为信息传输载体,裸露的拖曳钢缆和水组成的闭合回路作为信道,具有传输速率高、开发成本低、操作简单和保
随着社会工业化程度越来越高和全面小康社会的建成,人们的生活更加便利,出行的选择也更加多样,而汽车由于它的便捷性也成为更多人出行的首选。它给人们的出行带来了极大的便利,但是在带来便利的同时也造成了潜在的安全隐患。汽车道路事故频发给社会生成和人们生活会造成巨大的影响,疲劳驾驶在诸多造成交通事故的因素中占据着重要的位置,为了减轻疲劳驾驶带来的社会危害,可以对驾驶员疲劳状态进行检测,进而从根本上解决疲劳驾