基于标记表征的分层特征的代码克隆检测方法研究

来源 :太原理工大学 | 被引量 : 0次 | 上传用户:c42865
下载到本地 , 更方便阅读
声明 : 本文档内容版权归属内容提供方 , 如果您对本文有版权争议 , 可与客服联系进行内容授权或下架
论文部分内容阅读
近年来,随着互联网的快速普及,应用软件迅速发展,代码克隆的危害不断显现,克隆检测技术对于软件维护、代码漏洞检测及补丁变得非常重要。从代码表征的时间成本、检测类型和部署方式上综合分析现有的检测方法,基于标记的检测方法有一定的优势;但目前基于标记的克隆检测技术大多数只能检测语法克隆,对于语义克隆的检测存在一定的困难。因此,如何使用基于标记表征的代码克隆检测技术实现更全面、准确检测是当前研究领域的一大挑战。目前基于标记的技术中,大多数只针对JAVA或C语言进行检测,未涉及其他语言。但在未被检测的语言中尤其是Python语言由于其开源性更容易产生代码克隆;同时现有开源的Python克隆数据集样本量小,不利于模型的训练和检测。针对以上问题,本文提出了一种使用标记表征方式检测Python语言代码克隆的方法,研究内容和贡献如下:(1)提出一种基于分层特征的代码克隆检测方法。使用双层Bi-LSTM网络提取代码双层结构中的语义联系征,并在此基础上引进注意力机制突出重要标记及代码行的影响权重,最后采用softmax分类器对目标代码对分类。在CCIS中数据集上的实验结果表明,在检测的召回率方面,本模型相比CCIS方法提高了3%,提升了检测效果。(2)根据已有公开数据集的整理过程,搜集了关于Python语言的语义克隆类型,并提出了一种改进的分层特征的代码克隆检测方法。该方法根据代码特有的双层特征结合余弦相似度和分类器建立代码信息提取和检测模型,而无需大规模原始数据和人工标注。实验表明,该方法相比原模型准确率高出4%左右,更适合用于小样本克隆检测问题,提高了模型的鲁棒性和检测效果。
其他文献
随着互联网、人工智能等新兴产业发展,电信行业从网络到业务都发生了巨大的变化,人们对于通信方式和通信质量提出更高的要求,城域网作为电信运营商的承载网,其建设和优化对城域网业务的发展起着至关重要的作用,因此如何进一步扩大数据城域网的网络规模,同时合理构建未来数据城域网架构,以保证未来网络承载能力成为一个需要深入研究的问题。本文对地区城域网建设和优化方案进行了研究。首先对本地城域骨干网和接入网、基础资源
近年来我国人民生活水平的日渐提升,很多人的生活习惯开始向不健康的方向发展,导致我国心血管发病率的不断攀升。通过我国初级卫生保健检查中的心音听诊,如能检测到主动脉狭窄等现象,则可以将患者归为心血管疾病发病初期的疑似病例,在此基础上,提早开展心血管疾病的预防治疗,可以提高患者的知情率以及治愈率。我国幅员辽阔、医疗资源相对短缺,采用医生和患者一对一模式展开心音听诊是非常消耗医疗资源,而且听诊结果也会受到
云计算是一种基于即用支付收费模式(Pay-as-you-use)的计算服务,与传统IT服务模式相比,它能够保证用户需求的即时性。其中,用于规范服务并且保障双方权益的云计算服务等级协议(Service Level Agreement,SLA)得到广泛关注。简单来说,SLA是服务提供商与用户之间确立多方面要求的合同或协议,这其中包括服务等级目标(Service Level Objective,SLO)
每当翻开这本小小的,但放在掌心极其有分量的书,都会让人情不自禁地陷入书中所描绘的那片晚霞笼罩着的田野里。这是一片需要反复遨游的田野,每一次的闯入和离开,都会收获不一样的感受与回味。驻足平凡而又艰苦的生活,偶尔找一个阴天的午后,寻两三个小时的闲暇时光,去一口气读完一位老人完整的一生,是对生活的“解毒”,也是对生命的敬畏。《活着》是在一个广阔而苍凉的背景下展开叙述的,但小说有意淡化了那些特定的社
期刊
近年来,越来越多的对抗攻击技术被提出,在计算机视觉、自然语言处理等领域,研究者们纷纷探究如何利用其来攻击现有的基于机器学习或深度学习的异常检测、分类等系统,旨在评估相关技术系统的健壮性,以及进一步推动防御方法的提升。然而在物联网安全领域,无论是研究学者,还是黑客攻击者,针对对抗攻击的研究还都处于初级阶段,因此,本文从攻击的角度出发,通过深入探究对抗攻击技术在物联网安全方面的应用来补充现有研究在这方
随着科学技术日新月异的发展,网络逐渐为人们日常生活中不可或缺的工具。它是一种功能强大的图结构,可以很自然地捕获海量数据中对象之间的关系。为了获得对象的更多隐含信息,许多图挖掘任务需要联合多个网络的数据进行分析。然而汇聚异构网络中的数据所面临的首要问题是“如何对齐不同平台的对象”。许多下游任务是在对象对齐之后构建的。例如,蛋白质网络的模式匹配、社交网络中的用户身份识别、跨领域个性化推荐和社会链接预测
乳腺癌的发病率逐年上升,严重危害女性的健康和生命。大部分的乳腺癌患者的首发症状是因为发现乳房中存在肿块,因此乳腺肿块是乳腺癌的一个早期信号。计算机辅助诊断可以提供客观的参考意见,减轻医生负担,因此结合深度学习技术对乳腺钼靶图像中肿块进行良恶性分类的研究具有很高的价值。目前许多学者对基于深度学习的乳腺图像分类的研究取得了一定的成绩,但还存在整体分类精度不高的问题。本文针对此问题提出了一种基于集成的卷
随着信息技术不断发展,政协履行职能的方式也迈入了信息化时代。政协现有信息化系统、设施和配套环境已无法适应新形势下政协“政治协商、民主监督和参政议政”三大职能的要求,不能满足全业务、全流程、全地域的覆盖。因此,设计一套智慧政协信息综合系统,就显得十分必要。本文在参阅大量中外文献的基础上,结合本人工作实际,深刻分析了政协信息化国内外研究现状以及目前存在的问题,针对这些问题,利用软件工程专业知识,经过需
建筑行业的本质特点决定了建筑工程全寿命周期过程中会面临资金、工期、环保等不确定因素的风险,建筑工程的经济、技术及环境等方面压力同其他行业相比均较高。如何在建设节约型社会的背景下完成建筑行业向集约型行业的转型,是业内人员正在攻克的难题。如何在建筑工程中提高资金利用率、资源利用率,在保证工程质量的前提下最大程度减少对环境的影响,利用科学管理手段将建设工程成本控制在合理可行的范围内的同时有效降低在工程造
随着自然语言处理技术的不断发展,语义分析已经成为自然语言处理领域的热点及难点问题,作为框架语义分析中关键环节的框架消歧任务也得到了研究者的广泛关注。目前在框架消歧领域,大部分研究都将其看作一个分类问题,通过使用机器学习中常用的分类模型(例如支持向量机、最大熵模型等)对待消歧目标词进行分类,取得了不错的效果。然而现有的分类模型也存在着一些问题,比如模型将目标词看作独立的个体进行分类,不能有效利用目标