CN110326002A - 使用在线注意的序列处理 - Google Patents
使用在线注意的序列处理 Download PDFInfo
- Publication number
- CN110326002A CN110326002A CN201880013742.4A CN201880013742A CN110326002A CN 110326002 A CN110326002 A CN 110326002A CN 201880013742 A CN201880013742 A CN 201880013742A CN 110326002 A CN110326002 A CN 110326002A
- Authority
- CN
- China
- Prior art keywords
- output
- coded representation
- time step
- sequence
- context vector
- 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.)
- Granted
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/04—Architecture, e.g. interconnection topology
- G06N3/044—Recurrent networks, e.g. Hopfield networks
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/08—Learning methods
- G06N3/084—Backpropagation, e.g. using gradient descent
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F17/00—Digital computing or data processing equipment or methods, specially adapted for specific functions
- G06F17/10—Complex mathematical operations
- G06F17/16—Matrix or vector computation, e.g. matrix-matrix or matrix-vector multiplication, matrix factorization
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/04—Architecture, e.g. interconnection topology
- G06N3/045—Combinations of networks
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/04—Architecture, e.g. interconnection topology
- G06N3/048—Activation functions
Landscapes
- Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- Theoretical Computer Science (AREA)
- Mathematical Physics (AREA)
- General Physics & Mathematics (AREA)
- Data Mining & Analysis (AREA)
- Computing Systems (AREA)
- Software Systems (AREA)
- General Engineering & Computer Science (AREA)
- Biophysics (AREA)
- Life Sciences & Earth Sciences (AREA)
- Molecular Biology (AREA)
- Evolutionary Computation (AREA)
- Computational Linguistics (AREA)
- Biomedical Technology (AREA)
- Artificial Intelligence (AREA)
- General Health & Medical Sciences (AREA)
- Health & Medical Sciences (AREA)
- Computational Mathematics (AREA)
- Mathematical Analysis (AREA)
- Mathematical Optimization (AREA)
- Pure & Applied Mathematics (AREA)
- Algebra (AREA)
- Databases & Information Systems (AREA)
- Machine Translation (AREA)
Abstract
方法、系统和装置,包括在计算机存储介质上编码的计算机程序,用于从输入序列中的输入的相应编码表示生成包括在多个输出时间步长中的每一个的相应输出的目标序列。该方法包括:对于每个输出时间步长,按照输入顺序从在先前输出时间步长被选择作为先前上下文向量的编码表示的位置开始,遍历编码表示,直到编码表示被选择为输出时间步的当前上下文向量。解码器神经网络在先前输出时间步长处理当前上下文向量和先前输出,以生成每个可能输出的相应输出分数并且更新解码器循环神经网络的隐藏状态。使用输出分数为输出时间步长选择输出。
Description
技术领域
本说明书涉及使用神经网络生成输入序列的表示。
背景技术
许多数据处理任务涉及将有序的输入序列转换为有序的输出序列。例如,机器翻译系统将一种语言的输入词语序列翻译成另一种语言的词语序列。作为另一示例,发音系统将输入的字素序列转换成目标的音素序列。
一些系统使用一个或多个神经网络来执行序列处理任务。
神经网络是采用一个或多个非线性单元层来预测针对接收到的输入的输出的机器学习模型。除了输出层之外,一些神经网络还包括一个或多个隐藏层。每个隐藏层的输出用作网络中下一层(即,下一个隐藏层或输出层)的输入。网络的每个层根据相应参数集的当前值从接收到的输入生成输出。
一些神经网络是递归神经网络。递归神经网络是接收输入序列并且从输入序列生成输出序列的神经网络。具体地,递归神经网络可以在计算当前时间步长的输出中使用来自先前时间步长的网络的内部状态中的一些或全部。递归神经网络的示例是长短期(LSTM)神经网络,其包括一个或多个LSTM存储器块。每个LSTM存储器块可以包括一个或多个单元(cell),每个单元包括输入门、遗忘门和输出门,其允许单元存储单元的先前状态,例如,以用于生成当前激活或被提供到LSTM神经网络的其他组件。
发明内容
本说明书描述了被实施为在执行序列处理的一个或多个位置中的一个或多个计算机上的计算机程序的系统。
根据第一方面,提供一种从根据输入顺序排列的输入序列中的输入的相应编码表示中生成包括根据输出顺序排列的多个输出时间步长中的每个处的相应输出的目标序列的方法,该方法包括:对于按照输出顺序在第一输出时间步长之后的每个输出时间步长:按照输入顺序从在先前输出时间步长被选择作为先前上下文向量的编码表示的位置开始,根据输入顺序遍历编码表示,直到编码表示被选择作为输出时间步长的当前上下文向量,包括,对于遍历的每个编码表示:从编码表示确定编码表示的选择概率,并且确定先前输出时间步长的解码器递归神经网络的隐藏状态,以及根据选择概率确定是否选择编码表示作为当前上下文向量;使用解码器递归神经网络处理当前上下文向量和先前输出时间步长处的先前输出,以为可能输出的词汇表中的每个可能输出生成相应的输出分数并且更新解码器递归神经网络的隐藏状态;以及使用输出分数选择输出时间步长处的输出。
在一些实施方式中,该方法还包括:对于第一输出时间步长:按照输入顺序从第一位置开始,按照输入顺序遍历编码表示,直到编码表示被选择作为第一输出时间步长处的当前上下文向量,包括,对于每个编码表示:从编码表示确定编码表示的选择概率,并且确定解码器递归神经网络的初始隐藏状态,以及根据选择概率确定是否选择编码表示作为当前上下文向量;使用解码器递归神经网络处理当前上下文向量和占位符输出,以为可能输出的词汇表中的每个可能输出生成相应的输出分数并且更新初始隐藏状态;以及使用输出分数选择第一输出时间步长处的输出。
在一些实施方式中,该方法还包括:响应于确定不从在先前输出时间步长处被选择作为先前上下文向量的编码表示的输入顺序中的位置开始的位置选择任何编码表示:使用预定上下文向量作为时间步长的当前上下文向量。
在一些实施方式中,从编码表示确定编码表示的选择概率,并且确定先前时间步长的解码器递归神经网络的隐藏状态包括:通过使用能量函数处理编码表示和先前时间步长的解码器递归神经网络的隐藏状态来确定编码表示的能量值;以及将sigmoid函数应用于能量值以确定选择概率。
在一些实施方式中,采用噪声增强sigmoid函数。
在一些实施方式中,能量值满足:
其中,h是编码表示,s是隐藏状态,并且其中,W和U是权重矩阵,v是权重向量,b是偏置向量,以及g和r是在关于训练数据来训练解码器递归神经网络期间已经学习的标量参数。
在一些实施方式中,在编码器递归神经网络开始生成编码表示之后但是在编码器递归神经网络已经按照输入顺序完成生成最后编码表示之前,开始遍历。
在一些实施方式中,使用输出分数选择第一输出时间步长处的输出包括:根据输出分数选择最高分数的输出。
在一些实施方式中,使用输出分数选择第一输出时间步长处的输出包括:根据输出分数从可能输出中采样。
在一些实施方式中,解码器递归神经网络已经使用编码表示和输出之间的软强制单调性(softly enforced monotonicity)进行训练。
在一些实施方式中,输入序列是原始语言中的词语序列,而输出序列是表示原始语言中的词语序列的输出语言中的词语序列。
在一些实施方式中,输入序列是表示说出的话语的音频数据序列,而输出序列是说出的话语的转录。
根据第二方面,提供一种系统,包括一个或多个计算机和存储可操作的指令的一个或多个存储设备,该指令在由一个或多个计算机执行时,使得一个或多个计算机执行前述方法的任何实施方式的操作。
根据第三方面,提供一种编码有指令的计算机存储介质,该指令在由一个或多个计算机执行时,使得一个或多个计算机执行前述方法的任何实施方式的操作。
可以实施本说明书中描述的主题的特定实施例,以便实现以下优点中的一个或多个。
通过使用描述的注意(attention)机制,本说明书中描述的序列处理系统的解码器以给出的计算复杂度操作,其中是大O表示法,T是输入序列长度,以及U是输出序列长度。大O表示法指示处理的计算复杂性的度量(例如,完成处理所需的算术运算的数量),并且因此是完成处理所需的计算资源(例如,计算能力)的度量。相反,传统序列处理系统的解码器(使用传统的注意机制)以给出的计算复杂度操作。因此,通过使用所描述的注意机制,与使用传统注意机制的传统序列处理系统所使用的相比,本说明书中描述的序列处理系统在处理输入序列以生成与相对应的输出序列的同时消耗较少的计算资源(例如,通过执行较少的算术运算)。此外,在许多情况下,尽管消耗较少的计算资源,但是本说明书中描述的序列处理系统具有与传统序列处理系统类似的精度。序列处理系统的准确性是指序列处理系统响应于处理输入而生成的输出与对应于输入的目标(即,优选的)输出之间的相似性。
本说明书中描述的序列处理系统可以在接收到整个输入序列之前开始生成输出序列的输出。具体地,通过使用所描述的注意机制,本说明书中描述的序列处理系统的解码器可以在输入序列的所有的输入编码表示都可用之前开始生成输出序列的输出。相反,传统序列处理系统(使用传统注意机制)不能开始生成输出序列的输出,直到已经接收到整个输入序列。因此,与传统序列处理系统不同,本说明书中描述的序列处理系统可以在线执行序列处理,这在诸如语音识别和机器翻译的应用中是期望的。
在附图和以下描述中阐述了本说明书的主题的一个或多个实施例的细节。根据说明书、附图和权利要求,本主题的其他特征、方面和优点将变得明显。
附图说明
图1A示出示例序列处理系统。
图1B是以下操作的图示:(i)传统的基于softmax的注意解码器,以及(ii)如本说明书中描述的训练的解码器。
图2是使用序列处理系统生成输出序列的示例处理的流程图。
图3是用于在训练序列处理系统之后为输出时间步长生成上下文向量的示例处理的流程图。
图4是用于在训练序列处理系统时为输出时间步长生成上下文向量的示例处理的流程图。
各个附图中相同的附图标记和名称表示相同的元件。
具体实施方式
图1A示出示例性序列处理系统100。序列处理系统100是实施为在一个或多个位置中的一个或多个计算机上的计算机程序的系统的示例,其中,实施下面描述的系统、组件和技术。
系统100处理输入序列102以生成针对输入序列102的输出序列118。输入序列102包括在多个输入时间步长中的每个处的相应输入,并且输出序列118包括在多个输出时间步长中的每个处的相应输出。
例如,系统100可以是神经机器翻译系统。也就是说,如果输入序列102是原始语言(例如,句子或短语)中的词语序列,则输出序列118可以是输入序列102到输出语言的翻译,即,表示原始语言中的词语序列的输出语言的词语序列。
作为另一示例,系统100可以是语音识别系统。也就是说,如果输入序列102是表示说出的话语的音频数据序列,则输出序列118可以是表示话语的字素、字符或词语的序列,即,是输入序列102的转录。
作为另一示例,系统100可以是自然语言处理系统。例如,如果输入序列102是原始语言(例如,句子或短语)中的词语序列,则输出序列118可以是原始语言的输入序列102的摘要,即,具有比输入序列102少的词语但是保留输入序列102的基本含义的序列。作为另一示例,如果输入序列102是形成问题的词语序列,则输出序列118可以是形成回答问题的词语序列。
作为另一示例,系统100可以是计算机辅助医疗诊断系统的一部分。例如,输入序列102可以是来自电子病历的数据序列,而输出序列118可以是预测治疗的序列。
输入序列102的每个输入时间步长的每个相应输入是表示输入词汇的元素的数值有序集合(例如,向量或矩阵)。例如,输入词汇表可以包括字素、字符、词块、词语或音频数据片段。在某些情况下,每个输入是来自输入词汇表的输入的预定表示。例如,每个输入可以是来自输入词汇表的输入的独热(one-hot)向量表示(即,对于输入词汇表的每个输入具有不同条目的向量,其中,对应于所表示的输入的条目是一而其余的条目是零)。在一些情况下,输入词汇表的输入的表示由输入嵌入引擎根据输入嵌入引擎参数生成,该输入嵌入引擎参数与系统100的其他可学习参数共同训练(如以下将描述地)。
系统100包括编码器104,编码器104被配置为根据一组编码器参数的值处理输入序列102,以生成编码表示序列106作为输出。编码表示序列106的每个编码表示是表示输入序列102的相应输入中的一个或多个的数值有序集合(例如,向量或矩阵)。
在一些实施方式中,编码器104是递归神经网络(例如,长短期存储器网络),其被配置为在多个输入时间步长上顺序地处理输入序列的相应输入,并且对于每个输入时间步长,更新递归神经网络的内部状态,并且针对输入时间步长生成输入的编码表示作为输出。在一些实施方式中,编码器104是卷积神经网络,其被配置为联合地处理输入序列的相应输入以生成输入序列的输入的编码表示作为输出。
在一些实施方式中,编码器104生成固定数量的编码表示(即,独立于输入序列102的相应输入的数量)。在一些实施方式中,编码器104生成可变数量的编码表示。例如,编码器104可以生成其数量等于输入序列102的相应输入的数量的编码表示,并且每个编码表示可以表示输入序列102的不同输入。
系统100包括上下文向量选择引擎108,其被配置为在每个输出时间步长处确定输出时间步长的上下文向量110。每个上下文向量110是数值有序集合(例如,向量或矩阵)。
在系统100被训练之后,在每个输出时间步长处,上下文向量选择引擎108选择编码表示序列106的特定编码表示作为该时间步长的上下文向量110。由上下文向量选择引擎108选择的作为每个输出时间步长处的上下文向量的编码表示满足单调性约束。具体地,上下文向量选择引擎108选择上下文向量110,使得对于每个输出时间步长,由上下文向量选择引擎108选择的作为输出时间步长的上下文向量110的编码表示(即,在编码表示序列106中)的位置是:(i)与被选择作为先前输出时间步长的上下文向量110的编码表示的位置相同,或者(ii)在被选择作为先前输出时间步长的上下文向量110的编码表示的位置之后。参考图3描述在训练序列处理系统之后为输出时间步长生成上下文向量的示例处理。
系统100包括解码器112,其是递归神经网络(例如,长短期存储器网络),被配置为处理(i)输出时间步长的上下文向量110和(ii)由系统100为先前输出时间步长生成的输出,以生成输出分数114并且更新解码器112的隐藏状态。输出分数114是数值有序集合(例如,向量),包括输出词汇表的每个输出的相应分数。例如,输出词汇表可以包括字素、字符、词块或词语。
在Kyunghyun Cho,et al.,“Learning phrase representations using RNNencoder-decoder for statistical machine translation,”Conference on EmpiricalMethods in Natural Language Processing(EMNLP),2014中描述了编码器和解码器的示例。
系统100基于输出时间步长的输出分数114为输出时间步长选择输出116(即,输出词汇表的元素)。在一些实施方式中,系统100选择具有最高输出分数的输出时间步长的输出。在一些实施方式中,系统100使用输出分数确定输出词汇表上的概率分布(例如,通过使用softmax函数处理输出分数),并且通过从确定的概率分布采样来选择输出时间步长的输出。
响应于选择输出时间步长的序列结束符号(即,输出词汇表中被理解为指示符号是序列的最后符号的符号),系统100将针为输出时间步长确定的输出116的有序级联确定为输出序列116。
系统100包括训练引擎120。训练引擎120被配置为基于训练数据122来训练系统100。训练数据122包括多个训练示例。每个训练示例包括输入序列102和相对应的目标序列。对应于输入序列102的目标序列指示应当由系统100通过处理相对应的输入序列102而生成的输出序列118。
训练引擎120通过向系统100提供训练数据122的训练示例的输入序列来训练系统100,以生成相对应的输出序列。训练引擎反向传播损失函数的梯度以调整系统100的参数值(例如,编码器104、解码器112和上下文向量选择引擎108的参数)。通常,训练引擎120调整系统100的参数值以使系统100生成相对应的输入序列的输出序列,该输出序列更类似于对应于输入序列的目标序列(由训练数据122指定)。例如,损失函数可以是由系统100为每个输出时间步长生成的输出分数与由训练数据122指定的目标序列(例如,表示为独热向量)的相应输出之间的交叉熵损失的总和。训练引擎120可以使用任何适当的训练技术(诸如随机梯度下降)来训练系统100。
在训练系统100之后上下文向量选择引擎108确定上下文向量110的处理(如上所述)不可微分(因为它是离散选择处理)。在系统100正在被训练时,上下文向量选择引擎108根据不同的可微分(differentiable)处理确定上下文向量110,以允许训练引擎120计算和反向传播梯度。
具体地,当系统100正在被训练时,在每个输出时间步长,上下文向量选择引擎108将输出时间步长的上下文向量110确定为根据在训练系统100之后由上下文向量选择引擎108使用的离散上下文向量处理所选择的上下文向量的期望值。在每个输出时间步长,上下文向量选择引擎108确定编码表示序列106的每个编码表示的权重因子,并且将输出时间步长的上下文矢量110确定为根据相对应的权重因子加权的编码表示的线性组合。参考图4描述用于在序列处理系统被训练时生成输出时间步长的上下文向量的示例处理。
图1B是以下操作的图示:(i)传统的基于softmax的注意解码器,以及(ii)如本说明书中描述的训练解码器(例如,解码器112)。
在124中描绘了传统的基于softmax的注意解码器的操作的图示。对于每个输出(在垂直轴上),传统的解码器检查每个编码表示(在水平轴上)。每个灰色节点对应于由传统解码器检查的编码表示,同时生成相对应的输出。每个黑色节点对应于传统编码器在确定上下文向量以生成相对应的输出时识别为最相关(例如,最重的权重)的编码表示。对于每个输出,传统解码器检查每个编码表示。输出时间步长与传统编码器在确定上下文向量以生成相对应的输出时将哪个编码表示识别为最相关之间没有依赖性。
在126中描述了本说明书中描述的训练的解码器(例如,解码器112)的操作的图示。对于每个输出(在垂直轴上),解码器从离开先前输出时间步长的位置开始从左到右检查编码表示(在水平轴上,以灰色描绘),并且选择单个(用黑色指示)来确定上下文向量以生成相对应的输出。白色节点指示在确定上下文向量以生成相对应的输出的时,解码器不检查相对应的编码表示,因为它违反单调性(如前所述)。箭头指示处理顺序以及编码表示与输出之间的依赖关系。由于单调性约束,对于每个输出,本说明书中描述的训练的解码器检查的少得多的编码表示,因此以低得多的计算复杂度操作。
在本说明书中针对特定输入和输出序列描述的训练的解码器的操作的示例在128的顶部面板中描绘。在该示例中,序列处理系统被配置为对任何输入序列生成总结输入序列的输出序列。在这种情况下,输入序列(在横轴上)是:“China attacked the UnitedStates for its criticism of human rights abuses abroad Wednesday and in turnhighlighted high U.S.rates of child murder and child suicide”。由本说明书中描述的解码器生成的相对应的输出序列(在128的顶部面板的垂直轴上)是“China attacksU.S.over human rights criticism”。黑色矩形指示解码器使用输入序列的相对应的单词的编码表示来确定生成相对应的输出的上下文向量(并且白色方块指示其他)。
在128的底部面板中描绘了用于相同输入序列(如前所述)的传统解码器的操作的示例。在该示例中,由传统解码器生成的相对应的输出序列(在128的底部面板的垂直轴上)是“China attacks U.S.over human rights abuses”。每个矩形的阴影指示由解码器分配给输入序列的相对应的单词的编码表示的权重因子,以确定生成相对应的输出的上下文向量(其中阴影黑色表示1而阴影白色表示0)。
图2是使用序列处理系统生成输出序列的示例处理的流程图。为方便起见,处理200将被描述为由位于一个或多个位置的一个或多个计算机的系统执行。例如,根据本说明书适当编程的序列处理系统(例如,图1的序列处理系统100)可以执行处理200。
处理200是用于通过在多个输出时间步长中的每个处生成相应输出来生成输出序列的示例处理。处理200可以自然地推广到波束搜索解码的设置,其中,系统维护候选输出序列集合,其在每个时间步长处基于为该时间步长生成的输出分数而更新,并且最终选择具有最高分数的特定候选输出序列(例如,根据每个输出时间步长的输出分数的乘积或输出时间步长的输出分数的对数乘积)。
系统使用编码器根据编码器参数集合的值处理输入序列,以生成编码表示序列作为输出(202)。
输入序列包括在多个输入时间步长中的每个处的相应输入。输入序列的每个输入时间步长的每个相应输入是数值有序集合(例如,向量或矩阵)。每个相应输入是来自输入词汇表的输入的表示,其中,输入词汇表可以包括字素、字符、词块、词语或音频数据。在一些情况下,每个输入是来自输入词汇表的输入的预定表示。例如,每个输入可以是来自输入词汇表的输入的独热向量表示。在一些情况下,输入词汇表的输入的表示是由输入嵌入引擎根据输入嵌入引擎参数生成,该输入嵌入引擎参数与系统的其他可学习参数共同训练。
每个编码表示是数值有序集合(例如,向量或矩阵),其表示输入序列的相应输入中的一个或多个。在一些实施方式中,编码器生成固定数量的编码表示(即,独立于输入序列的相应输入的数量)。在一些实施方式中,编码器生成可变数量的编码表示。
在一些实施方式中,编码器是递归神经网络(例如,长短期存储器网络)。在一些实施方式中,编码器是卷积神经网络。
通常,系统可以进行到处理200中的接下来的步骤(即,204,208,210和212),并且在系统完成生成编码序列表示中的每个编码表示之前开始生成输出时间步长的输出。
系统使用上下文向量选择引擎选择输出时间步长的上下文向量(204)。输出时间步长的上下文向量是数值有序集合(例如,向量或矩阵)。根据系统是否正在训练,上下文向量选择引擎以两种不同操作模式之一操作。参考图3描述在训练系统之后应用的第一操作模式。参考图4描述在训练系统100时应用的第二操作模式。
系统使用解码器(其是递归神经网络,例如,长短期存储器网络)来处理(i)输出时间步长的上下文向量和(ii)系统在先前输出时间步长生成的输出,以生成输出分数并且更新解码器的隐藏状态(208)。如果当前输出时间步长是第一输出时间步长,则代替处理由系统在先前输出时间步长处生成的输出,解码器处理预定占位符输出(例如,序列开始符号)。由系统在先前输出时间步长处生成的输出是输出词汇表的输出的表示,其中,输出词汇表可以包括字素、字符、词块、词语或音频数据。在一些情况下,每个输出是来自输出词汇表的输出的预定表示。例如,每个输出可以是来自输出词汇表的输出的独热向量表示。在一些情况下,输出词汇表的输出的表示是由输出嵌入引擎根据输出嵌入引擎参数生成,该输出嵌入引擎参数与系统的其他可学习参数共同训练。
输出分数是数值有序集合(例如,向量),其包括输出词汇表的每个输出的相应分数。
系统确定输出时间步长的输出(即,来自输出词汇表)(210)。在一些实施方式中,系统选择具有最高输出分数的输出时间步长的输出。在一些实施方式中,系统使用输出分数确定输出词汇表上的概率分布(例如,通过使用softmax函数处理输出分数),并且通过从确定的概率分布中采样来选择输出时间步长的输出。
如果输出时间步长的输出不是序列结束符号(212),则系统返回到204并且重复前面的步骤。
如果输出时间步长的输出是序列结束符号(212),则系统将为输出时间步长确定的输出的有序级联确定为对应于输入序列的输出序列(214)。
在系统确定输出序列之后(例如,如214中),如果系统正在被训练,则训练引擎可以反向传播损失函数的梯度(216)以调整系统的组件的参数值(例如,编码器、解码器和上下文向量选择引擎的参数)。通常,训练引擎调整系统组件的参数值,以使系统生成相对应的输入序列的输出序列,该输出序列更类似于与输入序列相对应的目标序列(由训练数据指定)。例如,损失函数可以是系统对每个输出时间步长生成的输出分数与由训练数据指定的目标序列(例如,表示为独热向量)的相应输出之间的交叉熵损失的总和。
图3是用于在训练序列处理系统之后为输出时间步长生成上下文向量的示例处理的流程图。为方便起见,处理300将被描述为由位于一个或多个位置的一个或多个计算机的系统执行。例如,根据本说明书适当编程的序列处理系统(例如,图1的序列处理系统100)可以执行处理300。
系统识别编码表示序列中的当前位置(302)。如果当前输出时间步长(即当前正在生成输出的输出时间步长)不是第一输出时间步长,则系统将当前位置确定为由系统选择的作为先前输出时间步长的上下文向量的编码表示的位置。如果当前输出时间步长是第一输出时间步长,则系统将编码表示序列中的当前位置确定为编码表示序列中的第一位置。
系统确定编码表示序列中当前位置的编码表示的选择概率(304)。
具体地,系统通过提供(i)当前位置的编码表示和(ii)先前输出时间步长的解码器递归神经网络的隐藏状态作为能量函数的输入,来确定当前位置的编码表示的能量值,能量函数被配置为处理输入以生成能量值作为输出。通常,能量值是标量值。当前位置的编码表示的能量值可以由下式给出:
其中,h是当前位置的编码表示,s是先前输出时间步长的解码器递归神经网络的隐藏状态,W和U是权重矩阵,v和b是权重向量,以及g和r是标量参数。在训练期间有区别地学习权重矩阵,权重向量和标量参数的值。系统通过将sigmoid函数应用于确定的能量值来确定当前位置的编码表示的选择概率,即:
p=σ(e),
其中,σ是sigmoid函数,以及e是确定的能量值。
在一些实施方式中,系统选择编码表示序列中当前位置的编码表示作为当前上下文向量,其中概率由所确定的当前位置的编码表示的选择概率给出(306)。在一些实施方式中,如果所确定的当前位置中的编码表示的选择概率超过预定阈值,则系统选择编码表示序列中当前位置的编码表示作为当前上下文向量。
如果系统选择编码表示序列中当前位置的编码表示作为当前上下文向量(308),则处理结束。
如果系统没有选择编码表示序列中当前位置的编码表示作为当前上下文向量,则系统确定当前位置是否是编码表示序列中的最后位置(310)。响应于确定编码表示序列中当前位置不是最后位置,系统将当前位置设置为编码表示序列中的下一位置,并且返回304。响应于确定当前位置是编码表示序列中的最后位置,系统将当前上下文向量识别为预定向量(314)。
通过处理300为输出时间步长生成上下文向量使得被选择作为输出时间步长的上下文向量的编码表示的位置为:(i)与被选择作为先前输出时间步长的上下文向量的编码表示的位置相同,或(ii)在被选择作为先前输出时间步长的上下文向量的编码表示的位置之后。
图4是用于在训练序列处理系统时为输出时间步长生成上下文向量的示例处理的流程图。为方便起见,处理400将被描述为由位于一个或多个位置的一个或多个计算机的系统执行。例如,根据本说明书适当编程的序列处理系统(例如,图1的序列处理系统100)可以执行处理400。
系统将编码表示序列中的当前位置识别为编码表示序列中的第一位置(402)。
系统确定编码表示序列中当前位置的编码表示的选择概率(404)。系统执行与参考304描述的相同处理,但是在通过将sigmoid函数应用到能量值确定选择概率之前,包括将噪声(例如,具有零均值和固定方差的高斯随机变量)添加到能量值的额外步骤,即:
p=σ(e+N),
其中,σ是sigmoid函数,e是确定的能量值,以及N是随机噪声变量。通过在确定选择概率之前将噪声添加到能量值,系统的组件的参数(例如,能量函数的参数)更可能在训练期间由训练引擎调整以使所确定的选择概率接近零或一。当编码表示的选择概率接近零或一时,在训练期间由上下文向量选择处理400生成的上下文向量类似于在训练之后由离散上下文向量选择处理300生成的上下文向量。因此,当由离散上下文向量选择处理300选择上下文向量时,即使在训练之后,基于由上下文向量选择处理400生成的上下文向量训练系统也改善了系统的性能。
系统确定编码表示序列中当前位置的编码表示的权重因子(406)。权重因子表示在给出对先前输出时间步长的编码表示确定的选择概率的情况下,如果根据处理300选择每个输出时间步长的上下文向量,则将当前位置的编码表示选择为当前上下文向量的可能性。具体地,系统通过递归关系确定权重因子:
qi,j=(1-pi,j-1)qi,j-1+αi-1,j,
αi,j=pi,jqi,j,
其中,i是当前输出时间步长,j是编码表示序列中的当前位置,i-1是先前输出时间步长,j-1是编码表示序列中的先前位置,qi,j是编码表示序列中输出时间步长i和位置j的潜在变量,αi,j是编码表示序列中输出时间步长i和位置j的权重因子,以及pi,j是编码表示序列中输出时间步长i和位置j的选择概率。递归关系的基本情况由下式给出:
α0,j=δj for j∈{1,...,T},
pi,0=0for i∈{1,...,R},
qi,0=0for i∈{1,...,R},
其中,T是编码表示序列中编码表示的数量,R是输出时间补偿的数量,以及δj是由下式给出的delta函数:
系统确定编码表示序列中的当前位置是否是编码表示序列中的最后位置(408)。
响应于确定编码表示序列中的当前位置是编码表示序列中的最后位置,系统将当前输出时间步长的上下文向量确定为由确定的权重因子加权的编码表示的线性组合,即:
其中,ci是当前输出时间步长的上下文向量,{αi,j}是权重因子(如上所述),{hj}是编码表示,以及T是编码表示序列中的编码表示的数量(410)。
响应于确定编码表示序列中的当前位置不是编码表示序列中的最后位置,系统将当前位置设置为编码表示序列中的下一位置,返回到404,并且重复前面的步骤(412)。
处理400描述了用于生成均可微分的输出时间步长的上下文向量的方法,从而使得训练引擎能够通过梯度反向传播来联合训练系统的组件,并且通过使得选择概率接近零或一模拟离散上下文向量生成处理300(参见404)。因此,即使当离散上下文向量生成处理300选择上下文向量时(在训练系统之后),基于处理400生成的上下文向量来训练系统也因此增强了系统的性能(例如,其预测精度)。
本说明书使用与系统和计算机程序组件相关的术语“被配置”。对于要被配置为执行特定操作或动作的一个或多个计算机的系统,意味着系统已在其上安装了软件、固件、硬件或它们的组合,在软件、固件、硬件或它们的组合的操作时使系统执行操作或动作。对于要被配置为执行特定操作或动作的一个或多个计算机程序,意味着一个或多个程序包括当由数据处理装置执行时使装置执行操作或动作的指令。
本说明书中描述的主题和功能操作的实施例可以实施在数字电子电路中、在有形体现的计算机软件或固件中、在计算机硬件中,包括本说明书中公开的结构及其结构等同物,或者它们中的一个或多个的组合。本说明书中描述的主题的实施例可以实施为一个或多个计算机程序,即,在有形非暂时性存储介质上编码的计算机程序指令模块中的一个或多个,用于由数据处理装置执行或控制数据处理装置的操作。计算机存储介质可以是机器可读存储设备、机器可读存储基板、随机或串行存取存储器设备或者它们中的一个或多个的组合。可选地或另外地,程序指令可以编码在人工生成的传播信号上,例如,机器生成的电,光或电磁信号,其被生成以编码信息以便传输到合适的接收器设备以供数据处理装置执行。
术语“数据处理装置”是指数据处理硬件并且包括用于处理数据的所有类型的装置、设备和机器,包括例如可编程处理器、计算机或者多个处理器或计算机。该装置还可以是专用逻辑电路或者进一步包括专用逻辑电路,专用逻辑电路是例如FPGA(现场可编程门阵列)或ASIC(专用集成电路)。除了硬件之外,该装置还可以可选地包括为计算机程序创建执行环境的代码,例如,构成处理器固件的代码、协议栈、数据库管理系统、操作系统或者他们中的一个或多个的组合。
计算机程序也可以被称为或描述为程序、软件、软件应用、app、模块、软件模块脚本或代码,其可以用任何形式的编程语言编写,包括编译或解释性语言,或者声明性或程序性语言;并且它可以以任何形式部署,包括作为独立程序或作为模块、组件、子程序或适用于计算环境的其他单元。程序可以是但不必对应于文件系统中的文件。程序可以存储在保存其他程序或数据的文件的一部分中,例如,存储在标记语言文档中的一个或多个脚本、专用于所讨论的程序的单个文件中或者多个协调文件中,例如,存储一个或多个模块、子程序或代码部分的文件。可以部署计算机程序以在一个计算机上或在位于一个站点上或分布在多个站点上并且通过数据通信网络互连的多个计算机上执行。
在本说明书中,术语“引擎”广泛用于指代被编程为执行一个或多个特定功能的基于软件的系统、子系统或处理。通常,引擎将被实施为安装在一个或多个位置中的一个或多个计算机上的一个或多个软件模块或组件。在某些情况下,一个或多个计算机将专用于特定的引擎;在其他情况下,可以在同一计算机或多个计算机上安装和运行多个引擎。
本说明书中描述的处理和逻辑流程可以由执行一个或多个计算机程序的一个或多个可编程计算机执行,以通过对输入数据进行操作并且生成输出来执行功能。处理和逻辑流程也可以由专用逻辑电路(例如,FPGA或ASIC)或专用逻辑电路和一个或多个编程计算机的组合来执行。
适合于执行计算机程序的计算机可以基于通用或专用微处理器或两者,或者任何其他类型的中央处理单元。通常,中央处理单元将从只读存储器或随机存取存储器或两者接收指令和数据。计算机的基本元件是用于执行或运行指令的中央处理单元和用于存储指令和数据的一个或多个存储器设备。中央处理单元和存储器可以由专用逻辑电路补充或并入专用逻辑电路中。通常,计算机还将包括或可操作地耦合以从一个或多个大容量存储设备接收数据或将数据传输到一个或多个大容量存储设备或者两者,一个或多个大容量存储设备用于存储数据,例如,磁盘,磁光盘或光盘。然而,计算机不必须具有这样的设备。此外,计算机可以嵌入在另一个设备中,例如,移动电话、个人数字助理(PDA)、移动音频或视频播放器、游戏控制台、全球定位系统(GPS)接收器或便携式存储设备、例如、通用串行总线(USB)闪存驱动器,仅举几例。
适用于存储计算机程序指令和数据的计算机可读介质包括所有形式的非易失性存储器、介质和存储器设备,包括例如半导体存储器设备,例如,EPROM,EEPROM和闪存设备;磁盘,例如,内部硬盘或可移动磁盘;磁光盘;以及CD ROM和DVD-ROM磁盘。
为了提供与用户的交互,本说明书中描述的主题的实施例可以实施在计算机上,该计算机具有显示设备,例如,CRT(阴极射线管)或LCD(液晶显示器)监视器,用于向用户显示信息;以及键盘和指点设备,例如,鼠标或跟踪球,用户可以通过它们向计算机提供输入。其他类型的设备也可用于提供与用户的交互;例如,提供给用户的反馈可以是任何形式的感觉反馈,例如,视觉反馈、听觉反馈或触觉反馈;并且可以以任何形式接收来自用户的输入,包括声学、语音或触觉输入。另外,计算机可以通过向用户使用的设备发送文档和从用户使用的设备接收文档来与用户交互;例如,通过响应于从web浏览器接收的请求将网页发送到用户设备上的web浏览器。此外,计算机可以通过向个人设备(例如,运行消息收发应用程序的智能电话)发送文本消息或其他形式的消息并且从用户接收响应消息来与用户交互。
用于实施机器学习模型的数据处理装置还可以包括,例如,专用硬件加速器单元,用于处理机器学习训练或生产的公共和计算密集部分,即推断,工作负载。
可以使用机器学习框架来实现和部署机器学习模型,例如,TensorFlow框架、Microsoft认知工具包框架、Apache Singa框架或Apache MXNet框架。
本说明书中描述的主题的实施例可以在包括后端组件(例如,作为数据服务器)或包括中间件组件(例如,应用服务器)或包括前端组件(例如,具有图形用户界面,网络浏览器或应用程序的客户端计算机,通过该客户端计算机,用户可以与本说明书中描述的主题的实现进行交互),或者一个或多个这样的后端组件、中间件组件或前端组件的组合的计算系统中实施。系统的组件可以通过任何形式或介质的数字数据通信互连,例如,通信网络。通信网络的示例包括局域网(LAN)和广域网(WAN),例如,互联网。
计算系统可以包括客户端和服务器。客户端和服务器通常彼此远离,并且通常通过通信网络进行交互。客户端和服务器的关系借助于在各个计算机上运行并且彼此具有客户端-服务器关系的计算机程序而产生。在一些实施例中,服务器将数据(例如,HTML页面)发送到用户设备,例如,用于向与作为客户端的设备交互的用户显示数据和从用户接收用户输入的目的。可以在服务器处从设备接收在用户设备处生成的数据,例如,用户交互的结果。
虽然本说明书包含许多具体的实现细节,但是这些不应被解释为对任何发明的范围或可能要求保护的范围的限制,而是作为可以特定于特定发明的特定实施例的特征的描述。在单独实施例的上下文中在本说明书中描述的特定特征也可以在单个实施例中组合实现。相反,在单个实施例的上下文中描述的各种特征也可以单独地或以任何合适的子组合在多个实施例中实现。此外,尽管上面的特征可以描述为以特定组合起作用并且甚至最初如此要求保护,但是在某些情况下可以从组合中删除来自要求保护的组合的一个或多个特征,并且要求保护的组合可以针对子组合或子组合的变化。
类似地,虽然在附图中描绘了操作并且以特定顺序在权利要求中记载,但是这不应该被理解为要求以所示的特定顺序或按顺序执行这些操作,或者执行所有示出的操作,以达到理想的效果。在特定情况下,多任务处理和并行处理可能是有利的。此外,上述实施例中的各种系统模块和组件的分离不应被理解为在所有实施例中都需要这种分离,并且应当理解,所描述的程序组件和系统通常可以集成在单个软件产品中或打包成多个软件产品。
已经描述了主题的特定实施例。其他实施例在以下权利要求的范围内。例如,权利要求中记载的动作可以以不同的顺序执行并且仍然实现期望的结果。作为一个示例,附图中描绘的处理不一定需要所示的特定顺序或连续顺序来实现期望的结果。在一些情况下,多任务处理和并行处理可能是有利的。
Claims (14)
1.一种从根据输入顺序排列的输入序列中的输入的相应编码表示来生成包括根据输出顺序排列的多个输出时间步长中的每个处的相应输出的目标序列的方法,所述方法包括:
对于按照输出顺序在第一输出时间步长之后的每个输出时间步长:
从按照输入顺序在先前输出时间步长被选择作为先前上下文向量的编码表示的位置开始,根据输入顺序遍历编码表示,直到编码表示被选择为所述输出时间步长处的当前上下文向量,包括,对于遍历的每个编码表示:
从编码表示确定编码表示的选择概率,并且确定先前输出时间步长的解码器递归神经网络的隐藏状态,和
根据选择概率确定是否选择所述编码表示作为当前上下文向量;
使用解码器递归神经网络处理当前上下文向量和先前输出时间步长处的先前输出,以为可能输出的词汇表中的每个可能输出生成相应的输出分数并且更新解码器递归神经网络的隐藏状态;以及
使用输出分数选择在所述输出时间步长处的输出。
2.根据权利要求1所述的方法,还包括:
对于第一输出时间步长:
从按照输入顺序的第一位置开始,按照输入顺序遍历编码表示,直到编码表示被选择作为第一输出时间步长处的当前上下文向量,包括,
对于每个编码表示:
从编码表示确定编码表示的选择概率,并且确定解码器递归神经网络的初始隐藏状态,和
根据选择概率确定是否选择所述编码表示作为当前上下文向量;
使用解码器递归神经网络处理当前上下文向量和占位符输出,以为可能输出的词汇表中的每个可能输出生成相应的输出分数并且更新初始隐藏状态;以及
使用输出分数选择在第一输出时间步长处的输出。
3.根据权利要求1或2中的任意一项所述的方法,还包括:
响应于确定不从在先前输出时间步长处被选择作为先前上下文向量的编码表示的输入顺序中的位置开始的位置选择任何编码表示:
使用预定上下文向量作为时间步长处的当前上下文向量。
4.根据权利要求1至3中的任意一项所述的方法,其中:
从编码表示确定编码表示的选择概率并且确定先前时间步长的解码器递归神经网络的隐藏状态包括:
通过使用能量函数处理编码表示和先前时间步长的解码器递归神经网络的隐藏状态来确定编码表示的能量值;以及
将sigmoid函数应用于能量值以确定选择概率。
5.根据权利要求4所述的方法,其中,采用噪声增强sigmoid函数。
6.根据权利要求4或5中的任意一项所述的方法,其中,能量值满足:
其中,h是编码表示,s是隐藏状态,并且其中,W和U是权重矩阵,v是权重向量,b是偏置向量以及g和r是在关于训练数据来训练解码器递归神经网络期间已经学习的标量参数。
7.根据权利要求1至6中的任意一项所述的方法,其中,在编码器递归神经网络开始生成编码表示之后但是在编码器递归神经网络已经按照输入顺序完成生成最后编码表示之前,开始遍历。
8.根据权利要求1至7中的任意一项所述的方法,其中,使用输出分数选择第一输出时间步长处的输出包括:
根据输出分数选择最高分数的输出。
9.根据权利要求1至7中的任意一项所述的方法,其中,使用输出分数选择第一输出时间步长处的输出包括:
根据输出分数从可能输出中采样。
10.根据权利要求1至9中的任意一项所述的方法,其中,解码器递归神经网络已经使用编码表示和输出之间的软强制单调性进行训练。
11.根据权利要求1至10中的任意一项所述的方法,其中,输入序列是原始语言中的词语序列,而输出序列是表示原始语言中的词语序列的输出语言中的词语序列。
12.根据权利要求1至10中的任意一项所述的方法,其中,输入序列是表示说出的话语的音频数据序列,而输出序列是说出的话语的转录。
13.一种系统,包括一个或多个计算机和存储可操作的指令的一个或多个存储设备,所述指令在由所述一个或多个计算机执行时,使得所述一个或多个计算机执行权利要求1-12中的任意一项所述的相应方法的操作。
14.一种编码有指令的计算机存储介质,所述指令在由一个或多个计算机执行时,使得所述一个或多个计算机执行权利要求1-12中的任意一项所述的相应方法的操作。
Applications Claiming Priority (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US201762463570P | 2017-02-24 | 2017-02-24 | |
US62/463,570 | 2017-02-24 | ||
PCT/US2018/017893 WO2018156373A1 (en) | 2017-02-24 | 2018-02-13 | Sequence processing using online attention |
Publications (2)
Publication Number | Publication Date |
---|---|
CN110326002A true CN110326002A (zh) | 2019-10-11 |
CN110326002B CN110326002B (zh) | 2023-09-05 |
Family
ID=61283352
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201880013742.4A Active CN110326002B (zh) | 2017-02-24 | 2018-02-13 | 使用在线注意的序列处理 |
Country Status (4)
Country | Link |
---|---|
US (1) | US11080589B2 (zh) |
EP (1) | EP3586276A1 (zh) |
CN (1) | CN110326002B (zh) |
WO (1) | WO2018156373A1 (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2023056920A1 (en) * | 2021-10-05 | 2023-04-13 | Huawei Technologies Co., Ltd. | Multilayer perceptron neural network for speech processing |
Families Citing this family (11)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US10706840B2 (en) | 2017-08-18 | 2020-07-07 | Google Llc | Encoder-decoder models for sequence to sequence mapping |
US10929607B2 (en) * | 2018-02-22 | 2021-02-23 | Salesforce.Com, Inc. | Dialogue state tracking using a global-local encoder |
US10497366B2 (en) * | 2018-03-23 | 2019-12-03 | Servicenow, Inc. | Hybrid learning system for natural language understanding |
US11210475B2 (en) * | 2018-07-23 | 2021-12-28 | Google Llc | Enhanced attention mechanisms |
US11789952B2 (en) | 2018-09-26 | 2023-10-17 | Salesforce, Inc. | Ranking enterprise search results based on relationships between users |
CN111178099B (zh) * | 2018-11-28 | 2023-03-10 | 腾讯科技(深圳)有限公司 | 一种文本翻译的方法以及相关装置 |
US11922314B1 (en) * | 2018-11-30 | 2024-03-05 | Ansys, Inc. | Systems and methods for building dynamic reduced order physical models |
WO2021176549A1 (ja) | 2020-03-03 | 2021-09-10 | 日本電信電話株式会社 | 文生成装置、文生成学習装置、文生成方法、文生成学習方法及びプログラム |
US11960993B2 (en) * | 2020-11-10 | 2024-04-16 | Equifax Inc. | Machine-learning techniques involving monotonic recurrent neural networks |
KR102529431B1 (ko) * | 2020-11-10 | 2023-05-08 | 주식회사 포티투마루 | 문맥 기반 질의응답 생성 아키텍처 |
CN113467740B (zh) * | 2021-07-15 | 2024-02-02 | 青岛博天数通信息科技有限公司 | 一种基于联合编码的视频监控阵列显示优化方法和装置 |
Family Cites Families (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US10332508B1 (en) * | 2016-03-31 | 2019-06-25 | Amazon Technologies, Inc. | Confidence checking for speech processing and query answering |
-
2018
- 2018-02-13 EP EP18707518.9A patent/EP3586276A1/en active Pending
- 2018-02-13 CN CN201880013742.4A patent/CN110326002B/zh active Active
- 2018-02-13 WO PCT/US2018/017893 patent/WO2018156373A1/en unknown
-
2019
- 2019-07-08 US US16/504,924 patent/US11080589B2/en active Active
Non-Patent Citations (2)
Title |
---|
DZMITRY BAHDANAU ET AL.: ""NEURAL MACHINE TRANSLATION BY JOINTLY LEARNING TO ALIGN AND TRANSLATE"", 《ARXIV》 * |
EKATERINA VYLOMOVA ET AL.: ""Word Representation Models for Morphologically Rich Languages in Neural Machine Translation"", 《ARXIV》 * |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2023056920A1 (en) * | 2021-10-05 | 2023-04-13 | Huawei Technologies Co., Ltd. | Multilayer perceptron neural network for speech processing |
Also Published As
Publication number | Publication date |
---|---|
US20190332919A1 (en) | 2019-10-31 |
US11080589B2 (en) | 2021-08-03 |
CN110326002B (zh) | 2023-09-05 |
WO2018156373A1 (en) | 2018-08-30 |
EP3586276A1 (en) | 2020-01-01 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN110326002A (zh) | 使用在线注意的序列处理 | |
JP6756916B2 (ja) | ニューラルネットワークを使用したテキストシーケンスの処理 | |
JP6790286B2 (ja) | 強化学習を用いたデバイス配置最適化 | |
US10268671B2 (en) | Generating parse trees of text segments using neural networks | |
US20210256390A1 (en) | Computationally efficient neural network architecture search | |
US9037464B1 (en) | Computing numeric representations of words in a high-dimensional space | |
CN109885842A (zh) | 处理文本神经网络 | |
CN110520871A (zh) | 训练机器学习模型 | |
US11922281B2 (en) | Training machine learning models using teacher annealing | |
CN109844773A (zh) | 使用卷积神经网络处理序列 | |
CN108369661B (zh) | 神经网络编程器 | |
CN112288075A (zh) | 一种数据处理方法及相关设备 | |
CN109074517A (zh) | 全局归一化神经网络 | |
EP3602419A1 (en) | Neural network optimizer search | |
CN110291540A (zh) | 批再归一化层 | |
CN110114784A (zh) | 递归神经网络 | |
CN109858046A (zh) | 利用辅助损失来学习神经网络中的长期依赖性 | |
CN110462638A (zh) | 使用后验锐化训练神经网络 | |
US20220383119A1 (en) | Granular neural network architecture search over low-level primitives | |
US20200104681A1 (en) | Neural Networks with Area Attention | |
KR102324634B1 (ko) | 모바일 앱 사용자의 빅데이터 분석 모델 실시간 생성을 위한 딥러닝 오차 최소화 시스템 및 그 제어방법 | |
JP2024506597A (ja) | 自己注意動作および相互注意動作を使用して潜在的埋め込みを豊かにすることによってニューラルネットワーク出力を生成すること | |
CN117521674A (zh) | 对抗信息的生成方法、装置、计算机设备和存储介质 | |
JP2024519265A (ja) | フィードフォワード空間変換ユニットを備えたニューラルネットワーク | |
WO2022248727A1 (en) | Generating neural network outputs by cross attention of query embeddings over a set of latent embeddings |
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 |