CN109034378B - 神经网络的网络表示生成方法、装置、存储介质和设备 - Google Patents

神经网络的网络表示生成方法、装置、存储介质和设备 Download PDF

Info

Publication number
CN109034378B
CN109034378B CN201811027795.XA CN201811027795A CN109034378B CN 109034378 B CN109034378 B CN 109034378B CN 201811027795 A CN201811027795 A CN 201811027795A CN 109034378 B CN109034378 B CN 109034378B
Authority
CN
China
Prior art keywords
sequence
vector
local
word
representation
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
CN201811027795.XA
Other languages
English (en)
Other versions
CN109034378A (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.)
Tencent Technology Shenzhen Co Ltd
Original Assignee
Tencent Technology Shenzhen Co Ltd
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 Tencent Technology Shenzhen Co Ltd filed Critical Tencent Technology Shenzhen Co Ltd
Priority to CN201811027795.XA priority Critical patent/CN109034378B/zh
Publication of CN109034378A publication Critical patent/CN109034378A/zh
Priority to EP19857335.4A priority patent/EP3848856A4/en
Priority to PCT/CN2019/100212 priority patent/WO2020048292A1/zh
Priority to JP2020551812A priority patent/JP7098190B2/ja
Priority to US17/069,609 priority patent/US11875220B2/en
Application granted granted Critical
Publication of CN109034378B publication Critical patent/CN109034378B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • 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/04Architecture, e.g. interconnection topology
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F40/00Handling natural language data
    • G06F40/40Processing or translation of natural language
    • G06F40/42Data-driven translation
    • G06F40/47Machine-assisted translation, e.g. using translation memory

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Health & Medical Sciences (AREA)
  • Computing Systems (AREA)
  • Biomedical Technology (AREA)
  • Biophysics (AREA)
  • Computational Linguistics (AREA)
  • Data Mining & Analysis (AREA)
  • Evolutionary Computation (AREA)
  • Life Sciences & Earth Sciences (AREA)
  • Molecular Biology (AREA)
  • Artificial Intelligence (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Mathematical Physics (AREA)
  • Software Systems (AREA)
  • Health & Medical Sciences (AREA)
  • Complex Calculations (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

本申请涉及一种神经网络的网络表示生成方法、装置、存储介质和设备,方法包括:获取与输入序列对应的源端向量表示序列;对源端向量表示序列进行线性变换,分别得到与源端向量表示序列对应的请求向量序列、键向量序列和值向量序列;计算请求向量序列与键向量序列之间的逻辑相似度;根据请求向量序列构建局部强化矩阵;基于逻辑相似度和局部强化矩阵进行非线性变换,得到与各元素对应的局部强化的注意力权重分布;按照注意力权重分布,对值向量序列中的值向量进行融合,得到输入序列对应的网络表示序列。本申请提供的方案生成的网络表示序列不仅能强化局部信息,又能保留输入序列中长距离元素之间的联系。

Description

神经网络的网络表示生成方法、装置、存储介质和设备
技术领域
本申请涉及计算机技术领域,特别是涉及一种神经网络的网络表示生成方法、装置、计算机可读存储介质和计算机设备。
背景技术
注意力机制(Attention Mechanism)是针对神经网络中的编码器与解码器的隐藏状态之间的依赖关系建立模型的方法,注意力机制被广泛应用到基于深度学习的自然语言处理(NLP,Natural Language Processing)各个任务中。
SAN(Self-Attention Network,自关注神经网络)是一种基于自关注机制的神经网络模型,属于注意力模型中的一种,能够为输入序列中的每个元素对计算一个注意力权重,从而可以捕获长距离依赖关系,各个元素对应的网络表示并不会收到各个元素间距离的影响。然而,SAN完整地考虑输入序列中每个元素,每个元素和所有元素都要计算注意力权重,这在一定程度上分散了权重的分布,进而弱化了元素之间的联系。
发明内容
基于此,有必要针对现有的自关注神经网络考虑每个元素与所有元素之间的注意力权重会弱化元素之间的联系的技术问题,提供一种神经网络的网络表示生成方法、装置、计算机可读存储介质和计算机设备。
一种神经网络的网络表示生成方法,包括:
获取与输入序列对应的源端向量表示序列;
对所述源端向量表示序列进行线性变换,分别得到与所述源端向量表示序列对应的请求向量序列、键向量序列和值向量序列;
计算所述请求向量序列与所述键向量序列之间的逻辑相似度;
根据所述请求向量序列构建局部强化矩阵;
基于所述逻辑相似度和所述局部强化矩阵进行非线性变换,得到与各所述元素对应的局部强化的注意力权重分布;
按照所述注意力权重分布,对所述值向量序列中的值向量进行融合,得到所述输入序列对应的网络表示序列。
一种神经网络的网络表示生成装置,所述装置包括:
获取模块,用于获取与输入序列对应的源端向量表示序列;
线性变换模块,用于对所述源端向量表示序列进行线性变换,分别得到与所述源端向量表示序列对应的请求向量序列、键向量序列和值向量序列;
逻辑相似度计算模块,用于计算所述请求向量序列与所述键向量序列之间的逻辑相似度;
局部强化矩阵构建模块,用于根据所述请求向量序列构建局部强化矩阵;
注意力权重分布确定模块,用于基于所述逻辑相似度和所述局部强化矩阵进行非线性变换,得到与各所述元素对应的局部强化的注意力权重分布;
融合模块,用于按照所述注意力权重分布,对所述值向量序列中的值向量进行融合,得到所述输入序列对应的网络表示序列。
一种计算机可读存储介质,存储有计算机程序,所述计算机程序被处理器执行时,使得所述处理器执行上述神经网络的网络表示生成方法的步骤。
一种计算机设备,包括存储器和处理器,所述存储器存储有计算机程序,所述计算机程序被所述处理器执行时,使得所述处理器执行上述神经网络的网络表示生成方法的步骤。
上述神经网络的网络表示生成方法、装置、计算机可读存储介质和计算机设备,基于输入序列对应的请求向量序列来构建局部强化矩阵,能够在局部强化范围内分配注意力权重,强化局部信息。在对输入序列对应的源端向量表示序列进行线性变换后,可得到请求向量序列、键向量序列和值向量序列,可根据请求向量序列、键向量序列得到逻辑相似度,然后基于逻辑相似度和局部强化矩阵进行非线性变换,得到局部强化的注意力权重分布,实现了对原有的注意力权重的修正,再根据局部强化的注意力权重分布对值向量序列进行加权求和,可以得到强化了局部信息的网络表示序列,得到的网络表示序列不仅能强化局部信息,又能保留输入序列中长距离元素之间的联系。
附图说明
图1为一个实施例中神经网络的网络表示生成方法的应用环境图;
图2为一个实施例中神经网络的网络表示生成方法的流程示意图;
图3为一个实施例中计算输入序列对应的网络表示序列的过程示意图;
图4为一个实施例中使用高斯分布修正SAN注意力权重分布的系统架构图;
图5为一个实施例中根据请求向量序列构建局部强化矩阵的流程示意图;
图6为一个实施例中根据请求向量序列确定局部强化范围的流程示意图;
图7为一个实施例中根据请求向量序列、键向量序列确定局部强化范围的流程示意图;
图8为一个实施例中多层的堆叠式多头自关注神经网络的结构示意图;
图9为一个具体的实施例中神经网络的网络表示生成方法的流程示意图;
图10为一个实施例中神经网络的网络表示生成装置的结构框图;
图11为一个实施例中计算机设备的结构框图。
具体实施方式
为了使本申请的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本申请进行进一步详细说明。应当理解,此处所描述的具体实施例仅仅用以解释本申请,并不用于限定本申请。
图1为一个实施例中神经网络的网络表示生成方法的应用环境图。参照图1,该神经网络的网络表示生成方法应用于神经网络的网络表示生成系统。该神经网络的网络表示生成系统包括终端110和计算机设备120。终端110和计算机设备120通过蓝牙、USB(Universal Serial Bus,通用串行总线)或网络连接,终端110可向计算机设备120发送待处理的输入序列,可以是实时发送的也可以是非实时发送的,计算机设备120用于接收输入序列,并对输入序列进行变换后输出相应的网络表示序列。终端110具体可以是台式终端或移动终端,移动终端具体可以手机、平板电脑、笔记本电脑等中的至少一种。计算机设备120可以是独立的服务器或终端,也可以是多个服务器组成的服务器集群,可以是提供云服务器、云数据库、云存储和CDN等基础云计算服务的云服务器。
需要说明的是,上述的应用环境只是一个示例,在一些实施例中,计算机设备120可以不通过终端110,直接获取输入序列。例如,当计算机设备为手机时,手机可直接获取输入序列(比如即时文本消息中各词所形成的序列)后,利用手机上配置的神经网络的网络表示生成装置对输入序列进行变换,输出输入序列对应的网络表示序列。
如图2所示,在一个实施例中,提供了一种神经网络的网络表示生成方法。本实施例主要以该方法应用于上述图1中的计算机设备120来举例说明。参照图2,该神经网络的网络表示生成方法具体包括如下步骤:
S202,获取与输入序列对应的源端向量表示序列。
其中,输入序列是要待进行变换后输出相应的网络表示序列的序列。输入序列中包括一组有序排列的元素,以包括I个元素的输入序列为例,输入序列可以用X={x1,x2,x3,...,xI}表示,输入序列的长度为I。
在需要对输入序列进行翻译的场景中,输入序列可以是待翻译文本对应的词序列,输入序列中的各个元素则为词序列中的各个词。若待翻译文本为中文文本,则词序列可以是对待翻译文本进行分词后得到的各个词语按词序排列所形成的序列;若待翻译文本为英文文本,则词序列是各个单词按词序排列所形成的序列。比如,待翻译文本为“Bush helda talk with Sharon”,相应的输入序列X为{Bush,held,a,talk,with,Sharon}。
源端向量表示序列是输入序列中的每个元素相应的源端向量表示所构成的序列。源端向量表示序列中的每个向量表示与输入序列中的每个元素一一对应,源端向量表示序列可以用Z={z1,z2,z3,...,zI}表示。
具体地,计算机设备可将输入序列中的各个元素转换成固定长度的向量(即WordEmbedding,词嵌入)。在一个实施例中,神经网络的网络表示生成方法应用于神经网络模型中,计算机设备可通过神经网络模型的第一层将输入序列中的各个元素转换成相应的向量,比如,将输入序列中的第i个元素xi转化成一个d维的列向量即为zi,输入序列中各元素对应的向量组合得到与输入序列对应的源端向量表示序列,即I个d维的列向量所构成的向量序列。当然,计算机设备也可接收其它设备发送的与输入序列对应的源端向量表示序列。zi以及下文中提到的列向量均可以是行向量,本文为方便解释计算过程,统一用列向量进行描述。
S204,对源端向量表示序列进行线性变换,分别得到与源端向量表示序列对应的请求向量序列、键向量序列和值向量序列。
其中,线性变换可以将属于一个向量空间的向量映射到另一个向量空间,向量空间是相同维度的多个向量所构成的集合。具体地,计算机设备可通过三个不同的可学习参数矩阵对源端向量表示序列进行线性变换,将源端向量表示序列分别映射至三个不同的向量空间中,得到与源端向量表示序列对应的请求向量序列、键向量序列和值向量序列。
在一个实施例中,神经网络的网络表示生成方法应用于基于SAN(自关注神经网络)的模型中,那么请求向量序列、键向量序列和值向量序列均由源端的输入序列对应的源端向量表示序列进行线性变换得到。在另一个实施例中,神经网络的网络表示生成方法应用于包括Encoder-Decoder(编码器-解码器)结构的神经网络模型中,那么键向量序列和值向量序列由编码器对输入序列对应的源端向量表示序列进行编码得到,是编码器的输出,则请求向量序列为解码器的输入,比如可以是目标端向量表示序列,目标端向量表示序列可以是解码器输出的输出序列中各个元素对应的向量表示。
在一个实施例中,计算机设备可通过以下公式,利用三个不同的可学习参数矩阵WQ、WK和WV对源端向量表示序列Z进行线性变换得到请求向量序列Q、键向量序列K和值向量序列V:
Q=Z·WQ
K=Z·WK
V=Z·WV
其中,输入序列X={x1,x2,x3,...,xI}包括I个元素;源端向量表示序列Z={z1,z2,z3,...,zI}中各个元素为d维列向量,即Z为I个d维列向量构成的向量序列,可记为I×d的矩阵;可学习参数矩阵WQ、WK和WV为d×d的矩阵;请求向量序列Q、键向量序列和K值向量序列V为I×d的矩阵。
S206,计算请求向量序列与键向量序列之间的逻辑相似度。
其中,逻辑相似度用于度量输入序列中的每个元素与该输入序列中其它元素之间的相似性。在生成每个元素对应的网络表示时,可基于该相似性为输入序列中其它元素对应的值向量分配相应的注意力权重,从而使得输出的每个元素对应的网络表示考虑了与其它元素之间的联系,使得生成的网络表示能够更准确地表达每个元素的特征,涵盖更丰富的信息。
在一个实施例中,神经网络的网络表示生成方法应用于包括Encoder-Decoder(编码器-解码器)结构的神经网络模型中,则请求向量序列为目标端向量表示序列,计算得到的逻辑相似度用于表示目标端向量表示序列与输入序列对应的键向量序列之间的相似性,基于该相似性为输入序列对应的值向量序列分配相应的注意力权重,可以使源端输出的每个元素的网络表示能够考虑目标端输入的目标端向量表示序列的影响。
在一个实施例中,计算机设备可通过余弦相似性公式计算请求向量序列Q与键向量序列K之间的逻辑相似度矩阵E,即:
Figure BDA0001788970820000061
其中,KT表示键向量序列K的转置矩阵;d为输入序列中每个元素xi被转换为源端向量表示zi的维度,d也是xi对应的网络表示的维度,也是网络隐藏状态向量的维度,在上述公式中除以
Figure BDA0001788970820000062
是为了减小内积,降低计算速度。
下面以具体的计算来说明逻辑相似度矩阵E的计算过程:
Q=(q1,q2,...,qi,...,qI)、K=(k1,k2,...,ki,...,kI);qi、ki为d维列向量,分别为源端向量表示zi对应的请求向量和键向量;在逻辑相似度矩阵E=(e1,e2,...,ei,...,eI)中,ei的各个元素为源端向量表示zi对应的请求向量qi与输入序列中所有元素对应的键向量k1,k2,...,ki,...,kI之间的逻辑相似度,ei是E第i列的元素,ei为I维列向量,计算公式为
Figure BDA0001788970820000063
实质上,ei隐含了第i个元素xi与输入序列中所有元素x1,x2,...,xi,...,xI所构成的I组元素对中两个元素之间的联系。逻辑相似度矩阵E为I×I的矩阵,逻辑相似度矩阵E为:
Figure BDA0001788970820000071
S208,根据请求向量序列构建局部强化矩阵。
其中,局部强化矩阵中列向量的每个元素代表了输入序列中两两元素之间的强弱联系。在生成输入序列中每个元素对应的网络表示时,可通过局部强化矩阵强化输入序列中其它元素中与当前元素联系较大的元素对该网络表示的影响,就可以相对弱化与当前元素联系不大的元素对该网络表示的影响。局部强化矩阵可使得在考虑其它元素对当前元素的网络表示的影响时,使得考虑的范围限制在局部元素中,而不是输入序列中的所有元素,这样,在分配注意力权重时,就可以偏向于在局部元素中分配,为局部元素中某个元素对应的值向量分配的注意力权重的大小和该元素与当前元素之间的强弱联系相关,也就是会为与当前元素联系较强的元素对应的值向量分配较大的注意力权重。
以输入序列“Bush held a talk with Sharon”举例说明,在SAN模型中,在输出元素“Bush”对应的网络表示时,会完整地考虑输入序列中全部的元素“Bush”、“held”、“a”、“talk”、“with”和“Sharon”各自对应的值向量,会为所有元素各自对应的值向量分配相应的注意力权重,这在一定程度上分散了注意力权重的分布,进而弱化了“Bush”与相邻元素之间的联系。
而本实施例中的神经网络的网络表示生成方法,在输出“Bush”对应的网络表示时,可以使得注意力权重在局部强化范围内分配。在输出“Bush”对应的网络表示时,如果元素“Bush”与元素“held”之间的联系很强,会为“held”对应的值向量分配较高的注意力权重,那么与“held”一样,属于“Bush”对应的局部强化范围内的局部元素中的“a talk”也会被注意到,从而分配到较高的注意力权重,这样,短语“held a talk”中各词对应的信息(值向量)就会被捕获并与“Bush”相关联,使得输出的“Bush”的网络表示既能够表达局部信息,又能保留与距离较远的元素之间的依存关系。
因而,计算机设备在生成每个元素对应的网络表示时,需要确定与当前元素对应的局部强化范围,使得对应当前元素的注意力权重的分配限制在该局部强化范围内。
在一个实施例中,局部强化范围可根据局部强化范围的中心点以及局部强化范围的窗口大小这两个变量确定,中心点是指在生成当前元素的网络表示时分配了最高的注意力权重的元素在输入序列中的位置,窗口大小是指局部强化范围的长度,决定了注意力权重集中在多少个元素内分配,则以中心点为中心、以窗口大小为跨度所涉及到的元素即为局部强化范围。由于每个元素对应的局部强化范围都与每个元素自身相关,是与每个元素对应的,而非固定在某个范围内,使得生成的每个元素的网络表示可以灵活地捕获丰富的上下文信息。
在一个实施例中,计算机设备可按照中心点、窗口大小确定各个元素对应的局部强化范围,具体包括:将中心点作为高斯分布的期望、将窗口大小作为高斯分布的方差;根据按照均值和方差确定的高斯分布确定局部强化范围;计算机设备可基于确定的局部强化范围计算两两元素之间的强弱联系,得到局部强化矩阵,其中,两两元素之间的强弱联系通过以下公式计算得到:
Figure BDA0001788970820000081
其中,Gij表示输入序列中第j个元素与第i个元素对应的中心点Pi之间的强弱联系,Gij为局部强化矩阵G中第i列向量的第j个元素的值;Pi表示第i个元素对应的局部强化范围的中心点;Di表示第i个元素对应的局部强化范围的窗口大小。
根据公式(2)可知,局部强化矩阵G为I×I的矩阵,包括I个列向量,且每个列向量的维度为I。局部强化矩阵G的第i列向量中各个元素的值是基于输入序列中第i个元素对应的局部强化范围确定的,公式(2)是关于中心点Pi对称的函数,分子代表了输入序列中第j个元素与第i个元素对应的中心点Pi之间的距离,距离越近,与Gij越大,说明第j个元素与第i个元素联系越强,反之距离越远,Gij越小,说明第j个元素与第i个元素联系越弱。也就是,在生成第i个元素对应的网络表示时,注意力权重会在靠近中心点Pi的元素之间集中分配。
需要说明的是,采用根据高斯分布变形的公式(2)计算Gij只是一个示例,在一些实施例中,在确定了局部强化范围对应的中心点和窗口大小后,可将中心点作为期望、窗口大小作为方差,并通过其它具有期望和方差的分布计算Gij的值,从而得到局部强化矩阵G,比如泊松分布或二项分布等。
S210,基于逻辑相似度和局部强化矩阵进行非线性变换,得到与各元素对应的局部强化的注意力权重分布。
逻辑相似度表征了输入序列中每个元素对中两两元素的相似性,局部强化矩阵表征了输入序列中每个元素对中两两元素的强弱联系,结合二者可用于计算局部强化的注意力权重分布。
在一个实施例中,步骤S210,基于逻辑相似度和局部强化矩阵进行非线性变换,得到与各元素对应的局部强化的注意力权重分布包括:
根据局部强化矩阵对逻辑相似度进行修正得到局部强化的逻辑相似度;对局部强化的逻辑相似度进行归一化处理,得到与各元素对应的局部强化的注意力权重分布。
具体地,计算机设备在得到输入序列中每个元素对中两两元素的逻辑相似度和强弱联系后,可通过强弱联系对逻辑相似度进行修正,得到局部强化的逻辑相似度。在一个实施例中,可将包括了所有元素对各自对应的逻辑相似度的逻辑相似度矩阵E与包括了所有元素对各自对应的强弱联系的局部强化矩阵G相加,以对逻辑相似度矩阵进行修正(也叫偏移),再对修正后的逻辑相似度矩阵中的逻辑相似度向量进行归一化处理,得到局部强化的注意力权重分布。
对修正后的逻辑相似度矩阵E′中的逻辑相似度向量进行归一化处理,是以每个列向量ei′为单位进行归一化处理,列向量ei′中每一个元素的值范围都(0,1)之间、且所有元素的和为1。对列向量ei′进行归一化,能够凸显其中最大的值并抑制远低于最大值的其他分量,可以得到输入序列中第i个元素对应的局部强化的注意力权重分布。
在一个实施例中,局部强化的注意力权重分布A可通过以下公式计算得到:
A=softmax(E+G),
其中,softmax函数为归一化处理函数,A为包括输入序列中每个元素对应的注意力权重分布的矩阵;A={α123,...,αI},A包括I个I维的列向量,A中第i个元素αi代表输入序列中第i个元素xi对应的注意力权重分布。
S212,按照注意力权重分布,对值向量序列中的值向量进行融合,得到输入序列对应的网络表示序列。
其中,网络表示序列是多个网络表示(向量表示)所构成的序列,将输入序列输入至神经网络模型中,经过神经网络模型隐藏层中模型参数的线性变换或非线性变换,输出与该输入序列对应的网络表示序列。
具体地,在输出当前元素xi对应的网络表示时,计算机设备从局部强化后的注意力权重分布矩阵中获取与该元素对应的注意力权重分布αi,以该元素对应的注意力权重分布αi中的每个元素为权重系数,对值向量序列中的值向量进行加权求和,得到当前元素xi对应的网络表示oi,则输入序列对应的网络表示序列O由多个网络表示组成,比如O={o1,o2,o3,...,oI}。
输入序列对应的网络表示序列O中第i个元素oi可通过以下公式计算得到:
Figure BDA0001788970820000101
由于αij是常数,vj是d维列向量,则oi也是d维列向量,即:在输入序列中第i个元素xi对应的注意力权重分布为αi={αi1i2i3,...,αiI}时,输入序列对应的K值向量序列为V={v1,v2,v3,...,vI},则xi对应的网络表示oi可通过以下公式计算得到:
oi=αi1v1i2v2i3v3+...+αiIvI.
由于当前元素对应的注意力权重分布是基于原有的逻辑相似度进行修正后得到的局部强化的注意力权重分布,因而加权求和时并不是完整地考虑输入序列中所有元素对应的值向量,而是着重考虑属于局部强化范围内的元素对应的值向量,这样,输出的当前元素的网络表示包含了与当前元素相关联的局部信息。
需要说明的是,本申请所使用的术语“元素”可在本文中用于描述向量(包括列向量或矩阵向量)基本组成单位,比如,“输入序列中的元素”是指输入序列中的各个输入,“矩阵中的元素”是指构成矩阵的各个列向量,“列向量中的元素”是指列向量中的各个数值,即“元素”是指构成序列、向量或矩阵的基本组成单位。
如图3所示,为一个实施例中计算输入序列对应的网络表示序列的过程示意图。参照图3,在得到输入序列X对应的向量化表示Z后,Z被三个不同的可学习参数矩阵线性变换为请求向量序列Q、键向量序列K和值向量序列V,接着通过点积运算计算每个键值对之间的逻辑相似度,得到逻辑相似度矩阵E,然后根据Q或K构建局部强化矩阵G,利用G对E进行修正得到局部强化的逻辑相似度矩阵E′,接着利用softmax函数对E′进行归一化处理,得到局部强化的注意力权重分布矩阵A,最后对A与值向量序列V进行点积运算,输出网络表示序列O。
如图4所示,为一个实施例中使用高斯分布修正SAN注意力权重分布的系统架构图。以输入序列为“Bush held a talk with Sharon”、且当前元素为“Bush”举例说明:在图4左边,利用原有的SAN构建基本模型,以得到每个元素对(输入序列中两两元素构成)之间的逻辑相似度,基于该逻辑相似度计算得到的“Bush”对应的注意力权重分布考虑了所有词语,“held”分配的注意力权重最高(柱条高度代表注意力权重的大小),其余词语分配的注意力权重较低。参照图4中间,利用高斯分布计算当前元素“Bush”对应的局部强化范围的中心点的位置约等于4,对应了输入序列中的词“talk”,局部强化范围的窗口大小约等于3,也就是当前元素“Bush”对应的局部强化范围是以词“talk”为中心的3个词所对应的位置,基于确定的局部强化范围计算局部强化矩阵,利用局部强化矩阵对图4左边得到的逻辑相似度进行修正,使得修正后注意力权重的分配集中在这3个词之间,且“talk”分配的注意力权重最高。结合图4左边和图4中间,得到图4右边经过修正后的与当前元素“Bush”对应的注意力权重分布,即词组“held a talk”分得了大部分注意力权重,在计算“Bush”对应的网络表示时,会着重考虑“held a talk”这三个词分别对应的值向量,这样“held a talk”的信息就会被捕获并与“Bush”相关联。
上述神经网络的网络表示生成方法,基于输入序列对应的请求向量序列来构建局部强化矩阵,能够在局部强化范围内分配注意力权重,强化局部信息。在对输入序列对应的源端向量表示序列进行线性变换后,可得到请求向量序列、键向量序列和值向量序列,可根据请求向量序列、键向量序列得到逻辑相似度,然后基于逻辑相似度和局部强化矩阵进行非线性变换,得到局部强化的注意力权重分布,实现了对原有的注意力权重的修正,再根据局部强化的注意力权重分布对值向量序列进行加权求和,可以得到强化了局部信息的网络表示序列,得到的网络表示序列不仅能强化局部信息,又能保留输入序列中长距离元素之间的联系。
如图5所示,在一个实施例中,步骤S208,根据请求向量序列构建局部强化矩阵包括:
S502,根据请求向量序列确定各个元素对应的局部强化范围的中心点。
其中,输入序列中各个元素对应的局部强化范围由各个元素对应的中心点和窗口大小确定,而各个元素对应的中心点依赖于各个元素所对应的请求向量,因此,可根据请求向量确定各个元素对应的局部强化范围的中心点。
在一个实施例中,步骤S502,根据请求向量序列确定各个元素对应的局部强化范围的中心点包括:通过第一前馈神经网络对请求向量序列中的各个请求向量进行变换,得到各元素对应的第一标量;通过非线性变换函数,对各第一标量进行非线性变换,得到与输入序列长度成比例的第二标量;将第二标量作为各元素对应的局部强化范围的中心点。
具体地,计算机设备可根据在步骤S204中获得的请求向量序列确定各个元素对应的局部强化范围的中心点。以输入序列中第i个元素xi为例,其对应的局部强化范围的中心点可通过以下步骤得到:
1)计算机设备通过第一前馈神经网络将第i个元素对应的请求向量qi映射成一个隐藏状态,并通过
Figure BDA0001788970820000124
对其进行线性变换,得到输入序列中各个元素对应的第一标量pi,第一标量pi是属于实数空间的一个数值,计算公式为:
Figure BDA0001788970820000121
其中,tanh(WPqi)是第一前馈神经网络中的一部分,tanh是激活函数,qi是输入序列中第i个元素对应的请求向量,
Figure BDA0001788970820000122
与WP均为可训练的线性变换矩阵,/>
Figure BDA0001788970820000123
是UP的转置矩阵,UP是一个d维列向量,则/>
Figure BDA0001788970820000131
是一个d维行向量,这样可以将前馈神经网络输出的高维向量映射为一个标量。本申请此处以及下文中使用前馈神经网络将向量映射为隐藏状态并不限定神经网络模型的映射方法,可替换为其它神经网络模型,比如长短时记忆(Long Short-Term Memory,LSTM)模型及其变种,门控单元(Gated Unit)及其变种,或者简单的线性变换等。
2)计算机设备通过非线性变换函数将第一标量pi转换为一个值域为(0,1)的标量,然后与输入序列长度I相乘,得到一个值域为(0,I)的中心点位置Pi,Pi即为第i个元素对应的局部强化范围的中心点,与输入序列长度I成比例,可通过以下公式计算得到:
Pi=I·sigmoid(pi)
其中,sigmoid是非线性变换函数,用于可将pi转换为一个值域为(0,1)的标量,此处以及下文中采用sigmoid非线性变换函数转换标量的方式也可以由其它可将任意实数映射到(0,1)之间的方法代替,本申请并不作限制。
计算机设备将计算得到的Pi作为输入序列中第i个元素xi对应的局部强化范围的中心点,比如,输入序列的长度I为10,计算得到的Pi等于5,则xi对应的局部强化范围的中心点是输入序列中第5个元素,在生成xi对应的网络表示时,输入序列中第5个元素的值向量分配的注意力权重最高。
计算机设备可重复上述步骤,直至根据请求向量序列中各个请求向量得到各个元素对应的局部强化范围的中心点。
S504,根据请求向量序列确定各个元素对应的局部强化范围的窗口大小。
为灵活地预测窗口大小,可针对每个元素都预测相应的窗口大小,计算机设备可根据请求向量序列中的各个请求向量确定各个元素对应的局部强化范围的窗口大小,即每个请求向量对应一个窗口大小。
在一个实施例中,步骤S504,根据请求向量序列确定各个元素对应的局部强化范围的窗口大小包括:通过第二前馈神经网络对请求向量序列中的各个请求向量进行线性变换,得到各元素对应的第三标量;通过非线性变换函数,对各第三标量进行非线性变换,得到与输入序列长度成比例的第四标量;将第四标量作为各元素对应的局部强化范围的窗口大小。
具体地,计算机设备可根据在步骤S204中获得的请求向量序列确定各个元素对应的局部强化范围的窗口大小。以输入序列中第i个元素xi为例,其对应的局部强化范围的窗口大小可通过以下步骤得到:
1)计算机设备通过第二前馈神经网络将第i个元素对应的请求向量qi映射成一个隐藏状态,并通过
Figure BDA0001788970820000141
对其进行线性变换,得到输入序列中各个元素对应的第三标量zi,第三标量zi是属于实数空间的一个数值,计算公式为:
Figure BDA0001788970820000142
其中,tanh(WPqi)是第二前馈神经网络中的一部分,tanh是激活函数,qi是输入序列中第i个元素对应的请求向量,WP是与前文计算中心点隐藏状态使用的相同的参数矩阵,
Figure BDA0001788970820000143
为可训练的线性变换矩阵,/>
Figure BDA0001788970820000144
是UD的转置矩阵,UD是一个d维列向量,则/>
Figure BDA0001788970820000145
是一个d维行向量,这样可以将前馈神经网络输出的高维向量映射为一个标量。
2)计算机设备通过非线性变换函数将第三标量zi转换为一个值域为(0,1)的标量,然后与输入序列长度I相乘,得到一个值域为(0,I)的窗口大小Di,Di即为第i个元素对应的局部强化范围的窗口大小,与输入序列长度I成比例,可通过以下公式计算得到:
Di=I·sigmoid(zi);
其中,sigmoid是非线性变换函数,用于将zi转换为一个值域为(0,1)的标量。
计算机设备将计算得到的Zi作为输入序列中第i个元素xi对应的局部强化范围的窗口大小,比如,输入序列的长度I为10,计算得到的Zi等于7,则xi对应的局部强化范围的窗口大小是以中心点为中心的7个元素,在生成xi对应的网络表示时,注意力权重在这7个元素中集中分配。
计算机设备可重复上述步骤,直至根据请求向量序列中各个请求向量得到各个元素对应的局部强化范围的窗口大小。
S506,按照中心点、窗口大小确定各个元素对应的局部强化范围。
从步骤S502和步骤S504可以看出,由于输入序列中每个元素对应的请求向量都不同,因此每个元素对应的中心点、窗口大小也就不同,那么每个元素对应的局部强化范围也就不同,是依据每个元素本身的特性来选择局部强化范围,更为灵活。
S508,基于局部强化范围计算两两元素之间的强弱联系,得到局部强化矩阵。
具体地,计算机设备可基于确定的局部强化范围计算两两元素之间的强弱联系,得到局部强化矩阵,其中,两两元素之间的强弱联系通过以下公式计算得到:
Figure BDA0001788970820000151
Gij为局部强化矩阵G中第i列向量的第j个元素的值。
如图6所示,为一个实施例中根据请求向量序列确定局部强化范围的流程示意图。参照图6,先通过前馈神经网络将请求向量序列映射成隐藏状态,然后利用线性变换将隐藏状态映射成一个在实数空间的标量,再通过非线性变换函数sigmoid将该标量转换成一个值域为(0,1)的标量,再与输入序列长度I相乘,得到中心点和窗口大小,从而确定局部强化范围,基于局部强化范围计算得到局部强化矩阵。
在上述实施例中,通过对输入序列中每个元素对应的请求向量进行变换,可灵活地为每个元素确定相应的局部强化范围,而非对输入序列固定一个局部强化范围,能够有效地提升输入序列中长距离元素之间的依赖联系。
在一个实施例中,步骤S208,根据请求向量序列构建局部强化矩阵包括:根据请求向量序列确定各个元素对应的局部强化范围的中心点;根据键向量序列确定统一的局部强化范围的窗口大小;按照中心点、窗口大小确定各个元素对应的局部强化范围;基于局部强化范围计算两两元素之间的强弱联系,得到局部强化矩阵。
在本实施例中,可采用与前文相同的方式根据请求向量序列确定各个元素对应的局部强化范围,在此不再赘述。而对于窗口大小,考虑全局上下文信息,输入序列中所有元素所对应的局部强化范围的窗口大小由一个统一的窗口大小决定,需要融合输入序列中所有元素的信息。
在一个实施例中,根据键向量序列确定统一的局部强化范围的窗口大小包括:获取键向量序列中的各个键向量;计算各键向量的平均值;对平均值进行线性变换得到第五标量;通过非线性变换函数对第五标量进行非线性变换,得到与输入序列长度成比例的第六标量;将第六标量作为统一的局部强化范围的窗口大小。
具体地,计算机设备可根据在步骤S204中获得的键向量序列确定统一的局部强化范围的窗口大小,也就是每个元素对应的局部强化范围的窗口大小是相同的,该统一的窗口大小可通过以下步骤得到:
1)计算机设备获取输入序列对应的键向量序列K,计算键向量序列K中所有键向量的平均值
Figure BDA0001788970820000161
Figure BDA0001788970820000162
2)计算机设备对得到的平均值
Figure BDA0001788970820000163
进行线性变换,生成一个在实数空间的第五标量z:
Figure BDA0001788970820000164
其中,
Figure BDA0001788970820000165
是与前文计算窗口大小隐藏状态使用的相同的参数矩阵,WD为可训练的线性变换矩阵。
3)计算机设备通过非线性变换函数将第五标量z转换为一个值域为(0,1)的标量,然后与输入序列长度I相乘,得到一个值域为(0,I)的窗口大小D,D即为统一的局部强化范围的窗口大小,与输入序列长度I成比例,可通过以下公式计算得到:
D=I·sigmoid(z);
其中,sigmoid是非线性变换函数,用于将z转换为一个值域为(0,1)的标量。
虽然,每个元素对应的局部强化范围的窗口大小是相同的,但由于每个元素对应的中心点是依据相应的请求向量计算得到的,因此,每个元素对应的局部强化范围不相同。计算机设备可基于确定的局部强化范围计算两两元素之间的强弱联系,得到局部强化矩阵,其中,两两元素之间的强弱联系通过以下公式计算得到:
Figure BDA0001788970820000171
Gij为局部强化矩阵G中第i列向量的第j个元素的值。
如图7所示,为一个实施例中根据请求向量序列和键向量序列确定局部强化范围的流程示意图。参照图7,分别通过前馈神经网络将请求向量序列映射成隐藏状态,通过平均池对键向量序列求平均值,然后分别利用线性变换将隐藏状态映射成一个在实数空间的标量,将平均值映射成一个在实数空间的标量,再通过非线性变换函数sigmoid将得到标量分别转换成一个值域为(0,1)的标量,再与输入序列长度I相乘,得到中心点和窗口大小,从而确定局部强化范围。
在上述实施例中,通过对输入序列对应的键向量序列进行变换,该键向量序列包括了输入序列中所有元素对应的特征向量(键向量),因而确定的统一的窗口大小考虑了全部的上下文信息,使得基于该统一的窗口大小确定的每个元素对应的局部强化范围可以捕获丰富的上下文信息。
在一个实施例中,步骤S204,对源端向量表示序列进行线性变换,分别得到与源端向量表示序列对应的请求向量序列、键向量序列和值向量序列包括:将源端向量表示序列分割成多组低维度的源端向量表示子序列;依据多组不同的参数矩阵,分别对源端向量表示子序列进行不同的线性变换,得到多组与源端向量表示子序列对应的请求向量序列、键向量序列和值向量序列;方法还包括:将与源端向量表示子序列对应的多组网络表示子序列拼接后进行线性变换,得到输出的网络表示序列。
具体地,可采用堆式多头(Stacked Multi-Head)神经网络对输入序列对应的源端向量表示序列进行处理,先对源端向量表示序列进行分割处理,得到多组(也叫多头)低维度的源端向量表示子序列。比如,源端向量表示序列包括5个元素,每个元素是512维的列向量,将其分割成8份,也就是得到8个5×64的源端向量表示子序列。分别将这8个源端向量表示子序列作为输入向量,通过不同的子空间进行变换,输出8个5×64的网络表示子序列,对这8个网络表示子序列拼接后进行线性变换,输出一个5×512维的网络表示序列。
举例说明:堆式多头神经网络包括H组子空间,首先输入序列X={x1,x2,x3,...,xI}被转化成源端向量表示序列Z={z1,z2,z3,...,zI}。Z={z1,z2,z3,...,zI}被分割后得到H个源端向量表示子序列。然后,分别在各个子空间中对源端向量表示子序列进行变换,以在第h(h=1、2、…、H)个子空间中进行变换来举例说明:在第h个子空间中,通过相应的可学习参数矩阵
Figure BDA0001788970820000181
Wh K和Wh V对Zh={zh1,zh2,zh3,...,zhI}作线性变换,得到相应的请求向量序列Qh、键向量序列Kh和值向量序列Vh,在这H个子空间中,各个子空间使用的这三个可学习参数矩阵都不相同,使得各个子空间分别获得不同的特征向量,进而不同的子空间可以关注不同的局部信息。
接着,在第h个子空间中,计算请求向量序列与键向量序列之间的逻辑相似度Eh
Figure BDA0001788970820000182
随后,根据请求向量序列Qh或键向量序列Kh构建与第h个子空间对应的局部强化矩阵Gh,在局部强化矩阵Gh中,每个元素Ghi,hj的计算公式为/>
Figure BDA0001788970820000183
具体是根据Qh确定第i个元素对应的局部强化范围的中心点Phi,根据Qh或Kh确定第i个元素对应的局部强化范围的窗口大小Dhi,Ghi,hj是局部强化矩阵Gh中第i列向量的第j个元素的值,Ghi,hj表示第h个子空间所表达的输入序列中第j个元素与第i个元素对应的中心点Phi之间的强弱联系。
然后,在第h个子空间中,应用softmax非线性变换,将逻辑相似度转换为注意力权重分布,并通过局部强化矩阵Gh对逻辑相似度进行修正,得到注意力权重分布Ah=softmax(Eh+Gh),继续在第h个子空间中,通过O=Concat(O1,O2,O3,...,OH)WO计算得到输入序列对应的输出表示序列Oh。最后,将各个子空间的输出表示序列Oh进行拼接,再进行一次线性变换得到最终输出向量O=Concat(O1,O2,O3,...,Oh,...,OH)WO
在一个实施例中,方法还包括:在得到输入序列对应的网络表示序列后,将网络表示序列作为新的源端向量表示序列,返回对源端向量表示序列进行线性变换,分别得到与源端向量表示序列对应的请求向量序列、键向量序列和值向量序列的步骤继续执行,直至达到循环停止条件时输出最终的网络表示序列。
具体地,神经网络可堆叠多层计算,不管是一层的神经网络还是堆式多头的神经网络,均可以重复多层进行计算。在每层的计算中,将上一层的输出作为下一层的输入,重复执行进行线性变换,分别得到对应的请求向量序列、键向量序列和值向量序列的步骤,直至得到当前层的输出,即为当前层的网络表示序列。考虑到效率和性能重复的次数可以是6次,每层的神经网络的网络参数都不一样,可以理解,重复6次的过程实际上是将原来的输入序列的源端向量表示序列通过每层的网络参数更新6次的过程。
比如,在堆叠式多头神经网络中,第一层的输出为OL1,在第二层的计算中,将OL1作为输入,通过第二层的网络参数对OL1进行变换,输出第二层的输出OL2…直至达到重复次数,将重复了6次的输出作为最终的输出,即将OL6作为输入序列对应的网络表示序列。
如图8所示,为一个实施例中多层的堆叠式多头自关注神经网络的结构示意图。参照图8,对于每一层来说,输入是相同的,输入均为上一层的输出,然后将输入分割成多个子输入,经过多个子空间(也称多个头)各自的网络参数分别对子输入进行相同的变换,得到每个子空间的输出,最后将这多个输出拼接后得到当前层的输出,当前层的作为下一层的输入,重复多次,将最后一层的输出作为最终的输出。
在一个实施例中,输入序列可以是待翻译的文本序列,输出的网络表示序列是翻译后的文本中各词对应的特征向量,因而可以根据输出的网络表示序列确定翻译后的句子。本申请各种实施例在较长短语和较长句子的翻译上,翻译质量有显著提升。
如图9所示,为一个实施例中神经网络的网络表示方法的流程示意图,具体包括以下步骤:
S902,获取与输入序列对应的源端向量表示序列。
S904,将源端向量表示序列分割成多组低维度的源端向量表示子序列。
S906,依据多组不同的参数矩阵,分别对源端向量表示子序列进行不同的线性变换,得到多组与源端向量表示子序列对应的请求向量序列、键向量序列和值向量序列。
S908,计算请求向量序列与键向量序列之间的逻辑相似度。
S910,通过第一前馈神经网络对请求向量序列中的各个请求向量进行变换,得到各元素对应的第一标量。
S912,通过非线性变换函数,对各第一标量进行非线性变换,得到与输入序列长度成比例的第二标量。
S914,将第二标量作为各元素对应的局部强化范围的中心点。
S9162,通过第二前馈神经网络对请求向量序列中的各个请求向量进行线性变换,得到各元素对应的第三标量。
S9164,通过非线性变换函数,对各第三标量进行非线性变换,得到与输入序列长度成比例的第四标量。
S9166,将第四标量作为各元素对应的局部强化范围的窗口大小。
S9161,获取键向量序列中的各个键向量,计算各键向量的平均值。
S9163,对平均值进行线性变换得到第五标量。
S9165,通过非线性变换函数对第五标量进行非线性变换,得到与输入序列长度成比例的第六标量。
S9167,将第六标量作为统一的局部强化范围的窗口大小。
S918,按照中心点、窗口大小确定各个元素对应的局部强化范围。
S920,基于局部强化范围计算两两元素之间的强弱联系,得到局部强化矩阵。
S922,根据局部强化矩阵对逻辑相似度进行修正得到局部强化的逻辑相似度。
S924,对局部强化的逻辑相似度进行归一化处理,得到与各元素对应的局部强化的注意力权重分布。
S926,按照注意力权重分布,对值向量序列中的值向量进行融合,得到输入序列对应的网络表示序列。
S928,将与源端向量表示子序列对应的多组网络表示子序列拼接后进行线性变换,得到输出的网络表示序列。
S930,将输出的网络表示序列作为新的源端向量表示序列,返回步骤S904直至得到最终的网络表示序列。
上述神经网络的网络表示生成方法,基于输入序列对应的请求向量序列来构建局部强化矩阵,能够在局部强化范围内分配注意力权重,强化局部信息。在对输入序列对应的源端向量表示序列进行线性变换后,可得到请求向量序列、键向量序列和值向量序列,可根据请求向量序列、键向量序列得到逻辑相似度,然后基于逻辑相似度和局部强化矩阵进行非线性变换,得到局部强化的注意力权重分布,实现了对原有的注意力权重的修正,再根据局部强化的注意力权重分布对值向量序列进行加权求和,可以得到强化了局部信息的网络表示序列,得到的网络表示序列不仅能强化局部信息,又能保留输入序列中长距离元素之间的联系。
应该理解的是,虽然图9的流程图中的各个步骤按照箭头的指示依次显示,但是这些步骤并不是必然按照箭头指示的顺序依次执行。除非本文中有明确的说明,这些步骤的执行并没有严格的顺序限制,这些步骤可以以其它的顺序执行。而且,图9中的至少一部分步骤可以包括多个子步骤或者多个阶段,这些子步骤或者阶段并不必然是在同一时刻执行完成,而是可以在不同的时刻执行,这些子步骤或者阶段的执行顺序也不必然是依次进行,而是可以与其它步骤或者其它步骤的子步骤或者阶段的至少一部分轮流或者交替地执行。
在一个实施例中,如图10所示,提供了一种神经网络的网络表示生成装1000,该装置包括获取模块1002、线性变换模块1004、逻辑相似度计算模块1006、局部强化矩阵构建模块1008、注意力权重分布确定模块1010和融合模块1012,其中:
获取模块1002,用于获取与输入序列对应的源端向量表示序列;
线性变换模块1004,用于对源端向量表示序列进行线性变换,分别得到与源端向量表示序列对应的请求向量序列、键向量序列和值向量序列;
逻辑相似度计算模块1006,用于计算请求向量序列与键向量序列之间的逻辑相似度;
局部强化矩阵构建模块1008,用于根据请求向量序列构建局部强化矩阵;
注意力权重分布确定模块1010,用于基于逻辑相似度和局部强化矩阵进行非线性变换,得到与各元素对应的局部强化的注意力权重分布;
融合模块1012,用于按照注意力权重分布,对值向量序列中的值向量进行融合,得到输入序列对应的网络表示序列。
在一个实施例中,局部强化矩阵构建模块1008还用于根据请求向量序列确定各个元素对应的局部强化范围的中心点;根据请求向量序列确定各个元素对应的局部强化范围的窗口大小;按照中心点、窗口大小确定各个元素对应的局部强化范围;基于局部强化范围计算两两元素之间的强弱联系,得到局部强化矩阵。
在一个实施例中,局部强化矩阵构建模块1008还用于根据请求向量序列确定各个元素对应的局部强化范围的中心点;根据键向量序列确定统一的局部强化范围的窗口大小;按照中心点、窗口大小确定各个元素对应的局部强化范围;基于局部强化范围计算两两元素之间的强弱联系,得到局部强化矩阵。
在一个实施例中,局部强化矩阵构建模块1008还用于通过第一前馈神经网络对请求向量序列中的各个请求向量进行变换,得到各元素对应的第一标量;通过非线性变换函数,对各第一标量进行非线性变换,得到与输入序列长度成比例的第二标量;将第二标量作为各元素对应的局部强化范围的中心点。
在一个实施例中,局部强化矩阵构建模块1008还用于通过第二前馈神经网络对请求向量序列中的各个请求向量进行线性变换,得到各元素对应的第三标量;通过非线性变换函数,对各第三标量进行非线性变换,得到与输入序列长度成比例的第四标量;将第四标量作为各元素对应的局部强化范围的窗口大小。
在一个实施例中,局部强化矩阵构建模块1008还用于获取键向量序列中的各个键向量;计算各键向量的平均值;对平均值进行线性变换得到第五标量;通过非线性变换函数对第五标量进行非线性变换,得到与输入序列长度成比例的第六标量;将第六标量作为统一的局部强化范围的窗口大小。
在一个实施例中,局部强化矩阵构建模块1008还用于将中心点作为高斯分布的期望、将窗口大小作为高斯分布的方差;根据按照均值和方差确定的高斯分布确定局部强化范围;依据各元素在输入序列中的次序,将两两元素之间的强弱联系依次排列,得到局部强化矩阵;其中,两两元素之间的强弱联系通过以下公式计算得到:
Figure BDA0001788970820000231
其中,Gij表示输入序列中第j个元素与第i个元素对应的中心点Pi之间的强弱联系,Gij为局部强化矩阵G中第i列向量的第j个元素的值;Pi表示第i个元素对应的局部强化范围的中心点;Di表示第i个元素对应的局部强化范围的窗口大小。
在一个实施例中,注意力权重分布确定模块1010还用于根据局部强化矩阵对逻辑相似度进行修正得到局部强化的逻辑相似度;对局部强化的逻辑相似度进行归一化处理,得到与各元素对应的局部强化的注意力权重分布。
在一个实施例中,线性变换模块1004还用于将源端向量表示序列分割成多组低维度的源端向量表示子序列;依据多组不同的参数矩阵,分别对源端向量表示子序列进行不同的线性变换,得到多组与源端向量表示子序列对应的请求向量序列、键向量序列和值向量序列;该装置还包括拼接模块,用于将与源端向量表示子序列对应的多组网络表示子序列拼接后进行线性变换,得到输出的网络表示序列。
在一个实施例中,该装置1000还包括循环模块,循环模块用于在得到输入序列对应的网络表示序列后,将网络表示序列作为新的源端向量表示序列,返回对源端向量表示序列进行线性变换,分别得到与源端向量表示序列对应的请求向量序列、键向量序列和值向量序列的步骤继续执行,直至达到循环停止条件时输出最终的网络表示序列。
上述神经网络的网络表示生成装置1000,基于输入序列对应的请求向量序列来构建局部强化矩阵,能够在局部强化范围内分配注意力权重,强化局部信息。在对输入序列对应的源端向量表示序列进行线性变换后,可得到请求向量序列、键向量序列和值向量序列,可根据请求向量序列、键向量序列得到逻辑相似度,然后基于逻辑相似度和局部强化矩阵进行非线性变换,得到局部强化的注意力权重分布,实现了对原有的注意力权重的修正,再根据局部强化的注意力权重分布对值向量序列进行加权求和,可以得到强化了局部信息的网络表示序列,得到的网络表示序列不仅能强化局部信息,又能保留输入序列中长距离元素之间的联系。
图11示出了一个实施例中计算机设备120的内部结构图。如图11所示,该计算机设备包括该计算机设备包括通过系统总线连接的处理器、存储器、网络接口。其中,存储器包括非易失性存储介质和内存储器。该计算机设备的非易失性存储介质存储有操作系统,还可存储有计算机程序,该计算机程序被处理器执行时,可使得处理器实现神经网络的网络表示生成方法。该内存储器中也可储存有计算机程序,该计算机程序被处理器执行时,可使得处理器执行神经网络的网络表示生成方法。
本领域技术人员可以理解,图11中示出的结构,仅仅是与本申请方案相关的部分结构的框图,并不构成对本申请方案所应用于其上的计算机设备的限定,具体的计算机设备可以包括比图中所示更多或更少的部件,或者组合某些部件,或者具有不同的部件布置。
在一个实施例中,本申请提供的神经网络的网络表示生成装置1000可以实现为一种计算机程序的形式,计算机程序可在如图11所示的计算机设备上运行。计算机设备的存储器中可存储组成该神经网络的网络表示生成装置1000的各个程序模块,比如,图10所示的获取模块1002、线性变换模块1004、逻辑相似度计算模块1006、局部强化矩阵构建模块1008、注意力权重分布确定模块1010和融合模块1012。各个程序模块构成的计算机程序使得处理器执行本说明书中描述的本申请各个实施例的神经网络的网络表示生成方法中的步骤。
例如,图11所示的计算机设备可以通过如图10所示的神经网络的网络表示生成装置中的获取模块1002执行步骤S202。计算机设备可通过线性变换模块1004执行步骤S204。计算机设备可通过逻辑相似度计算模块1006执行步骤S206。计算机设备可通过局部强化矩阵构建模块1008执行步骤S208。计算机设备可通过注意力权重分布确定模块1010执行步骤S210。计算机设备可通过融合模块1012执行步骤S212。
在一个实施例中,提供了一种计算机设备,包括存储器和处理器,存储器存储有计算机程序,计算机程序被处理器执行时,使得处理器执行以下步骤:获取与输入序列对应的源端向量表示序列;对源端向量表示序列进行线性变换,分别得到与源端向量表示序列对应的请求向量序列、键向量序列和值向量序列;计算请求向量序列与键向量序列之间的逻辑相似度;根据请求向量序列构建局部强化矩阵;基于逻辑相似度和局部强化矩阵进行非线性变换,得到与各元素对应的局部强化的注意力权重分布;按照注意力权重分布,对值向量序列中的值向量进行融合,得到输入序列对应的网络表示序列。
在一个实施例中,计算机程序被处理器执行根据请求向量序列构建局部强化矩阵的步骤时,使得处理器具体执行以下步骤:根据请求向量序列确定各个元素对应的局部强化范围的中心点;根据请求向量序列确定各个元素对应的局部强化范围的窗口大小;按照中心点、窗口大小确定各个元素对应的局部强化范围;基于局部强化范围计算两两元素之间的强弱联系,得到局部强化矩阵。
在一个实施例中,计算机程序被处理器执行根据请求向量序列构建局部强化矩阵的步骤时,使得处理器具体执行以下步骤:根据请求向量序列确定各个元素对应的局部强化范围的中心点;根据键向量序列确定统一的局部强化范围的窗口大小;按照中心点、窗口大小确定各个元素对应的局部强化范围;基于局部强化范围计算两两元素之间的强弱联系,得到局部强化矩阵。
在一个实施例中,计算机程序被处理器执行根据请求向量序列确定各个元素对应的局部强化范围的中心点的步骤时,使得处理器具体执行以下步骤:通过第一前馈神经网络对请求向量序列中的各个请求向量进行变换,得到各元素对应的第一标量;通过非线性变换函数,对各第一标量进行非线性变换,得到与输入序列长度成比例的第二标量;将第二标量作为各元素对应的局部强化范围的中心点。
在一个实施例中,计算机程序被处理器执行根据请求向量序列确定各个元素对应的局部强化范围的窗口大小的步骤时,使得处理器具体执行以下步骤:通过第二前馈神经网络对请求向量序列中的各个请求向量进行线性变换,得到各元素对应的第三标量;通过非线性变换函数,对各第三标量进行非线性变换,得到与输入序列长度成比例的第四标量;将第四标量作为各元素对应的局部强化范围的窗口大小。
在一个实施例中,计算机程序被处理器执行根据键向量序列确定统一的局部强化范围的窗口大小的步骤时,使得处理器具体执行以下步骤:获取键向量序列中的各个键向量;计算各键向量的平均值;对平均值进行线性变换得到第五标量;通过非线性变换函数对第五标量进行非线性变换,得到与输入序列长度成比例的第六标量;将第六标量作为统一的局部强化范围的窗口大小。
在一个实施例中,计算机程序被处理器执行按照中心点、窗口大小确定各个元素对应的局部强化范围的步骤时,使得处理器具体执行以下步骤:将中心点作为高斯分布的期望、将窗口大小作为高斯分布的方差;根据按照均值和方差确定的高斯分布确定局部强化范围;计算机程序被处理器执行基于局部强化范围计算两两元素之间的强弱联系,得到局部强化矩阵的步骤时,使得处理器具体执行以下步骤:依据各元素在输入序列中的次序,将两两元素之间的强弱联系依次排列,得到局部强化矩阵;其中,两两元素之间的强弱联系通过以下公式计算得到:
Figure BDA0001788970820000271
其中,Gij表示输入序列中第j个元素与第i个元素对应的中心点Pi之间的强弱联系,Gij为局部强化矩阵G中第i列向量的第j个元素的值;Pi表示第i个元素对应的局部强化范围的中心点;Di表示第i个元素对应的局部强化范围的窗口大小。
在一个实施例中,计算机程序被处理器执行基于逻辑相似度和局部强化矩阵进行非线性变换,得到与各元素对应的局部强化的注意力权重分布的步骤时,使得处理器具体执行以下步骤:根据局部强化矩阵对逻辑相似度进行修正得到局部强化的逻辑相似度;对局部强化的逻辑相似度进行归一化处理,得到与各元素对应的局部强化的注意力权重分布。
在一个实施例中,计算机程序被处理器执行对源端向量表示序列进行线性变换,分别得到与源端向量表示序列对应的请求向量序列、键向量序列和值向量序列的步骤时,使得处理器具体执行以下步骤:将源端向量表示序列分割成多组低维度的源端向量表示子序列;依据多组不同的参数矩阵,分别对源端向量表示子序列进行不同的线性变换,得到多组与源端向量表示子序列对应的请求向量序列、键向量序列和值向量序列;计算机程序被处理器执行时,使得处理器还执行以下步骤:将与源端向量表示子序列对应的多组网络表示子序列拼接后进行线性变换,得到输出的网络表示序列。
在一个实施例中,计算机程序被处理器执行时,使得处理器还执行以下步骤:在得到输入序列对应的网络表示序列后,将网络表示序列作为新的源端向量表示序列,返回对源端向量表示序列进行线性变换,分别得到与源端向量表示序列对应的请求向量序列、键向量序列和值向量序列的步骤继续执行,直至达到循环停止条件时输出最终的网络表示序列。
上述计算机设备,基于输入序列对应的请求向量序列来构建局部强化矩阵,能够在局部强化范围内分配注意力权重,强化局部信息。在对输入序列对应的源端向量表示序列进行线性变换后,可得到请求向量序列、键向量序列和值向量序列,可根据请求向量序列、键向量序列得到逻辑相似度,然后基于逻辑相似度和局部强化矩阵进行非线性变换,得到局部强化的注意力权重分布,实现了对原有的注意力权重的修正,再根据局部强化的注意力权重分布对值向量序列进行加权求和,可以得到强化了局部信息的网络表示序列,得到的网络表示序列不仅能强化局部信息,又能保留输入序列中长距离元素之间的联系。
在一个实施例中,提供了一种计算机可读存储介质,其上存储有计算机程序,计算机程序被处理器执行时,使得处理器执行以下步骤:获取与输入序列对应的源端向量表示序列;对源端向量表示序列进行线性变换,分别得到与源端向量表示序列对应的请求向量序列、键向量序列和值向量序列;计算请求向量序列与键向量序列之间的逻辑相似度;根据请求向量序列构建局部强化矩阵;基于逻辑相似度和局部强化矩阵进行非线性变换,得到与各元素对应的局部强化的注意力权重分布;按照注意力权重分布,对值向量序列中的值向量进行融合,得到输入序列对应的网络表示序列。
在一个实施例中,计算机程序被处理器执行根据请求向量序列构建局部强化矩阵的步骤时,使得处理器具体执行以下步骤:根据请求向量序列确定各个元素对应的局部强化范围的中心点;根据请求向量序列确定各个元素对应的局部强化范围的窗口大小;按照中心点、窗口大小确定各个元素对应的局部强化范围;基于局部强化范围计算两两元素之间的强弱联系,得到局部强化矩阵。
在一个实施例中,计算机程序被处理器执行根据请求向量序列构建局部强化矩阵的步骤时,使得处理器具体执行以下步骤:根据请求向量序列确定各个元素对应的局部强化范围的中心点;根据键向量序列确定统一的局部强化范围的窗口大小;按照中心点、窗口大小确定各个元素对应的局部强化范围;基于局部强化范围计算两两元素之间的强弱联系,得到局部强化矩阵。
在一个实施例中,计算机程序被处理器执行根据请求向量序列确定各个元素对应的局部强化范围的中心点的步骤时,使得处理器具体执行以下步骤:通过第一前馈神经网络对请求向量序列中的各个请求向量进行变换,得到各元素对应的第一标量;通过非线性变换函数,对各第一标量进行非线性变换,得到与输入序列长度成比例的第二标量;将第二标量作为各元素对应的局部强化范围的中心点。
在一个实施例中,计算机程序被处理器执行根据请求向量序列确定各个元素对应的局部强化范围的窗口大小的步骤时,使得处理器具体执行以下步骤:通过第二前馈神经网络对请求向量序列中的各个请求向量进行线性变换,得到各元素对应的第三标量;通过非线性变换函数,对各第三标量进行非线性变换,得到与输入序列长度成比例的第四标量;将第四标量作为各元素对应的局部强化范围的窗口大小。
在一个实施例中,计算机程序被处理器执行根据键向量序列确定统一的局部强化范围的窗口大小的步骤时,使得处理器具体执行以下步骤:获取键向量序列中的各个键向量;计算各键向量的平均值;对平均值进行线性变换得到第五标量;通过非线性变换函数对第五标量进行非线性变换,得到与输入序列长度成比例的第六标量;将第六标量作为统一的局部强化范围的窗口大小。
在一个实施例中,计算机程序被处理器执行按照中心点、窗口大小确定各个元素对应的局部强化范围的步骤时,使得处理器具体执行以下步骤:将中心点作为高斯分布的期望、将窗口大小作为高斯分布的方差;根据按照均值和方差确定的高斯分布确定局部强化范围;计算机程序被处理器执行基于局部强化范围计算两两元素之间的强弱联系,得到局部强化矩阵的步骤时,使得处理器具体执行以下步骤:依据各元素在输入序列中的次序,将两两元素之间的强弱联系依次排列,得到局部强化矩阵;其中,两两元素之间的强弱联系通过以下公式计算得到:
Figure BDA0001788970820000291
其中,Gij表示输入序列中第j个元素与第i个元素对应的中心点Pi之间的强弱联系,Gij为局部强化矩阵G中第i列向量的第j个元素的值;Pi表示第i个元素对应的局部强化范围的中心点;Di表示第i个元素对应的局部强化范围的窗口大小。
在一个实施例中,计算机程序被处理器执行基于逻辑相似度和局部强化矩阵进行非线性变换,得到与各元素对应的局部强化的注意力权重分布的步骤时,使得处理器具体执行以下步骤:根据局部强化矩阵对逻辑相似度进行修正得到局部强化的逻辑相似度;对局部强化的逻辑相似度进行归一化处理,得到与各元素对应的局部强化的注意力权重分布。
在一个实施例中,计算机程序被处理器执行对源端向量表示序列进行线性变换,分别得到与源端向量表示序列对应的请求向量序列、键向量序列和值向量序列的步骤时,使得处理器具体执行以下步骤:将源端向量表示序列分割成多组低维度的源端向量表示子序列;依据多组不同的参数矩阵,分别对源端向量表示子序列进行不同的线性变换,得到多组与源端向量表示子序列对应的请求向量序列、键向量序列和值向量序列;计算机程序被处理器执行时,使得处理器还执行以下步骤:将与源端向量表示子序列对应的多组网络表示子序列拼接后进行线性变换,得到输出的网络表示序列。
在一个实施例中,计算机程序被处理器执行时,使得处理器还执行以下步骤:在得到输入序列对应的网络表示序列后,将网络表示序列作为新的源端向量表示序列,返回对源端向量表示序列进行线性变换,分别得到与源端向量表示序列对应的请求向量序列、键向量序列和值向量序列的步骤继续执行,直至达到循环停止条件时输出最终的网络表示序列。
上述计算机可读存储介质,基于输入序列对应的请求向量序列来构建局部强化矩阵,能够在局部强化范围内分配注意力权重,强化局部信息。在对输入序列对应的源端向量表示序列进行线性变换后,可得到请求向量序列、键向量序列和值向量序列,可根据请求向量序列、键向量序列得到逻辑相似度,然后基于逻辑相似度和局部强化矩阵进行非线性变换,得到局部强化的注意力权重分布,实现了对原有的注意力权重的修正,再根据局部强化的注意力权重分布对值向量序列进行加权求和,可以得到强化了局部信息的网络表示序列,得到的网络表示序列不仅能强化局部信息,又能保留输入序列中长距离元素之间的联系。
本领域普通技术人员可以理解实现上述实施例方法中的全部或部分流程,是可以通过计算机程序来指令相关的硬件来完成,的程序可存储于一非易失性计算机可读取存储介质中,该程序在执行时,可包括如上述各方法的实施例的流程。其中,本申请所提供的各实施例中所使用的对存储器、存储、数据库或其它介质的任何引用,均可包括非易失性和/或易失性存储器。非易失性存储器可包括只读存储器(ROM)、可编程ROM(PROM)、电可编程ROM(EPROM)、电可擦除可编程ROM(EEPROM)或闪存。易失性存储器可包括随机存取存储器(RAM)或者外部高速缓冲存储器。作为说明而非局限,RAM以多种形式可得,诸如静态RAM(SRAM)、动态RAM(DRAM)、同步DRAM(SDRAM)、双数据率SDRAM(DDRSDRAM)、增强型SDRAM(ESDRAM)、同步链路(Synchlink)DRAM(SLDRAM)、存储器总线(Rambus)直接RAM(RDRAM)、直接存储器总线动态RAM(DRDRAM)、以及存储器总线动态RAM(RDRAM)等。
以上实施例的各技术特征可以进行任意的组合,为使描述简洁,未对上述实施例中的各个技术特征所有可能的组合都进行描述,然而,只要这些技术特征的组合不存在矛盾,都应当认为是本说明书记载的范围。
以上实施例仅表达了本申请的几种实施方式,其描述较为具体和详细,但并不能因此而理解为对本申请专利范围的限制。应当指出的是,对于本领域的普通技术人员来说,在不脱离本申请构思的前提下,还可以做出若干变形和改进,这些都属于本申请的保护范围。因此,本申请专利的保护范围应以所附权利要求为准。

