基于深度学习的代码克隆检测方法研究

来源 :北京邮电大学 | 被引量 : 0次 | 上传用户:sb37sb
下载到本地 , 更方便阅读
声明 : 本文档内容版权归属内容提供方 , 如果您对本文有版权争议 , 可与客服联系进行内容授权或下架
论文部分内容阅读
随着计算机技术的不断发展,软件的规模也在逐渐扩大。但由于在代码开发过程中的各种原因比如主观抄袭,使用复用技术等,导致产生了代码克隆现象。代码克隆虽然能帮助软件系统的开发,但在复杂的软件系统如大型国防软件系统、商用软件系统等会带来漏洞或者后门等危险以及知识产权的纠纷等问题。传统的代码克隆检测主要采用人工特征提取并进行比较,检测效果较差。基于深度机器学习的方法能够挖掘出更深层的语法语义信息,可以有效提升检测精度,因此相关的研究成为热点。本文在分析总结现有国内外基于深度学习的代码克隆检测技术的基础上,针对使用的不同中间表示形式和是否有标签数据提出了三个主要的研究内容并在每个研究内容之上提出了本论文的改进方法。(1)基于AST树表示形式的深度有监督代码克隆检测研究。本论文提出了一种结合树形卷积网络和自注意力双向门控循环单元的神经网络 TBCGSA(Tree Based CNN with BiGRU and Self-Attention)。通过实验,在本论文使用的数据集上,检测准确率取得了比现有模型更好的效果。(2)基于图神经网络的深度有监督代码克隆检测研究。本论文提出了一种将源代码的AST抽象语法树进行加边操作的方法,并使用了两种常见的图神经网络进行代码特性向量的提取。通过实验,在本论文使用的数据集上,在检测效率上取得了比较好的效果。(3)基于AST树表示的深度无监督代码克隆检测研究。本论文提出了一种基于多叉树输入的改进递归自动编码器网络,MTBRAE(Multi Tree Based Rucursive Autoencoders)。通过实验,在本论文使用的数据集上,在高语法克隆和语义克隆方面,取得比现有的其他传统和无监督代码克隆检测方法更好的效果。
其他文献
近年来,随着智慧交通的飞速发展,复杂城市环境下高精度定位的需求日趋旺盛。由惯性导航系统和全球卫星导航系统构成的INS/GNSS组合导航系统能够提供连续高精度的定位导航信息,弥补单一导航系统的不足。然而在实际的复杂城市环境中,GNSS信号极易受到高楼、林荫、隧道等遮挡,传统的组合导航系统会退化为纯惯性导航推算。由于受到微机械电子系统惯性测量单元量测噪声的影响,纯惯导系统的定位精度会随误差累积而发散。
肺癌是全球致死率较高的一种癌症,IASLC(国际肺癌研究协会)研究表明:随着肿瘤的不断增长,患者的死亡率会逐步上升。对肺癌患者来说,及时地诊断和治疗可以有效提高存活率。肺结节作为肺癌发病初期的临床表现,在肺癌早期的筛查中起到至关重要的作用。近些年,随着影像学成像技术的不断发展,更薄层的成像能够提高肺结节筛查的准确度,从而造成了肺部影像和诊断报告呈指数增长,大量的数据增加了医生诊断的难度。将深度学习
大数据的类别不平衡与维度爆炸问题严重影响着算法的预测效率和分类精度.因此,提出了一种基于插值与特征压缩的大数据分类方法ASE-RFXT.改进ADASYN(adaptive synthetic sampling approach)的插值中心,减少了噪声的引入,改善了少数类样本的分布.改进ReliefF(特征权重法),并将它与集成算法XGDT(extreme gradient dart tree)结合对特征进行并行加权,减少了权重受异常值的影响,使得评估更加准确.利用特征之间的相关性过滤低权重冗余特征,以XG
分类技术是数据挖掘中的热门,广泛应用于社会生活各个领域,通过学习得到一个分类模型,把每个属性集映射到一个预先定义的类标号。随着深度学习和神经网络的发展,分类任务也迎来了新的发展,但仍然面临着标注数据难获取、标注工作难度大等问题。面向少标签场景时,由于缺乏充足的标注数据,常规分类方法训练得到的模型分类效果不稳定、泛化性能差;而在一些特殊的领域,甚至无法获取到标注数据,这时由于缺乏标签信息监督模型训练
为解决现有PUF密钥交换协议存在的纠错机制复杂、辅助数据过大而导致的高开销问题,利用新提出的比特自检PUF电路(BST-PUF)设计了一种轻量型认证与密钥交换协议,在含有PUF的密码设备与服务器之间进行安全认证并建立共享会话密钥.协议能实现双向认证与可靠的密钥交换,抵抗篡改攻击、中间人攻击、DoS攻击、物理探测攻击与建模攻击等各种攻击技术.协议采用BST-PUF电路和鲁棒响应提取器来生成可靠的响应,取代传统PUF和纠错码组合,将可靠性标志F作为辅助数据用来恢复密钥,大幅降低纠错复杂性,减少辅助数据长度并提
在社交网络数据与抑郁症有关研究中往往需要采取人工方式标注抑郁症和非抑郁症用户,费时费力.通过高校大学生的微博社交数据的采集与分析,研究并提出了一种基于抑郁关键词与语义扩展的大学生疑似抑郁微博初步筛选算法——综合词法.该方法通过基础关键词表的构建和基于词嵌入学习模型WORD2VEC的语义扩展形成抑郁关键词表,最后利用该词表对被测微博进行语义相似度计算,进而识别其是否为疑似抑郁微博.在首都高校大学生微博数据集上的实验结果表明:综合词法在筛选准确率上优于SDS问卷分词法和专家词法;综合词法能够快速地从海量大学生
实体链接任务是识别文本中潜在的实体指称,并将其链接到给定知识库中无歧义的实体上.在绝大多数情况下,实体链接可能存在中文短文本缺乏有效上下文信息,导致存在一词多义的歧义现象;同时候选链接过程中,候选实体的不确定相关性也影响候选实体链接精确性.针对上述两个问题,提出深度神经网络与关联图相结合的实体链接模型.模型添加字符特征、上下文、信息深层语义来增强指称和实体表示,并进行相似度匹配.利用Fast-newman算法将图谱知识库聚类划分不同类型实体簇,将相似度计算得分最高候选实体所属实体簇映射到关系平面,构建聚类
针对传统的网络安全态势要素获取模型中,当样本分布不平衡时,占比很少的样本(统称小样本)不能被有效检测,准确识别到每一类攻击样本成为研究热点之一.利用深度学习提出了一种面向样本不平衡的要素获取模型,利用卷积神经网络作为基分类器提取网络数据的深层特征,其次使用GAN生成对抗网络扩充小样本的方法,解决样本分布不均衡问题.在扩充后的平衡数据集上采用迁移学习,加快基分类器到适应于小样本的新分类的训练时间.在NSL-KDD数据集上的实验表明,经过生成对抗网络扩充后的数据集,结合迁移学习有效加快了模型训练收敛速度,并有
近几年,随着视频数据规模的不断增加,近重复视频数据不断涌现,视频的数据质量问题越来越突出.通过近重复视频清洗方法,有助于提高视频集的数据质量.然而,目前针对近重复视频清洗问题的研究较少,主要集中于近重复视频检索等方面的研究.现有研究方法尽管可以有效识别近重复视频,但较难在保证数据完整性的前提下,自动清洗近重复视频数据,以便改善视频数据质量.为解决上述问题,提出一种融合VGG-16深度网络与FD-means(feature distance-means)聚类的近重复视频清洗方法.该方法借助MOG2模型和中值
随着网络应用的发展,服务响应速度与延迟的要求日益提升,传统的集中式云计算难以满足网络服务对服务响应、隐私性保护等需求。将云计算与边缘计算融合的云边协同计算日益成为满足网络服务响应速度和隐私保护的一种新型计算模式,受到业内广泛关注。然而,由于边缘计算环境自身的环境复杂性、实时变化性、接入终端多样性等因素,云边协同这一新型架构的安全性与性能开销问题变得日益突出。为能够确保云边协同架构的安全性,如何确保