CN113157255B - 一种面向语法树解码器的代码生成方法 - Google Patents

一种面向语法树解码器的代码生成方法 Download PDF

Info

Publication number
CN113157255B
CN113157255B CN202110305383.3A CN202110305383A CN113157255B CN 113157255 B CN113157255 B CN 113157255B CN 202110305383 A CN202110305383 A CN 202110305383A CN 113157255 B CN113157255 B CN 113157255B
Authority
CN
China
Prior art keywords
ast
dense
layer
network
neural network
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
CN202110305383.3A
Other languages
English (en)
Other versions
CN113157255A (zh
Inventor
王彪
李超
刘魁
曹亮
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Chengdu Sunsheen Technology Co ltd
Chengdu University of Information Technology
Original Assignee
Chengdu Sunsheen Technology Co ltd
Chengdu University of Information Technology
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Chengdu Sunsheen Technology Co ltd, Chengdu University of Information Technology filed Critical Chengdu Sunsheen Technology Co ltd
Priority to CN202110305383.3A priority Critical patent/CN113157255B/zh
Publication of CN113157255A publication Critical patent/CN113157255A/zh
Application granted granted Critical
Publication of CN113157255B publication Critical patent/CN113157255B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/30Creation or generation of source code
    • G06F8/31Programming languages or programming paradigms
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/40Transformation of program code
    • G06F8/41Compilation
    • G06F8/42Syntactic analysis
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/04Architecture, e.g. interconnection topology
    • G06N3/045Combinations of networks
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/08Learning methods

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Software Systems (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Computing Systems (AREA)
  • Artificial Intelligence (AREA)
  • Data Mining & Analysis (AREA)
  • Evolutionary Computation (AREA)
  • General Health & Medical Sciences (AREA)
  • Molecular Biology (AREA)
  • Computational Linguistics (AREA)
  • Biophysics (AREA)
  • Biomedical Technology (AREA)
  • Mathematical Physics (AREA)
  • Life Sciences & Earth Sciences (AREA)
  • Health & Medical Sciences (AREA)
  • Error Detection And Correction (AREA)

Abstract

本发明公开了一种面向语法树解码器的代码生成方法,包括以下步骤:将数据通过编码器解析生成AST,在AST结构上应用滑动窗口提取出AST结构特征,并对AST进行深层次节点进行遍历,获得AST中子父节点及兄弟节点的顺序关系;在AST中加入多层连接,设计稠密网络块结构,利用稠密连接方法对深层卷积网络进行训练形成稠密的卷积神经网络;设计过渡层结构,将设计的过渡层加入稠密的卷积神经网络中并进行卷积和池化操作,对稠密的卷积神经网络进行优化,输出特征图,生成代码。本发明在语法树解码中缩短各个网络层的连接,增加各个网络层的连接,缓解了网络加深带来的梯度消失问题,增强特征传播,促进特征共享,有效的减少了参数的数量。

Description

一种面向语法树解码器的代码生成方法
技术领域
本发明涉及代码生成技术领域,尤其涉及一种面向语法树解码器的代码生成方法。
背景技术
随着神经网络技术的发展,利用自然语言与其他符号编写的描述规范,自动生成可执行文件编程语言的源代码成为了可能。其中语法树解码器的实现,现有方法主要依靠递归神经网络(RNN)编码器,再到Seq2Seq模型,再到CNN,模型既能学习到长序列的长短期记忆,又能捕获到描述规范中更多的特征。而随着描述规范语义的加深,逻辑的复杂,导致CNN的加深,基于语法的结构CNN解码器在训练中出现了梯度消失与退化等问题,导致难以拟合复杂逻辑的代码生成场景。
目前语法树解码解决方案,主要依靠循环神经网络(RNN)编码器与卷积神经网络(CNN)编码器。RNN能解决长时依赖问题,而真实场景存在一个程序包含比自然语言句子更多的标记,于是运用多个CNN基于树的卷积和预卷积,能有效地捕获不同位置的特征。但还存在复杂逻辑程序的场景,因此特征需要加深CNN,随身网络变得越来越深,一个新的问题出现了:当梯度信息经过许多层时,便就会消失及发生退化的现象。
如申请号为CN202010468473.X的专利公开了一种代码生成方法、装置、设备及存储介质,具体实现方案为,在第一语言环境下编写第一业务逻辑的代码,所述第一业务逻辑的代码用于描述第一业务逻辑对应的功能,其中,所述第一业务逻辑的代码是按照预设的声明式应用程序接口API的描述方式进行编写的,编写完成后得到第一具体语法树;基于预定的语法分析算法,将所述第一具体语法树转换为第一抽象语法树;通过解释器将所述第一抽象语法树转换为第二语言代码,所述第二语言代码用于执行所述第一业务逻辑对应的功能。利用该申请方案虽然能够实现对目标代码的动态描述,但是不能减少参数的数量且也不能缓解网络加深带来的梯度消失问题。
发明内容
本发明的目的在于克服现有技术的不足,提供一种面向语法树解码器的代码生成方法,方法直接将所有层连接起来,保留前向传播的特性,每个层从前面的所有层获得附加输入,并将其自身的特征映射传递到所有后续层。
本发明的目的是通过以下技术方案来实现的:
一种面向语法树解码器的代码生成方法,包括以下步骤:
步骤一:将数据通过编码器解析生成AST,在AST结构上应用滑动窗口提取出AST结构特征,并对AST进行深层次节点进行遍历,获得AST中子父节点及兄弟节点的顺序关系;
步骤二:在AST中加入多层连接,设计稠密网络块结构,利用稠密连接方法对深层卷积网络进行训练形成稠密的卷积神经网络;
步骤三:设计过渡层结构,将设计的过渡层加入稠密的卷积神经网络中并进行卷积和池化操作,对稠密的卷积神经网络进行优化,输出特征图,生成代码。
具体的,所述步骤一具体包括以下子步骤:
S101,利用编码器生成AST表示代码语法结构,并根据语法逻辑生成相应的节点层级关系;
S102,构建一个具有固定深度的局部特征检测器,在AST上应用滑动窗口提取结构特征;
S103,构建预遍历CNN模块,将预遍历CNN模块应用到要生成节点的根节点,对AST的深层次节点进行遍历,捕获不同AST中不同位置的信息,获得AST中子父节点及兄弟节点的顺序关系。
具体的,所述步骤二具体包括以下子步骤:
S201,构建具有L层卷积神经网络,每层网络均进行一个非线性变换
Figure BDA0002986668770000021
Figure BDA0002986668770000022
是层的编号;
S202,在L层卷积神经网络中任何层以直接连接的方式连接所有后续层,第
Figure BDA0002986668770000024
层接收所有前面的层X0,…,
Figure BDA0002986668770000023
特征图作为输入,利用稠密连接方法对深层卷积网络进行训练形成稠密的卷积神经网络。
具体的,所述步骤三具体包括以下子步骤:
S301,设计过渡层结构,过渡层结构由Batch Normalization层、1x1卷积层和2x2平均池化层组成;
S302,设稠密的卷积神经网络每个稠密块接收的特征图数量为m个,设置一个范围在(0,1]区间的压缩率Θ,将每个稠密块接收的特征图数量控制为Θ*m个;
S303,使用1x1卷积操作对特征图进行降采样,代替3x3卷积输入特征图的数量进行降维;
S304,利用2x2平均池化层在Feature Map上以窗口的形式进行滑动,取滑动窗口内的平均值作为结果进行降采样,对稠密的卷积神经网络进行优化,输出特征图,生成代码。
具体的,所述子步骤S102具体包括以下子步骤:
S1021,假设节点ni有一个父节点pi和一个祖先节点gi,向量表示为ni,pi,gi
S1022,基于AST的局部特征检测器利用特征提取公式分别提取结构特征
Figure BDA0002986668770000031
特征提取公式如下式所示:
Figure BDA0002986668770000032
其中,W(ast)为基于树卷积的核。
具体的,方法还包括特征共享机制的设计过程,具体包括:在Dense Block中,基于CNN核权重进行特征共享,采用复用前层网络特征作为输入,Dense Block中各个层的特征图在保证大小一致的条件下在通道维度上连接,所有Dense Block中各个层进行卷积之后均输出k个特征图。
本发明的有益效果:本发明确保了网络中各层之间的最大信息流,创建了从前面层到后续层的短路径,随着程序逻辑的复杂,语法树解码器的网络加深,梯度消失问题得到缓解,能捕获到更多的特征。同时本发明在语法树解码中缩短各个网络层的连接,增加各个网络层的连接,缓解了网络加深带来的梯度消失问题,增强特征传播,促进特征共享,有效的减少了参数的数量。
附图说明
图1是本发明的方法流程图。
图2是本发明的树卷积结构图。
图3是本发明的稠密网络结构图。
图4是本发明的过渡层结构图。
具体实施方式
为了对本发明的技术特征、目的和效果有更加清楚的理解,现对照附图说明本发明的具体实施方式。
本实施例中,如图1所示,一种面向语法树解码器的代码生成方法,包括以下步骤:
步骤一:将数据通过编码器解析生成AST,在AST结构上应用滑动窗口提取出AST结构特征,并对AST进行深层次节点进行遍历,获得AST中子父节点及兄弟节点的顺序关系;
步骤二:在AST中加入多层连接,设计稠密网络块结构,利用稠密连接方法对深层卷积网络进行训练形成稠密的卷积神经网络;
步骤三:设计过渡层结构,将设计的过渡层加入稠密的卷积神经网络中并进行卷积和池化操作,对稠密的卷积神经网络进行优化,输出特征图,生成代码。
本发明的实施例中,具体代码生成过程包括以下流程:
S1,树卷积与预遍历卷积。由于AST解码器将使用self-attention机制,因此需要表示使用语法规则的位置。首先采用等式Pb,i[2j+1]=sin((i+b)/(100002j/d))中的位置嵌入,表示何时在序列r1,...,rP中使用规则。位置嵌入用p1(r),...,pP(r)表示。但是,这种位置嵌入不能捕获AST中规则的位置。因此通过深度嵌入进一步对此类信息进行编码。如果通过规则r扩展符号α:α→β1···βK,将通过其父节点即α表示规则的深度。通过这种方式,将查找表深度嵌入的另一序列d1,...,dP与使用的语法规则r1,...,rP的序列相关联。经过编码器生成了抽象语法树(AST)表示代码语法结构,根据逻辑生成相应的节点层级关系。随着逻辑的复杂,节点层级关系随之增加,在解码器参与的解码过程中变得异常难以实现与训练,例如“灾难性遗忘”问题。本次解码器中加入基于树的卷积思想(Tree-CNN),借鉴了层分类器。树卷积神经网络由节点构成,和数据结构中的树一样,每个节点都有自己的ID、父亲(Parent)及孩子(Children),网络(Net,卷积神经网络),LT(Label Transform,每个节点所对应的标签,对于根节点和枝节点来说,可以是对最终分类类别的一种划分,对于叶节点来说,就是最终的分类类别),其中最顶部为树的根节点。结构见图2,具体的设计一个固定深度的局部特征检测器,在树上滑动提取结构特征。假设节点ni有一个父节点pi和一个祖先节点gi,向量表示为ni,pi,gi。基于树的CNN提取特征
Figure BDA0002986668770000051
的计算:
Figure BDA0002986668770000052
W(ast)为基于树卷积的核,并为顶层两层没有父级或祖先级的填充特殊token,基于语法的生成通过应用特定规则一次性获取所有同级。根据节点得到概率值分布,分为三种情况:
(1)当输出概率中最大概率大于设置的阈值,那就说明该类别和该位置对应的子节点有很大的关系,因此将该类别加到该子节点上。
(2)若输出概率中有多个概率值大于设置的阈值,就联合多个子节点来共同组成新的子节点。
(3)如果所有的输出概率值都小于阈值,那么就为新类别增加新的子节点,这个节点是一个叶节点。
然后设计另一个CNN模块-预遍历卷积,用于对深层次节点进行遍历抽象树(AST),为增强“自回归”,将预遍历CNN模块应用到要生成节点的祖先,因此网络知道在哪里生成到某个步骤。将两类的卷积思想结合来捕获不同的信息,树卷积思想实现相邻节点信息融合,而预遍历卷积思想实现抽象树(AST)子父节点及兄弟节点的顺序关系对应。
S2,稠密块结构设计。单纯依赖基于树的卷积拥有更深的窗口,不考虑同级信息,但随着深度的增长,卷积计算变得难以处理。考虑将树卷积与预遍历卷积加入多层连接,利用稠密连接思想优化深层卷积网络难以训练问题。具体通过一个卷积神经网络,这个网络有L层,每层实现一个非线性变换
Figure BDA0002986668770000053
是层的编号,
Figure BDA0002986668770000054
可以是批量归一化的复合函数(例如Batch Normalization),Rectified线性单元(ReLU),池化或者卷积,
Figure BDA0002986668770000055
作为
Figure BDA0002986668770000056
层的输出。为了进一步改善层之间的信息流,引入从任何层到所有后续层的直接连接,第
Figure BDA0002986668770000057
层接收所有前面的层X0,…,
Figure BDA0002986668770000058
特征图作为输入:
Figure BDA0002986668770000059
其中
Figure BDA0002986668770000061
是指在层0,...,
Figure BDA0002986668770000062
中产生的特征图的拼接。图3所示即为一个稠密网络块结构,图中一共可以看到5层网络,其中最左上方是输入层(Input Layer),剩下4层是隐藏层(Hidden Layer)。输入层会输出数据,隐藏层会输出特征图(FeatureMap)。对于每个隐层来说,之前的所有层的输出会作为本层输入的一部分。从图3可以看到,每个隐藏层都会产生4个特征图,稠密网络把每个隐藏层都称为一个稠密块(DenseBlock),而隐藏层产生的特征图的数量被定义为生长率(Growth Rate),用小写字母k表示,每个隐层产生4个特征图就是k=4。从上面我们知道,稠密网络的每一层需要处理的输入数据非常多,不仅有来自于输入层的数据,还有之前的每个隐层的特征图。例如对于图1中的最右下角的隐层,它不仅要接收输入层数据,还要接收前面3个隐层产生的一共12个特征图。这样将树卷积与预遍历卷积当作子操作嵌入到稠密块中,从而运用稠密连接思想训练。但这存在两个问题,第一是特征图的数量太多,第二是每个特征图的大小也不一致。
S3,过渡层结构设计。接下来针对Dense Block中两个问题进行优化。在同一个Dense Block中要求Feature Size保持相同大小,引用串联操作,如图4所示,Dense Block之间加入过渡层,并对它们做卷积和池化,具体由Batch Normalization层和1x1卷积层,2x2平均层组成。首先,对于特征图的数量问题,我们可以设置一个在(0,1]区间的压缩率Θ,原来每个稠密块(Dense Block)有m个特征图,现在只接收其中Θ*m个特征图。其次,对于特征图的大小问题,使用1x1卷积操作对特征图进行降采样(Down Sampling),代替3x3卷积输入特征图的数量从而得到了减少,达到降维的目的;除此之外,2x2平均池化层在Feature Map上以窗口的形式进行滑动,操作为取窗口内的平均值作为结果,经过操作后,Feature Map同样达到降采样目的。而池化层所串联的网络结构参数示意如下列部分代码所示。
[dense block]
batch_normalize=1 filters=32 size=1 stride=1 pad=1
activation=leaky
[convolutional]
batch_normalize=1 size=7 stride=2 pad=1 activation=relu
[pooling]
size=3 stride=2
[dense block]
batch_normalize=1 filters=32 size=1 stride=1 pad=1 activation=leaky
S4,特征共享机制设计。在Dense Block中,基于CNN核权重进行特征共享。与传统CNN区别为Dense Block采用复用前层网络特征作为输入;降低特征数量;及压缩特征的方式高效率的特征共享机制。Dense Block各个层的特征图大小一致,在通道维度上连接,其中非线性组合函数H(.)采用的是BN+ReLU+3x3Conv的结构,所有Dense Block中各个层卷积之后均输出k个特征图,即得到的特征图的通道数为k,或者说采用k个卷积核。k是一个超参数。一般情况下使用较小的k,就可以得到较佳的性能。假定输入层的特征图的通道数为k0,那么l层输入的通道数为k0+k(l,1),因此随着层数增加,尽管k设定得较小,DenseBlock的输入会非常多,不过这是由于特征共享所造成的,每个层仅有k个特征是自己独有的。由于后面层的输入会非常大,Dense Block内部可以采用bottleneck层来减少计算量,主要是原有的结构中增加1x1Conv,即BN+ReLU+1x1Conv+BN+ReLU+3x3Conv,其中1x1Conv得到4k个特征图它起到的作用是降低特征数量,从而提升计算效率。对于Transition层,它主要是连接两个相邻的DenseBlock,并且降低特征图大小。Transition层包括一个1x1的卷积和2x2的AvgPooling,结构为BN+ReLU+1x1 Conv+2x2 AvgPooling。Transition层可以起到压缩模型的作用,假定Transition的上接DenseBlock得到的特征图通道数为m,Transition层可以产生(θm)个特征,其中θ是压缩系数(compression rate)。当θ=1时,特征个数经过Transition层没有变化,即无压缩,而当θ<1时,将特征按比例压缩,从而达到特征压缩的效果。
以上显示和描述了本发明的基本原理、主要特征和本发明的优点。本行业的技术人员应该了解,本发明不受上述实施例的限制,上述实施例和说明书中描述的只是说明本发明的原理,在不脱离本发明精神和范围的前提下,本发明还会有各种变化和改进,这些变化和改进都落入要求保护的本发明范围内。本发明要求保护的范围由所附的权利要求书及其等效物界定。

Claims (2)

1.一种面向语法树解码器的代码生成方法,其特征在于,包括以下步骤:
步骤一:将数据通过编码器解析生成AST,在AST结构上应用滑动窗口提取出AST结构特征,并对AST进行深层次节点进行遍历,获得AST中子父节点及兄弟节点的顺序关系;
所述步骤一具体包括以下子步骤:
S101,利用编码器生成AST表示代码语法结构,并根据语法逻辑生成相应的节点层级关系;
S102,构建一个具有固定深度的局部特征检测器,在AST上应用滑动窗口提取结构特征;
S103,构建预遍历CNN模块,将预遍历CNN模块应用到要生成节点的根节点,对AST的深层次节点进行遍历,捕获不同AST中不同位置的信息,获得AST中子父节点及兄弟节点的顺序关系;
所述子步骤S102具体包括以下子步骤:
S1021,假设节点ni有一个父节点pi和一个祖先节点gi,向量表示为ni,pi,gi
S1022,基于AST的局部特征检测器利用特征提取公式分别提取结构特征
Figure FDA0003627939960000011
特征提取公式如下式所示:
Figure FDA0003627939960000012
其中,W(ast)为基于树卷积的核;
步骤二:在AST中加入多层连接,设计稠密网络块结构,利用稠密连接方法对深层卷积网络进行训练形成稠密的卷积神经网络;
所述步骤二具体包括以下子步骤:
S201,构建具有L层卷积神经网络,每层网络均进行一个非线性变换Hl(·),l是层的编号;
S202,在L层卷积神经网络中任何层以直接连接的方式连接所有后续层,第l层接收所有前面的层X0,…,Xl-1特征图作为输入,利用稠密连接方法对深层卷积网络进行训练形成稠密的卷积神经网络;
步骤三:设计过渡层结构,将设计的过渡层加入稠密的卷积神经网络中并进行卷积和池化操作,对稠密的卷积神经网络进行优化,输出特征图,生成代码;
所述步骤三具体包括以下子步骤:
S301,设计过渡层结构,过渡层结构由Batch Normalization层、1x1卷积层和2x2平均池化层组成;
S302,设稠密的卷积神经网络每个稠密块接收的特征图数量为m个,设置一个范围在(0,1]区间的压缩率Θ,将每个稠密块接收的特征图数量控制为Θ*m个;
S303,使用1x1卷积操作对特征图进行降采样,代替3x3卷积输入特征图的数量进行降维;
S304,利用2x2平均池化层在Feature Map上以窗口的形式进行滑动,取滑动窗口内的平均值作为结果进行降采样,对稠密的卷积神经网络进行优化,输出特征图,生成代码。
2.根据权利要求1所述的一种面向语法树解码器的代码生成方法,其特征在于,方法还包括特征共享机制的设计过程,具体包括:在Dense Block中,基于CNN核权重进行特征共享,采用复用前层网络特征作为输入,Dense Block中各个层的特征图在保证大小一致的条件下在通道维度上连接,所有Dense Block中各个层进行卷积之后均输出k个特征图。
CN202110305383.3A 2021-03-22 2021-03-22 一种面向语法树解码器的代码生成方法 Active CN113157255B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202110305383.3A CN113157255B (zh) 2021-03-22 2021-03-22 一种面向语法树解码器的代码生成方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202110305383.3A CN113157255B (zh) 2021-03-22 2021-03-22 一种面向语法树解码器的代码生成方法

Publications (2)

Publication Number Publication Date
CN113157255A CN113157255A (zh) 2021-07-23
CN113157255B true CN113157255B (zh) 2022-07-05

Family

ID=76887955

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202110305383.3A Active CN113157255B (zh) 2021-03-22 2021-03-22 一种面向语法树解码器的代码生成方法

Country Status (1)

Country Link
CN (1) CN113157255B (zh)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN115221061B (zh) * 2022-07-22 2024-03-22 中国电信股份有限公司 测试代码生成方法、装置、存储介质及电子设备

Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN109241322A (zh) * 2018-08-28 2019-01-18 北京地平线机器人技术研发有限公司 代码生成方法、代码生成装置和电子设备
CN109408778A (zh) * 2018-10-19 2019-03-01 成都信息工程大学 一种基于可视化配置的文档生成控制系统及方法
CN110018820A (zh) * 2019-04-08 2019-07-16 浙江大学滨海产业技术研究院 一种基于深度强化学习的Graph2Seq自动生成Java代码注释的方法
CN110673840A (zh) * 2019-09-23 2020-01-10 山东师范大学 一种基于标签图嵌入技术的自动代码生成方法及系统
CN111443904A (zh) * 2020-03-12 2020-07-24 清华大学深圳国际研究生院 一种生成可执行代码的方法及计算机可读存储介质
CN111625224A (zh) * 2020-05-28 2020-09-04 北京百度网讯科技有限公司 代码生成方法、装置、设备及存储介质

Family Cites Families (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10157045B2 (en) * 2016-11-17 2018-12-18 The Mathworks, Inc. Systems and methods for automatically generating code for deep learning systems

Patent Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN109241322A (zh) * 2018-08-28 2019-01-18 北京地平线机器人技术研发有限公司 代码生成方法、代码生成装置和电子设备
CN109408778A (zh) * 2018-10-19 2019-03-01 成都信息工程大学 一种基于可视化配置的文档生成控制系统及方法
CN110018820A (zh) * 2019-04-08 2019-07-16 浙江大学滨海产业技术研究院 一种基于深度强化学习的Graph2Seq自动生成Java代码注释的方法
CN110673840A (zh) * 2019-09-23 2020-01-10 山东师范大学 一种基于标签图嵌入技术的自动代码生成方法及系统
CN111443904A (zh) * 2020-03-12 2020-07-24 清华大学深圳国际研究生院 一种生成可执行代码的方法及计算机可读存储介质
CN111625224A (zh) * 2020-05-28 2020-09-04 北京百度网讯科技有限公司 代码生成方法、装置、设备及存储介质

Non-Patent Citations (2)

* Cited by examiner, † Cited by third party
Title
Automatic code generation of convolutional neural networks in FPGA implementation;Zhiqiang Liu等;《2016 International Conference on Field-Programmable Technology (FPT)》;20170518;第61 - 68页 *
基于FPGA的CNN自动代码生成设计与实现;王江峰;《cnki优秀硕士学位论文全文库 信息科技辑》;20181215;第I140-119页 *

Also Published As

Publication number Publication date
CN113157255A (zh) 2021-07-23

Similar Documents

Publication Publication Date Title
CN112487807B (zh) 一种基于膨胀门卷积神经网络的文本关系抽取方法
CN111625276B (zh) 基于语义与语法信息融合的代码摘要生成方法及系统
CN110033008A (zh) 一种基于模态变换与文本归纳的图像描述生成方法
CN109361404A (zh) 一种基于半监督深度学习网络的ldpc译码系统及译码方法
Eldar et al. Challenges and open problems in signal processing: Panel discussion summary from ICASSP 2017 [panel and forum]
Zhou A review of text classification based on deep learning
CN112597778B (zh) 一种翻译模型的训练方法、翻译方法以及设备
CN112991472A (zh) 一种基于残差稠密阈值网络的图像压缩感知重建方法
CN113157255B (zh) 一种面向语法树解码器的代码生成方法
CN116579618B (zh) 基于风险管理的数据处理方法、装置、设备及存储介质
CN116361256B (zh) 基于日志解析的数据同步方法及系统
CN115510236A (zh) 基于信息融合和数据增强的篇章级事件检测方法
CN107395214A (zh) 一种基于闪存页错误特性降低ldpc译码延迟的方法
CN114742985A (zh) 一种高光谱特征提取方法、装置及存储介质
CN114565789B (zh) 一种基于集合预测的文本检测方法、系统、装置及介质
CN108804933A (zh) 一种用于大数据的进制转换方法
Wu et al. Application of quantisation‐based deep‐learning model compression in JPEG image steganalysis
CN115688234A (zh) 一种基于条件卷积的建筑布局生成方法、装置及介质
CN116108127A (zh) 一种基于异构图交互和掩码多头注意力机制的文档级事件抽取方法
CN116152263A (zh) 一种基于cm-mlp网络的医学图像分割方法
CN112069777B (zh) 一种基于骨架的二阶段数据到文本生成方法
CN115147931A (zh) 基于detr的人物成对解码交互的人与物交互检测方法
CN114596464A (zh) 多特征交互的无监督目标检测方法、系统、电子设备和可读存储介质
CN114360729A (zh) 一种基于深度神经网络的医疗文本信息自动化抽取方法
CN112953565A (zh) 一种基于卷积神经网络的归零卷积码译码方法和系统

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant