基于自然语言处理的代码函数名预测

来源 :天津大学 | 被引量 : 0次 | 上传用户:focus2316acn
下载到本地 , 更方便阅读
声明 : 本文档内容版权归属内容提供方 , 如果您对本文有版权争议 , 可与客服联系进行内容授权或下架
论文部分内容阅读
函数名称预测是代码分析中的一项重要下游任务。优秀的函数名称可以增加程序或者代码的可理解性,帮助开发人员轻松的理解他人的代码,这对软件产品的扩展和维护至关重要。近年来,研究人员提出了大量不同的函数名称预测模型,而随着机器学习的发展,函数名称预测方法逐渐从传统的代码分析方向转变到深度学习代码表示上,各种基于机器学习的函数名称预测工具层出不穷。但是在利用机器学习的模型完成函数名称预测任务上,仍然存在两个方面的问题:一是无法很好的完成跨越不同项目的函数名称预测任务,普通的方法只能完成同一项目下的预测任务;二是函数名称库的局限性,导致各种方法预测的准确率较低。因此本课题针对以上两个问题,提出了基于大型函数语料库的跨越不同项目的函数名称预测模型。在本课题中,我们首先提出了从Git开源仓库中提取大型函数语料库的方法。通过本文设计的函数提取工具,本文提取所有满足条件的开源项目中的函数,然后经过数据清洗和函数过滤后,构建了大型函数语料库。接着本文利用自然语言处理方向的Skip-gram模型,完成了代码Token的向量预训练任务。为了很好的用向量表示代码,即code2vec任务,本课题提出了基于函数名称监督训练代码向量的AttBiLSTM模型。同时为了加速模型训练和提高预测的准确率,我们使用TF-IDF算法分析代码中的关键Token,并建立起不同Token的候选函数名称集合,在模型效率和预测准确率上都有了很大的提升。最后本课题基于提取的大型函数语料库进行了充分的实验对比。实验结果表明,在函数名称预测任务中,无论在模型效率还是预测准确率上,本课题的预测方法都优于目前其他先进的方法。
其他文献
目标跟踪是计算机视觉的重要研究课题之一,广泛应用于智能视频监控、自动驾驶、智能交通、航空航天、虚拟现实等领域。近些年,目标跟踪领域飞速发展,其中基于相关滤波的目标跟踪方法引人注目。目前,基于相关滤波的目标跟踪方法经过几年的研究与发展,已经进入瓶颈期,仅仅凭借相关滤波似乎已经无法取得更好的效果。本文以相关滤波目标判别模块为基础,结合基于卡尔曼滤波的位置修正模块和基于交并比网络的边界框优化模块,提出了
随着移动互联网的兴起和大量图像的涌现,如何提炼图像中的价值备受关注,而视觉注意机制的研究可以帮助研究人员解决这一问题。图像视觉注意力的研究对应静态和动态注意力两个层面分别建立有空域显著图预测模型和时域扫描路径预测模型,但现有空时注意力算法还未有关注人类对图像发生注意时的人类情感,而美学情感是一种与视觉注意力息息相关的情感。因此,本文提出了基于美感的空时视觉注意力预测算法,分别对显著图预测和扫描路径
乳腺癌是常见的恶性肿瘤之一,在女性群体中有逐年增长的趋势。乳腺病理学图像在显微镜下特定区域内的有丝分裂细胞个数是乳腺癌分级的重要指标。现阶段的有丝分裂计数主要靠人工进行,这一过程不仅耗时间,而且对操作人员有很高的的专业要求。因此基于计算机视觉技术实现有丝分裂自动检测具有重要意义。本文针对乳腺病理图像中有丝分裂检测问题开展研究,主要工作如下:针对传统有丝分裂检测识别方法直接对原始RGB图像处理,易于
目前虚拟现实技术发展迅速,其中立体全景视频作为虚拟现实呈现的重要载体,能够提供给观看者无与伦比的沉浸感。然而立体全景视频的制作需要经历拍摄、拼接、投影、编解码等多个步骤,在这些过程中立体全景视频往往会受到各种失真因素的影响。为了保证立体全景视频呈现的最终质量,对立体全景视频进行质量评价具有重要的理论和现实意义。为了开展相关研究,本文建立了立体全景视频质量评价数据库。在考虑了立体全景视频的制作与播放
随着互联网技术与移动通信技术的快速发展,空前发达的信息化时代在丰富与方便了人们生活的同时,也带来了信息过载的问题。推荐系统,作为解决信息过载问题的有效方法,能够帮助用户进行信息过滤,并提供精确且有针对性的推荐服务,现已经被广泛的应用到电子商务、社交、影音娱乐等领域中。近些年有关网络表示学习技术的研究取得了突出成果,其对网络结构信息的表示能力为推荐算法的研究提供了新思路。本文以网络表示学习与推荐算法
基于深度学习的3D模型检索往往受限制于有限规模的已标注模型数据,因此现有算法泛化能力有限。域自适应算法可以在有标注域上学习域间共有的知识和模式,从而将其应用于无标注域数据,因此可以有效解决此类问题。本文通过将域自适应算法引入3D模型检索任务,提出了一种基于反向传播的域自适应3D模型检索算法,并基于该算法构建了一个高效的3D模型检索演示系统。通过对比实验,验证了算法的有效性和优越性。首先,通过将基于
人脸识别是指利用计算机系统对输入的人脸进行分析并比较其有效的特征信息来分辨被输入者身份的技术,其中处理人脸差异是人脸识别的关键所在。现有的人脸识别在受限环境下趋于成熟,然而在非受限环境下,人脸会受遮挡、光照、姿态等因素的影响出现差异性,降低人脸识别的性能。研究非受限环境下的人脸差异对人脸识别技术的应用具有重要的实用价值。本文针对非受限环境中的遮挡与姿态因素,通过结合生成对抗网络框架,提出了以下两种
随着智能城市的发展,车辆互联网(IoV)引起了研究者们的广泛关注。智能车辆可以通过多方合作组建车辆团队,在智慧城市中执行移动众包任务。如何组建车辆团队建立安全的模型以实现最大的社会福利,成为车辆移动众包活动中的巨大挑战。尽管目前的研究已经提出了一些移动众包模型,但是很少有人关注实时车辆团队合作。此外,交通压力带来的拥堵为人们生活带来不便的同时也带来了机遇,闲时团队资源的有效利用成为研究者们一个新兴
近年来,众包渐渐成为了一种新的商业模式。众包面向的群体比较广泛,参与到众包平台中的工作者背景知识,专业能力等各不相同,导致众包结果质量参差不齐。因此,质量控制成为众包研究领域的重要分支。目前的质量控制方法大多基于中心化平台,并不能保证完全可信,存在数据泄露,数据丢失等问题。此外,现在的众包平台的激励机制多采用固定定价的方式,这也导致了报酬的不合理分配。为了解决上述问题,本文提出了基于区块链的众包质
当前我国交通基础建设规模逐步增大,互联网的飞速发展也为交通出行带来了更多的可能性。在这样的信息化时代中,面对交通方式的多元化和复杂化,课题组构建了智能情报分析框架IAF,基于复杂网络挖掘算法对地、事、人、行为及相互关系进行感知、理解、预测。其中异常检测是该框架中的关键算法,基于交通复杂网络的情报分析是该框架中的重要功能。本文利用物理空间获取共享单车、网约车等大量车辆的城市交通出行行程数据和轨迹数据