第49卷第2期2023年2月ComputerEngineering计算机工程基于结构感知混合编码模型的代码注释生成方法蔡瑞初,张盛强,许柏炎(广东工业大学计算机学院,广州510006)摘要:代码注释能够提高程序代码的可读性,从而提升软件开发效率并降低成本。现有的代码注释生成方法将程序代码的序列表示或者抽象语法树表示输入到不同结构的编码器网络,无法融合程序代码不同抽象形式的结构特性,导致生成的注释可读性较差。构建一种结构感知的混合编码模型,同时考虑程序代码的序列表示和结构表示,通过序列编码层和图编码层分别捕获程序代码的序列信息和语法结构信息,并利用聚合编码过程将两类信息融合至解码器。设计一种结构感知的图注意力网络,通过将程序代码的语法结构的层次和类型信息嵌入图注意力网络的学习参数,有效提升了混合编码模型对程序代码的复杂语法结构的学习能力。实验结果表明,与SiT基准模型相比,混合编码模型在Python和Java数据集上的BLEU、ROUGE-L、METEOR得分分别提高了2.68%、1.47%、3.82%和2.51%、2.24%、3.55%,能生成更准确的代码注释。关键词:代码注释生成;混合编码模型;图注意力网络;深度自注意力网络;自然语言处理开放科学(资源服务)标志码(OSID):中文引用格式:蔡瑞初,张盛强,许柏炎.基于结构感知混合编码模型的代码注释生成方法[J].计算机工程,2023,49(2):61-69.英文引用格式:CAIRC,ZHANGSQ,XUBY.Methodforgeneratingcodecommentsbasedonstructure-awarehybridencodingmodel[J].ComputerEngineering,2023,49(2):61-69.MethodforGeneratingCodeCommentsBasedonStructure-awareHybridEncodingModelCAIRuichu,ZHANGShengqiang,XUBoyan(SchoolofComputers,GuangdongUniversityofTechnology,Guangzhou510006,China)【Abstract】Codecommentsimprovethereadabilityofprogramcodes,enhancingsoftwaredevelopmentefficiencyandreducingcosts.ExistingmethodsforcodecommentgenerationfeedthesequenceformorAbstractSyntaxTree(AST)formofaprogramcodeintoencodernetworkswithdifferentstructures,whichcannotfusethestructuralcharacteristicsofdifferentabstractformsofprogramcodes.Thisresultsinpoorreadabilityofthegeneratedcomments.ThisstudyproposesaStructure-awareHybridEncoding(SHE)model.TheSHEmodelconsidersboththesequenceformandstructureformoftheprogramcode.Thisincludes...