CN117043786A - 通过扩张的自注意力来捕获上下文的人工智能系统 - Google Patents
通过扩张的自注意力来捕获上下文的人工智能系统 Download PDFInfo
- Publication number
- CN117043786A CN117043786A CN202180096134.6A CN202180096134A CN117043786A CN 117043786 A CN117043786 A CN 117043786A CN 202180096134 A CN202180096134 A CN 202180096134A CN 117043786 A CN117043786 A CN 117043786A
- Authority
- CN
- China
- Prior art keywords
- sequence
- frames
- key
- value
- frame
- 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.)
- Pending
Links
- 238000013473 artificial intelligence Methods 0.000 title claims abstract description 83
- 238000013528 artificial neural network Methods 0.000 claims abstract description 74
- 238000012545 processing Methods 0.000 claims abstract description 29
- 238000004364 calculation method Methods 0.000 claims abstract description 13
- 238000000605 extraction Methods 0.000 claims abstract description 9
- 230000001131 transforming effect Effects 0.000 claims abstract description 5
- 230000007246 mechanism Effects 0.000 claims description 67
- 230000006870 function Effects 0.000 claims description 61
- 238000011176 pooling Methods 0.000 claims description 54
- 239000013598 vector Substances 0.000 claims description 33
- 230000010339 dilation Effects 0.000 claims description 27
- 238000012805 post-processing Methods 0.000 claims description 19
- 238000009826 distribution Methods 0.000 claims description 16
- 238000013527 convolutional neural network Methods 0.000 claims description 11
- 238000005070 sampling Methods 0.000 claims description 11
- 238000013519 translation Methods 0.000 claims description 10
- 238000012935 Averaging Methods 0.000 claims description 5
- 230000004913 activation Effects 0.000 claims description 5
- 238000001514 detection method Methods 0.000 claims description 2
- 238000000926 separation method Methods 0.000 claims description 2
- 238000000034 method Methods 0.000 abstract description 47
- 230000008569 process Effects 0.000 abstract description 24
- 238000010586 diagram Methods 0.000 description 20
- 238000004891 communication Methods 0.000 description 12
- 230000006835 compression Effects 0.000 description 11
- 238000007906 compression Methods 0.000 description 11
- 238000013518 transcription Methods 0.000 description 9
- 230000035897 transcription Effects 0.000 description 9
- 238000010606 normalization Methods 0.000 description 6
- 239000011159 matrix material Substances 0.000 description 5
- 230000004044 response Effects 0.000 description 4
- 238000012552 review Methods 0.000 description 4
- 230000006978 adaptation Effects 0.000 description 3
- 230000009467 reduction Effects 0.000 description 3
- 238000012549 training Methods 0.000 description 3
- 230000007704 transition Effects 0.000 description 3
- 238000013459 approach Methods 0.000 description 2
- 230000005540 biological transmission Effects 0.000 description 2
- 230000002452 interceptive effect Effects 0.000 description 2
- 230000000670 limiting effect Effects 0.000 description 2
- 238000013507 mapping Methods 0.000 description 2
- 238000012986 modification Methods 0.000 description 2
- 230000004048 modification Effects 0.000 description 2
- 230000002123 temporal effect Effects 0.000 description 2
- 238000012546 transfer Methods 0.000 description 2
- 230000009466 transformation Effects 0.000 description 2
- 241000581835 Monodora junodii Species 0.000 description 1
- 230000009471 action Effects 0.000 description 1
- 238000007792 addition Methods 0.000 description 1
- 230000002776 aggregation Effects 0.000 description 1
- 238000004220 aggregation Methods 0.000 description 1
- 230000002238 attenuated effect Effects 0.000 description 1
- 230000008901 benefit Effects 0.000 description 1
- 230000010267 cellular communication Effects 0.000 description 1
- 230000008859 change Effects 0.000 description 1
- 238000006243 chemical reaction Methods 0.000 description 1
- 210000005266 circulating tumour cell Anatomy 0.000 description 1
- 210000001072 colon Anatomy 0.000 description 1
- 239000002131 composite material Substances 0.000 description 1
- 230000003111 delayed effect Effects 0.000 description 1
- 239000000835 fiber Substances 0.000 description 1
- 238000003780 insertion Methods 0.000 description 1
- 230000037431 insertion Effects 0.000 description 1
- 230000003993 interaction Effects 0.000 description 1
- 230000007774 longterm Effects 0.000 description 1
- 238000009877 rendering Methods 0.000 description 1
- 230000003595 spectral effect Effects 0.000 description 1
Classifications
-
- G—PHYSICS
- G10—MUSICAL INSTRUMENTS; ACOUSTICS
- G10L—SPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
- G10L15/00—Speech recognition
- G10L15/08—Speech classification or search
- G10L15/16—Speech classification or search using artificial neural 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
-
- 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
- G10—MUSICAL INSTRUMENTS; ACOUSTICS
- G10L—SPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
- G10L15/00—Speech recognition
- G10L15/28—Constructional details of speech recognition systems
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F40/00—Handling natural language data
- G06F40/40—Processing or translation of natural language
- G06F40/58—Use of machine translation, e.g. for multi-lingual retrieval, for server-side translation for client devices or for real-time translation
-
- 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)
- Health & Medical Sciences (AREA)
- Computational Linguistics (AREA)
- Artificial Intelligence (AREA)
- Evolutionary Computation (AREA)
- Theoretical Computer Science (AREA)
- Multimedia (AREA)
- Acoustics & Sound (AREA)
- Human Computer Interaction (AREA)
- Audiology, Speech & Language Pathology (AREA)
- Biophysics (AREA)
- Computing Systems (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Mathematical Physics (AREA)
- Software Systems (AREA)
- Molecular Biology (AREA)
- General Health & Medical Sciences (AREA)
- Data Mining & Analysis (AREA)
- Biomedical Technology (AREA)
- Life Sciences & Earth Sciences (AREA)
- Machine Translation (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
公开了一种人工智能(AI)系统。该AI系统包括处理器,该处理器利用神经网络处理输入帧序列,该神经网络包括扩张的自注意力模块,该扩张的自注意力模块被训练成,通过以下操作来计算输出序列:将各个输入帧变换成对应的查询帧、对应的键帧以及对应的值帧,从而导致具有相同排序的键帧序列、值帧序列以及查询帧序列;以及关于键帧序列和值帧序列中的基于查询帧的位置而受限的一部分与键帧的扩张序列和值帧的扩张序列的组合来执行针对各个查询帧的注意力计算,所述键帧的扩张序列和值帧的扩张序列是通过利用预定提取函数处理键帧序列和值帧序列中的不同帧来提取的。此外,该处理器呈现输出序列。
Description
技术领域
本公开总体上涉及人工智能(AI),并且更具体地,涉及通过扩张的自注意力(dilated self-attention)来捕获上下文的AI系统。
背景技术
现今,注意力机制已经成为用于包括机器翻译、语音处理、语言建模、自动语音识别(ASR)、计算机视觉等不同人工智能(AI)应用的许多神经网络(NN)架构中的中心组件。此外,自注意力机制也是广泛使用的神经网络组件。自注意力机制允许输入彼此交互(“自交互”),并且找出他们应当更注意谁(“注意力”),以便对于给定任务以最佳方式计算输出。使用这种自注意力机制的神经网络组件的输出是这些交互的聚集。
基于注意力的架构(诸如,变换器架构)已经成功地应用于所有模型组件都利用注意力的各种领域。增加模型参数的数量以使用更深且更宽的架构来进一步改善结果。基于注意力的架构处理不同长度(也被称为“输入序列长度”)的输入。通常,基于注意力的架构的计算复杂度取决于输入序列长度。而且,自注意力机制的计算复杂度随着输入序列长度的增加而二次方地增长。这对于诸如但不限于自动语音识别(ASR)的应用可能是有问题的,在该ASR应用中话语的输入序列长度可能相对长。神经网络的计算复杂度的增加导致低处理性能,诸如处理时间增加、处理速度低、以及存储空间增加。
为了解决神经网络中计算复杂度的问题,可以使用受限的自注意力机制。然而,该受限的自注意力机制忽略了相对于与当前查询帧相关联的查询的远距离信息。因此,这种机制的输出结果可能恶化。
因此,需要一种克服上面所提及的限制的技术解决方案。更具体地,需要提供高质量的输出,同时最小化计算成本(时间和空间需求)。
发明内容
一些实施方式基于对注意力机制的认识,即,该注意力机制是通过使用查询帧(即,查询向量)从输入序列读取信息的方法。这种机制中的输入序列充当存储器。此外,在扩张的自注意力机制中,将根据输入序列计算的查询帧用于根据自身查询信息。在示例实施方式中,输入序列可以对应于从包含语音声音事件序列的语音话语中提取的观测向量(帧)序列。自注意力机制可以将这种输入序列中的帧变换成键帧序列、值帧序列、以及查询帧序列。在一些实施方式中,与输入序列中的帧位置相对应的查询帧的邻近帧可以属于与查询帧的声音事件类似的声音事件,其中,可能需要详细信息来识别它们与键帧、值帧、以及查询帧中的一个或更多个的逻辑关系。此外,远距离信息(诸如输入序列中的远离查询帧的帧)可以与识别输入序列的上下文相关。因此,邻近帧可以具有依赖关系,而远距离帧与跟踪上下文相关,这可能需要较少详细信息。
在一些示例实施方式中,诸如在机器翻译或语言建模中,其中各个词由输入序列中的观测向量来表示,输入序列中的临近的词(close-by word)更可能具有依赖关系,而只有少数远距离的词或词组可能与跟踪句子的语义上下文和语法相关,这可能需要较少的详细信息。
在一些其它示例实施方式中,在自动语音识别(ASR)系统中,查询帧的邻近帧(或附近帧)可以属于同一音素、音节以及词,其中需要详细信息来识别它们的一致性。另一方面,远距离信息与识别话语中的声音和词的上下文以及适应说话者或记录特性相关,这通常需要较少细粒度的信息。在一些实施方式中,可以将基于变换器的神经网络用于端到端ASR系统。可以将基于变换器的神经网络与帧级分类目标函数同时进行训练。在一个示例实施方式中,基于变换器的神经网络可以与连接性时间分类(connectionist temporalclassification,CTC)目标同时训练。基于变换器的神经网络可以利用编码器-解码器注意力和自注意力两者。编码器-解码器注意力可以使用以基于变换器的神经网络的解码器的状态为基础的查询向量,来控制对输入值序列的注意力。输入值序列是编码器神经网络状态序列。基于变换器的神经网络的两种注意力类型都可以基于经缩放的点积注意力机制。在基于变换器的神经网络中实现的CTC目标可以实现标签同步模型和时间同步模型两者的组合优点,同时还使得能够实现基于编码器-解码器的ASR系统的流传输识别。
一些实施方式基于对这样的问题的认识,即,关于与当前查询帧相关联的查询的远距离信息可以在受限的自注意力机制中被排除。该受限的自注意力机制可以允许注意当前查询帧的处于高分辨率的邻近帧或附近帧。即,在受限的自注意力机制中,基于预定义数量的回顾帧和前瞻帧来限制相对于当前查询帧的过去上下文和未来上下文。然而,远距离信息可以有用于提供准确的结果。
一些实施方式基于对远距离信息的递归处理的认识,来计算直到当前查询帧的概括帧(summarization frame),以便确定关于该查询的过去(左)上下文。在递归处理中,随着查询向前移动,利用新的输入帧来更新概括帧。执行该处理直到处理了最后一个查询帧。信息的这种迭代更新导致随着递归处理的进行而确定不准确的远距离的上下文,这是因为远距离帧的原始信息在概括帧中正被衰减。而且,递归处理不能被并行化,以便加速对概括帧的计算。
为了避免远距离信息的这种衰减并且获得关于当前查询帧的过去(左上下文)以及未来(右上下文)的远距离信息的相等访问,一些实施方式的目的是在不使用递归方法的情况下准确地概括远距离的上下文。为此,一些实施方式的目的是,提供除了受限的自注意力之外的扩张机制。扩张机制和受限的自注意力的组合被称为扩张的自注意力。在扩张机制中,从输入序列得出的值帧序列和键帧序列两者被提取并存储到值扩张序列和键扩张序列中。扩张机制可以使用并行计算来同时计算键扩张序列中的帧和值扩张序列中的帧。与键帧序列和值帧序列相比,键扩张序列和值扩张序列可以具有较低的帧速率。
因此,将受限的自注意力与扩张机制相组合的扩张的自注意力以全分辨率来对查询的处于受限窗口的前瞻范围和回顾范围内的附近帧执行自注意,并且以降低的分辨率来对可能处于该受限窗口之外的远距离帧执行自注意。在一些示例实施方式中,扩张的自注意力的扩张机制对输入序列中的键帧序列和值帧序列进行子采样或概括。可以将经概括的键帧和值帧用作扩张序列。该键帧扩张序列和值帧扩张序列可以对应于比输入序列的帧速率低的帧速率。可以将该键帧扩张序列和值帧扩张序列可以附加至由受限的自注意力机制生成的受限的键帧序列和受限的值帧序列。以这种方式,以高(全)分辨率以及以较低的分辨率部分地捕获输入序列的完整上下文,从而提供准确的自注意力输出。高分辨率和低分辨率的信息可以采用压缩形式,这可以消耗较少的存储器和较少的计算时间,来处理针对与机器翻译、语言建模、语音识别等相关的应用的输入序列。
一些实施方式基于这样的认识,即,来自该序列输入(即,输入序列)的相关信息可以基于不同的帧速率降低方法(诸如子采样以及提取或压缩帧组块(chunk of frames)内的相关信息的池化(pooling)方法),在帧组块内进行提取或压缩。帧减少方法的示例可以包括但不限于均值化(mean-pooling)、最大池化、基于注意力的池化等。
在一些实施方式中,通过基于注意力的池化方法来提取或压缩帧组块内的相关信息。基于注意力的池化方法使用经训练的嵌入向量来获得被用于计算组块的经加权平均的一个或更多个查询向量。
在一些实施方式中,可以使用块处理、子采样、以及压缩技术提取来自输入序列的相关信息。在这样的方法中,关于当前查询帧的远距离帧是以较低分辨率进行处理的,而关于当前查询帧的邻近帧是高(全)分辨率来进行处理的。可以将远距离信息和附近信息进行组合,以获得输入序列的压缩形式。不同的实施方式使用不同的预定提取函数,来从所有可用/相关的键帧和值帧中提取信息。不同的提取函数使用上面所提及的提取技术中的一种或其组合,来将受限的自注意力与由扩张的自注意力捕获的其它有用信息进行组合。
此外,一些实施方式基于这样的认识,即,自注意力机制的计算复杂度随着输入序列长度的增加而二次方地增长。因此,一些实施方式的目的是,减轻具有所述输入序列长度的自注意力的二次计算成本增长。根据实施方式,扩张的自注意力系统中的受限的自注意力的计算成本仅随输入序列长度线性增长。用于注意扩张序列的计算成本比基于全序列的自注意力小M倍,其中,M表示子采样或池化操作的组块大小。
因此,与基于全序列的自注意力机制相比,扩张的自注意力机制的总体复杂度显著地小,而在扩张的自注意力机制中仍以不同分辨率捕获输入序列的完整上下文。
因此,一个实施方式公开了一种用于通过探索输入序列中的输入对彼此的相互依赖性来联合地解释该输入的人工智能(AI)系统,该AI系统包括:至少一个处理器;以及存储器,该存储器上存储有指令,该指令在由所述至少一个处理器执行时,使该AI系统:接受输入帧序列;利用神经网络处理该输入帧序列,该神经网络包括至少一个扩张的自注意力模块,所述至少一个扩张的自注意力模块被训练成,通过以下操作来从输入帧序列计算对应输出序列:将该输入帧序列中的各个输入帧变换成对应的查询帧、对应的键帧以及对应的值帧,从而导致具有相似排序的键帧序列、值帧序列、以及查询帧序列;以及关于键帧序列和值帧序列中的基于所述查询帧在查询帧序列中的位置而受限的一部分与键帧的扩张序列和值帧的扩张序列的组合来执行针对查询帧序列中的各个查询帧的注意力计算,所述键帧的扩张序列和值帧的扩张序列是通过利用预定提取函数处理键帧序列和值帧序列中的不同帧而提取的;以及呈现(render)输出序列。
参照附图,对当前公开的实施方式加以进一步阐释。所示附图不一定是按比例的,相反,要强调的是,通常被置于例示目前所公开实施方式的原理之下。
附图说明
[图1]
图1是例示根据本公开的一些实施方式的用于实现人工智能(AI)系统的网络环境的框图。
[图2]
图2是根据本公开的一些实施方式的在图1中示例性地例示的AI系统的框图。
[图3A]
图3A是描绘根据本公开的一个示例实施方式的AI系统的扩张的自注意力模块的注意力机制的图解表示。
[图3B]
图3B是描绘根据本公开的另一示例实施方式的AI系统的扩张的自注意力模块的注意力机制的图解表示。
[图4]
图4是根据本公开的一些实施方式的AI系统的扩张的自注意力模块的框图。
[图5]
图5是例示根据本公开的一些实施方式的AI系统的基于变换器的神经网络的框图。
[图6A]
图6A是根据本公开的一个示例实施方式的输入序列中的一组键-值帧的压缩的图解表示。
[图6B]
图6B是根据本公开的另一示例实施方式的输入序列中的一组键-值帧的压缩的图解表示。
[图6C]
图6C例示了根据本公开的一些实施方式的由AI系统输出的输出序列。
[图7A]
图7A例示了根据本公开的一些实施方式的基于注意力的池化。
[图7B]
图7B例示了根据本公开的一些实施方式的具有后处理的基于注意力的扩张。
[图7C]
图7C例示了根据本公开的一些实施方式的经由基于注意力的池化的多分辨率扩张的自注意力。
[图8A]
图8A是根据本公开的一些实施方式的自动语音识别(ASR)系统中的AI系统的框图。
[图8B]
图8B是根据本公开的一些实施方式的自动机器翻译(AMT)系统中的AI系统的框图。
[图9]
图9例示了根据本公开的一些其它示例实施方式的用于实现AI系统的示例性场景。
[图10]
图10示出了根据本公开的一些示例实施方式的AI系统的总体框图。
具体实施方式
在下面的描述中,出于解释的目的,阐述了许多具体细节,以便提供对本公开的详尽理解。然而,本领域技术人员应当明白,本公开可以在不需要这些具体细节的情况下来实践。在其它情况下,设备和方法仅以框图形式示出,以避免使本公开不清楚。
如在本说明书和权利要求中所使用的,当术语“举例来说”、“例如”和“诸如”以及动词“包括”、“具有”、“包含”和它们的其它动词形式与一个或更多个组件或其它项目的列表结合使用时均被解释为开放式的,从而意味着该列表不被视为排除其它附加的组件或项目。术语“基于”意指至少部分基于。此外,要理解,本文所采用的用语和术语是出于描述的目的,而不应被视为进行限制。在该说明书中利用的任何标题仅仅是为了方便,而没有法律或限制性作用。
图1是例示根据本公开的一些实施方式的用于实现人工智能(AI)系统102的网络环境100的框图。该网络环境100被描述成包括与用户装置108相关联的用户106。在例示性示例场景中,用户106向用户装置108提供输入,诸如输入110。用户装置108可以接收作为声学信号或者作为语音话语的输入110。用户装置108可以包括应用,诸如由服务器104托管的自动语音识别(ASR)或自动机器翻译(AMT)应用。输入110可以经由网络116而提供给服务器104。可以将服务器104配置成,处理输入110以执行不同的操作(诸如与ASR和AMT应用相关的操作)。在示例实施方式中,用户106可以提供作为与技术解决方案提供商112可以解决的技术问题相关的音频输入(也被称为音频输入110)的输入110。技术解决方案提供商112可以包括但不限于人类代表、虚拟机器人、以及交互式语音响应(IVR)系统。服务器104经由网络116从用户装置108接收音频输入110并将该音频输入传递给技术解决方案提供商112。
此外,网络116可以包括适当的逻辑、电路以及接口,该逻辑、电路以及接口可以被配置成,提供多个网络端口以及多个通信信道以用于数据的发送和接收。各个网络端口可以对应于用于发送和接收通信数据的虚拟地址(或物理机器地址)。例如,虚拟地址可以是互联网协议版本4(IPv4)(或IPv6地址),而物理地址可以是媒体访问控制(MAC)地址。网络116可以与应用层相关联,该应用层用于基于来自所述一个或更多个通信装置中的至少一个通信装置的一个或更多个通信请求来实现通信协议。可以经由通信协议发送或接收通信数据。这种有线和无线通信协议的示例可以包括但不限于传输控制协议和互联网协议(TCP/IP)、用户数据报协议(UDP)、超文本传输协议(HTTP)、文件传输协议(FTP)、ZigBee、EDGE、红外(IR)、IEEE 802.11、802.16、蜂窝通信协议、和/或蓝牙(BT)通信协议。
网络116的示例可以包括但不限于无线信道、有线信道、无线信道和有线信道的组合。无线或有线信道可以与网络标准相关联,该网络标准可以由局域网(LAN)、个人区域网(PAN)、无线局域网(WLAN)、无线区域网(WAN)、无线广域网(WWAN)、长期演进(LTE)网络、普通老式电话服务(POTS)、以及城域网(MAN)之一来定义。另外,可以基于带宽标准来选择有线信道。例如,可以将光纤信道可以用于高带宽通信。此外,可以将基于同轴线缆或基于以太网的通信信道用于中等带宽通信。
在一些实施方式中,音频输入110可以是非常长的。在这种情况下,服务器104的计算复杂度可能很高。因此,服务器104可能不能准确和/或及时地处理音频输入110,这可能导致生成不准确的输出。而且,处理非常长的音频输入110可能花费时间,这导致对用户输入的延迟响应。此外,服务器也可能遭受积压(backlog),因为服务器在处理非常长的音频输入110时花费更多时间。
为此,可以使用AI系统102来生成针对音频输入110的高质量输出(具有低计算成本),这接下来参照图2来进行说明。
图2是根据本公开的一些实施方式的在图1中示例性地例示的AI系统102的框图。AI系统102通过探索输入序列中的输入对彼此的相互依赖性来联合地解释该输入。AI系统102包括:处理器202、存储器204以及输入/输出(I/O)接口210。存储器204具有神经网络206,该神经网络包括扩张的自注意力模块208。在一些实施方式中,神经网络206可以包括多层多个扩张的自注意力模块。
在示例实施方式中,将I/O接口210配置成接收输入序列,其中,该输入序列可以对应于具有时间维度的音频输入(诸如音频输入110)。此外,将处理器202配置成,执行被存储在存储器204中的指令。所存储的指令的执行使AI系统102接受这样的输入帧序列,即,该输入帧序列表示描述输入信号(诸如音频输入110)的信息的有序特征序列。此外,利用神经网络206来处理输入帧序列,该神经网络包括被训练成根据输入帧序列来计算对应的输出序列的扩张的自注意力模块208。
一些实施方式基于这样的实现,即,输入信号可以包括输入帧序列,该输入帧序列被变换成键序列、值序列和查询序列。查询序列中的各个查询帧在键序列上进行搜索,以计算各个键帧相对于查询帧的关系。各个键帧与对关于各个输入帧的特征进行编码的值帧有关。所估计的各个键帧相对于查询帧的关系被用于将加权因子指派给各个值帧,以用于计算值帧序列的加权平均值以及针对查询搜索的输出。例如,如果输入帧序列中的各个输入帧对应于词序列(即,句子)中的词,则所估计的各个键帧相对于查询帧的关系将表示与该查询帧相关联的词与句子中的所有其它词的关系。
此外,一些实施方式基于这样的实现,即,查询与键的关系以及键与值的关系是可区分的。即,随着网络的学习,注意力机制可以学习重新整形搜索词与提供上下文的词之间的关系。
因此,在一些实施方式中,处理器202经由神经网络206通过以下步骤来处理输入序列:将输入帧序列中的各个输入帧变换成对应的查询帧、对应的键帧、以及对应的值帧,从而导致具有同一排序的键帧序列、值帧序列、以及查询帧序列。在一些实施方式中,查询帧在查询帧序列中的位置对应于在键帧序列和值帧序列中的位置。
此外,处理器202经由神经网络206针对查询帧序列中的各个查询帧,来执行关于键帧序列和值帧序列的一部分与键帧扩张序列和值帧扩张序列的组合的注意力计算。基于查询帧在查询帧序列中的位置或定位来确定键帧序列和值帧序列的所述一部分。
为此,将扩张的自注意力模块208训练成,基于经学习的变换和注意力计算序列来根据输入帧序列计算输出序列。注意力计算序列允许通过使用当前查询帧和键帧序列来将值帧序列映射至输出。在一些示例实施方式中,扩张的自注意力模块208提供注意力机制,以通过使用当前查询帧来从输入序列读取信息,其中,当前查询帧对应于查询向量。
进一步使扩张的自注意力模块208将查询帧序列中的不同查询帧与键帧序列的不同表示进行比较。不同查询帧与键帧的不同表示之间的比较在值帧序列的不同表示上生成不同的权重分布。将该不同的权重分布用于计算值帧的不同表示的加权平均值,这形成了所述输出的输出序列。键帧序列和值帧序列的不同表示是通过组合键帧和值帧的子序列与键帧和值帧的经压缩或经子采样序列来形成的。在一些实施方式中,可以基于当前查询帧的位置以及键帧和值帧的经压缩或经子采样序列来选择键帧和值帧的子序列。
在一些实施方式中,可以将输入序列中的当前查询帧的邻近帧用于提供与当前查询帧有关的信息(在下文中被“关联信息”)。来自邻近帧的关联信息可以包括与当前查询帧的元素类似的元素或者与当前查询帧的更强关系。在这样的情况下,可能需要详细信息来识别关联信息的元素与当前查询帧的元素的逻辑关系。因此,一些实施方式基于这样的认识,即,与当前查询帧邻近的帧更可能具有依赖关系。
此外,输入序列中的远离当前查询帧的帧可以提供与识别输入序列的上下文相关的远距离信息。因此,一些实施方式基于这样的认识,即,远距离的邻近帧可能与解释输入序列相关的跟踪上下文相关。
例如,对于语音识别,当前查询帧的邻近帧可以对应于同一音素(phoneme)、音节(syllable)、或词。远距离信息可以与识别话语中的声音和词的上下文以及适应说话者或记录特性相关,这通常需要较少细粒度的信息。对于机器翻译,当前查询帧的邻近词更可能具有依赖关系,而只有少数远距离的词或词组可能与跟踪句子的语义上下文和语法相关,这可能需要较少的详细信息。
为了确定输入序列的上下文和语法,由AI系统102来生成键帧扩张序列和值帧扩张序列。为此,处理器202执行键帧序列和值帧序列的非递归序列压缩。特别地,处理器202利用扩张的自注意力模块208,来同时处理整个时间维度的包括键帧序列和值帧序列的输入帧序列。在这样的情况下,各个帧的输出独立于其它帧。因此,处理由各个帧携带的原始信息,并且确定输入序列的准确上下文和语法。
此外,在一些实现中,键帧序列和值帧序列的非递归序列压缩是通过以并行方式对键帧序列和值帧序列的所有帧应用提取(例如压缩)技术来实现的。因此,降低了自注意力处理的计算复杂度,并且将自注意力处理扩展至具有不同注意力分辨率的序列处理。因此,扩张机制(dilated mechanism)可以高效地概括键帧序列和值帧序列中的各个帧的不同特征,并且提供在神经网络206的计算复杂度方面的降低。利用这种扩张机制训练的神经网络206提供了生成输出序列的低计算复杂度。因此,利用这种神经网络的处理器202的处理速度增加,这导致AI系统102的快速响应时间。因此,在本公开中公开的AI系统102以更快的方式促进输出。此外,处理器202经由I/O接口210来呈现输出序列。
在神经网络206包括具有扩张的自注意力模块的多个神经网络层的实施方式中,在神经网络的各个层处针对各个扩张的自注意力模块独立地执行扩张机制。
在另一实施方式中,扩张的自注意力模块208顺序地应用多个扩张机制,以在处理流水线上生成针对键和值的多个扩张序列。特别地,处理器202在处理流水线上顺序地生成针对键帧的第一扩张序列和针对值帧的第一扩张序列,以及针对键帧的第二扩张序列和针对值帧的第二扩张序列。在这样的情况下,通过具有第一组块大小的第一扩张机制呈现的键帧的第一扩张序列和值帧的第一扩张序列形成具有第二组块大小的第二扩张机制的输入,以根据键帧的第一扩张序列呈现键帧的第二扩张序列,以及根据值帧的第一扩张序列呈现值帧的第二扩张序列。这样,可以获得不同帧速率(即,不同分辨率)的扩张序列。
图3A是描绘一些示例实施方式所使用的注意力机制的原理的图解表示300。例如,扩张的自注意力模块208可以使用注意力机制的原理,基于诸如查询302的当前查询帧来从输入序列读取信息。在示例实施方式中,在扩张的自注意力模块208的注意力机制中,源序列308的输入最初被变换成键帧和值帧。键帧和值帧可以包括键帧304A、键帧304B、键帧304C以及键帧304D(也被称为键304A至304D)以及对应的值帧306A、306B、306C以及306D(也被称为值306A至306D)。源序列308可以对应于从音频输入110得出的特征序列。
在示例实施方式中,扩张的自注意力模块208确定查询302与键304A至304D中的各个键之间的相似度。该相似度被用于计算值306A至306D中的各个值的注意力得分。
在一些示例实施方式中,可以基于softmax函数来归一化注意力得分,以计算注意力权重分布。为此,神经网络206的扩张的自注意力模块208利用softmax函数,使得扩张的自注意力模块208的非归一化得分被映射至值帧序列上的概率分布。softmax函数是将K个实值的向量变成总和为1的K个实值的向量的函数。输入值可以为正、负、零、或者大于一,但是softmax将它们变换成介于0至1之间的值,以使它们可以被解释为总和为1的概率。因此,softmax函数的输入可以是查询302与键304A至304D之间的点积得分,该点积得分被用于确定注意力得分。根据归一化的注意力得分来对对应的值306A、306B、306C、以及306D中的各个值进行加权,即,将值306A、306B、306C以及306D中的各个值与归一化的注意力得分相乘。此外,将经加权的值306A至306D进行相加。扩张的自注意力模块208基于经加权的值306A至306D的总和来确定输出向量,诸如注意力值310。参照图3B进一步描述对应的值306A、306B、306C以及306D中的各个值的注意力得分。
图3B是描绘根据本公开的另一示例实施方式的由AI系统102的扩张的自注意力模块208使用的注意力机制的图解表示312。在例示性示例场景中,查询302是由AI系统102从输入序列314中选择的。输入序列314包括输入帧。在示例实施方式中,各个输入帧可以对应于输入序列314中的词,例如:词314A(w1)、314B(w2)、314C(w3)以及314D(w4)。输入序列314对应于源序列308。选择输入词314C(w3)作为查询302。此外,由AI系统102为输入序列314生成一组键316A、316B、316C以及316D(也被称为键序列316A至316D)以及对应的一组值320A、320B、320C以及320D(也被称为值序列320A至320D)。键序列316A至316D和值序列320A至320D对应于键序列304A至304D和值序列306A至306D。
扩张的自注意力模块208确定针对值序列320A至320D的注意力得分。特别地,为值320A确定注意力得分318A、为值320B确定注意力得分318B、为值320C确定注意力得分318C、以及为值320D确定注意力得分318D。参照图4进一步描述由扩张的自注意力模块208提供的自注意力机制。
图4是根据本公开的一个示例实施方式的AI系统102的扩张的自注意力模块208的框图。在一个实施方式中,扩张的自注意力模块208包括被配置成执行扩张的自注意力的自注意力层。另外或者另选地,在一些实施方式中,神经网络206可以包括多层扩张的自注意力模块,其中,每个层可以对应于扩张的自注意力模块208。例如,在一个实施方式中,扩张的自注意力模块208包含一个扩张的自注意力层402和一个前馈神经网络(FFN)模块404。另外或者另选地,在不同的实施方式中,自注意力模块具有自注意力层、残差层、前馈层以及特定于任务的其它层的不同组合。扩张的自注意力子网402以成对的方式来学习信息关系。例如,扩张的自注意力层402学习用于诸如自动语音识别(ASR)应用、自动机器翻译(AMT)应用等应用的源序列308中的输入帧的逻辑关系。扩张的自注意力层402和前馈神经网络模块404两者之后都分别是“添加与归一化(Add&Norm)”层403和405。“添加与归一化”层403首先使用残差连接将扩张的自注意力层402的输入添加至该层的输出,并且之后应用层归一化。类似地,“添加与归一化”层405首先将前馈神经网络模块404的输入添加至其输出,然后也应用层归一化。
在示例场景中,扩张的自注意力层402接收由表示的输入序列S,其中,L和C表示序列长度和帧/向量维度。扩张的自注意力子网402经由线性变换将S转变成键序列(K)、查询序列(Q)以及值序列(V)。通过值序列V的经加权总和来计算自注意力输出(诸如注意力值310)序列,其中通过将序列Q中的各个查询帧与序列V中的各个值帧进行比较来得出注意力权重。对于键序列K、查询序列Q以及值序列V,注意力输出(例如,注意力值310)可以使用如式(1)所示的经缩放的点积来计算:
其中,和/>是查询、键和值,并且其中,d*表示维度,n*表示序列长度,dq=dk,并且nk=nv。
在示例应用中,输入序列314对应于句子“她吃绿色苹果”的词嵌入序列。使用与其它神经网络模块一起训练的查找表来将输入序列314中的各个词(即“她”、“吃”、“绿色”以及“苹果”)转换成嵌入向量。在由扩张的自注意力模块208的示例性实现所使用的自注意力机制中,将向量乘以矩阵以创建针对字嵌入314A至314D中的各个字嵌入的查询302、键(例如,键316A至316D)以及值(例如,值320A至320D)。通过取相应的输入序列314的查询302和键序列316A至316D的点积,来计算注意力得分(例如,注意力得分318A至318D)。例如,通过使用对应于词“她”的查询与所有词的键316A至316D之间的点积,来将第一个词“她”与句子中的所有其它词进行比较,从而计算第一个词“她”的注意力得分。在使用softmax函数将注意力得分进行归一化以使它们总和为1之后,所估计的注意力权重可以是“她”:0.05、“吃”:0.8、“绿色”:0.05、“苹果”:0.1,其中,我们在冒号之后表示各个词的权重。先将这些权重应用于值序列320A至320D,然后再将该值序列320A至320D进行求和以形成输出向量。类似地,通过将对应的查询与键316A至316D的句子中的所有键进行比较,并且将具有对应权重的值序列320A至320D与求和,来计算输入序列的剩余词(即“吃”、“绿色”和“苹果”)中的各个词的注意力得分。以这种方式,扩张的自注意力模块208通过使用查询帧序列、键帧序列316A至316D、以及值帧序列320A至320D,来将输入序列314变换成输出序列。扩张的自注意力模块208将查询帧序列中的不同查询帧与键帧和值帧的不同表示进行比较,以生成输出的输出序列。
为了将受限的自注意力与扩张的自注意力进行组合,在一些实施方式中,通过使用键帧316A至316D和对应的值帧320A至320D的子集来形成键帧和值帧的不同表示。可以基于当前查询帧302的位置来选择键帧和值帧的子集。另外,可以将扩张机制应用于键帧序列和值帧序列,以计算键帧扩张序列和值帧扩张序列。
在一些实施方式中,扩张的自注意力层402对应于在AI系统102的基于变换器的神经网络中使用的多头注意力,这接下来参照图5进行描述。
图5是例示根据本公开的一些实施方式的AI系统102的基于变换器的神经网络500的框图。在一些示例实施方式中,基于变换器的神经网络500可以利用基于注意力的编码器-解码器神经网络,例如,编码器502和解码器504。在这样的基于注意力的编码器-解码器神经网络中,可以将解码器状态用作用于控制对编码器502的编码器状态序列的注意力的查询(例如,查询302)。编码器状态序列可以对应于编码器502的输出序列。基于变换器的神经网络500还可以利用扩张的自注意力模块208。在一些实施方式中,基于变换器的神经网络500可以包括多个扩张的自注意力模块。在一些示例实施方式中,基于变换器的神经网络500利用基于编码器-解码器的注意力,诸如用于编码器502和解码器504,以及扩张的自注意力。两者的注意力计算可以基于经缩放的点积注意力,其中,注意力是基于如上面在图4的描述中所描述的式(1)来计算的。此外,基于变换器的神经网络500可以包括多层基于扩张的自注意力的神经网络模块。
在一些示例实施方式中,基于变换器的神经网络500使用多头注意力机制,其中
并且
其中,和/>是多头注意力(MHA)层的输入,例如,编码器502的多头注意力512、解码器504的多头注意力526和多头注意力530。Headi表示对于总数dh个头的第i个注意力头的输出,并且/> 以及是可训练的权重矩阵,通常dk=dv=dmodel/dh,以及Concatf表示沿着大小dv的特征维度的级联。
在一些示例实施方式中,编码器502可以包括两层卷积神经网络(CNN)模块(ENCCNN)(被包括在508中)以及自注意力模块511(ENCSA)或扩张的自注意力模块208的堆叠:
X0=ENCCNN(X)+PE, (4)
XE=ENCSA(X0), (5)
其中,PE是正弦位置编码,以及X=(x1,...,xT)表示输入序列314,例如,诸如80维log-mel谱能量的声学输入特征加上针对音高(pitch)信息的额外特征。ENCCNN的两个CNN层都可以使用步幅(stride)大小2,核大小3×3以及ReLU激活函数。因此,与特征序列X的帧速率相比,跨步(striding)可以将输出序列X0的帧速率降低4倍。式(5)的ENCSA模块由E个层组成,其中,第e个层(其中,e=1、……、E)是多头扩张的自注意力层(例如,多头注意力512)和前馈神经网络层(FF)(例如,前馈层516)的合成(composite):
Xe′=Norm(Xe-1+MHAe(Xe-1,Xe-1,Xe-1)), (6)
Xe=Norm(Xe′+FFe(Xe′)), (7)
其中,Norm(如在514中)表示层归一化。在一些示例实施方式中,前馈神经网络由内部维度dff和外部维度dmodel这两个线性神经网络层组成,这两个线性神经网络层可以由如下的整流线性单元(ReLU)激活函数分开:
/>
其中,以及/>是可训练的权重矩阵和偏置向量。基于变换器的神经网络500可以提供变换器目标函数,该变换器目标函数被定义为:
其中,标签序列Y=(y1,...,yL)、标签子序列y1:l-1=(y1,...,yl-1)、以及编码器输出序列项p(yl|y1:l-1,XE)表示变换器解码器模型,其可以被写为:
p(yl|y1:l-1,XE)=DEC(XE,y1:l-1), (10)
并且对于d=1、……、D,
其中,D表示解码器504中解码器层的数量。
EMBED是将输入标签序列(<s>,y1,…,yl-1)转换成可训练嵌入向量序列的函数,其中,<s>表示句子符号的开始。PE表示位置编码。DEC是通过将全连接神经网络应用于并且在输出上应用softmax分布来预测标签yl的后验概率的函数。
位置编码510和位置编码524是维度dseq的正弦位置编码(PE),该PE被添加至具有相似维度的序列X0和Z0,并且X0和Z0可以被写为:
其中,pos和i是X0和Z0的位置和维度索引。
在一些实施方式中,基于变换器的神经网络500可以与逐帧分类目标函数(例如,连接性时间分类(CTC)损失)进行联合训练。CTC的目标函数是:
其中,表示使用CTC的过渡(transition)规则(例如,标签之间的过渡以及空白标签的插入)来将标签序列Y扩展至所有帧级标签序列的集合的一对多映射。π表示帧级标签序列。最后,多目标损失函数由下式给出:
将该损失函数用于训练,其中,γ是控制目标函数pctc与patt之间的加权的超参数。
此外,编码器502和解码器504中的多头注意力层和前馈层之后是“添加与归一化”层,该“添加与归一化”层首先使用残差连接将相应层的输入添加至其输出,然后应用层归一化。例如,多头注意力512是通过“添加与归一化”层518连接至前馈层514的。以类似的方式,多头注意力526是通过“添加与归一化”层530连接至前馈层532的。前馈层516将两个线性变换应用于“添加与归一化”层514的输出,其中,线性变换通过激活函数(例如,整流线性单元(ReLU)分开。前馈层516的输出通过另一“添加与归一化”层发送,该另一“添加与归一化”层再次将残差连接应用于输出,后面是进行层归一化。先将编码器层512、514、516以及518重复E次(没有共享参数)(其中,层518向层512提供输入),然后再将最后一个编码器层518的输出传递至解码器504的多头注意力层530。作为附加输入,多头注意力层530接收先前的解码器输出令牌520,该解码器输出令牌被用于:通过经由层522、524、526以及528处理解码器状态来计算该解码器状态。层522将先前输出令牌520转换成嵌入向量,在层524添加了位置编码之后,该嵌入向量被输入至多头注意力层526。层526的输出被进一步处理,如之前使用“添加与归一化”层所讨论的。将多头注意力层530的输出通过“添加与归一化”层532提供给前馈层534。前馈层534的输出由另一“添加与归一化”层536进一步处理。解码器层526、528、530、532、534以及536以该排序被应用D次(没有共享参数),其中,层536的输出在第一应用之后被输入至层526。最后,在应用解码器层D次之后,层536的输出被转发至线性层538(全连接神经网络层),该线性层将解码器504的输出向量投影到输出令牌中的各个输出令牌的得分。将线性层538的输出提供给softmax层540,以将解码器得分转换成解码器(decode)504的各个输出令牌的概率。
在一些实施方式中,将基于变换器的编码器神经网络502的自注意力模块511替换成扩张的自注意力模块208。在这样的设置中,在基于E变换器的编码器层中的每一层处执行具有多个头的扩张的自注意力,而不是自注意力,以便以多个分辨率执行自注意力并且节省计算成本。
一些实施方式基于这样的认识,即,相对于当前查询帧(例如,查询302)的远距离信息可以在提供准确的结果方面很有用。为此,扩张的自注意力模块208提供允许注意当前查询帧的邻近帧的自注意力机制,该邻近帧包括与捕获输入序列314的准确上下文相关的远距离信息。在一些实施方式中,扩张的自注意力模块208的扩张机制可以概括包括相关信息的远距离信息。一些实施方式基于这样的认识,即,来自输入序列的相关信息可以在帧组块内进行提取或压缩,这将参照图6A至图6C进一步解释。
图6A是描绘根据本公开的一个示例实施方式的到自注意力的输入帧序列602的图解表示600。输入帧序列602可以对应于输入序列314。在一些示例实施方式中,从输入序列获得诸如当前查询帧604的查询帧。在基于全序列的自注意力606中,允许当前查询帧604的所有邻近帧的注意力连接,如图6A所示。然而,将所有邻近帧与当前查询帧604连接可以增加计算复杂度。为此,可以使用受限的自注意力608来降低计算复杂度。
在受限的自注意力608中,将围绕当前查询帧604的附近帧用于自注意力。这些邻近帧可以对应于相对于当前查询帧604的过去和将来的上下文信息。在一些实施方式中,可以将扩张的自注意力模块208配置成执行选择函数,该选择函数基于当前查询帧604的位置,从输入序列602中选择输入帧子集(例如,当前查询帧604的邻近帧),以形成输入序列602的表示的一部分。选择函数接受所述输入的位置作为参数,并且返回输入序列602中的邻近帧610A和610B。选择函数还可以接受前瞻大小和回顾大小的值,以形成当前查询帧周围的、用于选择邻近帧610A和610B的窗口大小。在一些实施方式中,窗口可以是时间受限窗口。选择函数可以限制全分辨率输入序列602的邻近帧的使用。在一些实施方式中,选择函数可以对应于用于选择输入帧子集的受限窗口610。在示例实施方式中,所选择的输入帧子集可以对应于固定数量的回顾帧610A和前瞻帧610B。回顾帧610A可以包括输入序列602中相对于查询604的过去(左)上下文,而前瞻帧610B可以包括将来(右)上下文。
然而,受限的自注意力608排除了相对于当前查询帧604的远距离信息。在受限制的自注意力608中排除远距离信息可能恶化结果。为此,可以将受限的自注意力608与扩张机制进行组合,以提供扩张的自注意力,这接下来参照图6B进行描述。
图6B是描绘根据本公开的另一示例实施方式的输入序列602的压缩的图解表示612。在一些实施方式中,扩张的自注意力模块208提供与受限的自注意力608组合的扩张机制612。
在扩张机制612中,可以将输入序列602进行概括,以形成键帧序列和值帧序列(例如,键序列316A至316D和值序列320A至320D)的压缩。例如,可以经由至少一个处理器(诸如处理器202)来将输入序列602中的键帧序列和值帧序列划分成键组块序列和值组块序列,诸如组块616A、616B、616C、616D、616E、616F、616G以及616H(也被称为组块616A至616H),其中,各个键组块包括多个键帧,并且各个值组块包括多个值帧。在一些示例实施方式中,将扩张的自注意力模块208配置成,以预定频率来划分键帧序列和值帧序列。此外,组块616A至616H中的各个组块被概括成扩张帧618A、618B、618C、618D、618E、618F、618G以及618H(也被称为概括618A至618H)。扩张帧618A至618H提供与键316A至316D和对应的值320A至320D的集合相对应的压缩形式(扩张序列620)。在示例实施方式中,第e个编码器层处的扩张机制首先将各自长度为N的键和值/>(参见式(3))拆分成各自长度为M的/>个非交叠键组块/>和值组块/>使得
对于l=1、……、L,
其中,对于以i=1、……、dh进行索引的注意力头,如果最后的组块和/>具有少于M个帧,则可以用零来填充它们。
此外,所述至少一个处理器将预定函数应用于所述键组块中的各个键组块以及所述值组块中的各个值组块,以便将键组块中的多个键帧压缩成用于键帧扩张序列的相同维数的更小预定数量的键帧,并且将值组块中的多个值帧压缩成用于值帧扩张序列的相同维数的更小预定数量的值帧。在一些实施方式中,使用并行计算处理同时压缩所述键组块中的至少一些键组块以及所述值组块中的一些值组块,使得实现处理器的高处理速度。
预定函数的示例包括但不限于采样函数、平均池化(average-pooling)函数(也被称为均值池化)、最大池化函数、基于注意力的池化、以及基于卷积神经网络(CNN)的池化中的一者或组合。
更具体地,将作为预定函数的子采样或池化技术应用于各个组块,以通过如下修改式(3)来生成分别被附加至受限的键帧序列和受限的值帧序列的扩张序列和/>
并且对于n=1、……、N,
其中,υlb和υla表示针对时间受限(对应于窗口大小R=υlb+υla+1)的回顾帧和前瞻帧的数量,以及Concatt表示沿着时间维度(帧)的级联。
在一些实施方式中,基于子采样的扩张机制选择各个组块中的第一帧以形成扩张序列和/>在另选实施方式中,应用池化方法来概括各个组块的信息内容,所述池化方法诸如采样函数、均值池化(MP)、最大池化、基于CNN的池化、基于注意力的池化(AP)或者具有后处理的基于注意力的池化(AP+PP)。
在一些实施方式中,应用基于CNN的扩张机制,其中,基于CNN的池化将具有经训练的权重以及与组块大小类似的核大小的卷积应用至键帧序列和值帧序列。
在一些实施方式中,应用基于最大池化的扩张机制,其中,最大池化函数从键组块中的多个键帧中选择具有最大能量的单个键帧,并且从值组块中的多个值帧中选择对应帧。
在一些实施方式中,应用基于采样函数的扩张机制,其中,采样函数从键组块中的多个键帧中选择单个帧,并且从值组块中的多个值帧中选择对应帧。在子采样函数和最大池化函数中,从键帧组块中选择单个键帧,并且从值帧组块中选择对应值帧,并且忽略由其它帧包含的信息。
在一些实施方式中,应用基于均值池化的扩张机制,其中,对于l=1、……、L,根据下式将键帧和值帧的各个组块中的帧平均成均值向量:
其中,符号[V,K]表示值帧或键帧的处理。在下式中继续使用该符号。将所得出的针对键帧序列和值帧序列的均值向量序列用于形成扩张序列
在优选实施方式中,可以应用基于注意力的池化(AP)来概括键帧和值帧的各个组块的信息内容,这将参照图7A和图7B进一步描述。
图6C例示了根据本公开的一些实施方式的由AI系统102输出的输出序列。参照图6A和图6B来描述图6C。所述至少一个处理器(诸如处理器202)通过将受限窗口610内的键帧序列和值帧序列的一部分与扩张序列620(即,键帧扩张序列和值帧扩张序列)进行组合来计算输出序列622,该扩张序列通过对键帧序列和值帧序列的非递归序列压缩来确定,以便降低自注意力处理的计算复杂度。扩张序列622对应于将上下文添加至查询帧并且使得包括AI系统102的任何系统能够以较少的处理时间来提供准确的输出的远距离帧。此外,所述至少一个处理器经由输出接口(诸如I/O接口210)来呈现输出序列622。
图7A例示了根据本公开的一些实施方式的基于注意力的池化700。
在基于注意力的池化(AP)700中,利用一个或多个经训练的查询向量(诸如经训练的查询向量706),以通过注意来自输入序列702的键帧组块或值帧组块,来确定多个权重分布704A、704B、以及704C。因此,基于注意力的池化将相关度指派给键帧组块中的键帧或者值帧组块中的值帧,以得出权重分布704A、704B、以及704C。基于多个权重分布704A、704B、以及704C,计算键帧组块的加权平均值和值帧组块的加权平均值。
在使用基于注意力的池化的示例实施方式中,通过使用如下的注意力机制来学习被用于从键组块和值组块中查询概括信息的嵌入向量(例如,经训练的查询向量706):
并且对于l=1、……、L,
以及
其中,表示查询,Embed(b)将注意力头编号b=(1、……、B)映射至维度dk的可训练向量(例如,经训练的查询向量706),以及B表示注意力头的总数量。沿着维度b对注意力输出/>进行平均以得出/>从而形成扩张序列(例如,扩张序列708)
特别地,将用于键帧序列的扩张序列(诸如扩张序列708)中的帧计算为键帧组块的加权平均值。另外或者另选地,将用于值帧序列的扩张序列(诸如扩张序列708)中的帧计算为用于值帧组块的所有值帧的加权平均值。
在一些实施方式中,基于注意力的扩张是连同后处理技术一起执行的。
图7B例示了根据本公开的一些实施方式的具有后处理710的基于注意力的扩张。
一些实施方式基于这样的实现,即,后处理技术的应用可以改进系统(例如,AI系统102)的输出。为此,根据后处理规则来处理键组块中的和值组块中的输出帧(诸如多个输出帧714),以生成用于键帧扩张序列和用于值帧扩张序列的一个或更多个帧714。
为了得出用于键帧扩张序列以及值帧扩张序列的输出帧714,后处理规则包括以下项中的一者或组合:保存针对键组块以及针对值组块确定的输出帧714、组合针对键组块以及针对值组块确定的输出帧714、以及去除针对键组块以及针对值组块确定的输出帧714中的至少一个输出帧。
可以针对至少两种不同类型的键组块和值组块来调整后处理规则,所述至少两种不同类型的键组块和值组块包括:第一类型的键组块和值组块,该第一类型的键组块和值组块在注意力计算的情况下与查询帧的距离小于阈值;以及第二类型的键组块和值组块,该第二类型的键组块和值组块在注意力计算的情况下与查询帧的距离等于或大于阈值。
在一些其它实施方式中,其中神经网络(诸如基于变换器的神经网络500)包括多个扩张机制作为扩张的自注意力模块的部分,以生成针对键帧以及针对值帧的至少两个扩张序列。在这样的设置中,至少一个处理器(诸如处理器202)保存针对键帧以及针对值帧的第一扩张序列中的与这样的键组块和值组块相对应的帧,即,该键组块和值组块在注意力计算的情况下,相对于查询帧的帧距离小于预定义的阈值。此外,所述至少一个处理器还保存针对键帧以及针对值帧的第二扩张序列中的与这样的键组块和值组块相对应的帧,即,该键组块和值组块在注意力计算的情况下,相对于查询帧的帧距离大于或大于预定义的阈值。
在一些实施方式中,至少一个处理器保存针对第一类型的键组块和值组块确定的多个输出帧714;以及去除第二类型的键组块和值组块中的多个帧714中的至少一个帧。
在一些另选实施方式中,所述至少一个处理器保存第一类型的键组块和值组块的多个帧714;以及通过神经网络处理,使用对针对键组块以及针对值组块确定的多个输出帧714进行平均池化和合并中的一者或组合,来组合第二类型的键组块和值组块中的多个帧。神经网络处理包括使用两个线性变换,这两个线性变换具有由非线性激活函数分开的经训练的参数并且具有瓶颈结构,使得第一线性变换将输入投影至更小维数,而第二线性变换将第一线性变换的输出投影至查询帧、键帧、以及值帧的维数。
例如,可以将后处理(PP)应用于以进一步处理基于注意力的池化输出,以及使用内部维度din和外部维度d[v,k]的两层前馈神经网络来有效地加入多个注意力头的输出:
并且
以及
其中,以及/>是可训练的权重矩阵和偏置向量,以及Concatf表示沿着特征维度的向量/>的级联(其中,b=1、……、B)。可以将后处理结果/>用于形成扩张序列/>
受限的自注意力与扩张机制的组合降低了针对长输入序列的自注意力的计算复杂度。这里的计算复杂度估计基于向量和矩阵乘积的浮点乘法的数量,这是由符号来描述的。为了简单起见,我们忽略估计标量乘法以及加法,因为在比较不同方法时包括这些运算不会显著改变相对复杂度。基于全序列的自注意力的计算复杂度为/>其中,N表示输入序列(诸如输入序列702)的长度并且dmodel表示注意力模型维度。如可以注意到,自注意力所需的操作数量与输入序列长度成二次方地增长。受限的自注意力的复杂度为其中,R是受限窗口的大小,其通常显著小于N,并因此与基于全序列的自注意力相比需要更少的操作。扩张的自注意力的计算复杂度为/>其包括受限的自注意力和附加的扩张序列的注意力成本加上扩张机制的计算复杂度ξ。基于注意力的池化机制的计算复杂度ξ等于经学习的查询/>和键组块/>的点积注意力的其中,所计算的注意力权重同样可以被重新使用以概括值组块/>后处理的计算复杂度等于/>以用于对键组块和值组块的注意力结果进行后处理。为了降低计算复杂度,后处理级的前馈神经网络FF可以使用内部维度din=16的瓶颈。
图7C例示了根据本公开的一些实施方式的经由基于注意力的池化的多分辨率经扩张的自注意力718。参照图7A和图7B来描述图7C。
以基于注意力的池化的执行(如上参照图7A和图7B所描述的)为基础,输出多个帧720(也被称为输出帧或扩张向量)。输出帧720是多分辨率帧,其中,与各个帧相对应的分辨率基于所述帧相对于时间受限窗口702B内的当前查询帧702A的位置而改变。将所述至少一个处理器配置成,分析输出帧以便生成扩张序列720。为此,将所述至少一个处理器配置成,确定各个输出帧与当前查询帧702A之间的距离。在该距离大于阈值的情况下,对应的输出帧被解释为远离当前查询帧702A。在这样的情况下,将所述至少一个处理器配置成,丢弃所述输出帧。因此,丢弃位于大于阈值距离的距离处的输出帧720。另一方面,保存位于小于阈值距离的距离处的输出帧720。因此,生成扩张序列720。因此,利用来自与时间受限窗口702B内的查询帧和邻近帧相对应的远距离帧的信息,来以较低复杂度确定当前查询帧702A的上下文。此外,将处理器配置成,基于扩张序列720和当前查询帧702A与时间受限窗口702B内的对应邻近帧的组合来生成输出序列。
接下来参照图8A和图8B来描述AI系统102在ASR应用和AMT应用中的实现。
图8A是根据本公开的一些实施方式的自动语音识别(ASR)系统802中的AI系统102的框图800。ASR系统802还包括输入接口804和输出接口806。将输入接口804配置成,接收表示语音话语的至少一部分的声学信号。AI系统102的神经网络806将声学信号转换成输入序列。神经网络806还使用扩张的自注意力模块208来将输入序列变换成输出序列。在一些实施方式中,使用多个扩张的自注意力模块来将输入序列变换成输出序列,其中,各个自注意力模块使用可以概括包括相关信息的远距离信息的扩张机制。将经变换的输入序列转换成语音话语的转录。经由输出接口806来提供语音话语的转录作为输出。
图8B是根据本公开的一些实施方式的自动机器翻译(AMT)系统810中的AI系统802的框图808。AMT系统810还包括输入接口812和输出接口814。将输入接口812配置成,接收表示采用第一语言的语音话语的输入信号。例如,语音话语可以是英语。AI系统102的神经网络206将输入信号转换成输入序列。神经网络206使用扩张的自注意力模块208来将输入序列变换成输出序列。将经变换的输入序列转换成表示采用第二语言的语音话语的输出信号。例如,第二语言可以对应于德语。经由输出接口806来提供表示采用第二语言的语音话语的输出信号作为输出。
此外,还可以在流传输应用中使用包括扩张的自注意力模块(诸如扩张的自注意力模块208)的AI系统(诸如AI系统102)。在这样的场景中,连续地接收输入帧。利用扩张的自注意力模块,针对所述输入帧中的各个输入帧生成具有有限延迟的自注意力输出。为此,只要已经接收到至少一个新的键帧组块以及一个新的值帧组块,就扩展键扩张序列和值扩张序列。
类似地,可以在诸如声音事件检测、音频标记系统、声源分离系统等不同应用中实现所公开的包括扩张的自注意力模块的AI系统。
图9例示了根据本公开的一些其它示例实施方式的用于实现AI系统102的示例性场景900。在例示性场景中,用户902可以使用用户装置904来提供输入。用户装置904可以包括:智能手机、平板计算机、膝上型计算机、智能手表、可穿戴装置、桌面装置或任何其它电子装置。用户902可以从数字助理906请求服务。数字助理906可以包括虚拟聊天机器人、交互式语音响应(IVR)系统等。用户902可以经由网络116,从用户装置904向ASR系统702提供表示语音话语的至少一部分的声学信号。ASR系统702可以使用AI系统102来提供语音话语的转录。此外,可以将转录提供给数字助理906。数字助理906可以基于所接收到的转录来操作并向用户902提供服务。例如,服务可以对应于雇用车辆908。车辆908可以包括:自主车辆、手动驾驶车辆或半自主车辆。可以将车辆908连接至网络116。转录可以包括用户902的上车和下车(pick-up and drop)位置。此外,用户902可以使用ASR系统702来操作车辆908。在一些情况下,可以将与AI系统102一起实现的ASR系统702、AMT 710或其组合用于与车辆908的导航系统相关的操作。
在一些情况下,AI系统102还可以向用户902提供语音到文本文档(speech-to-text documentation)。例如,用户902可以向用户装置904提供语音话语。用户装置904可以与AI系统102进行通信,以提供语音话语的转录。AI系统102可以基于该转录来提供文本文档。这可以帮助用户(例如,用户902)经由语音输入来写文本或维护文档。
在一些其它情况下,用户902可以在外国地区旅行。用户902可能无法以对应的外语来与外国地区的人进行通信。用户902可能租用车辆908,并且该车辆908的驾驶员可能不会说用户902的母语或者可能不知道与用户902进行沟通的共同语言。在这样的情况下,用户902可以向用户装置904提供输入,以用于将用户902的母语经机器翻译成外语。该输入可以对应于表示采用母语(例如,英语)的语音话语的输入信号。母语的语音话语可以经由网络116从用户装置904提供给AMT 710。AMT系统710可以使用AI系统102以快速且有效的方式翻译母语并提供外语的语音话语。
图10示出了根据本公开的一些实施方式的AI系统1000的框图。AI系统1000对应于图1的AI系统102。AI系统1000包括:输入接口1002、处理器1004、存储器1006、网络接口控制器(NIC)1014、输出接口1016以及存储装置1020。将存储器1006配置成存储神经网络1008。神经网络1008包括扩张的自注意力模块1010。在一些示例实施方式中,神经网络1008具有变换器、构象器(conformer)以及包括作为编码器、解码器或两者的一部分的扩张的自注意力模块1010的类似架构。
对扩张的自注意力模块1010进行训练,以将输入序列变换成对应的输出序列。通过将各个输入与输入序列的不同表示进行比较来变换输入序列。当处理器1004执行被存储在存储器1006中的指令时,使扩张的自注意力模块1010变换来自输入序列的输入的形式,以形成输入序列的表示。通过将依赖于所述输入在输入序列中的位置的表示的第一部分与独立于所述输入的位置的表示的第二部分组合来形成表示。第一部分对于变换不同的输入而变化,而第二部分是输入序列的压缩,其对于变换来自输入序列的所有输入保持恒定。此外,通过将输入与所形成的表示进行比较,来将输入变换成对应的输出。
在一些实施方式中,将扩张的自注意力模块1010配置成,执行选择函数,该选择函数基于输入的位置来从输入序列中选择输入子集,以形成输入序列的表示的第一部分。选择函数接受输入的位置作为参数,并且返回输入序列中的以输入的位置为中心的输入子集。选择函数还可以接受输入子集的大小值作为另一参数。
在一些其它实施方式中,将扩张的自注意力模块1010配置成,通过使用基于均值池化的方法概括输入序列来形成压缩。在优选实施方式中,对输入序列的概括可以使用具有或不具有后处理级的基于注意力的池化。
将输出接口1002配置成接受输入数据1024。在一些实施方式中,AI系统1000使用NIC 1014,经由网络1022来接收输入数据1024。在一些情况下,输入数据1024可以是经由网络1022接收到的在线数据。在一些其它情况下,可以将输入数据1024作为被存储在存储装置1020的记录数据。在一些实施方式中,将存储装置1020配置成,存储用于训练神经网络1008的训练数据集。
在一些示例实施方式中,输入数据1024可以包括:表示语音话语的至少一部分的声学信号、表示采用第一语言的语音话语的输入信号等。可以将神经网络1008配置成,将声学信号转换成输入序列,使用扩张的自注意力模块1010将输入序列变换成输出序列,以及将输出序列转换成语音话语的转录。可以将转录的输出经由输出接口1016提供给输出装置1018。以类似的方式,可以将神经网络1008配置成,将输入信号转换成输入序列,使用扩张的自注意力模块将输入序列变换成输出序列,以及将输出序列转换成表示采用第二语言的语音话语的输出信号。可以将输出信号经由输出接口1016提供给输出装置1018。
本公开的各种实施方式提供了一种AI系统,例如提供扩张的自注意力的AI系统1000。扩张的自注意力提高了受限的自注意力的准确度和建模能力。扩张的自注意力还有助于降低针对长输入序列的自注意力的计算复杂度。以这种方式,语音处理系统(例如,ASR系统702和AMT系统710)的计算成本和存储器使用可以不二次方地增长,从而以可行的方式提高系统的效率。
下面的描述仅提供了示例性实施方式,而非旨在对本公开的范围、适用性或配置进行限制。相反,示例性实施方式的以下描述将向本领域技术人员提供用于实现一个或更多个示例性实施方式的能够完成的描述。在不脱离所附权利要求中阐述的所公开主题的精神和范围的情况下,设想可以对要素的功能和排布结构进行的各种改变。
在以下描述中给出具体细节,以提供对实施方式的透彻理解。然而,本领域普通技术人员应当明白,可以在没有这些具体细节的情况下实践这些实施方式。例如,所公开主题中的系统、处理以及其它要素可以以框图形式示出为组件,以免不必要的细节模糊这些实施方式。在其它情况下,公知的处理、结构以及技术可以在没有不必要的细节的情况下被示出,以避免模糊这些实施方式。而且,各个附图中的相同标号和标记表示相同要素。
而且,各个实施方式可以被描述为处理,该处理被描绘为流程图、流示意图、数据流图、结构图或框图。尽管流程图可以将操作描述为顺序处理,但许多操作可以并行或同时执行。另外,操作的次序可以重新排列。处理可以在其操作完成时终止,但可以具有图中未讨论或未包括的附加步骤。而且,并非任何特别描述的处理中的所有操作都可能发生在所有实施方式中。处理可以对应于方法、函数、过程、子例程、子程序等。当一个处理对应一个函数时,该函数的终止可以对应于该函数返回至调用函数或主函数。
而且,所公开主题的实施方式可以至少部分地、人工地或者自动地实现。可以通过使用机器、硬件、软件、固件、中间件、微代码、硬件描述语言,或任何其组合来执行或至少辅助手动或自动实现。当以软件、固件、中间件或微代码实现时,执行必要任务的程序代码或代码段可以存储在机器可读介质中。处理器可以执行必要的任务。
可以将本文所概述的各种方法或过程编码为可在采用多种操作系统或平台中的任一者的一个或更多个处理器上执行的软件。另外,这种软件可以使用多种合适的编程语言和/或编程或脚本工具中的任一者来进行编写,并且还可以被编译为在框架或虚拟机上执行的可执行机器语言代码或中间代码。在各种实施方式中,通常可以根据需要组合或分布程序模块的功能。
可以将本公开的实施方式具体实施为已经提供了其示例的方法。作为该方法的一部分执行的动作可以按任何合适方式来安排。因此,即使在例示性实施方式中被示出为顺序动作,也可以构造按与所例示相比不同的次序来执行动作的实施方式,其可以包括同时执行一些动作。而且,在权利要求书中使用诸如“第一”、“第二”的普通术语来修改权利要求部件不独立地暗示一个权利要求部件的任何优先级、优先权,或次序超过执行一方法的动作的另一或临时次序,而是仅仅被用作用于区分具有特定名称的一个权利要求要素与具有相同名称(但供普通术语使用)的另一要素的标记,以区分这些权利要求要素。
尽管本公开已经参照特定优选实施方式进行了描述,但要明白的是,可以在本公开的精神和范围内进行各种其它改变和修改。因此,所附权利要求书的方面覆盖落入本公开的真实精神和范围内的所有这种改变和修改。
Claims (21)
1.一种用于通过探索输入序列中的输入对彼此的相互依赖性来联合地解释所述输入的人工智能(AI)系统,所述AI系统包括:至少一个处理器;以及存储器,所述存储器上存储有指令,所述指令在由所述至少一个处理器执行时,使所述AI系统:
接受输入帧序列;
利用神经网络处理所述输入帧序列,所述神经网络包括至少一个扩张的自注意力模块,所述至少一个扩张的自注意力模块被训练成,通过以下操作,根据所述输入帧序列来计算对应的输出序列:将所述输入帧序列中的各个输入帧变换成对应的查询帧、对应的键帧以及对应的值帧,从而导致具有相同排序的键帧序列、值帧序列以及查询帧序列;以及关于与所述键帧的扩张序列和所述值帧的扩张序列相组合的所述键帧序列和所述值帧序列中的基于所述查询帧在所述查询帧序列中的位置而受限的一部分来执行针对所述查询帧序列中的各个查询帧的注意力计算,所述键帧的扩张序列和所述值帧的扩张序列是通过利用预定提取函数来处理所述键帧序列和所述值帧序列中的不同帧来提取的;并且
呈现所述输出序列。
2.根据权利要求1所述的AI系统,其中,为了通过扩张机制来生成所述键帧的扩张序列和所述值帧的扩张序列,所述至少一个处理器被配置成:
将所述键帧序列和所述值帧序列划分成键组块序列和值组块序列,其中,各个键组块包括多个键帧,并且其中,各个值组块包括多个值帧;并且
向所述键组块中的各个键组块并且向所述值组块中的各个值组块应用所述预定提取函数,以:
将键组块中的所述多个键帧压缩成用于所述键帧的扩张序列的具有相同维数的更小预定数量的键帧;并且
将值组块中的所述多个值帧压缩成用于所述值帧的扩张序列的具有相同维数的更小预定数量的值帧。
3.根据权利要求2所述的AI系统,其中,所述处理器被配置成,使用并行计算处理同时压缩所述键组块中的至少一些键组块以及所述值组块中的至少一些值组块。
4.根据权利要求2所述的AI系统,
其中,所述预定提取函数是以下项中的一项或组合:采样函数、平均池化函数、最大池化函数、基于注意力的池化、以及基于卷积神经网络(CNN)的池化,其中,所述采样函数从所述键组块中的所述多个键帧中选择单个帧,并且从所述值组块中的所述多个值帧中选择对应的帧,
其中,所述平均池化函数对所述键组块中的所述多个键帧的元素以及所述值组块中的所述多个值帧的元素进行平均,
其中,所述最大池化函数从所述键组块中的所述多个键帧中选择具有最大能量的单个键帧,并且从所述值组块中的所述多个值帧中选择所述对应的帧,
其中,所述基于注意力的池化根据通过将经训练的查询向量应用到所述键组块中的所述多个键帧而确定的权重,来组合所述键组块中的所述多个键帧和所述值组块中的所述多个值帧,并且
其中,所述基于CNN的池化将具有经训练的权重以及与组块大小类似的核大小的卷积应用到所述键帧序列和所述值帧序列。
5.根据权利要求4所述的AI系统,
其中,子采样和所述最大池化从键帧组块中选择单个键帧并从值帧组块中选择对应的值帧,并且忽略由其它帧包含的信息,
其中,平均池化对键帧组块中的所有所述键帧以及键帧组块中的所有所述值帧进行同等地加权,并且
其中,所述基于注意力的池化向键帧组块中的所述键帧或者向所述值帧组块中的所述值帧指派相关度以得出权重分布,并且使用所述权重分布来计算针对键帧组块的所有所述键帧的加权平均值并计算针对值帧组块的所有所述值帧的加权平均值。
6.根据权利要求2所述的AI系统,其中,所述预定函数是基于注意力的池化,所述基于注意力的池化利用经训练的查询向量来注意所述键组块中的各个键组块,以确定所述键组块中的所述多个键帧的权重分布,并且利用根据所确定的权重分布选择的权重,来计算作为所述键组块中的所述多个键帧的加权平均值的用于所述键帧序列的所述扩张序列中的帧。
7.根据权利要求2所述的AI系统,其中,所述预定函数是基于注意力的池化,所述基于注意力的池化利用经训练的查询向量来注意所述键组块中的各个键组块,以确定所述键组块中的所述多个键帧的权重分布,并且使用相同的所确定的权重分布,来计算作为所述值组块中的所述多个值帧的加权平均值的用于所述值帧序列的所述扩张序列中的帧。
8.根据权利要求2所述的AI系统,
其中,所述预定函数是基于注意力的池化,并且其中,所述基于注意力的池化使用多个经训练的查询向量,以通过注意所述键帧组块或者注意所述值帧组块来生成多个权重分布,并且使用所述多个权重分布来计算与所述键帧组块的加权平均值以及所述值帧组块的加权平均值相对应的多个输出帧,并且
其中,所述处理器还被配置成,根据后处理规则来对所述键组块中的所述多个输出帧以及所述值组块中的所述多个输出帧执行后处理,以生成用于所述键帧的扩张序列以及用于所述值帧的扩张序列的一个或多个帧。
9.根据权利要求8所述的AI系统,其中,为了得出用于所述键帧的扩张序列以及用于所述值帧的扩张序列的帧,所述后处理规则包括以下项中的一项或组合:
保存针对所述键组块以及针对所述值组块确定的所述多个输出帧,
组合针对所述键组块以及针对所述值组块确定的所述多个输出帧,以及
去除针对所述键组块以及针对所述值组块确定的所述多个输出帧中的至少一个输出帧。
10.根据权利要求9所述的AI系统,其中,所述处理器还被配置成,针对至少两种不同类型的键组块和值组块来调整所述后处理规则,所述至少两种不同类型的键组块和值组块包括:第一类型的键组块和值组块,所述第一类型的键组块和值组块在所述注意力计算的情况下与所述查询帧的距离小于阈值;以及第二类型的键组块和值组块,所述第二类型的键组块和值组块在所述注意力计算的情况下与所述查询帧的距离等于或大于阈值。
11.根据权利要求10所述的AI系统,其中,所述处理器还被配置成:
保存针对第一类型的键组块和值组块确定的所述多个帧;并且
去除所述第二类型的键组块和值组块中的所述多个帧中的至少一个帧。
12.根据权利要求10所述的AI系统,其中,所述处理器还被配置成:
保存用于所述第一类型的键组块和值组块的所述多个帧;以及
通过神经网络处理,使用对针对所述键组块以及针对所述值组块确定的所述多个输出帧进行平均池化和合并中的一者或组合,来组合所述第二类型的键组块和值组块中的所述多个帧。
13.根据权利要求11所述的AI系统,其中,所述神经网络处理包括使用两个线性变换,所述两个线性变换具有通过非线性激活函数分开的经训练的参数并且具有瓶颈结构,使得第一线性变换将输入投影至更小维数,并且第二线性变换将所述第一线性变换的输出投影至查询帧、键帧以及值帧的维数。
14.根据权利要求1所述的AI系统,其中,所述扩张的自注意力模块被用在流传输应用中,其中,所述输入帧序列是连续接收的,并且当生成至少一个新的键帧组块和一个新的值帧组块时,通过扩展所述键的扩张序列和所述值的扩张序列,来针对所述输入帧中的各个输入帧生成具有有限延迟的自注意力输出。
15.根据权利要求1所述的AI系统,其中,所述扩张的自注意力模块将所述输入帧序列变换成所述查询帧序列、所述键帧序列以及所述值帧序列,使得所述注意力计算将查询帧与来自所述键帧序列的一部分键帧并且与根据所述键帧序列变换的所述扩张序列进行比较,以根据来自所述值帧序列的一部分值帧的序列和所述值帧的扩张序列来生成输出。
16.根据权利要求14所述的AI系统,其中,来自所述键帧序列的所述一部分键帧以及来自所述值帧序列的所述一部分值帧是基于所述查询帧在所述查询帧序列中的所述位置来选择的。
17.根据权利要求1所述的AI系统,其中,所述神经网络包括多层扩张的自注意力模块。
18.根据权利要求2所述的AI系统,
其中,所述处理器还被配置成,通过第一扩张机制在处理流水线上顺序地生成针对所述键帧的第一扩张序列和针对所述值帧的第一扩张序列,以及通过第二扩张机制在处理流水线上顺序地生成针对所述键帧的第二扩张序列和针对所述值帧的第二扩张序列,并且
其中,具有第一组块大小的所述第一扩张序列对应于具有第二组块大小的第二扩张机制的输入,以根据所述键帧的第一扩张序列呈现所述键帧的第二扩张序列,并且根据所述第一值帧的第一扩张序列呈现所述值帧的第二扩张序列。
19.根据权利要求17所述的AI系统,其中,所述处理器还被配置成:
保存所述键帧的所述第一扩张序列以及所述值帧的所述第一扩张序列中的与这样的键组块和值组块相对应的所述帧,即,所述键组块和值组块在所述注意力计算的情况下,相对于所述查询帧的帧距离小于预定义阈值;以及
保存所述键帧的所述第二扩张序列以及所述值帧的所述第二扩张序列中的与这样的键组块和值组块相对应的所述帧,即,所述键组块和值组块在所述注意力计算的情况下,相对于所述查询帧的帧距离大于或大于预定义阈值。
20.根据权利要求1所述的AI系统,其中,所述神经网络具有变换器或构象器架构,所述变换器或构象器架构包括作为编码器、解码器或两者的部分的所述扩张的自注意力模块。
21.根据权利要求1所述的AI系统,所述AI系统形成自动语音识别(ASR)系统、声音事件检测系统、音频标记系统、声源分离系统、以及机器翻译系统中的一者或组合的至少一部分。
Applications Claiming Priority (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US17/213,942 | 2021-03-26 | ||
US17/213,942 US11557283B2 (en) | 2021-03-26 | 2021-03-26 | Artificial intelligence system for capturing context by dilated self-attention |
PCT/JP2021/044596 WO2022201646A1 (en) | 2021-03-26 | 2021-11-30 | An artificial intelligence system for capturing context by dilated self-attention |
Publications (1)
Publication Number | Publication Date |
---|---|
CN117043786A true CN117043786A (zh) | 2023-11-10 |
Family
ID=79288105
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202180096134.6A Pending CN117043786A (zh) | 2021-03-26 | 2021-11-30 | 通过扩张的自注意力来捕获上下文的人工智能系统 |
Country Status (5)
Country | Link |
---|---|
US (1) | US11557283B2 (zh) |
EP (1) | EP4121910A1 (zh) |
JP (1) | JP2024508196A (zh) |
CN (1) | CN117043786A (zh) |
WO (1) | WO2022201646A1 (zh) |
Families Citing this family (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US11810552B2 (en) * | 2021-07-02 | 2023-11-07 | Mitsubishi Electric Research Laboratories, Inc. | Artificial intelligence system for sequence-to-sequence processing with attention adapted for streaming applications |
CN115662508B (zh) * | 2022-10-14 | 2024-03-12 | 徐州工业职业技术学院 | 一种基于多尺度交叉注意力模型的rna修饰位点预测方法 |
CN116072125B (zh) * | 2023-04-07 | 2023-10-17 | 成都信息工程大学 | 一种噪声环境下的自监督说话人识别模型构建方法及系统 |
Family Cites Families (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US11862146B2 (en) * | 2019-07-05 | 2024-01-02 | Asapp, Inc. | Multistream acoustic models with dilations |
WO2022122121A1 (en) * | 2020-12-08 | 2022-06-16 | Huawei Technologies Co., Ltd. | End-to-end streaming acoustic trigger apparatus and method |
-
2021
- 2021-03-26 US US17/213,942 patent/US11557283B2/en active Active
- 2021-11-30 CN CN202180096134.6A patent/CN117043786A/zh active Pending
- 2021-11-30 JP JP2023574886A patent/JP2024508196A/ja active Pending
- 2021-11-30 WO PCT/JP2021/044596 patent/WO2022201646A1/en active Application Filing
- 2021-11-30 EP EP21840193.3A patent/EP4121910A1/en active Pending
Also Published As
Publication number | Publication date |
---|---|
JP2024508196A (ja) | 2024-02-22 |
WO2022201646A1 (en) | 2022-09-29 |
EP4121910A1 (en) | 2023-01-25 |
US20220310070A1 (en) | 2022-09-29 |
US11557283B2 (en) | 2023-01-17 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US20240038218A1 (en) | Speech model personalization via ambient context harvesting | |
US10762427B2 (en) | Connectionist temporal classification using segmented labeled sequence data | |
US10762891B2 (en) | Binary and multi-class classification systems and methods using connectionist temporal classification | |
CN117043786A (zh) | 通过扩张的自注意力来捕获上下文的人工智能系统 | |
US11373639B2 (en) | System and method for streaming end-to-end speech recognition with asynchronous decoders pruning prefixes using a joint label and frame information in transcribing technique | |
KR20220130565A (ko) | 키워드 검출 방법 및 장치 | |
US11961515B2 (en) | Contrastive Siamese network for semi-supervised speech recognition | |
US11756551B2 (en) | System and method for producing metadata of an audio signal | |
WO2023131207A1 (en) | Methods and systems for streamable multimodal language understanding | |
US11087213B2 (en) | Binary and multi-class classification systems and methods using one spike connectionist temporal classification | |
Mamatov et al. | Speech recognition based on transformer neural networks | |
WO2022083165A1 (en) | Transformer-based automatic speech recognition system incorporating time-reduction layer | |
EP4154190B1 (en) | Artificial intelligence system for sequence-to-sequence processing with dual causal and non-causal restricted self-attention adapted for streaming applications | |
WO2023172331A1 (en) | Code-mixed speech recognition using attention and language-specific joint analysis | |
CN115910065A (zh) | 基于子空间稀疏注意力机制的唇语识别方法、系统及介质 | |
EP4295356A1 (en) | Reducing streaming asr model delay with self alignment | |
US20230103382A1 (en) | Training for long-form speech recognition | |
US20240203406A1 (en) | Semi-Supervised Training Scheme For Speech Recognition | |
Panwar | Offline Speaker Diarization of Single-Channel Audio | |
Kshirod | Speaker Diarization with Deep Learning Techniques | |
CN117609574A (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 |