CN118076999A - 用于级联编码器的基于transducer的流传输推敲 - Google Patents
用于级联编码器的基于transducer的流传输推敲 Download PDFInfo
- Publication number
- CN118076999A CN118076999A CN202280067381.8A CN202280067381A CN118076999A CN 118076999 A CN118076999 A CN 118076999A CN 202280067381 A CN202280067381 A CN 202280067381A CN 118076999 A CN118076999 A CN 118076999A
- Authority
- CN
- China
- Prior art keywords
- encoder
- pass
- speech recognition
- feature representation
- order feature
- 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
- 238000000034 method Methods 0.000 claims abstract description 38
- 239000013598 vector Substances 0.000 claims description 34
- 238000012545 processing Methods 0.000 claims description 15
- 230000001364 causal effect Effects 0.000 claims description 13
- 230000015654 memory Effects 0.000 description 30
- 230000007246 mechanism Effects 0.000 description 13
- 238000004590 computer program Methods 0.000 description 8
- 230000008569 process Effects 0.000 description 7
- 238000004891 communication Methods 0.000 description 6
- 239000012634 fragment Substances 0.000 description 6
- 238000013528 artificial neural network Methods 0.000 description 5
- 238000010586 diagram Methods 0.000 description 5
- 238000003058 natural language processing Methods 0.000 description 5
- 230000003287 optical effect Effects 0.000 description 5
- 238000013518 transcription Methods 0.000 description 5
- 230000035897 transcription Effects 0.000 description 5
- 230000003993 interaction Effects 0.000 description 4
- 239000011159 matrix material Substances 0.000 description 4
- 230000008901 benefit Effects 0.000 description 3
- 230000006870 function Effects 0.000 description 3
- 238000010606 normalization Methods 0.000 description 3
- 230000004044 response Effects 0.000 description 3
- 238000012549 training Methods 0.000 description 3
- 238000012935 Averaging Methods 0.000 description 1
- 230000009471 action Effects 0.000 description 1
- 238000013459 approach Methods 0.000 description 1
- 230000009286 beneficial effect Effects 0.000 description 1
- 230000008859 change Effects 0.000 description 1
- 125000004122 cyclic group Chemical group 0.000 description 1
- 238000003066 decision tree Methods 0.000 description 1
- 230000003111 delayed effect Effects 0.000 description 1
- 230000006872 improvement Effects 0.000 description 1
- 230000010354 integration Effects 0.000 description 1
- 239000004973 liquid crystal related substance Substances 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 230000006855 networking Effects 0.000 description 1
- 230000000306 recurrent effect Effects 0.000 description 1
- 238000007670 refining Methods 0.000 description 1
- 230000008439 repair process Effects 0.000 description 1
- 230000004043 responsiveness Effects 0.000 description 1
- 238000005070 sampling Methods 0.000 description 1
- 239000004065 semiconductor Substances 0.000 description 1
- 230000001953 sensory effect Effects 0.000 description 1
- 239000007787 solid Substances 0.000 description 1
- 230000005236 sound signal Effects 0.000 description 1
- 230000003068 static effect Effects 0.000 description 1
- 238000012546 transfer Methods 0.000 description 1
- 230000000007 visual 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
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F40/00—Handling natural language data
- G06F40/10—Text processing
- G06F40/12—Use of codes for handling textual entities
- G06F40/126—Character encoding
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/04—Architecture, e.g. interconnection topology
- G06N3/044—Recurrent networks, e.g. Hopfield networks
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/04—Architecture, e.g. interconnection topology
- G06N3/045—Combinations of networks
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/04—Architecture, e.g. interconnection topology
- G06N3/045—Combinations of networks
- G06N3/0455—Auto-encoder networks; Encoder-decoder networks
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/04—Architecture, e.g. interconnection topology
- G06N3/0464—Convolutional networks [CNN, ConvNet]
-
- 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
-
- 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/02—Feature extraction for speech recognition; Selection of recognition unit
-
- 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/06—Creation of reference templates; Training of speech recognition systems, e.g. adaptation to the characteristics of the speaker's voice
- G10L15/063—Training
-
- 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/083—Recognition 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/08—Speech classification or search
- G10L15/18—Speech classification or search using natural language modelling
- G10L15/183—Speech classification or search using natural language modelling using context dependencies, e.g. language models
-
- 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/18—Speech classification or search using natural language modelling
- G10L15/183—Speech classification or search using natural language modelling using context dependencies, e.g. language models
- G10L15/19—Grammatical context, e.g. disambiguation of the recognition hypotheses based on word sequence rules
- G10L15/197—Probabilistic grammars, e.g. word n-grams
-
- 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/22—Procedures used during a speech recognition process, e.g. man-machine dialogue
Landscapes
- Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- Computational Linguistics (AREA)
- Health & Medical Sciences (AREA)
- Theoretical Computer Science (AREA)
- Artificial Intelligence (AREA)
- Audiology, Speech & Language Pathology (AREA)
- Human Computer Interaction (AREA)
- Acoustics & Sound (AREA)
- Multimedia (AREA)
- General Engineering & Computer Science (AREA)
- General Health & Medical Sciences (AREA)
- General Physics & Mathematics (AREA)
- Evolutionary Computation (AREA)
- Molecular Biology (AREA)
- Life Sciences & Earth Sciences (AREA)
- Biomedical Technology (AREA)
- Biophysics (AREA)
- Data Mining & Analysis (AREA)
- Computing Systems (AREA)
- Mathematical Physics (AREA)
- Software Systems (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Probability & Statistics with Applications (AREA)
- Machine Translation (AREA)
- Telephonic Communication Services (AREA)
Abstract
一种方法(400)包括接收声学帧(110)的序列,并且由第一编码器(210)针对声学帧序列中的对应的声学帧生成第一高阶特征表示(212)。该方法还包括由第一遍transducer解码器(201)针对对应的第一高阶特征表示生成第一遍语音识别假设(120a),以及由文本编码器(240)针对对应的第一遍语音识别假设生成文本编码(242)。该方法还包括由第二编码器(220)针对对应的第一高阶特征表示生成第二高阶特征表示(222)。该方法还包括由第二遍transducer解码器(202)使用对应的第二高阶特征表示和对应的文本编码来生成第二遍语音识别假设(120b)。
Description
技术领域
本公开涉及用于级联编码器(cascaded encoders)的基于transducer的流传输推敲(deliberation)。
背景技术
自动语音识别(ASR)系统已经从每个模型具有专用目的的多个模型演变为使用单个神经网络来将音频波形(即,输入序列)直接映射到输出句子(即,输出序列)的集成模型。这种集成已经导致序列到序列方法,该方法当给定音频特征序列时生成单词(或字素)序列。利用集成结构,模型的所有组件可以作为单个端到端(E2E)神经网络联合被训练。这里,E2E模型是指其架构完全由神经网络构成的模型。也就是说,完全神经网络在没有外部和/或手动设计的组件(例如,有限状态transducer、词典(lexicon)或文本规范化模块)的情况下起作用。另外,当训练E2E模型时,这些模型通常不需要来自决策树的自举或来自单独系统的时间对准。这些E2E ASR系统已经取得了巨大的进展,在包括字错误率(WER)的若干常见基准方面超越了常规ASR系统。例如,涉及用户交互(诸如话音搜索或设备上听写)的许多应用要求模型以流传输方式执行识别。其他应用(如离线视频字幕)不需要模型来流传输,并且能够利用未来的上下文(context)来改善性能。通常,模型以流传输方式执行识别,同时还具有类似于利用未来上下文的非流传输模型的改善性能将是有益的。
发明内容
本公开的一个方面提供了一种用于级联编码器的基于transducer的推敲模型,包括:第一编码器,所述第一编码器被配置为:接收声学帧的序列作为输入;以及在多个输出步中的每个输出步处,为声学帧的序列中的对应的声学帧生成第一高阶特征表示。基于transducer的推敲模型还包括第一遍(pass)transducer解码器,该第一遍transducer解码器被配置为:接收由第一编码器在多个输出步中的每个输出步处生成的第一高阶特征表示作为输入;以及在多个输出步中的每个输出步处,为对应的第一高阶特征表示生成第一遍语音识别假设。基于transducer的推敲模型还包括文本编码器,该文本编码器被配置为:接收在多个输出步中的每个输出步处生成的第一遍语音识别假设作为输入;以及在多个输出步中的每个输出步处,为对应的第一遍语音识别假设生成文本编码。基于transducer的推敲模型还包括第二编码器,该第二编码器被配置为:接收由第一编码器在多个输出步中的每个输出步处生成的第一高阶特征表示作为输入;以及在多个输出步中的每个输出步处,为对应的第一高阶特征表示生成第二高阶特征表示。基于transducer的推敲模型还包括第二遍transducer解码器,该第二遍transducer解码器被配置为:接收由第二编码器在多个输出步中的每个输出步处生成的第二高阶特征表示和由文本编码器在多个输出步中的每个输出步处生成的文本编码作为输入;以及在多个输出步中的每个输出步处,生成第二遍语音识别假设。
本公开的实施方式可以包括以下可选特征中的一个或多个。在一些实施方式中,基于transducer的推敲模型进一步包括由第一遍transducer解码器和第二遍transducer解码器共享的预测网络。这里,预测网络被配置为接收由最终softmax层输出的非空白符号的序列作为输入;以及在多个输出步中的每个输出步处生成密集表示。在这些实施方式中,第二遍transducer解码器进一步包括联合网络,该联合网络被配置为:接收由预测网络在多个输出步中的每个输出步处生成的密集表示、由第二编码器在多个输出步中的每个输出步处生成的第二高阶特征表示、以及由文本编码器在多个输出步中的每个输出步处生成的文本编码作为输入;以及在多个输出步中的每个输出步处,生成第二遍语音识别假设。
在一些示例中,第二编码器在不接收任何声学帧作为输入的情况下生成第二高阶特征表示。第一编码器可以包括因果编码器,该因果编码器包括多头注意力层的堆叠。多头注意力层的堆叠可以包括Conformer层的堆叠。在一些实施方式中,第二编码器包括非因果编码器,该非因果编码器包括多头注意力层的堆叠。在这些实施方式中,多头注意力层的堆叠可以包括Conformer层的堆叠。第二遍transducer解码器可以在不使用任何纯文本数据的情况下进行训练。
在一些示例中,接收由文本编码器在多个输出步中的每个输出步处生成的文本编码包括以流传输方式接收文本编码的部分序列。在这些示例中,第二遍transducer解码器可以进一步包括联合网络,该联合网络被配置为确定文本编码的部分序列与第二高阶特征表示的对应的部分之间的注意力上下文矢量。第一遍语音识别假设和第二遍语音识别假设可以各自对应于部分语音识别结果。
本公开的另一方面提供了一种计算机实现的方法,当在数据处理硬件上执行时,使数据处理硬件执行用于级联编码器的基于transducer的流传输推敲的操作。该操作包括接收声学帧的序列以及由第一编码器在多个输出步中的每个输出步处为声学帧的序列中的对应的声学帧生成第一高阶特征表示。该操作还包括由第一遍transducer解码器在多个输出步中的每个输出步处为对应的第一高阶特征表示生成第一遍语音识别假设。该操作还包括由文本编码器在多个输出步中的每个输出步处为对应的第一遍语音识别假设生成文本编码以及由第二编码器在多个输出步中的每个输出步处为对应的第一高阶特征表示生成第二高阶特征表示。该操作还包括由第二遍transducer解码器在多个输出步中的每个输出步处使用对应的第二高阶特征表示和对应的文本编码生成第二遍语音识别假设。
本公开的实施方式可以包括以下可选特征中的一个或多个。在一些实施方式中,所述操作进一步包括:在所述多个输出步中的每个输出步处,由预测网络基于由最终softmax层输出的非空白符号的序列生成密集表示。这里,第一遍transducer解码器和第二遍transducer解码器共享预测网络。在一些示例中,操作进一步包括在多个输出步中的每个输出步处,由联合网络基于以下来生成第二遍语音识别假设:由预测网络在多个输出步中的每个输出步处生成的密集表示、由第二编码器在多个输出步中的每个输出步处生成的第二高阶特征表示、以及由文本编码器在多个输出步中的每个输出步处生成的文本编码。第二编码器可以在不接收任何声学帧作为输入的情况下生成第二高阶特征表示。
在一些实施方式中,第一编码器包括因果编码器,该因果编码器包括多头注意力层的堆叠。在这些实施方式中,多头注意力层的堆叠包括conformer层的堆叠。在一些示例中,第二编码器包括非因果编码器,该非因果编码器包括多头注意力层的堆叠。在这些示例中,多头注意力层的堆叠包括conformer层的堆叠。第二遍transducer解码器可以在不使用任何纯文本数据的情况下进行训练。在一些实施方式中,接收文本编码包括以流传输方式接收文本编码的部分序列。在这些实施方式中,操作可以进一步包括由联合网络确定文本编码的部分序列与第二高阶特征表示的对应部分之间的注意力上下文矢量。第一遍语音识别假设和第二遍语音识别假设可以各自对应于部分语音识别结果。
在下面的附图和描述中阐述本公开的一个或多个实施方式的细节。其他方面、特征和优点将通过描述和附图并且通过权利要求而显而易见。
附图说明
图1是示例语音识别系统的示意图。
图2是使用基于transducer的流传输推敲的示例语音识别模型的示意图。
图3是图2的语音识别模型的示例预测网络的示意图。
图4是用于级联编码器的基于transducer的流传输推敲的计算机实现的方法的操作的示例布置的流程图。
图5是可以被用于实现本文中描述的系统和方法的示例计算设备的示意图。
在各个附图中,相同的附图标记指示相同的元件。
具体实施方式
端到端(E2E)自动语音识别(ASR)模型传统上被构造为以流传输模式或非流传输模式操作。传统上,E2E ASR模型包括作为主要组件的编码器和解码器。涉及终端用户交互(如话音搜索或设备上听写)的应用可能需要模型以流传输方式执行识别。这里,以流传输方式执行识别是指ASR模型以尽可能少的时延输出他们所说的话语的每个单词。其他应用(如离线视频字幕)不需要模型流传输,并且能够利用未来的上下文来改善性能。例如,当与长短期记忆(LSTM)或transformer重新评分模型相比时,推敲模型显示出对生僻词和词表外(OOV)词识别的巨大改善。特别地,推敲模型在通过使用注意力机制并查看完整的音频上下文来校正初始语音识别结果方面表现出色。然而,这些推敲模型使用增加ASR模型的时延的注意力解码器,使得推敲模型不太适合于流传输应用。
本文中的实施方式涉及用于级联编码器的基于transducer的推敲ASR模型。特别地,ASR模型包括为对应的声学帧生成第一高阶特征表示的第一编码器和为对应的第一高阶特征表示生成第一遍语音识别假设的第一遍transducer解码器。ASR模型还包括文本编码器,其为对应的第一遍语音识别假设生成文本编码。此外,第二编码器为对应的第一高阶特征表示生成第二高阶特征表示,并且第二遍transducer解码器生成第二遍语音识别假设。值得注意的是,基于transducer的推敲ASR模型是以流传输方式操作的推敲模型,因为transducer解码器仅需要部分第一遍语音识别假设来生成第二遍语音识别假设。作为对照,当前的推敲模型在第二遍期间使用注意力解码器,其在生成第二遍语音识别假设之前需要完整的第一遍语音识别假设。此外,基于transducer的推敲ASR模型在训练期间不需要任何纯文本的训练数据。
图1是语音环境100的示例。在语音环境100中,用户104与诸如用户设备10的计算设备交互的方式可以是通过话音输入。用户设备10(通常也称为设备10)被配置为捕获来自语音环境100内的一个或多个用户104的声音(例如,流传输音频数据)。这里,流传输音频数据可以指用户104的口头话语106,其用作可听查询、用户设备10的命令或由设备10捕获的可听通信。用户设备10的支持语音的系统可以通过回答查询和/或使命令由一个或多个下游应用执行/履行来对查询或命令进行字段化。
用户设备10可以对应于与用户104相关联并且能够接收音频数据的任何计算设备。用户设备10的一些示例包括但不限于移动设备(例如,移动电话、平板电脑、膝上型电脑等)、计算机、可穿戴设备(例如,智能手表)、智能电器、物联网(IoT)设备、车辆信息娱乐系统、智能显示器、智能扬声器等。用户设备10包括数据处理硬件12和与数据处理硬件12通信的存储器硬件14,并且存储指令,该指令在由数据处理硬件12执行时使数据处理硬件12执行一个或多个操作。用户设备10进一步包括具有音频捕获设备(例如,麦克风)16,16a的音频系统16,其用于捕获语音环境100内的口头话语106并且将其转换成电信号,以及用于传送可听音频信号(例如,作为来自用户设备10的输出音频数据)的语音输出设备(例如,扬声器)16,16b。虽然在所示的示例中用户设备10实现单个音频捕获设备16a,但是在不脱离本公开的范围的情况下,用户设备10可以实现音频捕获设备16a的阵列,由此阵列中的一个或多个捕获设备16a可以不物理地驻留在用户设备10上,而是与音频系统16通信。
在语音环境100中,自动语音识别(ASR)系统118实现ASR模型200并且驻留在用户104的用户设备10上和/或驻留在经由网络40与用户设备10通信的远程计算设备60(例如,在云计算环境中执行的分布式系统的一个或多个远程服务器)上。在一些示例中,ASR模型200可以是循环神经网络transducer(RNN-T)模型。用户设备10和/或远程计算设备60还包括音频子系统108,该音频子系统108被配置为接收由用户104说出并由音频捕获设备16A捕获的话语106,并且将话语106转换为与能够由ASR系统118处理的输入声学帧110相关联的对应数字格式。在所示的示例中,用户说出相应的话语106,并且音频子系统108将话语106转换为对应的音频数据(例如,声学帧序列)110以输入到ASR系统118。此后,ASR模型200接收与话语106相对应的声学帧110的序列作为输入,并且在ASR模型接收(例如,处理)声学帧110的序列中的每个声学帧110时,在每个输出步处生成/预测话语106的对应转录120(例如,语音识别结果/假设)。
在所示的示例中,ASR模型200可以执行流传输语音识别以产生第一遍语音识别假设(例如,初始语音识别结果)120,120a,并且通过改善第一遍语音识别假设120a来生成第二遍语音识别假设(例如,最终语音识别结果)120,120b。第一遍语音识别假设120a和第二遍语音识别假设120b可以对应于部分语音识别结果或整个语音识别结果。换句话说,第一遍语音识别假设120a和第二遍语音识别假设120b可以对应于话语106的一部分或整个话语106。例如,部分语音识别结果可以对应于口头话语的一部分或甚至口头词项的一部分。然而,如将变得显而易见的,ASR模型200对第二遍语音识别假设120b执行附加处理,由此第二遍语音识别假设120b可以从第一遍语音识别假设120a延迟。
用户设备10和/或远程计算设备60还执行用户界面生成器107,其被配置为向用户设备10的用户104呈现话语106的转录120的表示。如下面更详细描述的,用户界面生成器107可以在时间1期间以流传输方式显示第一遍语音识别假设120a,并且随后在时间2期间以流传输方式显示第二遍语音识别假设120b。值得注意的是,ASR模型200以流传输方式输出第二遍语音识别假设120b,即使第二遍语音识别假设120b在第一遍语音识别假设120a上改善。在一些配置中,从ASR系统118输出的转录120例如由在用户设备10或远程计算设备60上执行的自然语言理解(NLU)模块处理,以执行由话语106指定的用户命令/查询。附加地或替代地,(例如,在用户设备10或远程计算设备60的任何组合上执行的)文本到语音系统(未示出)可以将转录120转换为合成语音以供用户设备10和/或另一设备可听地输出。
在所示的示例中,用户104与使用ASR系统118的用户设备10的程序或应用50(例如,数字助理应用50)交互。例如,图1描绘了用户104与数字助理应用50通信,并且数字助理应用50在用户设备10的屏幕上显示数字助理界面18以描绘用户104与数字助理应用50之间的对话。在该示例中,用户104询问数字助理应用50“What time is the concert tonight?(今晚音乐会是什么时间?)”来自用户104的该问题是由音频捕获设备16a捕获并由用户设备10的音频系统16处理的口头话语106。在该示例中,音频系统16接收口头话语106并将其转换为声学帧110的序列以输入到ASR系统118。
继续该示例,ASR模型200在随着用户104说话接收到与话语106相对应的声学帧110的序列的同时,对声学帧110的序列进行编码,然后将编码的声学帧110的序列解码为第一遍语音识别假设120a。在时间1期间,用户界面生成器107经由数字助理界面18以流传输方式向用户设备10的用户104呈现话语106的第一遍语音识别假设120a的表示,使得单词、单词片段(word piece)和/或个体字符一被说出就出现在屏幕上。在一些示例中,第一前瞻音频上下文等于零。
在时间2期间,用户界面生成器107经由数字助理界面18以流传输方式向用户设备10的用户104呈现话语106的第二遍语音识别假设120b的表示,使得单词、单词片段和/或个体字符一由ASR模型200生成就出现在屏幕上。在一些实施方式中,用户界面生成器107用在时间2呈现的第二遍语音识别假设120b的表示替换在时间1呈现的第一遍语音识别假设120a的表示。这里,时间1和时间2可以包括与用户界面生成器107呈现相应语音识别结果120的时间相对应的时间戳。在该示例中,时间1的时间戳指示用户界面生成器107在比第二遍语音识别假设120b更早的时间处呈现第一遍语音识别假设120a。例如,由于假定第二遍语音识别假设120b比第一遍语音识别假设120a更准确,因此最终显示为转录120的第二遍语音识别假设120b可以修复在第一遍语音识别假设120a中可能已经被错误识别的任何词项。在该示例中,由ASR模型200输出并且在时间1显示在用户设备10的屏幕上的流传输第一遍语音识别假设120a与低时延相关联,并且向用户104提供他/她的查询正在被处理的响应性,而由ASR模型200输出并在时间2显示在屏幕上的第二遍语音识别假设120b利用附加的语音识别模型和/或语言模型来在准确性方面改善语音识别质量但时延增加了。然而,由于第一遍语音识别假设120a在用户说出话语106时被显示,所以与产生并最终显示第二遍语音识别假设120b相关联的更高时延对于用户104是不明显的。
在图1所示的示例中,数字助理应用50可以使用自然语言处理来响应由用户104提出的问题。自然语言处理通常是指解释书面语言(例如,第一遍语音识别假设120a和/或第二遍语音识别假设120b)并确定书面语言是否提示任何动作的过程。在该示例中,数字助理应用50使用自然语言处理来识别来自用户104的问题是关于用户的日程安排并且更具体地是关于用户日程安排上的音乐会。通过利用自然语言处理来识别这些细节,自动化助理返回对用户查询的响应19,其中响应19陈述“Venue doors open at 6:30PM and concertstarts at 8pm.(场地门在下午6:30打开并且音乐会在下午8点开始)”。在一些配置中,自然语言处理发生在与用户设备10的数据处理硬件12通信的远程服务器60上。
现在参考图2,在一些示例中,ASR模型(例如,基于transducer的推敲模型)200针对用于级联编码器的基于transducer的流传输推敲来进行配置。如图2所示,ASR模型200包括第二遍transducer解码器(即,第二遍)202,其改善来自第一遍transducer解码器(即,第一遍)201的第一遍语音识别假设120a(即,初始输出)。在所示的示例中,第一遍transducer解码器201和第二遍transducer解码器202都以流传输方式操作,当接收到输入时,在每个输出步处生成输出。换句话说,第一遍transducer解码器201和第二遍transducer解码器202不需要接收或处理整个输入序列以生成输出,从而以帧级操作。此外,ASR模型200包括级联编码器204和文本编码器240,两者都以类似的流传输方式操作。
特别地,ASR模型200包括级联编码器204、第一遍transducer解码器201、文本编码器240和第二遍transducer解码器202。有利地,将第二遍transducer解码器(例如,而不是注意力解码器)用于第二遍transducer解码器202提供了流传输推敲过程,以通过生成第二遍语音识别假设120b来改善从第一遍transducer解码器201输出的第一遍语音识别假设120a。这里,第一遍语音识别假设120a和第二遍语音识别假设120b可以表示包括来自口头话语106的单词、单词片段、字素或音素的一部分的部分语音识别结果(图1)。
级联编码器204是指编码路径包括两个编码器210、220的模型结构,这两个编码器210、220级联来使得第一编码器210的输出在解码之前馈给第二编码器220的输入。这里,第一编码器210和第二编码器220可以被级联,而不管每个编码器的底层架构如何。编码器210、220可以各自包括多头注意力层的堆叠。在一些示例中,编码器210、220的多头注意力层的堆叠包括512维conformer层的堆叠。在其他示例中,多头注意力层包括transformer层。可选地,可以使用transformer层代替Conformer层。
第一编码器210可以是因果编码器,其包括17个conformer层,每个conformer层具有用作自注意层的多头(例如,8头)注意力机制。此外,第一编码器210的每个conformer层可以使用因果卷积和左上下文注意力层来限制第一编码器210使用任何未来输入。另一方面,第二编码器220可以是包括4个conformer层的非因果编码器,每个conformer层具有用作自注意层的多头(例如,8头)注意力机制。第二编码器220的每个conformer层可以使用非因果卷积和右上下文注意力层,从而允许第二编码器220使用未来的输入。即,第二编码器220可以接收附加(例如,2.88秒)的右上下文。
继续参考图2,第一编码器210接收d维特征矢量序列(例如,声学帧110的序列)x=(x1,x2,...,xT),其中,并且在每个输出步处生成声学帧110的序列中的对应声学帧110的第一高阶特征表示212。类似地,第二编码器220级联连接到第一编码器210,并且接收第一高阶特征表示12作为输入,并且在每个输出步处生成对应的第一高阶特征表示212的第二高阶特征表示222。然而,在一些实例中,第二编码器220生成第二高阶特征表示222,而不接收任何声学帧110作为输入。在这些实例中,第二编码器220仅使用第一高阶特征表示212作为输入来生成第二高阶特征表示222。如图2所示,从第一编码器210输出的第一高阶特征表示212被馈送到第一遍transducer解码器201,而从第二编码器220输出的第二高阶特征表示222被馈送到第二遍transducer解码器202。
在一些实施方式中,第一遍transducer解码器201包括transducer解码器230。在一些配置中,级联编码器204的第一编码器210驻留在第一遍transducer解码器201的外部。在其他配置中,级联编码器204的第一编码器210也驻留在第一遍transducer解码器201(未示出)处。第一遍transducer解码器201的transducer解码器230被配置为接收由第一编码器210生成的第一高阶特征表示212作为输入,并且在每个输出步处为对应的第一高阶特征表示212生成第一遍语音识别假设120a(y)。
在一些实施方式中,第一遍语音识别假设120a包括可能的语音识别假设上的第一概率分布。换句话说,transducer解码器230在每个输出步(例如,时间步)处生成可能的语音识别假设上的第一概率分布。这里,“可能的语音识别假设”对应于输出标签/符号(也称为“语音单元”)的集合,每个输出标签/符号表示特定自然语言的字素(符号/字符)或单词片段。例如,当自然语言是英语时,该组输出标签可以包括二十七(27)个符号,例如,英语字母表中的26个字母中的每一个各有一个标签,并且一个标签指定空格。因此,transducer解码器230可以输出指示预定的一组输出标签中的每一个的出现可能性的一组值。该组值能够是矢量(例如,独热矢量),并且能够指示该组输出标签上的第一概率分布。在一些场景中,输出标签是字素(例如,单独的字符,以及潜在的标点符号和其他符号),但是该组输出标签不限于此。例如,除了字素之外或代替字素,该组输出标签能够包括单词片段和/或整个单词。输出标签也能够是其他类型的语音单元,诸如音素或子音素。transducer解码器230的第一概率分布能够包括针对不同输出标签中的每个输出标签的后验概率值。因此,如果存在表示不同字素或其他符号的100个不同的输出标签,则transducer解码器的输出能够包括100个不同的概率值,每个输出标签一个概率值。然后,第一概率分布能够用于在(例如,通过softmax层进行的)束搜索过程中选择和指派分数给候选拼字法(orthographic)元素(例如,字素、单词片段和/或单词),以用于确定第一遍语音识别假设120a。例如,transducer解码器230可以选择具有最高概率的N个最佳可能语音识别假设作为第一遍语音识别假设120a的输出。
文本编码器240被配置为接收在多个输出步中的每个输出步处生成的第一遍语音识别假设120a作为输入,并且在每个输出步处为对应的第一遍语音识别假设120a生成文本编码242(ey)。文本编码器240可以是包括多个右上下文Conformer层的Conformer编码器。特别地,文本编码器可以包括R个标记(即,帧)的总右上下文。文本编码器240的总右上下文可以等于第二编码器220的时延。例如,当处理第一高阶特征表示212时,第二编码器220可以包括2.88秒的时延。在该示例中,总右上下文可以被设置为2.88秒以匹配第二编码器220的时延。在一些实例中,文本编码器240仅对来自第一遍语音识别假设120a的非空白标记进行编码,由此Conformer层提供来自未来的上下文建模。因此,文本编码器240需要编码的最右方的时间帧可以由下式表示:
ri=min(t′i+R,T′)) (1)
在等式1中,t′i表示对应的输出步(例如,时间帧),R表示文本编码器240的总右上下文,并且T'表示第一遍语音识别假设120a的最大时间帧。值得注意的是,文本编码器240的conformer层使用因果卷积,并且在文本编码器240之前不执行卷积子采样。在一些实施方式中,文本编码器240接收与部分语音识别假设相对应的第一遍语音识别假设120a。也就是说,因为级联编码器204和第一遍transducer解码器201都以流传输方式操作,所以所得第一遍语音识别假设120a可以仅对应于话语106的一部分(图1)。这样,文本编码器240通过以下等式对与部分语音识别假设相对应的第一遍语音识别假设120a进行编码:
ey(t)={ey,k|其中,rk<t+A和k<L} (2)
在等式2中,ey(t)表示在每个输出步(例如,时间步)处的文本编码,ey,k表示ey中的第k个编码标记,并且rk是编码第k个标记所需的最新输出步(例如,时间步),L表示第一遍语音识别假设120a(y)中的标记的总数,A表示前瞻输出步(例如,时间步)的数量,并且t表示级联编码器204的输出步。更具体地,文本编码器240从第一遍语音识别假设120a的当前输出步向前看前瞻输出步的数量A。因此,通过要求文本编码器240接收第一遍语音识别假设120a的足够的输出步以满足A个前瞻输出步,增加A将增加文本编码器240的时延。另一方面,降低A减少了文本编码器240的时延,并且时延瓶颈在级联编码器204处。因此,A可以等于级联编码器204的右上下文,使得文本编码器240最小化时延,同时还最大化在推敲期间从第一遍语音识别假设使用的输出步。
第二遍transducer解码器202可以包括联合网络250和预测网络300。联合网络250被配置为接收由预测网络300生成的密集表示350、由第二编码器220生成的第二高阶特征表示222以及由文本编码器240生成的文本编码242作为输入。第二遍transducer解码器的联合网络250还被配置为在每个输出步处使用密集表示350、第二高阶特征表示222和文本编码242来生成第二遍语音识别假设120b。
在一些实施方式中,第二遍语音识别假设120b包括可能的语音识别假设上的第二概率分布。换句话说,联合网络250在每个输出步(例如,时间步)处生成可能的语音识别假设上的第二概率分布。这里,“可能的语音识别假设”对应于输出标签/符号(也称为“语音单元”)的集合,每个输出标签/符号表示特定自然语言的字素(符号/字符)或单词片段。例如,当自然语言是英语时,该组输出标签可以包括二十七(27)个符号,例如,英语字母表中的26个字母中的每一个各有一个标签,并且一个标签指定空格。因此,联合网络250可以输出指示预定的一组输出标签中的每一个的出现可能性的一组值。该组值能够是矢量(例如,独热矢量),并且能够指示该组输出标签上的第二概率分布。在一些场景中,输出标签是字素(例如,单独的字符,以及潜在的标点符号和其他符号),但是该组输出标签不限于此。例如,除了字素之外或代替字素,该组输出标签能够包括单词片段和/或整个单词。输出标签也能够是其他类型的语音单元,诸如音素或子音素。联合网络250的第二概率分布能够包括针对不同输出标签中的每个输出标签的后验概率值。因此,如果存在表示不同字素或其他符号的100个不同的输出标签,则联合网络250的输出能够包括100个不同的概率值,每个输出标签一个概率值。然后,第二概率分布能够被用于在(例如,通过联合网络250的最终softmax层(未示出)进行的)束搜索过程中选择和指派分数给候选拼字法元素(例如,字素、单词片段和/或单词),以用于确定第二遍语音识别假设120b。例如,联合网络250可以选择具有最高概率的N个最佳可能语音识别假设作为第二遍语音识别假设120b的输出。
在一些实施方式中,预测网络300接收由联合网络250的最终softmax层输出的非空白符号序列作为输入,并且在每个输出步处生成密集表示350。联合网络250接收先前的第二遍语音识别假设120b的密集表示350,并且使用密集表示350生成后续的第二遍语音识别假设120b。
图3示出了ASR模型200的预测网络300,其接收非空白符号序列作为输入,该非空白符号序列限制于由联合网络250的最终softmax层输出的N个先前的非空白符号。也就是说,由联合网络250的最终softmax层输出的序列非空白符号120b,120ba-bn可以对应于第二遍语音识别假设120b的非空白符号。因此,非空白符号120b的序列和第二遍语音识别假设120b在本文中可以互换使用。第一遍transducer解码器201和第二遍transducer解码器202可以共享预测网络300。在一些示例中,N等于2。在其它示例中,N等于5,然而,本公开是非限制性的并且N可以等于任何整数。在一些实施方式中,预测网络300包括多头注意力机制302,其跨多头注意力机制的每个头302A-302H共享共享嵌入矩阵304。在一个示例中,多头注意力机制302包括四个头。然而,多头注意力机制302可以采用任何数量的头。值得注意的是,多头注意力机制在模型大小的最小增加的情况下显著改善了性能。如下面更详细描述的,每个头302A-H包括其自己的位置矢量308的行,并且不是通过连结来自所有头的输出318A-H来引起模型大小的增加,而是通过头平均模块322对输出318A-H取平均。
参考多头注意力机制302的第一头302a,头302A使用共享嵌入矩阵304为在来自多个时间步的对应时间步作为输入接收的非空白符号120b的序列中的每个非空白符号120b生成对应的嵌入306,306a-n(例如,)。值得注意的是,由于跨多头注意力机制302的所有头共享共享嵌入矩阵304,因此其他头302B-H都为每个非空白符号生成相同的对应嵌入306。头302A还向非空白符号120b的序列中的每个对应的非空白符号指派相应的位置矢量PVAa-An 308,308Aa-An(例如/>)。指派给每个非空白符号的相应位置矢量PV 308指示非空白符号序列(例如,由联合网络250的最终softmax层输出的N个先前非空白符号)的历史中的位置。例如,第一位置矢量PVAa被指派给历史中的最新近位置,而最后位置矢量PVAn被指派给由联合网络250的最终softmax层输出的N个先前非空白符号的历史中的最后位置。值得注意的是,每个嵌入306可以包括与每个位置矢量PV 308相同的维度(即,维度大小)。
虽然由共享嵌入矩阵304为非空白符号120b的序列中的每个非空白符号120b的每一个生成的对应嵌入在多头注意力机制302的所有头302A-H处是相同的,但是每个头302A-H定义了位置矢量308的不同集合/行。例如,第一头302A定义位置矢量PVAa-An的行308Aa-An,第二头302B定义位置矢量PVBa-Bn的不同行308Ba-Bn,...,并且第H头302h定义位置矢量PVHa-Hn的另一不同行308Ha-Hn。
对于接收到的非空白符号120b的序列中的每个非空白符号,第一头302a还经由加权层310与对应的嵌入和指派给其的相应位置矢量PV 308之间的相似性成比例来对对应的嵌入306进行加权。在一些示例中,相似性可以包括余弦相似性(例如,余弦距离)。在所示的示例中,加权层310输出加权嵌入312,312Aa-An的序列,加权嵌入312,312Aa-An各自与对应的嵌入306相关联,该对应的嵌入306与指派给其的相应位置矢量PV 308成比例地加权。换句话说,由加权层310针对每个嵌入306输出的加权嵌入312可以对应于嵌入306和相应的位置矢量PV 308之间的点积。加权嵌入312可以被解释为与嵌入和与它们相应的位置矢量PV308相关联的位置的相似程度成比例地关注该嵌入。为了提高计算速度,预测网络300包括非循环层,并且因此,加权嵌入312Aa-An的序列不被级联,而是由加权平均模块316取平均,以生成加权嵌入312Aa-An的加权平均值318a作为来自第一头302A的输出,该加权嵌入312Aa-An的加权平均值318A由下式表示:
在等式3中,h表示头302的索引,n表示上下文中的位置,并且e表示嵌入维度。另外,在等式1中,H、N和de包括对应维度的大小。位置矢量PV 308不必是可训练的,并且可以包括随机值。值得注意的是,即使加权嵌入312被平均,位置矢量PV 308也能够潜在地保存位置历史信息,从而减轻在预测网络300的每一层处提供循环连接的需要。
以上关于第一头302a描述的操作由多头注意力机制302的每个其他头302B-H类似地执行。由于由每个头302定义的位置矢量PV 308的不同集合,加权层310在每个其他头302B-H处输出与第一头302A处的加权嵌入312Aa-Aa的序列不同的加权嵌入312Ba-Bn,312Ha-Hn的序列。此后,加权平均模块316生成非空白符号序列的对应的加权嵌入312的相应的加权平均值318B-H作为来自每个其他对应的头302B-H的输出。
在所示的示例中,预测网络300包括头平均模块322,头平均模块322对从对应的头302A-H输出的加权平均值318A-H进行平均。具有SWISH的投影层326可以从头平均模块322接收与加权平均值318A-H的平均值相对应的输出324作为输入,并且生成投影输出328作为输出。最终层规范化330可以对投影输出328进行规范化,以在来自多个时间步的对应时间步提供单个嵌入矢量350。预测网络300在初始时间步之后的多个时间步中的每个时间步仅生成单个嵌入矢量350。
在一些配置中,预测网络300不实现多头注意力机制302,并且仅执行上面关于第一头302A描述的操作。在这些配置中,加权嵌入312Aa-An的加权平均值318A简单地通过投影层326和层规范化330,以提供单个嵌入矢量350。
返回参考图2,在每个输出步,联合网络250还确定文本编码242(例如,表示部分第一遍语音识别假设)与第二高阶特征表示222的对应帧之间的注意力上下文矢量at。特别地,联合网络250通过使用文本编码242作为键和值并使用第二高阶特征表示222作为查询来确定注意力上下文矢量at。因此,注意力上下文矢量at通过使用当前时间帧进行查询来概括第一遍语音识别假设120a。此后,联合网络250通过以下等式将注意力上下文矢量at与第二高阶特征表示222合并:
ct=Merge(at,ex(t)) (4)
在等式4中,ex(t)表示第二高阶特征表示222,at表示注意力上下文矢量,并且ct表示来自合并操作的输出值。此后,联合网络250通过以下等式通过将输出值ct与密集表示350组合来生成第二遍语音识别假设120b:
在等式5中,ht,u表示第二遍语音识别假设120b,并且lu表示密集表示350。可选地,联合网络的最终Softmax层接收第二遍语音识别假设120b(ht,u)并执行束搜索过程以选择拼字法元素作为从第二遍transducer解码器202输出的第二遍语音识别假设120b。最终Softmax层可以与第二遍transducer解码器202集成或者与第二遍transducer解码器202分离。
值得注意的是,联合网络250在每个输出步处生成第二遍语音识别假设120b,并且因此,第二遍语音识别假设120b可以对应于部分语音识别结果或完整语音识别结果。例如,声学帧110的序列可以对应于话语106“What is the weather in New York city(纽约市的天气怎么样?)”(图1),并且联合网络250生成“what is the weather(天气怎么样)”的部分第二遍语音识别假设120b,因为联合网络250仅在该输出步处处理了与声学帧110的序列的一部分相对应的输入。有利地,ASR模型200通过使用第二遍transducer解码器202进行推敲可以关注声学帧110的序列的未来上下文(例如,从而提高WER性能),同时还以流传输方式操作(例如,从而降低时延性能)。因此,ASR模型200可以使用推敲来改善识别性能,同时还具有适合于要求以流传输方式进行语音识别的应用的低时延。
图4是用于级联编码器的基于transducer的流传输推敲的方法400的操作的示例布置的流程图。方法400可以使用存储在存储器硬件520(图5)上的指令在数据处理硬件510(图5)上执行。数据处理硬件510和存储器硬件520可以驻留在对应于计算设备500(图5)的图1的用户设备10和/或远程计算设备60上。
在操作402处,方法400包括接收与话语106相对应的声学帧110的序列。在操作404处,方法400包括由第一编码器210针对声学帧110的序列中的对应的声学帧110生成第一高阶特征表示212。这里,第一编码器210级联连接到第二编码器220。第一和第二编码器210、220统称为级联编码器204。在操作406处,方法400包括由第一遍transducer解码器201针对对应的第一高阶特征表示212生成第一遍语音识别假设120a。在操作408处,方法400包括由文本编码器240针对对应的第一遍语音识别假设120a生成文本编码。在操作410处,方法400包括由第二编码器220针对对应的第一高阶特征表示212生成第二高阶特征表示222。在操作412处,方法400包括由第二遍transducer解码器202使用对应的第二高阶特征表示222和对应的文本编码器242来生成第二遍语音识别假设120b。值得注意的是,第二遍transducer解码器202以流传输方式生成第二遍语音识别假设120b,使得ASR模型200一生成第二遍语音识别假设120b的每个部分,ASR模型200就输出该每个部分。这里,第二遍语音识别假设120b可以包括来自口头话语106的单词、单词片段、字素或音素的一部分。
图5是可以被用于实现本文档中描述的系统和方法的示例计算设备500的示意图。计算设备500旨在表示各种形式的数字计算机,诸如膝上型计算机、台式计算机、工作站、个人数字助理、服务器、刀片式服务器、大型计算机和其他适当的计算机。这里示出的组件、它们的连接和关系以及它们的功能仅仅旨在是示例性的,并且不意在限制本文档中描述和/或要求保护的本发明的实施方式。
计算设备500包括处理器510、存储器520、存储设备530、连接至存储器520和高速扩展端口550的高速接口/控制器540以及连接至低速总线570和存储设备530的低速接口/控制器560。组件510、520、530、540、550和560中的每个组件使用各种总线来互连,并且可以被安装在公共主板上或者视情况而定以其他方式安装。处理器510能够处理用于在计算设备500内执行的指令,包括存储在存储器520中或者存储设备530上的指令,以在外部输入/输出设备(诸如被耦合至高速接口540的显示器580)上显示图形用户界面(GUI)的图形信息。在其他实施方式中,视情况而定,多个处理器和/或多个总线可以与多个存储器和多种存储器类型一起使用。此外,多个计算设备500可以被连接,其中每个设备都提供必要的操作的部分(例如作为服务器组、一组刀片式服务器或者多处理器系统)。
存储器520将信息非暂时性地存储在计算设备500内。存储器520可以是计算机可读介质、(多个)易失性存储器单元或者(多个)非易失性存储器单元。非暂时性存储器520可以是用于在暂时或者永久基础上存储程序(例如指令序列)或者数据(例如程序状态信息)以供计算设备500使用的物理设备。非易失性存储器的示例包括但不限于闪存和只读存储器(ROM)/可编程只读存储器(PROM)/可擦除可编程只读存储器(EPROM)/电可擦除可编程只读存储器(EEPROM)(例如通常用于固件,诸如引导程序)。易失性存储器的示例包括但不限于随机存取存储器(RAM)、动态随机存取存储器(DRAM)、静态随机存取存储器(SRAM)、相变存储器(PCM)以及光盘或者磁带。
存储设备530能够为计算设备500提供大容量存储。在一些实施方式中,存储设备530是计算机可读介质。在各种不同的实施方式中,存储设备530可以是软盘设备、硬盘设备、光盘设备或者磁带设备、闪存或者其他类似的固态存储器设备或者设备阵列,包括在存储区域网络或其他配置中的设备。在附加实施方式中,计算机程序产品被有形地体现在信息载体中。计算机程序产品包含指令,该指令在被执行时执行一种或多种方法,诸如上面描述的那些方法。信息载体是计算机可读介质或者机器可读介质,诸如存储器520、存储设备530或者处理器510上的存储器。
高速控制器540管理计算设备500的带宽密集型操作,而低速控制器560管理较低带宽密集型操作。这种职责分配仅仅是示例性的。在一些实施方式中,高速控制器540被耦合至存储器520、显示器580(例如通过图形处理器或者加速器)和高速扩展端口550,该高速扩展端口550可以接受各种扩展卡(未示出)。在一些实施方式中,低速控制器560被耦合至存储设备530和低速扩展端口590。可以包括各种通信端口(例如USB、蓝牙、以太网、无线以太网)的低速扩展端口590可以例如通过网络适配器被耦合至一个或多个输入/输出设备,诸如键盘、定点设备、扫描仪或者联网设备(诸如交换机或者路由器)。
如图所示,计算设备500可以以多种不同形式实现。例如,它可以被实现为标准服务器500a或者多次实现在一组这种服务器500a中、实现为膝上型计算机500b或者实现为机架式服务器系统500c的一部分。
本文中描述的系统和技术的各种实施方式能够被实现在数字电子和/或光学电路、集成电路、专门设计的ASIC(专用集成电路)、计算机硬件、固件、软件和/或其组合中。这些各种实施方式能够包括在可编程系统上可执行和/或可解释的一个或多个计算机程序中的实施方式,该可编程系统包括可以是专用或者通用的至少一个可编程处理器,它被耦合以从存储系统、至少一个输入设备和至少一个输出设备接收数据和指令,并且将数据和指令传输给存储系统、至少一个输入设备和至少一个输出设备。
这些计算机程序(也称为程序、软件、软件应用或者代码)包括用于可编程处理器的机器指令,并且能够以高级过程和/或面向对象的编程语言和/或以汇编/机器语言来实现。如本文中使用的,术语“机器可读介质”和“计算机可读介质”是指用于将机器指令和/或数据提供给可编程处理器的任何计算机程序产品、非暂时性计算机可读介质、装置和/或设备(例如磁盘、光盘、存储器、可编程逻辑器件(PLD)),包括接收机器指令作为机器可读信号的机器可读介质。术语“机器可读信号”是指用于将机器指令和/或数据提供给可编程处理器的任何信号。
本说明书中描述的过程和逻辑流程能够由一个或多个可编程处理器执行,该一个或多个可编程处理器(也称为数据处理硬件)执行一个或多个计算机程序以通过对输入数据进行操作并且生成输出来执行功能。过程和逻辑流程也能够由专用逻辑电路(例如FPGA(现场可编程门阵列)或者ASIC(专用集成电路))执行。通过示例,适合于执行计算机程序的处理器包括通用和专用微处理器两者以及任何种类的数字计算机的任何一个或多个处理器。通常,处理器将接收来自只读存储器或者随机存取存储器或者两者的指令和数据。计算机的必要元件是用于执行指令的处理器以及用于存储指令和数据的一个或多个存储器设备。通常,计算机还将包括用于存储数据的一个或多个大容量存储设备(例如磁盘、磁光盘或者光盘),或者计算机被可操作地耦合以接收来自该大容量存储设备的数据或者将数据传递给该大容量存储设备或者两者。然而,计算机不必须具有这种设备。适合于存储计算机程序指令和数据的计算机可读介质包括所有形式的非易失性存储器、介质和存储器设备,通过示例包括半导体存储器设备(例如EPROM、EEPROM和闪存设备);磁盘(例如内部硬盘或者可移除盘);磁光盘;以及CD ROM和DVD-ROM盘。处理器和存储器能够由专用逻辑电路系统补充,或者被并入到该专用逻辑电路系统中。
为了提供与用户的交互,本公开的一个或多个方面能够被实现在计算机上,该计算机具有:用于向用户显示信息的显示设备,例如CRT(阴极射线管)、LCD(液晶显示器)监视器或触摸屏;以及可选地键盘和定点设备(例如鼠标或者轨迹球),用户能够通过其向计算机提供输入。其他种类的设备也能够被用于提供与用户的交互;例如提供给用户的反馈能够是任何形式的感官反馈,例如视觉反馈、听觉反馈或者触觉反馈;并且来自用户的输入能够以任何形式(包括声学输入、语音输入或者触觉输入)来接收。另外,计算机能够通过将文档发送给由用户使用的设备并且接收来自该设备的文档;例如通过响应于从web浏览器接收的请求来将网页发送给在用户的客户端设备上的web浏览器来与用户交互。
已经描述了许多实施方式。然而,将理解的是,可以在不脱离本公开的精神和范围的情况下进行各种修改。因此,其他实施方式在随附权利要求书的范围内。
Claims (24)
1.一种用于级联编码器(204)的基于transducer的推敲模型(200),包括:
第一编码器(210),所述第一编码器(210)被配置为:
接收声学帧(110)的序列作为输入;以及
在多个输出步中的每个输出步处,针对所述声学帧(110)的序列中的对应的声学帧(110)生成第一高阶特征表示(212);
第一遍transducer解码器(201),所述第一遍transducer解码器(201)被配置为:
接收由所述第一编码器(210)在所述多个输出步中的每个输出步处生成的所述第一高阶特征表示(212)作为输入;以及
在所述多个输出步中的每个输出步处,针对对应的第一高阶特征表示(212)生成第一遍语音识别假设(120a);
文本编码器(240),所述文本编码器(240)被配置为:
接收在所述多个输出步中的每个输出步处生成的所述第一遍语音识别假设(120a)作为输入;以及
在所述多个输出步中的每个输出步处,针对对应的第一遍语音识别假设(120a)生成文本编码(242);
第二编码器(220),所述第二编码器(220)被配置为:
接收由所述第一编码器(210)在所述多个输出步中的每个输出步处生成的所述第一高阶特征表示(212)作为输入;以及
在所述多个输出步中的每个输出步处,针对对应的第一高阶特征表示(212)生成第二高阶特征表示(222);以及
第二遍transducer解码器(202),所述第二遍transducer解码器(202)被配置为:
接收由所述第二编码器(220)在所述多个输出步中的每个输出步处生成的所述第二高阶特征表示(222)和由所述文本编码器(240)在所述多个输出步中的每个输出步处生成的所述文本编码(242)作为输入;以及
在所述多个输出步中的每个输出步处,生成第二遍语音识别假设(120b)。
2.根据权利要求1所述的用于级联编码器(204)的基于transducer的推敲模型(200),进一步包括由所述第一遍transducer解码器(201)和所述第二遍transducer解码器(202)共享的预测网络(300),所述预测网络(300)被配置为:
接收由最终softmax层输出的非空白符号(120b)的序列作为输入;以及
在所述多个输出步中的每个输出步处生成密集表示(350)。
3.根据权利要求2所述的用于级联编码器(204)的基于transducer的推敲模型(200),其中,所述第二遍transducer解码器(202)进一步包括联合网络(250),所述联合网络被配置为:
接收由所述预测网络(300)在所述多个输出步中的每个输出步处生成的所述密集表示(350)、由所述第二编码器(220)在所述多个输出步中的每个输出步处生成的所述第二高阶特征表示(222)以及由所述文本编码器(240)在所述多个输出步中的每个输出步处生成的所述文本编码(242)作为输入;以及
在所述多个输出步中的每个输出步处,生成所述第二遍语音识别假设(120b)。
4.根据权利要求1-3中的任一项所述的用于级联编码器(204)的基于transducer的推敲模型(200),其中,所述第二编码器(220)在不接收任何声学帧(110)作为输入的情况下生成所述第二高阶特征表示(222)。
5.根据权利要求1-4中的任一项所述的用于级联编码器(204)的基于transducer的推敲模型(200),其中,所述第一编码器(210)包括因果编码器,所述因果编码器包括多头注意力层的堆叠。
6.根据权利要求5所述的用于级联编码器(204)的基于transducer的推敲模型(200),其中,所述多头注意力层的堆叠包括Conformer层的堆叠。
7.根据权利要求1-6中的任一项所述的用于级联编码器(204)的基于transducer的推敲模型(200),其中,所述第二编码器(220)包括非因果编码器,所述非因果编码器包括多头注意力层的堆叠。
8.根据权利要求7所述的用于级联编码器(204)的基于transducer的推敲模型(200),其中,所述多头注意力层的堆叠包括Conformer层的堆叠。
9.根据权利要求1-8中的任一项所述的用于级联编码器(204)的基于transducer的推敲模型(200),其中,所述第二遍transducer解码器(202)是在不使用任何纯文本数据的情况下来训练的。
10.根据权利要求1-9中的任一项所述的用于级联编码器(204)的基于transducer的推敲模型(200),其中,接收由所述文本编码器(240)在所述多个输出步中的每个输出步处生成的所述文本编码(242)包括:以流传输方式接收所述文本编码(242)的部分序列。
11.根据权利要求10所述的用于级联编码器(204)的基于transducer的推敲模型(200),其中,所述第二遍transducer解码器(202)进一步包括联合网络(250),所述联合网络(250)被配置为确定所述文本编码(242)的所述部分序列与所述第二高阶特征表示(222)的对应的部分之间的注意力上下文矢量。
12.根据权利要求1-11中的任一项所述的用于级联编码器(204)的基于transducer的推敲模型(200),其中,所述第一遍语音识别假设和所述第二遍语音识别假设(120a,120b)各自对应于部分语音识别结果。
13.一种计算机实现的方法(400),当由数据处理硬件(510)执行时,使所述数据处理硬件(510)执行操作,所述操作包括:
接收声学帧(110)的序列;
由第一编码器(210)在多个输出步中的每个输出步处针对声学帧(110)的序列中的对应的声学帧(110)生成第一高阶特征表示(212);
由第一遍transducer解码器(201)在所述多个输出步中的每个输出步处针对对应的第一高阶特征表示(212)生成第一遍语音识别假设(120a);
由文本编码器(240)在所述多个输出步中的每个输出步处针对对应的第一遍语音识别假设(120a)生成文本编码(242);
由第二编码器(220)在所述多个输出步中的每个输出步处针对对应的第一高阶特征表示(212)生成第二高阶特征表示(222);以及
由第二遍transducer解码器(202)在所述多个输出步中的每个输出步处使用对应的第二高阶特征表示(222)和对应的文本编码(242)来生成第二遍语音识别假设(120b)。
14.根据权利要求13所述的计算机实现的方法(400),其中,所述操作进一步包括:
在所述多个输出步中的每个输出步处,由预测网络(300)基于由最终softmax层输出的非空白符号(120b)的序列来生成密集表示(350),
其中,所述第一遍transducer解码器(201)和所述第二遍transducer解码器(202)共享所述预测网络(300)。
15.根据权利要求14所述的计算机实现的方法(400),其中,所述操作进一步包括:在所述多个输出步中的每个输出步处,由联合网络(250)基于以下来生成所述第二遍语音识别假设(120b):由所述预测网络(300)在所述多个输出步中的每个输出步处生成的所述密集表示(350)、由所述第二编码器(220)在所述多个输出步中的每个输出步处生成的所述第二高阶特征表示(222)以及由所述文本编码器(240)在所述多个输出步中的每个输出步处生成的所述文本编码(242)。
16.根据权利要求13-15中的任一项所述的计算机实现的方法(400),其中,所述第二编码器(220)在不接收任何声学帧(110)作为输入的情况下生成所述第二高阶特征表示(222)。
17.根据权利要求13-16中的任一项所述的计算机实现的方法(400),其中,所述第一编码器(210)包括因果编码器,所述因果编码器包括多头注意力层的堆叠。
18.根据权利要求17所述的计算机实现的方法(400),其中所述多头注意力层的堆叠包括conformer层的堆叠。
19.根据权利要求13-18中的任一项所述的计算机实现的方法(400),其中,所述第二编码器(220)包括非因果编码器,所述非因果编码器包括多头注意力层的堆叠。
20.根据权利要求19所述的计算机实现的方法(400),其中,所述多头注意力层的堆叠包括conformer层的堆叠。
21.根据权利要求13-20中的任一项所述的计算机实现的方法(400),其中,所述第二遍transducer解码器(202)是在不使用任何纯文本数据的情况下来训练的。
22.根据权利要求13-21中的任一项所述的计算机实现的方法(400),其中,接收所述文本编码(242)包括:以流传输方式接收所述文本编码(242)的部分序列。
23.根据权利要求22所述的计算机实现的方法,其中,所述操作进一步包括:由联合网络(250)确定所述文本编码(242)的所述部分序列与所述第二高阶特征表示(222)的对应的部分之间的注意力上下文矢量。
24.根据权利要求13-23中的任一项所述的计算机实现的方法,其中,所述第一遍语音识别假设和所述第二遍语音识别假设(120a,120b)各自对应于部分语音识别结果。
Applications Claiming Priority (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US202163262089P | 2021-10-04 | 2021-10-04 | |
US63/262,089 | 2021-10-04 | ||
PCT/US2022/076659 WO2023059980A1 (en) | 2021-10-04 | 2022-09-19 | Transducer-based streaming deliberation for cascaded encoders |
Publications (1)
Publication Number | Publication Date |
---|---|
CN118076999A true CN118076999A (zh) | 2024-05-24 |
Family
ID=83689939
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202280067381.8A Pending CN118076999A (zh) | 2021-10-04 | 2022-09-19 | 用于级联编码器的基于transducer的流传输推敲 |
Country Status (4)
Country | Link |
---|---|
US (1) | US20230109407A1 (zh) |
KR (1) | KR20240069763A (zh) |
CN (1) | CN118076999A (zh) |
WO (1) | WO2023059980A1 (zh) |
Family Cites Families (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN114981884A (zh) * | 2020-01-22 | 2022-08-30 | 谷歌有限责任公司 | 基于注意力的联合声学和文本设备上端到端模型 |
-
2022
- 2022-09-19 WO PCT/US2022/076659 patent/WO2023059980A1/en active Application Filing
- 2022-09-19 KR KR1020247012598A patent/KR20240069763A/ko active Search and Examination
- 2022-09-19 CN CN202280067381.8A patent/CN118076999A/zh active Pending
- 2022-09-19 US US17/933,307 patent/US20230109407A1/en active Pending
Also Published As
Publication number | Publication date |
---|---|
US20230109407A1 (en) | 2023-04-06 |
KR20240069763A (ko) | 2024-05-20 |
WO2023059980A1 (en) | 2023-04-13 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN116888662A (zh) | 学习用于子词端到端自动语音识别的词级置信度 | |
US20220122622A1 (en) | Cascaded Encoders for Simplified Streaming and Non-Streaming ASR | |
CN116250038A (zh) | 变换器换能器:一种统一流式和非流式语音识别的模型 | |
US11715458B2 (en) | Efficient streaming non-recurrent on-device end-to-end model | |
US12014729B2 (en) | Mixture model attention for flexible streaming and non-streaming automatic speech recognition | |
US11823697B2 (en) | Improving speech recognition with speech synthesis-based model adapation | |
US20230352006A1 (en) | Tied and reduced rnn-t | |
WO2023183680A1 (en) | Alignment prediction to inject text into automatic speech recognition training | |
CN118076997A (zh) | 用于罕见词语音辨识的大规模语言模型数据选择 | |
US20230109407A1 (en) | Transducer-Based Streaming Deliberation for Cascaded Encoders | |
US20230107248A1 (en) | Deliberation of Streaming RNN-Transducer by Non-Autoregressive Decoding | |
US20220310081A1 (en) | Multilingual Re-Scoring Models for Automatic Speech Recognition | |
US20240135923A1 (en) | Universal Monolingual Output Layer for Multilingual Speech Recognition | |
EP4392967A1 (en) | Transducer-based streaming deliberation for cascaded encoders | |
US20240153495A1 (en) | Multi-Output Decoders for Multi-Task Learning of ASR and Auxiliary Tasks | |
US20240169981A1 (en) | End-To-End Segmentation in a Two-Pass Cascaded Encoder Automatic Speech Recognition Model | |
US20240029715A1 (en) | Using Aligned Text and Speech Representations to Train Automatic Speech Recognition Models without Transcribed Speech Data | |
US20230306958A1 (en) | Streaming End-to-end Multilingual Speech Recognition with Joint Language Identification | |
US20230107695A1 (en) | Fusion of Acoustic and Text Representations in RNN-T | |
US20230298569A1 (en) | 4-bit Conformer with Accurate Quantization Training for Speech Recognition | |
US20240153498A1 (en) | Contextual Biasing With Text Injection | |
US20230298565A1 (en) | Using Non-Parallel Voice Conversion for Speech Conversion Models | |
WO2023183292A1 (en) | Rare word recognition with lm-aware mwer training | |
WO2024086265A1 (en) | Context-aware end-to-end asr fusion of context, acoustic and text representations |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination |