基于知识图谱和深度学习的JAVA代码摘要

来源 :哈尔滨工业大学 | 被引量 : 0次 | 上传用户:t555666777
下载到本地 , 更方便阅读
声明 : 本文档内容版权归属内容提供方 , 如果您对本文有版权争议 , 可与客服联系进行内容授权或下架
论文部分内容阅读
近年来随着软件系统规模的扩增以及面对需求进行版本的更迭,规模不断扩大的代码已成为程序员开发和维护系统的挑战。由于代码具有抽象性,复杂性和可变性的特点,阅读时他人的代码时会存在一定的困难。代码摘要为代码执行的功能提供了高级自然语言描述,有利于软件维护、代码分类和检索。但是现有大多数代码的摘要往往需要开发者自己撰写,随着软件系统的版本迭代,代码摘要往往会出现不匹配,错误或者更新不及时的问题,导致了在后期开发和维护过程中需要巨大的人力成本来理解现有的代码。人工代码摘要解决不匹配的问题存在工作量大的问题,所以需要自动代码摘要。目前对于代码摘要的自动生成研究除了传统的基于模板、基于信息检索的方法以及基于概率模型的方法以外,主要基于深度学习技术中的CNN、RNN网络,根据概率模型,提取代码文本的特征,通过解码器对特征向量进行解码从而生成代码摘要。但是这些方法往往将源代码视为纯文本,忽视了许多代码相关的知识,效果较为有限。API对应的功能描述、API相关的问题描述等代码知识,往往可以反映出代码对应的功能和使用方法。然而这些知识往往存在于多种不同的资源当中,如何从不同的数据源当中提取知识并将他们融合在一起是一个挑战,在获取到相关代码知识之后,如何利用这些知识来辅助代码生成任务,使其达到更好的效果也是需要不断研究的工作具体来说,针对以上的问题,本文的主要工作如下:首先,本文设计算法分别从源码,API官方文档以及Stack Overflow问答数据中抽取Java代码相关知识,建立对应的代码知识库。并为了可扩展性,在人工标注数据集上,使用三种实体识别模型识别API实体,并设计数据融合方法构建了一个Java代码知识图谱。其次,在构建完成Java代码知识图谱的基础上,改进了传统的Seq2Seq模型,设计了一种基于代码知识图谱和混合注意力机制的代码摘要模型,在开源数据集上进行试验,验证了模型的有效性。最后,借鉴迁移学习方法,设计并实现了一个基于迁移学习和代码知识图谱的代码摘要模型,从而进一步提高了代码摘要的质量。
其他文献
为了探究承德市兴隆县六里坪林场主要树种形成林分的生长特性及效益特征,在河北省承德市兴隆县六里坪林场,选取了油松纯林、蒙古栎纯林和油松蒙古栎混交林三种典型林分为研究对象,通过标准地调查法、树干解析等手段对不同林分的林分结构、生长规律及生物多样性特征进行了系统研究,主要研究结果如下:(1)三种不同森林类型胸径结构分布曲线均呈现单峰山状分布,随着林木径阶不断增长,株数均出现递减趋势。但三者有显著差异:油
会议
过渡金属氧化物材料中电子之间有强烈的相互作用,电荷、自旋、轨道和晶格自由度之间存在复杂而精致的共存和竞争,导致多种电子有序相和丰富的相变行为。这些相变往往伴随着宏
1927-1937年间,我国的学校音乐教育得到了长足的发展,学校中的各类课外音乐团体也较为活跃。并且,这一时期的口琴音乐得到了大范围的推广普及,在音乐教育领域产生了相当大的
华北落叶松是燕山地区主要造林树种之一,具有寿命长、抗性强、生长快、材质好、用途广的特性,可提供高质量的无节材,是重要的用材树种。但是由于华北落叶松生长速度较快,自然整枝较差,导致其木材节子较多,影响美观及其加工利用。修枝是人工林抚育的主要措施,对无节材培育具有重要意义,但修枝高度的问题目前主要为定性描述,缺乏定量标准,并且对不同高度枝叶功能研究也不够深入。因此,本文以河北省茅荆坝林场华北落叶松人工
随着材料科学和器件物理的发展,有源矩阵电致发光二极管(Active-Matrix Organic Light-Emitting Diode,AMOLED)显示技术逐渐成熟,越来越多地应用在消费级显示器以及照明领域
作为改革开放后我国第一批设立的四个经济特区之一,厦门经济社会发展取得显著成就。但是,随着工业化、城市化、市场化进程的不断推进,经济规模的进一步扩大,能源资源的匮乏越
本文结合汽车和轨道车辆相关碰撞规范,以城市有轨电车为研究对象,以减小有轨电车攻击性,保护汽车及乘员,提高有轨电车与乘用汽车碰撞兼容性为目的,以通用有限元分析软件为分析工具,采用有限元仿真分析方法对有轨电车与汽车的碰撞兼容性进行研究。围绕该研究对象,本文进行了相关问题的研究:首先,进行有轨电车与汽车的碰撞模型简化及合理性研究。建立有轨电车与汽车的整体碰撞模型,将有轨电车以35km/h的碰撞速度碰撞汽
随着现代互联网信息技术的进一步发展和移动智能设备的不断普及,互联网上的数据资源在急速增长,而文本作为信息的主要展现形式,其中包含大量的技术性信息和隐藏的知识。海量
在执行对空间目标跟踪,捕获等空间任务时,需要对空间场景中的各种目标进行成像观测。但由于一些因素的限制,无法获得空间目标在各种姿态和光照条件下的实际成像结果,且开展此