Claims (22)

1.一种文本翻译方法,包括:
获取待翻译文本对应的词序列,所述词序列为所述待翻译文本中的各个词按词序排列形成的序列;
获取与所述词序列对应的源端向量表示序列,所述源端向量表示序列是所述词序列中的每个词相应的源端向量表示所构成的序列;
对所述源端向量表示序列进行线性变换,分别得到与所述源端向量表示序列对应的请求向量序列、键向量序列和值向量序列;
计算所述请求向量序列与所述键向量序列之间的逻辑相似度;所述逻辑相似度用于度量所述词序列中的每个词与所述词序列中其它词之间的相似性;
根据所述请求向量序列构建局部强化矩阵,所述局部强化矩阵表征所述词序列中两两词之间的强弱联系;
基于所述逻辑相似度和所述局部强化矩阵进行非线性变换,得到与各所述词对应的局部强化的注意力权重分布;
按照所述注意力权重分布,对所述值向量序列中的值向量进行融合,得到所述词序列对应的网络表示序列;
根据所述网络表示序列中表征翻译后的文本中各词的特征向量,确定翻译后的文本。
2.根据权利要求1所述的方法,其特征在于,所述根据所述请求向量序列构建局部强化矩阵包括:
根据所述请求向量序列确定各个词对应的局部强化范围的中心点;
根据所述请求向量序列确定各个词对应的局部强化范围的窗口大小;
按照所述中心点、所述窗口大小确定各个词对应的局部强化范围;
基于所述局部强化范围计算两两词之间的强弱联系,得到局部强化矩阵。
3.根据权利要求1所述的方法,其特征在于,所述根据所述请求向量序列构建局部强化矩阵包括:
根据所述请求向量序列确定各个词对应的局部强化范围的中心点;
根据所述键向量序列确定统一的局部强化范围的窗口大小;
按照所述中心点、所述窗口大小确定各个词对应的局部强化范围;
基于所述局部强化范围计算两两词之间的强弱联系,得到局部强化矩阵。
4.根据权利要求2或3所述的方法,其特征在于,所述根据所述请求向量序列确定各个词对应的局部强化范围的中心点包括:
通过第一前馈神经网络对所述请求向量序列中的各个请求向量进行变换,得到各所述词对应的第一标量;
通过非线性变换函数,对各所述第一标量进行非线性变换,得到与词序列长度成比例的第二标量;
将所述第二标量作为各所述词对应的局部强化范围的中心点。
5.根据权利要求2述的方法,其特征在于,所述根据所述请求向量序列确定各个词对应的局部强化范围的窗口大小包括:
通过第二前馈神经网络对所述请求向量序列中的各个请求向量进行线性变换,得到各所述词对应的第三标量;
通过非线性变换函数,对各所述第三标量进行非线性变换,得到与词序列长度成比例的第四标量;
将所述第四标量作为各所述词对应的局部强化范围的窗口大小。
6.根据权利要求3所述的方法,其特征在于,所述根据所述键向量序列确定统一的局部强化范围的窗口大小包括:
获取所述键向量序列中的各个键向量;
计算各所述键向量的平均值;
对所述平均值进行线性变换得到第五标量;
通过非线性变换函数对所述第五标量进行非线性变换,得到与词序列长度成比例的第六标量;
将所述第六标量作为统一的局部强化范围的窗口大小。
7.根据权利要求2或3所述的方法,其特征在于,所述按照所述中心点、所述窗口大小确定各个词对应的局部强化范围包括:
将所述中心点作为高斯分布的期望、将所述窗口大小作为高斯分布的方差;
根据按照所述期望和所述方差确定的高斯分布确定局部强化范围;
所述基于所述局部强化范围计算两两词之间的强弱联系,得到局部强化矩阵,包括:
依据各所述词在词序列中的次序,将两两词之间的强弱联系依次排列,得到局部强化矩阵;其中,两两词之间的强弱联系通过以下公式计算得到:
Figure FDA0003952171300000031
其中,Gij表示所述词序列中第j个词与第i个词对应的中心点Pi之间的强弱联系,Gij为局部强化矩阵G中第i列向量的第j个词的值;Pi表示第i个词对应的局部强化范围的中心点;Di表示第i个词对应的局部强化范围的窗口大小。
8.根据权利要求1至3任一项所述的方法,其特征在于,所述基于所述逻辑相似度和所述局部强化矩阵进行非线性变换,得到与各所述词对应的局部强化的注意力权重分布包括:
根据所述局部强化矩阵对所述逻辑相似度进行修正得到局部强化的逻辑相似度;
对所述局部强化的逻辑相似度进行归一化处理,得到与各所述词对应的局部强化的注意力权重分布。
9.根据权利要求1至3任一项所述的方法,其特征在于,所述对所述源端向量表示序列进行线性变换,分别得到与所述源端向量表示序列对应的请求向量序列、键向量序列和值向量序列包括:
将所述源端向量表示序列分割成多组低维度的源端向量表示子序列;
依据多组不同的参数矩阵,分别对所述源端向量表示子序列进行不同的线性变换,得到多组与所述源端向量表示子序列对应的请求向量序列、键向量序列和值向量序列;
所述方法还包括:
将与所述源端向量表示子序列对应的多组所述网络表示子序列拼接后进行线性变换,得到输出的网络表示序列。
10.根据权利要求1至3任一项所述的方法,其特征在于,所述方法还包括:
在得到词序列对应的网络表示序列后,将所述网络表示序列作为新的源端向量表示序列,返回所述对所述源端向量表示序列进行线性变换,分别得到与所述源端向量表示序列对应的请求向量序列、键向量序列和值向量序列的步骤继续执行,直至达到循环停止条件时输出最终的网络表示序列。
11.一种文本翻译装置,其特征在于,所述装置包括:
获取模块,用于获取待翻译文本对应的词序列,所述词序列为所述待翻译文本中的各个词按词序排列形成的序列;获取与词序列对应的源端向量表示序列,所述源端向量表示序列是所述词序列中的每个词相应的源端向量表示所构成的序列;
线性变换模块,用于对所述源端向量表示序列进行线性变换,分别得到与所述源端向量表示序列对应的请求向量序列、键向量序列和值向量序列;
逻辑相似度计算模块,用于计算所述请求向量序列与所述键向量序列之间的逻辑相似度,所述逻辑相似度用于度量所述词序列中的每个词与所述词序列中其它词之间的相似性;
局部强化矩阵构建模块,用于根据所述请求向量序列构建局部强化矩阵,所述局部强化矩阵表征所述词序列中两两词之间的强弱联系;
注意力权重分布确定模块,用于基于所述逻辑相似度和所述局部强化矩阵进行非线性变换,得到与各所述词对应的局部强化的注意力权重分布;
融合模块,用于按照所述注意力权重分布,对所述值向量序列中的值向量进行融合,得到所述词序列对应的网络表示序列;
确定模块,用于根据所述网络表示序列中表征翻译后的文本中各词的特征向量,确定翻译后的文本。
12.根据权利要求11所述的装置,其特征在于,所述局部强化矩阵构建模块还用于根据所述请求向量序列确定各个词对应的局部强化范围的中心点;根据所述请求向量序列确定各个词对应的局部强化范围的窗口大小;按照所述中心点、所述窗口大小确定各个词对应的局部强化范围;基于所述局部强化范围计算两两词之间的强弱联系,得到局部强化矩阵。
13.根据权利要求11所述的装置,其特征在于,所述局部强化矩阵构建模块还用于根据所述请求向量序列确定各个词对应的局部强化范围的中心点;根据所述键向量序列确定统一的局部强化范围的窗口大小;按照所述中心点、所述窗口大小确定各个词对应的局部强化范围;基于所述局部强化范围计算两两词之间的强弱联系,得到局部强化矩阵。
14.根据权利要求12或13所述的装置,其特征在于,所述局部强化矩阵构建模块还用于通过第一前馈神经网络对所述请求向量序列中的各个请求向量进行变换,得到各所述词对应的第一标量;通过非线性变换函数,对各所述第一标量进行非线性变换,得到与词序列长度成比例的第二标量;将所述第二标量作为各所述词对应的局部强化范围的中心点。
15.根据权利要求12所述的装置,其特征在于,所述局部强化矩阵构建模块还用于通过第二前馈神经网络对所述请求向量序列中的各个请求向量进行线性变换,得到各所述词对应的第三标量;通过非线性变换函数,对各所述第三标量进行非线性变换,得到与词序列长度成比例的第四标量;将所述第四标量作为各所述词对应的局部强化范围的窗口大小。
16.根据权利要求13所述的装置,其特征在于,所述局部强化矩阵构建模块还用于获取所述键向量序列中的各个键向量;计算各所述键向量的平均值;对所述平均值进行线性变换得到第五标量;通过非线性变换函数对所述第五标量进行非线性变换,得到与词序列长度成比例的第六标量;将所述第六标量作为统一的局部强化范围的窗口大小。
17.根据权利要求12或13所述的装置,其特征在于,所述局部强化矩阵构建模块用于将所述中心点作为高斯分布的期望、将所述窗口大小作为高斯分布的方差;根据按照所述期望和所述方差确定的高斯分布确定局部强化范围;依据各所述词在词序列中的次序,将两两词之间的强弱联系依次排列,得到局部强化矩阵;其中,两两词之间的强弱联系通过以下公式计算得到:
Figure FDA0003952171300000051
其中,Gij表示所述词序列中第j个词与第i个词对应的中心点Pi之间的强弱联系,Gij为局部强化矩阵G中第i列向量的第j个词的值;Pi表示第i个词对应的局部强化范围的中心点;Di表示第i个词对应的局部强化范围的窗口大小。
18.根据权利要求11至13任一项所述的装置,其特征在于,所述注意力权重分布确定模块还用于根据所述局部强化矩阵对所述逻辑相似度进行修正得到局部强化的逻辑相似度;对所述局部强化的逻辑相似度进行归一化处理,得到与各所述词对应的局部强化的注意力权重分布。
19.根据权利要求11至13任一项所述的装置,其特征在于,所述线性变换模块还用于将所述源端向量表示序列分割成多组低维度的源端向量表示子序列;依据多组不同的参数矩阵,分别对所述源端向量表示子序列进行不同的线性变换,得到多组与所述源端向量表示子序列对应的请求向量序列、键向量序列和值向量序列;
所述装置还包括拼接模块,用于将与所述源端向量表示子序列对应的多组所述网络表示子序列拼接后进行线性变换,得到输出的网络表示序列。
20.根据权利要求11至13任一项所述的装置,其特征在于,所述装置还包括循环模块,用于在得到词序列对应的网络表示序列后,将所述网络表示序列作为新的源端向量表示序列,继续所述对所述源端向量表示序列进行线性变换,分别得到与所述源端向量表示序列对应的请求向量序列、键向量序列和值向量序列的,直至达到循环停止条件时输出最终的网络表示序列。
21.一种计算机可读存储介质,存储有计算机程序,所述计算机程序被处理器执行时,使得所述处理器执行如权利要求1至10中任一项所述方法的步骤。
22.一种计算机设备,包括存储器和处理器,所述存储器存储有计算机程序,所述计算机程序被所述处理器执行时,使得所述处理器执行如权利要求1至10中任一项所述方法的步骤。
CN201811027795.XA 2018-09-04 2018-09-04 神经网络的网络表示生成方法、装置、存储介质和设备 Active CN109034378B (zh)

