CN109074517B - 全局归一化神经网络 - Google Patents
全局归一化神经网络 Download PDFInfo
- Publication number
- CN109074517B CN109074517B CN201780028094.5A CN201780028094A CN109074517B CN 109074517 B CN109074517 B CN 109074517B CN 201780028094 A CN201780028094 A CN 201780028094A CN 109074517 B CN109074517 B CN 109074517B
- Authority
- CN
- China
- Prior art keywords
- sequence
- decision
- training
- neural network
- candidate
- 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
Links
Images
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/08—Learning methods
-
- 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
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N5/00—Computing arrangements using knowledge-based models
- G06N5/01—Dynamic search techniques; Heuristics; Dynamic trees; Branch-and-bound
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N7/00—Computing arrangements based on specific mathematical models
- G06N7/01—Probabilistic graphical models, e.g. probabilistic networks
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Computing Systems (AREA)
- General Engineering & Computer Science (AREA)
- Data Mining & Analysis (AREA)
- Evolutionary Computation (AREA)
- Artificial Intelligence (AREA)
- Software Systems (AREA)
- Mathematical Physics (AREA)
- Computational Linguistics (AREA)
- Biomedical Technology (AREA)
- Health & Medical Sciences (AREA)
- Life Sciences & Earth Sciences (AREA)
- Biophysics (AREA)
- General Health & Medical Sciences (AREA)
- Molecular Biology (AREA)
- Algebra (AREA)
- Pure & Applied Mathematics (AREA)
- Mathematical Optimization (AREA)
- Probability & Statistics with Applications (AREA)
- Mathematical Analysis (AREA)
- Computational Mathematics (AREA)
- Machine Translation (AREA)
Abstract
一种包括在训练数据上训练具有参数的神经网络的方法,其中所述神经网络接收输入状态并且处理所述输入状态以针对决策集中的每个决策生成相应的得分。所述方法包括接收包括训练文本序列、以及针对每个训练文本序列的对应的金决策序列的训练数据。所述方法包括在所述训练数据上训练所述神经网络以确定所述神经网络的参数的训练值。训练所述神经网络包括针对每个训练文本序列:维持针对训练文本序列的候选决策序列波束、通过一次添加一个决策来更新每个候选决策序列、确定与所述金候选决策序列的前缀匹配的金候选决策序列已经从所述波束中退出、以及作为响应,执行梯度下降的迭代以优化目标函数。
Description
相关申请的交叉引用
本申请要求2016年3月18日提交的美国临时申请序列号62/310,491的优先权。该在先申请的公开内容被认为是本申请的公开内容的一部分,并且通过引用被并入本申请的公开内容中。
技术领域
本说明书涉及使用神经网络的自然语言处理。
背景技术
本说明书涉及使用神经网络的自然语言处理。
神经网络采用一层或多层非线性单元来预测接收输入的输出的机器学习模型。除了输出层之外,一些神经网络还包括一个或多个隐藏层。每个隐藏层的输出被用作网络中下一层的输入,即下一个隐藏层或输出层。网络的每个层根据相应参数集的当前值从接收的输入生成输出。
发明内容
本说明书描述了在一个或多个位置中的一个或多个计算机上实现为计算机程序的***,其使用全局归一化神经网络来处理文本序列以生成决策序列。
通常,本说明书中描述的主题的一个创新方面可以体现在在训练数据上训练具有参数的神经网络的方法中,其中神经网络被配置为接收输入状态并处理输入状态以针对决策集中的每个决策生成相应的得分。该方法包括接收第一训练数据的动作,第一训练数据包括多个训练文本序列、以及针对每个训练文本序列的对应的金决策序列。该方法包括在第一训练数据上训练神经网络的动作,以根据神经网络的参数的第一值来确定神经网络的参数的训练值。训练神经网络包括针对第一训练数据中的每个训练文本序列:维持针对训练文本序列的预定数量的候选预测决策序列的波束、通过使用由神经网络根据神经网络的参数的当前值生成的得分一次添加一个决策到每个候选预测决策来更新波束中的每个候选预测决策序列、在每次决策已被添加到每个候选预测决策序列之后,确定与训练文本序列对应的金决策序列的前缀相匹配的金候选预测决策序列已从波束中退出、以及响应于确定金候选预测决策序列已从波束中退出,执行梯度下降的迭代以优化取决于金候选预测决策序列和当前在波束中的候选预测序列的目标函数。
前述和其他实施例可以各自可选择地单独或以组合的形式包括一个或多个以下特征。该方法可以包括接收第二训练数据的动作,第二训练数据包括多个训练文本序列、以及针对每个训练文本序列的对应的金决策序列,以及在第二训练数据上预训练神经网络以通过优化目标函数来确定来根据所述神经网络的所述参数的初始值确定所述神经网络的所述参数的第一值,所述目标函数取决于针对每个训练文本序列由所述神经网络生成的、针对对应于所述训练文本序列的所述金决策序列中的决策的得分,以及取决于对针对所述金决策序列中的决策生成的得分的局部归一化。神经网络可以是全局归一化的神经网络。决策集可以是依赖关系解析的可能的解析元素的集,并且金决策序列可以是对应的训练文本序列的依赖关系解析。决策集可以是可能的词性标签的集,并且金决策序列可以是包括对应的训练文本序列中的每个单词的相应词性标签的序列。决策集可以包括指示该单词应该被包括在输入文本序列的压缩表示中的保持标签、和指示该单词不应该被包括在压缩表示中的丢弃标签,并且其中金决策序列是包含对应的训练文本序列中每个单词的相应保持标签或丢弃标签的序列。如果在候选预测序列已经完成之后金候选预测决策序列还没有退出波束,则该方法可以进一步包括执行梯度下降迭代以优化取决于金决策序列和完成的候选预测序列的目标函数的动作。
本说明书中描述的主题的另一创新方面可以体现在用指令编码的一个或多个计算机可读存储介质中,当由一个或多个计算机执行所述指令时,使得一个或多个计算机执行上述方法的操作。
本说明书中描述的主题的另一创新方面可以体现在包括一个或多个计算机和一个或多个存储指令的存储设备的***中,当由一个或多个计算机执行所述指令时,使得一个或多个计算机执行上述方法的操作。
本说明书中描述的主题的另一创新方面可以体现在用于生成针对输入文本序列的决策序列的***中,该决策序列包括多个输出决策。该***包括神经网络,其被配置为接收输入状态,并处理输入状态以针对决策集中的每个决策生成相应的得分。该***还包括被配置为维持针对输入文本序列的预定数量的候选决策序列的波束的子***。对于决策序列中的每个输出决策,所述子***被配置为重复执行以下操作。对于当前在波束中的每个候选决策序列,子***提供表示候选决策序列的状态作为神经网络的输入,并从神经网络获得多个新候选决策序列中的每一个的相应得分,将具有来自允许决策集的相应允许决策的每个新候选决策序列添加到当前候选决策序列,根据从神经网络获得的得分更新波束以仅包括预定数量的具有最高得分的新候选决策序列,并且对于更新的波束中的每个新的候选决策序列生成表示该新候选决策序列的相应状态。在决策序列中的最后输出决策之后,子***从波束中的候选决策序列中选择具有最高得分的候选决策序列作为输入文本序列的决策序列。
前述和其他实施例可以各自可选择地单独或以组合的形式包括一个或多个以下特征。决策集可以是依赖关系解析的可能的解析元素集,并且决策序列可以是文本序列的依赖关系解析。决策集可以是可能的词性标签集,并且该决策序列是包括文本序列中每个单词的相应词性标签的序列。决策集可以包括指示单词应该被包括在输入文本序列的压缩表示中的保持标签,以及指示该单词不应该被包括在压缩表示中的丢弃标签,并且其中决策序列是包括文本序列中每个单词的相应保持标签或丢弃标签的序列。
本说明书中描述的主题的另一创新方面可以体现在用指令编码的一个或多个计算机可读存储介质中,当由一个或多个计算机执行所述指令时,使得一个或多个计算机实现上述第一***。
可以实现本说明书中描述的主题的特定实施例,以便实现以下优点中的一个或多个。本说明书中描述的全局归一化神经网络可被用于在自然语言处理任务(例如,词性标签、依赖性解析以及句子压缩)上实现良好结果,比现有神经网络模型更有效且更具成本效益。例如,全局归一化神经网络可以是在转换***上操作的前馈神经网络,并且可以用于以计算成本的一小部分实现与现有神经网络模型(例如,递归模型)相当或更好的准确度。此外,全局归一化神经网络可以避免适用于许多现有神经网络模型的标签偏差问题。
在附图和以下描述中阐述了本说明书的主题的一个或多个实施例的细节。根据说明书、附图以及权利要求,本主题的其他特征、方面以及优点将是显而易见的。
附图说明
图1是包括神经网络的示例机器学习***的框图。
图2是用于使用神经网络从输入文本序列生成决策序列的示例过程的流程图。
图3是用于在训练数据上训练神经网络的示例过程的流程图。
图4是用于在训练数据中的每个训练文本序列上训练神经网络的示例过程的流程图。
各个附图中相同的附图标记和名称表示相同的元件。
具体实施方式
图1是示例机器学习***102的框图。机器学习***102是在一个或多个位置中的一个或多个计算机上实现为计算机程序的***的示例,其中可以实施下面描述的***、组件以及技术。
机器学习***102包括转换***104和神经网络112,并且被配置为接收输入文本序列108并处理输入文本序列108以生成针对输入文本序列108的决策序列116。输入文本序列108是单词的序列,并且可选地,是特定自然语言中的标点符号,例如,句子、句子片段、或另一多词序列。
决策序列是决策的序列。例如,序列中的决策可以是输入文本序列中的单词的词性标记。
作为另一示例,决策可以是针对输入文本序列中的单词的保持或丢弃标签。保持标签表示该单词应该被包括在输入文本序列的压缩表示中,而丢弃标签表示该单词不应该被包括在压缩表示中。
作为另一示例,决策可以是依赖关系解析的解析元素,使得决策序列是对输入文本序列的依赖关系解析。通常,依赖关系解析根据与上下文无关的语法表示文本序列的句法结构。决策序列可以是依赖关系解析的线性化表示,其可以通过以深度优先遍历顺序遍历依赖关系解析来生成。
通常,神经网络112是被配置为凭借在训练过程中已被训练为将目标函数最小化来接收输入状态并处理输入状态以针对决策集中的每个决策生成相应得分的神经网络。输入状态是对当前决策序列的编码。在一些情况下,神经网络还接收文本序列作为输入,并处理文本序列和所述状态以生成决策得分。在其他情况下,除了当前决策序列之外,所述状态还对文本序列进行编码。
在一些情况下,目标函数由条件概率分布函数的乘积表示。每个条件概率分布函数表示给定过去决策的下一个决策的概率。每个条件概率分布函数由一组条件得分表示。条件得分可以大于1.0,因此通过局部归一化项被归一化以具有有效的条件概率分布函数。每个条件概率分布函数有一个局部归一化项。具体而言,在这些情况下,目标函数定义如下:
其中
pL(d1:n)是给定表示为x1:n的输入文本序列的决策序列d1:n的概率,
p(dj|d1:j-1;θ)是给定先前决策序列d1:j-1、包含模型参数的矢量θ以及输入文本序列x1:n的决策序列dj上的条件概率分布,
ρ(d1:j-1,dj;θ)是给定先前决策序列d1:j-1、包含模型参数的矢量θ以及输入文本序列x1:n的决策序列dj上的条件得分,以及
ZL(d1:j-1;θ)是局部归一化项。
在一些其他情况下,目标函数由整个决策序列的联合概率分布函数表示。在这些其他情况下,目标函数可以称为条件随机场(CRF)目标函数。联合概率分布函数被表示为得分集。这些得分可以大于1.0,因此通过全局归一化项被归一化以具有有效的联合概率分布函数。全局归一化项由决策序列中的所有决策共享。更具体地,在这些其他情况下,CRF目标函数定义如下:
其中
并且其中,
pG(d1:n)是给定输入文本序列x1:n的决策序列d1:n的联合概率分布,
ρ(d1:j-1,dj;θ)是给定先前决策序列d1:j-1、包含模型参数的矢量θ以及输入文本序列x1:n的决策序列dj上的联合得分,
ZG(θ)是一个全局归一化项,并且
Dn是长度为n的所有允许决策序列的集合。
在这些其他情况下,神经网络112被称为全局归一化神经网络,因为其被配置为最大化CRF目标函数。通过维持全局归一化项,神经网络112可以避免现有神经网络存在的标签偏差问题。更具体地,在许多情况下,当后来的信息变得可用时,神经网络被预期能够修改先前的决策,从而排除先前的错误决策。标签偏差问题意味着一些现有的神经网络(如局部归一化网络)修改先前决策的能力较弱。
转换***104维持包括特殊开始状态的状态集、针对该状态集中的每个状态的允许决策集、以及将每个状态和来自针对每个状态的允许决策集的决策映射到新状态的转换函数。
具体地,状态对当前在决策序列中的决策的整体历史进行编码。在一些情况下,每个状态只能通过一个独特的决策序列达到。因此,在这些情况下,决策序列和状态可以互换使用。因为状态对决策的整体历史进行编码,所以特殊启动状态为空,并且状态的大小随时间扩展。例如,在词性标注中,考虑句子“约翰是医生”。特殊开始状态为“空”。当特殊开始状态为当前状态时,则针对当前状态的允许决策集可以是{名词,动词}。因此,对于当前状态的下一状态,存在两种可能的状态“空,名词”和“空,动词”。转换***104可以从允许决策集中决策下一个决策。例如,转换***104确定下一个决策是名词。然后,下一个状态是“空,名词”。转换***104可以使用转换函数将当前状态和针对当前状态所决策的下一个决策映射到新状态,例如,第一状态“空,名词”。转换***104可以重复执行该过程以生成后续状态,例如,第二状态可以是“空,名词,动词”,第三状态可以是“空,名词,动词,冠词”,第四状态可以是“空,名词,动词,冠词,名词。”下面参考图2-图4更详细地描述该决策过程。
在输入文本序列108的过程中,转换***104维持针对输入文本序列108的预定数量的候选决策序列的波束106。转换***104被配置为接收输入文本序列108并且基于所接收的输入文本序列108(例如,基于诸如输入文本序列中的第一个单词的单词)来定义转换***104的特殊开始状态。
通常,在输入文本序列108的处理中以及针对决策序列的当前状态,转换***104将转换函数应用于当前状态以生成新状态作为神经网络112的输入状态110。神经网络112被配置为处理输入状态110以生成针对输入状态110的相应得分114。然后,转换***104被配置为使用由神经网络112生成的得分来更新波束106。在候选决策序列被完成之后,转换***104被配置为选择波束106中的候选决策序列之一作为针对输入文本序列108的决策序列116。下面参考图2更详细地描述生成针对输入文本序列108的决策序列116的过程。
图2是用于从输入文本序列生成决策序列的示例过程200的流程图。为方便起见,过程200将被描述为由位于一个或多个位置的一个或多个计算机的***所执行。例如,机器学习***,例如,图1的机器学习***102,根据本说明书被适当地编程,可以执行过程200。
***获得包括多个单词的输入文本序列,例如句子(步骤202)。
***维持针对所获得的输入文本序列的候选决策序列波束(步骤204)。
作为生成针对输入文本序列的决策序列的一部分,***对决策序列中的每个输出决策重复执行步骤206-210。
对于当前在波束中的每个候选决策序列,***提供表示候选决策序列的状态作为神经网络(例如,图1的神经网络112)的输入,并且从神经网络获得针对多个新候选决策序列中的每一个的相应得分,将具有允许决策集中的相应允许决策的每个新候选决策序列添加到当前候选决策序列(步骤206)。也就是说,***确定针对候选决策序列的当前状态的允许决策,并使用神经网络获得每个允许决策的相应得分。
***根据从神经网络获得的得分来更新波束以仅包括预定数量的具有最高得分的新候选决策序列(步骤208)。也就是说,***用预定数量的新候选决策序列来替换波束中的序列。
***为波束中的每个新候选决策序列生成相应的新状态(步骤210)。具体地,针对通过将给定决策添加到给定候选决策序列而生成的给定新候选决策序列,***通过将转换函数应用于针对给定候选决策序列的当前状态来生成新状态,并且添加到给定的候选决策序列中的给定的决策生成新的决策序列。
***继续重复步骤206-210直到完成波束中的候选决策序列。具体地,***基于输入序列来确定应当被包括在决策序列中的决策的数量,并且当候选决策序列包括所确定数量的决策时确定候选决策序列被完成。例如,当决策是词性标签时,决策序列将包括与输入序列中的单词相同数量的决策。作为另一示例,当决策是保持或丢弃标签时,决策序列还将包括与输入序列中的单词相同数量的决策。作为另一个例子,当决策是解析元素时,决策序列将包括输入序列中的单词的倍数,例如,输入序列中的单词的两倍的决策。
在波束中的候选决策序列完成之后,***从波束中具有最高得分的候选决策序列中选择作为针对输入文本序列的决策序列(步骤212)。
图3是用于在训练数据上训练神经网络的示例过程300的流程图。为方便起见,过程300将被描述为由位于一个或多个位置的一个或多个计算机的***所执行。例如,机器学习***,例如,图1的机器学习***102,根据本说明书适当地被编程,可以执行过程300。
为了训练神经网络,***接收包括训练文本序列的第一训练数据,并且对于每个训练文本序列,接收相应的金决策序列(步骤302)。通常,金决策序列是包括多个决策的序列,其中每个决策是从可能的决策集中选择的。
在一些情况下,决策集是依赖关系解析的可能解析元素的集。在这些情况下,金决策序列是相应训练文本序列的依赖性解析。
在一些情况下,决策集是可能的词性标签的集。在这些情况下,金决策序列是包括对应训练文本序列中的每个单词的相应词性标签的序列。
在一些其他情况下,决策集包括指示单词应该被包括在输入文本序列的压缩表示中的保持标签、和指示单词不应该被包括在压缩表示中的丢弃标签。在这些其他情况下,金决策序列是包括相应训练文本序列中的每个单词的相应保持标签或丢弃标签的序列。
可选地,***可以首先获得额外的训练数据,并且在额外的训练数据上预训练神经网络(步骤304)。具体地,***可以接收包括多个训练文本序列的第二训练数据,并且对于每个训练文本序列,接收相应的金决策序列。第二训练数据可以与第一训练数据相同或不同。
***可以在第二训练数据上预训练神经网络,以通过优化目标函数来根据神经网络的参数的初始值确定神经网络的参数的第一值,所述目标函数取决于针对每个训练文本序列、由神经网络生成的、针对与训练文本序列相对应的金决策序列中的决策的得分,以及取决于针对金决策序列中的决策所生成的得分的局部归一化(步骤304)。具体地,在一些情况下,***可以使用局部归一化神经网络的目标函数,例如上面提出的函数(1),对第二训练数据的负对数似然执行梯度下降。
然后,***在第一训练数据上训练神经网络,以根据神经网络的参数的第一值确定神经网络的参数的训练值(步骤306)。具体地,***对第一训练数据中的每个训练文本序列执行训练过程。下面参考图4详细描述对给定训练文本序列执行训练过程。
图4是用于在第一训练数据中在训练文本序列上训练神经网络的示例训练过程400的流程图。为方便起见,过程400还将被描述为由位于一个或多个位置的一个或多个计算机的***执行。例如,机器学习***,例如,图1所示的机器学习***102,根据本说明书适当地被编程,可以执行训练过程400。
***维持用于训练文本序列的预定数量的候选预测决策序列的波束(步骤402)。
然后,***通过使用由神经网络根据如上参考图2所述的神经网络的参数的当前值生成的得分,一次向每个候选预测决策序列添加一个决策来更新波束中的每个候选预测决策序列(步骤404)。
在每次将决策添加到每个候选预测决策序列之后,***确定与对应于训练文本序列的金决策序列的前缀相匹配的金候选预测决策序列是否已退出波束(步骤406)。也就是说,在当前时间步骤之后,金决策序列被截断,并将其与当前在波束中的候选预测决策序列进行比较。如果匹配,则金决策序列没有从波束中退出。如果没有匹配,则金决策序列已退出波束。
响应于确定金候选预测决策序列已退出波束,***执行梯度下降的迭代以优化目标函数,目标函数取决于金候选预测决策序列和当前在波束中的候选预测序列(步骤408)。梯度下降步骤取决于以下目标:
其中
是给定先前的金候选决策序列d*1:i-1、包含模型参数的矢量θ以及输入文本序列x的金候选决策序列d*i的联合得分,以及ρ(d′1:i-1,d′i;θ)是给定波束中的先前候选决策序列d’1:i-1、包含模型参数的向量θ以及输入文本序列x的波束中的候选决策序列d’i的联合得分,以及Bj是当金候选决策序列被退出时波束中的所有候选决策序列集,以及是与当前训练文本序列相对应的金决策序列的前缀。
然后,***确定候选预测序列是否已经完成(步骤410)。如果候选预测序列已经完成,则***停止在训练序列上训练神经网络(步骤412)。如果候选预测序列尚未完成,则***重置波束以包括金候选预测决策序列。然后***返回到步骤404以更新波束中的每个候选预测决策序列。
响应于确定金候选预测决策序列没有退出波束,***然后确定候选预测序列是否已经完成(步骤414)。
如果候选预测序列已经完成并且金候选预测决策序列仍在波束中,则***执行梯度下降的迭代以优化取决于金决策序列和已完成的候选预测序列的目标函数(步骤416)。也就是说,当金候选预测决策序列在整个过程中保留在波束中时,对与上面所示的公式(3)相同的目标采用梯度下降步骤,但是使用整个金决策序列而不是在过程结束时保留在波束中的所有候选决策序列的前缀和集合然后***停止在训练序列上训练神经网络(步骤412)。
如果候选预测序列尚未完成,则***返回步骤404以更新波束中的每个候选预测决策序列。
对于被配置为执行特定操作或动作的一个或多个计算机的***,意味着已经在所述***上安装了软件、固件、硬件或它们的组合,使其在操作中执行所述操作或动作。对于被配置为执行特定操作或动作的一个或多个计算机程序,意味着一个或多个程序包括当由数据处理装置执行时使得装置执行所述操作或动作的指令。
本说明书中描述的主题和功能操作的实施例可以在数字电子电路中、在有形实现的计算机软件或固件中、在计算机硬件中实现,包括本说明书中公开的结构及其结构等同物,或者它们中的一个或多个的组合。本说明书中描述的主题的实施例可以实现为一个或多个计算机程序,即在有形非暂时性程序载体上编码的一个或多个计算机程序指令模块,用于由数据处理装置执行或控制数据处理装置的操作。替代地或另外地,程序指令可以在人工生成的传播信号上编码,例如,机器生成的电、光或电磁信号,生成所述信号以对信息进行编码用于向合适的接收器装置传输以被数据处理装置执行。计算机存储介质可以是机器可读存储设备、机器可读存储基板、随机或串行存取存储器设备或它们中的一个或多个的组合。然而,计算机存储介质不是传播信号。
术语“数据处理装置”包括用于处理数据的所有类型的装置、设备和机器,包括例如可编程处理器、计算机或多个处理器或计算机。该装置可以包括专用逻辑电路,例如FPGA(现场可编程门阵列)或ASIC(专用集成电路)。除了硬件之外,该装置还可以包括为所讨论的计算机程序创建执行环境的代码,例如,构成处理器固件的代码、协议栈、数据库管理***、操作***或它们的一个或多个的组合。
计算机程序(也可以称为或描述为程序、软件、软件应用程序、模块、软件模块、脚本或代码)可以用任何形式的编程语言编写,包括编译或者解释性语言,或声明性或程序性语言,并且它可以以任何形式部署,包括作为独立程序或作为模块、组件、子例程或适合在计算环境中使用的其他单元。计算机程序可以但不必对应于文件***中的文件。程序可以存储在存有其他程序或数据的文件的一部分中,例如,存储在标记语言文档中的一个或多个脚本、存储在专用于所讨论的程序的单个文件中或者存储在多个协调文件中,例如,存储一个或多个模块、子程序或代码部分的文件。可以部署计算机程序以在一个计算机上或在位于一个站点上或分布在多个站点上并通过通信网络互连的多个计算机上执行。
如在本说明书中所使用的,“引擎”或“软件引擎”是指软件所实现的输入/输出***,其提供与输入不同的输出。引擎可以是被编码的功能块,例如库、平台、软件开发工具包(“SDK”)或对象。每个引擎可以在任何适当类型的计算设备上实现,例如,服务器、移动电话、平板计算机、笔记本计算机、音乐播放器、电子书阅读器、膝上型或台式计算机、PDA、智能电话或其他固定或便携式设备,其包括一个或多个处理器和计算机可读介质。另外,两个或更多个引擎可以在同一计算设备上或在不同的计算设备上实现。
本说明书中描述的过程和逻辑流程可以由执行一个或多个计算机程序的一个或多个可编程计算机执行,以通过对输入数据进行操作并生成输出来执行功能。过程和逻辑流程也可以由专用逻辑电路执行,并且装置也可以实现为专用逻辑电路,例如FPGA(现场可编程门阵列)或ASIC(专用集成电路)。
作为示例,适合于执行计算机程序的计算机可以基于通用或专用微处理器或两者、或任何其他种类的中央处理单元。通常,中央处理单元将从只读存储器或随机存取存储器或两者接收指令和数据。计算机的基本元件是用于执行或运行指令的中央处理单元和用于存储指令和数据的一个或多个存储器设备。通常,计算机还将包括或可操作地耦合以从一个或多个用于存储数据的大容量存储设备接收数据、或将数据传输到一个或多个用于存储数据的大容量存储设备,例如磁盘、磁光盘或光盘。然而,计算机不需要有这样的设备。此外,计算机可以嵌入在另一个设备中,例如移动电话、个人数字助理(PDA)、移动音频或视频播放器、游戏控制台、全球定位***(GPS)接收器或便携式存储设备,例如,通用串行总线(USB)闪存驱动器,这里仅举几例。
适用于存储计算机程序指令和数据的计算机可读介质包括所有形式的非易失性存储器、介质以及存储器设备,包括例如半导体存储器设备,例如EPROM、EEPROM以及闪存设备;磁盘,例如内部硬盘或可移动磁盘;磁光盘;以及CD ROM和DVD-ROM磁盘。处理器和存储器可以由专用逻辑电路补充或并入专用逻辑电路中。
为了提供与用户的交互,本说明书中描述的主题的实施例可以在具有例如CRT(阴极射线管)或LCD(液晶显示器)监视器的显示设备用于向用户显示信息,以及具有例如鼠标或轨迹球的键盘和指示设备以使得用户可通过该设备向计算机提供输入的计算机上实现。其他类型的设备也可以用于提供与用户的交互;例如,提供给用户的反馈可以是任何形式的感觉反馈,例如视觉反馈、听觉反馈或触觉反馈;并且可以以任何形式接收来自用户的输入,包括声学、语音或触觉输入。另外,计算机可以通过向用户使用的设备发送文档和从用户使用的设备接收文档来与用户交互;例如,通过响应于从web浏览器接收的请求将网页发送到用户的客户端设备上的web浏览器。
本说明书中描述的主题的实施例可以在包括后端组件的计算***中实现,该后端组件作为例如数据服务器,或者其包括例如应用服务器的中间件组件,或者其包括例如具有图形用户界面或Web浏览器的客户端计算机的前端组件,用户可通过该浏览器与本说明书中描述的主题的实现进行交互,或者一个或多个这样的后端、中间件或前端组件的任意组合。***的组件可以通过任何形式或介质的数字数据通信互连,例如通信网络。通信网络的示例包括局域网(“LAN”)和广域网(“WAN”),例如因特网。
计算***可包括客户端和服务器。客户端和服务器通常彼此远离,并且通常通过通信网络进行交互。客户端和服务器的关系通过在各自的计算机上运行并且彼此具有客户端-服务器关系的计算机程序而产生。
虽然本说明书包含许多具体实现细节,但是这些不应被解释为对任何发明或可要求保护范围的限制,而是作为可以特定于特定发明的特定实施例的特征的描述。在单独实施例的上下文中在本说明书中描述的某些特征也可以在单个实施例中组合实现。相反,在单个实施例的上下文中描述的各种特征也可以在多个实施例中单独地或以任何合适的子组合来实现。此外,尽管特征可以被如上描述为以某些组合作用并且甚至最初就如此声明,但是在一些情况下所声明组合中的一个或多个特征可以从该组合中切除出来,并且所声明的组合可以针对子组合或针对子组合的变化。
类似地,尽管在附图中以特定顺序描绘了操作,但是这不应该被理解为要求所述操作以所示的特定顺序或顺次被执行,或者执行所有示出的操作,以实现期望的结果。在某些情况下,多任务处理和并行处理可能是有利的。此外,上述实施例中的各种***模块和组件的分离不应被理解为在所有实施例中都需要这种分离,并且应当理解所描述的程序组件和***通常可以在单个软件产品中被集成在一起或打包成多个软件产品。
已经描述了主题的特定实施例。其他实施例在权利要求的范围内。例如,权利要求中记载的动作可以以不同的顺序执行并且仍然实现期望的结果。作为一个示例,附图中描绘的过程不一定需要所示的特定顺序或顺次来实现期望的结果。在某些实现中,多任务和并行处理可能是有利的。
Claims (7)
1.一种在训练数据上训练具有参数的神经网络的方法,
其中,所述神经网络被配置为接收输入状态并且处理所述输入状态以针对决策集中的每个决策生成相应的得分,并且其中所述方法包括:
接收第一训练数据,所述第一训练数据包括多个预训练文本序列,并且针对每个预训练文本序列,包括对应的预训练金决策序列;
在所述第一训练数据上预训练所述神经网络,以通过优化目标函数,从所述神经网络的参数的初始值确定所述神经网络的所述参数的第一值,对于每个预训练文本序列,所述目标函数取决于由所述神经网络生成的、用于对应于所述预训练文本序列的所述预训练金决策序列中的决策的得分以及取决于用于由所述神经网络生成的、用于对应于所述预训练文本序列的所述预训练金决策序列中的决策的得分的局部归一化;
接收第二训练数据,所述第二训练数据包括多个训练文本序列,以及对于每个训练文本序列,包括对应的金决策序列;以及
在所述第二训练数据上训练所述神经网络,以从所述神经网络的所述参数的所述第一值确定所述神经网络的所述参数的训练值,包括,对于所述第二训练数据中的每个训练文本序列:
维持针对所述训练文本序列的预定数量的候选预测决策序列的波束;
通过使用由所述神经网络根据所述神经网络的所述参数的当前值生成的得分,一次向每个候选预测决策序列添加一个决策来更新所述波束中的每个候选预测决策序列;
在每次决策已被添加到每个候选预测决策序列之后,确定与对应于所述训练文本序列的金决策序列的前缀相匹配的金候选预测决策序列是否已经从所述波束中退出;以及
响应于确定所述金候选预测决策序列已经从所述波束中退出,执行梯度下降的迭代以优化取决于所述金候选预测决策序列和当前在所述波束中的所述候选预测决策序列的目标函数,
其中,所述决策集包括指示单词应该被包括在输入文本序列的压缩表示中的保持标签、以及指示所述单词不应该被包括在所述输入文本序列的压缩表示中的丢弃标签,并且其中,所述金决策序列是包括针对在所述对应的训练文本序列中的每个单词的相应的保持标签或丢弃标签的序列。
2.根据权利要求1中所述的方法,其中,所述神经网络是全局归一化的神经网络。
3.根据前述权利要求中任一项所述的方法,还包括:如果在所述候选预测决策序列已经完成之后所述金候选预测决策序列还没有退出所述波束,则执行梯度下降的迭代以优化取决于所述金决策序列和已完成的候选预测决策序列的目标函数。
4.一种或多种用指令编码的计算机可读存储介质,当由一个或多个计算机执行所述指令时,使得所述一个或多个计算机执行权利要求1-3中任一项所述的方法的操作。
5.一种***,包括一个或多个计算机以及存储指令的一个或多个存储设备,当由所述一个或多个计算机执行所述指令时,使得所述一个或多个计算机执行权利要求1-3中任一项所述的方法的操作。
6.一种用于生成针对输入文本序列的决策序列的***,所述决策序列包括多个输出决策,并且所述***包括:
神经网络,被配置为:
接收输入状态,以及
处理所述输入状态以针对决策集中的每个决策生成相应的得分;以及
子***,被配置为:
维持针对所述输入文本序列的预定数量的候选决策序列的波束;
针对所述决策序列中的每个输出决策:
针对当前在所述波束中的每个候选决策序列:
提供表示所述候选决策序列的状态作为所述神经网络的输入,并且从所述神经网络获得针对多个新候选决策序列中的每一个的相应得分,将具有来自允许决策集的相应允许决策的每个新候选决策序列添加到当前候选决策序列,
根据从所述神经网络获得的所述得分,更新所述波束以仅包括预定数量的具有最高得分的新候选决策序列;
针对更新的波束中的每个新候选决策序列,生成表示所述新候选决策序列的相应状态;以及
在所述决策序列中的最后一个输出决策之后,从所述波束中的所述候选决策序列中选择具有最高得分的候选决策序列作为针对所述输入文本序列的决策序列,
其中,所述神经网络已经在第一训练数据上进行了预训练,所述第一训练数据包括多个预训练文本序列,以及对于每个预训练文本序列包括相应的预训练金决策序列,以通过优化目标函数,从所述神经网络的参数的初始值确定所述神经网络的所述参数的第一值,对于每个预训练文本序列,所述目标函数取决于由所述神经网络生成的、用于对应于所述预训练文本序列的所述预训练金决策序列中的决策的得分以及取决于用于由所述神经网络生成的、用于对应于所述预训练文本序列的所述预训练金决策序列中的决策的得分的局部归一化,以及
其中,所述决策集包括指示单词应该被包括在所述输入文本序列的压缩表示中的保持标签、以及指示所述单词不应该被包括在所述压缩表示中的丢弃标签,并且其中,所述金决策序列是包括针对对应的训练文本序列中每个单词的相应保持标签或丢弃标签的序列。
7.一种或多种用指令编码的计算机可读存储介质,当由一个或多个计算机执行所述指令时,使得所述一个或多个计算机实现由权利要求6中所述***执行的方法。
Applications Claiming Priority (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US201662310491P | 2016-03-18 | 2016-03-18 | |
US62/310,491 | 2016-03-18 | ||
PCT/US2017/013725 WO2017160393A1 (en) | 2016-03-18 | 2017-01-17 | Globally normalized neural networks |
Publications (2)
Publication Number | Publication Date |
---|---|
CN109074517A CN109074517A (zh) | 2018-12-21 |
CN109074517B true CN109074517B (zh) | 2021-11-30 |
Family
ID=57960835
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201780028094.5A Active CN109074517B (zh) | 2016-03-18 | 2017-01-17 | 全局归一化神经网络 |
Country Status (6)
Country | Link |
---|---|
US (1) | US20170270407A1 (zh) |
EP (1) | EP3430577A1 (zh) |
JP (1) | JP6636172B2 (zh) |
KR (1) | KR102195223B1 (zh) |
CN (1) | CN109074517B (zh) |
WO (1) | WO2017160393A1 (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US12032523B2 (en) | 2019-03-13 | 2024-07-09 | Deepmind Technologies Limited | Compressed sensing using neural networks |
Families Citing this family (12)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US10229111B1 (en) * | 2016-02-03 | 2019-03-12 | Google Llc | Sentence compression using recurrent neural networks |
US10638482B2 (en) * | 2017-12-15 | 2020-04-28 | Qualcomm Incorporated | Methods and apparatuses for dynamic beam pair determination |
CN111727442A (zh) * | 2018-05-23 | 2020-09-29 | 谷歌有限责任公司 | 使用质量分数来训练序列生成神经网络 |
CN108959421B (zh) * | 2018-06-08 | 2021-04-13 | 腾讯科技(深圳)有限公司 | 候选回复评价装置和问询回复设备及其方法、存储介质 |
CN109002186B (zh) | 2018-06-28 | 2020-12-25 | 北京金山安全软件有限公司 | 一种输入预测方法及装置 |
CN111105028B (zh) * | 2018-10-26 | 2023-10-24 | 杭州海康威视数字技术股份有限公司 | 一种神经网络的训练方法、装置及序列预测方法 |
CN109871942B (zh) * | 2019-02-19 | 2021-06-11 | 上海商汤智能科技有限公司 | 神经网络的训练方法和装置、***、存储介质 |
CN109886392B (zh) * | 2019-02-25 | 2021-04-27 | 深圳市商汤科技有限公司 | 数据处理方法和装置、电子设备和存储介质 |
EP4040342A4 (en) * | 2019-10-02 | 2023-08-02 | Electronics and Telecommunications Research Institute | METHOD OF LEARNING AND SIMPLIFYING DEEP NEURONAL NETWORK STRUCTURE |
CN111639477B (zh) * | 2020-06-01 | 2023-04-18 | 北京中科汇联科技股份有限公司 | 一种文本重构训练方法及*** |
WO2022146250A1 (en) * | 2020-12-30 | 2022-07-07 | Ozyegin Universitesi | A system and method for the management of neural network models |
CN117077688B (zh) * | 2023-10-17 | 2024-03-29 | 深圳市临其境科技有限公司 | 基于自然语言处理的信息分析方法及*** |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101414300A (zh) * | 2008-11-28 | 2009-04-22 | 电子科技大学 | 一种互联网舆情信息的分类处理方法 |
CN101740024A (zh) * | 2008-11-19 | 2010-06-16 | 中国科学院自动化研究所 | 基于广义流利的口语流利度自动评估方法 |
US8095478B2 (en) * | 2004-04-29 | 2012-01-10 | Microsoft Corporation | Method and system for calculating importance of a block within a display page |
CN103703487A (zh) * | 2011-07-25 | 2014-04-02 | 国际商业机器公司 | 信息识别方法、程序产品以及*** |
Family Cites Families (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7529722B2 (en) * | 2003-12-22 | 2009-05-05 | Dintecom, Inc. | Automatic creation of neuro-fuzzy expert system from online anlytical processing (OLAP) tools |
CN101393645A (zh) * | 2008-09-12 | 2009-03-25 | 浙江大学 | 一种手写体汉字的计算机生成与美化方法 |
US9672811B2 (en) * | 2012-11-29 | 2017-06-06 | Sony Interactive Entertainment Inc. | Combining auditory attention cues with phoneme posterior scores for phone/vowel/syllable boundary detection |
-
2017
- 2017-01-17 KR KR1020187030045A patent/KR102195223B1/ko active IP Right Grant
- 2017-01-17 CN CN201780028094.5A patent/CN109074517B/zh active Active
- 2017-01-17 US US15/407,470 patent/US20170270407A1/en not_active Abandoned
- 2017-01-17 WO PCT/US2017/013725 patent/WO2017160393A1/en active Application Filing
- 2017-01-17 EP EP17702992.3A patent/EP3430577A1/en not_active Withdrawn
- 2017-01-17 JP JP2018548888A patent/JP6636172B2/ja active Active
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US8095478B2 (en) * | 2004-04-29 | 2012-01-10 | Microsoft Corporation | Method and system for calculating importance of a block within a display page |
CN101740024A (zh) * | 2008-11-19 | 2010-06-16 | 中国科学院自动化研究所 | 基于广义流利的口语流利度自动评估方法 |
CN101414300A (zh) * | 2008-11-28 | 2009-04-22 | 电子科技大学 | 一种互联网舆情信息的分类处理方法 |
CN103703487A (zh) * | 2011-07-25 | 2014-04-02 | 国际商业机器公司 | 信息识别方法、程序产品以及*** |
Non-Patent Citations (3)
Title |
---|
A Neural Probabilistic Structured-Prediction Model for Transition-Based Dependency Parsing;HAO ZHOU 等;《PROCEEDINGS OF THE 53RD ANNUAL MEETING OF THE ASSOCIATION FOR COMPUTATIONAL LINGUISTICS AND THE 7TH INTERNATIONAL JOINT CONFERENCE ON NATURAL LANGUAGE PROCESSING》;20150101;第1卷;全文 * |
An artificial neural network approach to automatic speech processing;Siniscalchi,SM 等;《ScienceDirect》;20140922;第140卷;全文 * |
综合评价决策支持***模型的研究与应用;李碧芳;《中国优秀硕士学位论文全文数据库 经济与管理科学辑》;20100531(第5期);全文 * |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US12032523B2 (en) | 2019-03-13 | 2024-07-09 | Deepmind Technologies Limited | Compressed sensing using neural networks |
Also Published As
Publication number | Publication date |
---|---|
JP6636172B2 (ja) | 2020-01-29 |
KR20180122443A (ko) | 2018-11-12 |
WO2017160393A1 (en) | 2017-09-21 |
EP3430577A1 (en) | 2019-01-23 |
CN109074517A (zh) | 2018-12-21 |
US20170270407A1 (en) | 2017-09-21 |
KR102195223B1 (ko) | 2020-12-24 |
JP2019513267A (ja) | 2019-05-23 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN109074517B (zh) | 全局归一化神经网络 | |
US11195521B2 (en) | Generating target sequences from input sequences using partial conditioning | |
US11829860B2 (en) | Processing and generating sets using recurrent neural networks | |
US11809824B1 (en) | Computing numeric representations of words in a high-dimensional space | |
US10409908B2 (en) | Generating parse trees of text segments using neural networks | |
US10268671B2 (en) | Generating parse trees of text segments using neural networks | |
US11222252B2 (en) | Generating representations of input sequences using neural networks | |
US10083169B1 (en) | Topic-based sequence modeling neural networks | |
US10977547B2 (en) | Convolutional gated recurrent neural networks | |
CN109313719B (zh) | 使用神经网络生成文本段的依存性解析 | |
US20180114108A1 (en) | Answer to question neural networks | |
EP3596663B1 (en) | Neural network system | |
US11593640B2 (en) | Augmented recurrent neural network with external memory | |
US20190332919A1 (en) | Sequence processing using online attention | |
CN107870902A (zh) | 神经机器翻译*** | |
US11010664B2 (en) | Augmenting neural networks with hierarchical external memory | |
US11954594B1 (en) | Training recurrent neural networks to generate sequences | |
CN110678882A (zh) | 使用机器学习从电子文档选择回答跨距 | |
US11227206B1 (en) | Generating output sequences from input sequences using neural networks |
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 |