首页 | 本学科首页   官方微博 | 高级检索  
相似文献
 共查询到10条相似文献,搜索用时 31 毫秒
1.
源代码注释生成旨在为源代码生成精确的自然语言注释,帮助开发者更好地理解和维护源代码.传统的研究方法利用信息检索技术来生成源代码摘要,从初始源代码选择相应的词或者改写相似代码段的摘要;最近的研究采用机器翻译的方法,选择编码器-解码器的神经网络模型生成代码段的摘要.现有的注释生成方法主要存在两个问题:一方面,基于神经网络的方法对于代码段中出现的高频词更加友好,但是往往会弱化低频词的处理;另一方面,编程语言是高度结构化的,所以不能简单地将源代码作为序列化文本处理,容易造成上下文结构信息丢失.因此,本文为了解决低频词问题提出了基于检索的神经机器翻译方法,使用训练集中检索到的相似代码段来增强神经网络模型;为了学习代码段的结构化语义信息,本文提出结构化引导的Transformer,该模型通过注意力机制将代码结构信息进行编码.经过实验,结果证明该模型在低频词和结构化语义的处理上对比当下前沿的代码注释生成的深度学习模型具有显著的优势.  相似文献   

2.
函数自动命名技术旨在为输入的源代码自动生成目标函数名,增强程序代码的可读性以及加速软件开发进程,是软件工程领域中一项重要的研究任务.现有基于机器学习的技术主要是通过序列模型对源代码进行编码,进而自动生成函数名,但存在长程依赖问题和代码结构编码问题.为了更好的提取程序中的结构信息和语义信息,本文提出了一个基于图卷积(Graph Convolutional Network,GCN)的神经网络模型—TrGCN(a Transformer and GCN based automatic method naming).TrGCN利用了Transformer中的自注意力机制来缓解长程依赖问题,同时采用Character-word注意力机制提取代码的语义信息.TrGCN引入了一种基于图卷积的AST Encoder结构,丰富了AST节点特征向量的信息,可以很好地对源代码结构信息进行建模.在实证研究中,使用了3个不同规模的数据集来评估TrGCN的有效性,实验结果表明TrGCN比当前广泛使用的模型code2seq和Sequence-GNNs能更好的自动生成函数名,其中F1分数分别提高了平均5.2%、2.1%.  相似文献   

3.
代码注释能够增强源代码的可读性、辅助软件开发过程,因此代码注释自动生成任务成为研究热点。然而现有工作大多只利用了源代码的序列信息或抽象语法树信息,未能充分捕捉代码语言特有的多种特征。为进一步利用源代码的多维度特征,提升注释生成的效果,构建基于多维度异质图结构的代码注释自动生成模型。利用异质图结构和图神经网络,将源代码的抽象语法树、控制流图、数据流图等进行融合并构建为具有多种节点和连边的异质表示图,以此表现代码的语义特征、序列特征、语法特征、结构特征等多维度特征。在真实数据集上的实验结果表明,该模型相较于Hybrid-DRL、NeuralCodeSum、SeqGNN等模型具有更好的效果,在BLEU-4、METEOR、ROUGE-L指标上分别最高提升1.6%、3.2%、3.1%,可获得更流畅、可读性更好的代码注释。  相似文献   

4.
图像检索是一项重要的研究课题,涉及如何快速、准确地检索和管理海量的图像数据。传统的图像检索技术主要依赖图像的视觉特征或文本描述进行匹配,但是难以充分理解图像的语义信息,对复杂场景的适应性较差。针对这一问题,文章提出了一种基于卷积神经网络-循环神经网络(Convolutional Neural Networks Recurrent Neural Network,CNN-RNN)模型的图像检索技术。该技术将CNN和RNN相结合,构建了一个统一的深度学习框架。其中,CNN模型用于从图像中提取全局特征,RNN模型用于学习图像与标签之间的语义关联和共现依赖。文章通过将CNN输出的特征序列输入到RNN模型中,实现了对图像全局语义信息的捕获。将设计系统在多个数据集上进行实验,结果表明,设计的方法能够有效提高图像检索的效率和准确性。  相似文献   

5.
方面级别情感分类是针对给定文本、分析其在给定方面所表达出的情感极性。现有的主流解决方案中,基于注意力机制的循环神经网络模型忽略了关键词邻近上下文信息的重要性,而结合卷积神经网络(Convolutional Neural Network, CNN)的多层模型不擅长捕捉句子级别的长距离依赖信息。因此,提出了一种基于截断循环神经网络(Disconnected Gated Recurrent Units, DGRU)和注意力机制的方面级别情感分类网络模型(Attention-Disconnected Gated Recurrent Units, ATT-DGRU)。DGRU网络综合了循环神经网络和CNN的优点,既能捕捉文本的长距离依赖语义信息,又可以很好地抽取关键短语的语义信息。注意力机制在推断方面情感极性时捕获每一个单词与给定方面的关联程度,同时生成一个情感权重向量用于可视化。ATT-DGRU模型在中文酒店评论数据集上进行ACSA任务,任务结果表明,其二分类、三分类准确率分别达到91.53%,86.61%;在SemEval2014-Restaurant数据集进行ATSA任务,任务结果表明,其...  相似文献   