Priority Applications (5)

Application Number Priority Date Filing Date Title
CN201811027795.XA CN109034378B (zh) 2018-09-04 2018-09-04 神经网络的网络表示生成方法、装置、存储介质和设备
EP19857335.4A EP3848856A4 (en) 2018-09-04 2019-08-12 METHOD AND DEVICE FOR GENERATING A NETWORK REPRESENTATION OF A NEURAL NETWORK, STORAGE MEDIUM AND DEVICE
PCT/CN2019/100212 WO2020048292A1 (zh) 2018-09-04 2019-08-12 神经网络的网络表示生成方法、装置、存储介质和设备
JP2020551812A JP7098190B2 (ja) 2018-09-04 2019-08-12 ニューラルネットワークのネットワーク表示生成方法及びその装置、コンピュータプログラム並びに機器
US17/069,609 US11875220B2 (en) 2018-09-04 2020-10-13 Method, apparatus, and storage medium for generating network representation for neural network

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201811027795.XA CN109034378B (zh) 2018-09-04 2018-09-04 神经网络的网络表示生成方法、装置、存储介质和设备

Publications (2)

Publication Number Publication Date
CN109034378A CN109034378A (zh) 2018-12-18
CN109034378B true CN109034378B (zh) 2023-03-31

Family

ID=64623896

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201811027795.XA Active CN109034378B (zh) 2018-09-04 2018-09-04 神经网络的网络表示生成方法、装置、存储介质和设备

Country Status (5)

Country Link
US (1) US11875220B2 (zh)
EP (1) EP3848856A4 (zh)
JP (1) JP7098190B2 (zh)
CN (1) CN109034378B (zh)
WO (1) WO2020048292A1 (zh)

Families Citing this family (16)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN109034378B (zh) * 2018-09-04 2023-03-31 腾讯科技(深圳)有限公司 神经网络的网络表示生成方法、装置、存储介质和设备
CN109918630B (zh) * 2019-01-23 2023-08-04 平安科技(深圳)有限公司 文本生成方法、装置、计算机设备及存储介质
CN111368564B (zh) * 2019-04-17 2022-04-08 腾讯科技(深圳)有限公司 文本处理方法、装置、计算机可读存储介质和计算机设备
CN110276082B (zh) * 2019-06-06 2023-06-30 百度在线网络技术(北京)有限公司 基于动态窗口的翻译处理方法和装置
CN110347790B (zh) * 2019-06-18 2021-08-10 广州杰赛科技股份有限公司 基于注意力机制的文本查重方法、装置、设备及存储介质
CN110705273B (zh) * 2019-09-02 2023-06-13 腾讯科技(深圳)有限公司 基于神经网络的信息处理方法及装置、介质和电子设备
US11875131B2 (en) * 2020-09-16 2024-01-16 International Business Machines Corporation Zero-shot cross-lingual transfer learning
CN112434527A (zh) * 2020-12-03 2021-03-02 上海明略人工智能(集团)有限公司 一种关键词的确定方法、装置、电子设备及存储介质
CN112785848B (zh) * 2021-01-04 2022-06-17 清华大学 一种交通数据预测方法以及系统
CN112967112B (zh) * 2021-03-24 2022-04-29 武汉大学 一种自注意力机制和图神经网络的电商推荐方法
CN113392139B (zh) * 2021-06-04 2023-10-20 中国科学院计算技术研究所 一种基于关联融合的环境监测数据补全方法及系统
CN113254592B (zh) * 2021-06-17 2021-10-22 成都晓多科技有限公司 基于门机制的多级注意力模型的评论方面检测方法及系统
CN113378791B (zh) * 2021-07-09 2022-08-05 合肥工业大学 基于双注意力机制和多尺度特征融合的宫颈细胞分类方法
CN113283235B (zh) * 2021-07-21 2021-11-19 明品云(北京)数据科技有限公司 一种用户标签的预测方法及系统
CN113887325A (zh) * 2021-09-10 2022-01-04 北京三快在线科技有限公司 一种模型训练方法、表情识别方法以及装置
CN117180952B (zh) * 2023-11-07 2024-02-02 湖南正明环保股份有限公司 多向气流料层循环半干法烟气脱硫系统及其方法

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN107180247A (zh) * 2017-05-19 2017-09-19 中国人民解放军国防科学技术大学 基于选择性注意力卷积神经网络的关系分类器及其方法
CN108334499A (zh) * 2018-02-08 2018-07-27 海南云江科技有限公司 一种文本标签标注设备、方法和计算设备

