【摘 要】
:
API补全是当今开发者们使用最为频繁的代码补全方法之一。近年来,大数据与人工智能技术发展迅猛,这为API补全带来了新的可能。其中,统计语言模型在代码补全领域取得了广泛关注,它先使用程序表示技术将程序代码转化成语句序列,再使用N-gram(N元语法)、RNN(循环神经网络)等模型对代码中方法调用进行预测,进而实现API补全。但是,训练模型需要使用大量的语料库,这些语料常常来自于互联网上的开源项目,但
论文部分内容阅读
API补全是当今开发者们使用最为频繁的代码补全方法之一。近年来,大数据与人工智能技术发展迅猛,这为API补全带来了新的可能。其中,统计语言模型在代码补全领域取得了广泛关注,它先使用程序表示技术将程序代码转化成语句序列,再使用N-gram(N元语法)、RNN(循环神经网络)等模型对代码中方法调用进行预测,进而实现API补全。但是,训练模型需要使用大量的语料库,这些语料常常来自于互联网上的开源项目,但这一些项目所代表的编程习惯与真实的个体开发者之间必然存在差异性,例如用户的个人项目中会存在大量的自定义类和方法,这对代码补全在实际应用时的表现带来了极大的负面影响。为了改善此问题,本文提出了一种基于统计语言模型的个性化代码补全方法,在已有方法的基础上增加了由用户个人的编程数据训练的语言模型。具体来说,本文主要工作内容包括:1.实现了一套从Java程序代码中提取出API调用序列以及将其转化为语句序列的完整方法,并基于大量代码生成了语料库。2.通过多种语言模型相结合的方式实现了基于用户个人编程习惯的个性化API补全模型。本文先使用来自互联网的数据实现了一套由N-gram模型和LSTM模型组成的混合语言模型,然后在此模型的基础上使用个人用户的数据对其进行重构与训练。3.基于上述工作,进行实验对比了不同模型在不同特征的测试集上的预测表现。实验结果证明将个性化模型运用在个人项目上进行代码补全时,会比已有模型拥有更高的准确率。
其他文献
在政治经济学研究的方法问题上,马克思详细考察了黑格尔的从抽象到具体的方法和古典政治经济学的从具体和整体出发的方法,在经历了《神圣家族》、《哲学的贫困》等著作的积淀后,于《<政治经济学批判>导言》中正式提出了政治经济学研究的正确方法即为从抽象上升到具体的方法。在政治经济学研究中,从抽象上升到具体的方法在本质上只是思维用来掌握具体、把它当作一个精神上的具体再现出来的方式。这一方法中的“抽象
在西南地区,山区机场建设往往存在地形条件复杂带来的建设问题。为了解决这类问题,西南地区山区机场常使用高填方的方式来建设机场地基。而加筋土边坡作为高填方工程的重要形式,其稳定性对整个工程的质量与安全起到了至关重要的作用。国内外许多学者对加筋高填方边坡的稳定性做了一系列研究,但为了简化模型,研究对象往往比较特殊。为了进一步得到加筋高填方边坡的稳定性影响因素以及影响规律,本文以重庆市巫山神女峰机场2号沟
随着电子商务的发展,零售业由单渠道销售模式转变为双渠道销售模式,传统的单渠道供应链转变为线上线下整合的双渠道供应链。然而,竞争的加剧,导致线上线下整合的的双渠道供应链出现以下问题:一方面,渠道的转变,导致消费者需求转变为小批量、随机性、分散化的需求。而传统的双渠道分销模式无法满足转变的需求,进而导致网络具有过高的库存成本压力与较低的客户响应度。另一方面,为降低分销网络的运营成本,提升企业自身竞争力
舰船噪声问题的主要来源之一是作为其主动力或备用动力的柴油发动机,因此舰船在选用柴油发动机时会将噪声水平作为重要的考量指标。近年来,舰船对推进动力水平的逐步提高,柴油发动机的设计功率密度和声品质用户体验要求不断上,而燃烧进程的噪声又是影响低负荷时柴油发动机用户声体验的重要因素之一,故而如何优化柴油发动机的燃烧进程产生的噪声成为业界研究的重点。本文针对某6200型直喷柴油机(舰船用),对6200柴油机
最近几年以来,伴随着全国经济的快速发展进步,银行信贷业务也随着社会经济发展进步的脚步而不断前行。但是银行信贷业务在快速发展进步的同时,也随之产生了各种风险隐患,即商业银行不良信贷连续增加,这逐渐成为了商业银行发展道路上的拦路虎,怎样处理和解决巨额不良信贷的沉重压力,怎样落实好信贷经济风险防范控制和综合管理工作,逐渐成为了商业银行面对的重大实际问题?根据当前我国商业银行信贷风险管控的实际,从邮储银行
社交网络的飞速发展深刻改变了当今社会人们的生活方式。人们开始习惯于将自己生活的点点滴滴分享到社交网络中,同时也更乐意从社交网络中获取自己感兴趣的信息。如何利用社交网络所拥有的用户群进行数据挖掘、商业营销也成为当下研究的热点。本文针对以病毒营销为背景的影响力最大化开展研究,研究内容可以分为两部分,基于会员制的社交网络影响力最大化问题与基于潜在价值的成本受限影响力最大化问题,具体内容如下:(一)基于会
养老金融是基础养老保险、企业年金和职业年金,以及个人商业养老保险“三支柱”养老保险制度运行的重要基础,养老金融包括养老金金融、养老服务金融和养老产业金融。养老产业金融在促进养老产业发展,支撑养老保障制度运行方面发挥着重要作用。智能化养老服务器具产业是现代新兴养老产业,在有效应对人口老龄化挑战,为老年人提供晚年幸福保障方面发挥着重要支撑。智能化养老服务器具具有技术含量高、附加值高,以及资本投入量大的
证券投资是一项专业性较高的行业,在历经两百多年的发展后,市场逐渐派生出许多投资策略和投资理念,而每种投资策略和投资理也各有千秋。在众多的投资策略和理念中,以美国格厄姆提出的安全边际投资策略最为经典,也被广泛使用。该理论是建立在“好公司”、“好价格”两个维度对证券市场进行投资价值分析,以价格始终围绕价值回归为基础框架,注重投资本金的安全性为第一原则,以低于内在价值为定量标准给出买入区间,并设计了十条
工匠心理即匠心是一种职业心理品质,即个体对待自己的工作及产品追求极致和完美的内在品质。在质量时代,企业要持续提升产品品质,中国制造要向中国创造转变,除了外在的变量,
虽然使用真空碳热法处理锌矿物及其二次再生含锌电炉烟尘因为它自身的高效率,低成本,低能耗和环保等优点正在成为炼锌领域较有前景的方法。但经过多年研究发现锌蒸气在非凝结性气体CO/CO_2体系中能否高效冷凝是真空碳热法炼锌工艺研究的关键。因此,本文对真空下金属锌挥发冷凝规律以及非凝结性气体对金属锌蒸气的冷凝行为的影响进行了理论和实验研究,旨在为挥发性金属冷凝提纯、真空碳热还原法制备金属锌、含锌物料富集金