6.
针对目前多数图像语义分割方法需要人工设计图像特征的问题,借助卷积神经网络(Convolutional Neural Network,CNN)自动学习得到图像特征的优势,并综合考虑CNN的网络输入和物体上下文关系对图像语义分割结果的影响,以超像素为基本处理单元,结合多尺度技术和CNN网络设计了一种面向图像语义分割的多尺度CNN模型,并详细分析了该模型的结构以及模型推断。实验验证了所提出方法的有效性。  相似文献   

7.
李晓卓  卿笃军  贺也平  马恒太 《软件学报》2022,33(11):4008-4026
基于信息检索的缺陷定位技术,利用跨语言的语义相似性构造检索模型,通过缺陷报告定位源代码错误,具有方法直观、通用性强的特点.但是由于传统基于信息检索的缺陷定位方法将代码作为纯文本进行处理,只利用了源代码的词汇语义信息,导致在细粒度缺陷定位中面临候选代码语义匮乏产生的准确性低的问题,其结果有用性还有待改进.通过分析程序演化场景下代码改动与缺陷产生间的关系,提出一种基于源代码扩展信息的细粒度缺陷定位方法,以代码词汇语义显性信息及代码执行隐性信息共同丰富源代码语义实现细粒度缺陷定位.利用定位候选点的语义相关上下文丰富代码量,以代码执行中间形式的结构语义实现细粒度代码的可区分,同时以自然语言语义指导基于注意力机制的代码语言表征生成,实现细粒度代码与自然语言间的语义映射,从而实现细粒度缺陷定位方法FlowLocator.实验分析结果表明:与经典的IR缺陷定位方法相比,该方法定位准确性在Top-N排名、平均准确率及平均倒数排名上都有显著提高.  相似文献   

8.
遗传诊断中的一个关键挑战是评估与剪接相关的致病遗传突变.现有致病剪接突变预测工具大多基于传统的机器学习方法,主要依赖人工提取的剪接特征,从而限制预测性能的提升,尤其对于非经典剪接突变,性能较差.因此,文中提出基于BERT(Bidirectional Encoder Representations from Transformers)和CNN(Convolutional Neural Network)的致病剪接突变预测方法(BERT and CNN-Based Deleterious Splicing Mutation Prediction Method, BCsplice).BCsplice中BERT模块可全面提取序列的上下文信息,与提取局部特征的CNN结合后,可充分学习序列的语义信息,预测剪接突变致病性.非经典剪接突变的影响往往更依赖序列上下文的深层语义信息,通过CNN将BERT的多级别语义信息进行组合提取,可获得丰富的信息表示,有助于识别非经典剪接突变.对比实验表明BCsplice性能较优,尤其是在非经典剪接区表现出一定性能优势,有助于识别致病剪接突变和临床遗传诊断.  相似文献   

9.
徐少峰  潘文韬  熊赟  朱扬勇 《计算机工程》2020,46(2):304-308,314
在软件开发过程中,性能良好的代码注释工具能够提高开发效率并降低维护成本。部分研究者将代码注释自动生成看作将源代码翻译成自然语言注释的翻译任务,但仅考虑源代码的序列信息而忽略了代码内部的结构特性。为此,在常见端到端翻译模型的基础上,利用代码抽象语法树将源代码的结构信息嵌入到编码器解码器翻译模型中,提出一种基于结构感知的双编码器解码器模型,该模型综合考虑源代码的序列信息与代码内部的结构特性。在真实数据集上的实验结果表明,相比PBMT、Seq2seq模型,该模型的BLEU得分较高,且生成的注释更准确和易读。  相似文献   

10.
代码注释可以帮助开发人员理解代码的功能和实现方法。代码注释生成模型可以自动识别代码中的关键信息,并生成相关注释,提高代码的可读性和可维护性。现有的代码注释生成模型通常只使用抽象语法树结构信息来表示代码,导致模型生成注释质量不高。提出一种融合多结构信息的代码注释生成模型,该模型在代码抽象语法树的基础上,增加了数据流图结构信息来表示代码。模型使用Transformer的编码器对抽象语法树序列进行编码,捕获代码全局信息。使用图神经网络对数据流图进行特征提取,提供变量之间的计算依赖关系等信息。然后使用跨模态注意力机制融合抽象语法树和数据流2种特征,经过Transformer的解码器生成相应的注释。实验结果表明,与6种主流模型相比,所提出的模型在Java和Python数据集上的BLEU、METEOR和ROUGE-L指标得分均有提高,生成的注释也具有良好的可读性。  相似文献   

设为首页 | 免责声明 | 关于勤云 | 加入收藏

Copyright©北京勤云科技发展有限公司  京ICP备09084417号