Family Cites Families (18)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH09297112A (ja) * 1996-03-08 1997-11-18 Mitsubishi Heavy Ind Ltd 構造パラメータ解析装置及び解析方法
US7496546B2 (en) * 2003-03-24 2009-02-24 Riken Interconnecting neural network system, interconnecting neural network structure construction method, self-organizing neural network structure construction method, and construction programs therefor
CN104765728B (zh) 2014-01-08 2017-07-18 富士通株式会社 训练神经网络的方法和装置以及确定稀疏特征向量的方法
EP3141610A1 (en) * 2015-09-12 2017-03-15 Jennewein Biotechnologie GmbH Production of human milk oligosaccharides in microbial hosts with engineered import / export
CN106056526B (zh) * 2016-05-26 2019-04-12 南昌大学 一种基于解析稀疏表示与压缩感知的图像加密算法
CN106096640B (zh) * 2016-05-31 2019-03-26 合肥工业大学 一种多模式系统的特征降维方法
CN106339564B (zh) * 2016-09-06 2017-11-24 西安石油大学 一种基于灰色关联聚类的射孔方案优选方法
CN106571135B (zh) * 2016-10-27 2020-06-09 苏州大学 一种耳语音特征提取方法及系统
US11188824B2 (en) * 2017-02-17 2021-11-30 Google Llc Cooperatively training and/or using separate input and subsequent content neural networks for information retrieval
CN107025219B (zh) * 2017-04-19 2019-07-26 厦门大学 一种基于内部语义层次结构的词嵌入表示方法
CN107345860B (zh) * 2017-07-11 2019-05-31 南京康尼机电股份有限公司 基于时间序列数据挖掘的轨道车辆门亚健康状态识别方法
GB2566257A (en) * 2017-08-29 2019-03-13 Sky Cp Ltd System and method for content discovery
CN107783960B (zh) * 2017-10-23 2021-07-23 百度在线网络技术(北京)有限公司 用于抽取信息的方法、装置和设备
CN107797992A (zh) * 2017-11-10 2018-03-13 北京百分点信息科技有限公司 命名实体识别方法及装置
CN108256172B (zh) * 2017-12-26 2021-12-07 同济大学 一种顶管下穿既有箱涵过程中险情预警预报方法
CN108537822B (zh) * 2017-12-29 2020-04-21 西安电子科技大学 基于加权置信度估计的运动目标跟踪方法
CN108828533B (zh) * 2018-04-26 2021-12-31 电子科技大学 一种类内样本相似结构保持非线性投影特征提取方法
CN109034378B (zh) * 2018-09-04 2023-03-31 腾讯科技(深圳)有限公司 神经网络的网络表示生成方法、装置、存储介质和设备

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN107180247A (zh) * 2017-05-19 2017-09-19 中国人民解放军国防科学技术大学 基于选择性注意力卷积神经网络的关系分类器及其方法
CN108334499A (zh) * 2018-02-08 2018-07-27 海南云江科技有限公司 一种文本标签标注设备、方法和计算设备

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
MichałDaniluk等.FRUSTRATINGLY SHORT ATTENTION SPANS IN NEURAL LANGUAGE MODELING.《ICLR 2017》.2017,第1-10页. *

Also Published As

Publication number Publication date
JP2021517316A (ja) 2021-07-15
US20210042603A1 (en) 2021-02-11
US11875220B2 (en) 2024-01-16
WO2020048292A1 (zh) 2020-03-12
JP7098190B2 (ja) 2022-07-11
EP3848856A4 (en) 2021-11-17
CN109034378A (zh) 2018-12-18
EP3848856A1 (en) 2021-07-14

Similar Documents

Publication Publication Date Title
CN109034378B (zh) 神经网络的网络表示生成方法、装置、存储介质和设备
CN111382584B (zh) 文本翻译方法、装置、可读存储介质和计算机设备
CN109146064B (zh) 神经网络训练方法、装置、计算机设备和存储介质
CN108665506B (zh) 图像处理方法、装置、计算机存储介质及服务器
WO2020174826A1 (ja) 回答生成装置、回答学習装置、回答生成方法、及び回答生成プログラム
CN111061847A (zh) 对话生成及语料扩充方法、装置、计算机设备和存储介质
CN111460807B (zh) 序列标注方法、装置、计算机设备和存储介质
CN112149797B (zh) 神经网络结构优化方法和装置、电子设备
WO2021196954A1 (zh) 序列化数据处理方法和装置、文本处理方法和装置
CN108776832B (zh) 信息处理方法、装置、计算机设备和存储介质
KR20190041790A (ko) 신경망 번역 모델 구축 장치 및 방법
CN113673698B (zh) 适用于bert模型的蒸馏方法、装置、设备及存储介质
CN112131888B (zh) 分析语义情感的方法、装置、设备及存储介质
CN110705273B (zh) 基于神经网络的信息处理方法及装置、介质和电子设备
CN112699215B (zh) 基于胶囊网络与交互注意力机制的评级预测方法及系统
CN114064852A (zh) 自然语言的关系抽取方法、装置、电子设备和存储介质
CN115238893B (zh) 面向自然语言处理的神经网络模型量化方法和装置
CN116434741A (zh) 语音识别模型训练方法、装置、计算机设备及存储介质
WO2021000412A1 (zh) 文本匹配度检测方法、装置、计算机设备和可读存储介质
CN112837673B (zh) 基于人工智能的语音合成方法、装置、计算机设备和介质
CN114066510A (zh) 物品销量预测方法、装置、计算机设备和存储介质
CN112364650A (zh) 一种实体关系联合抽取方法、终端以及存储介质
WO2023108981A1 (zh) 文本生成模型的训练方法、装置、存储介质及计算机设备
WO2022068197A1 (zh) 一种对话生成方法、装置、设备及可读存储介质
CN112990434A (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