CN116670757A - 用于简化的流式和非流式语音识别的级联编码器 - Google Patents
用于简化的流式和非流式语音识别的级联编码器 Download PDFInfo
- Publication number
- CN116670757A CN116670757A CN202180071737.0A CN202180071737A CN116670757A CN 116670757 A CN116670757 A CN 116670757A CN 202180071737 A CN202180071737 A CN 202180071737A CN 116670757 A CN116670757 A CN 116670757A
- Authority
- CN
- China
- Prior art keywords
- encoder
- speech recognition
- input
- output
- 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
- 238000009826 distribution Methods 0.000 claims abstract description 33
- 238000012549 training Methods 0.000 claims description 54
- 238000000034 method Methods 0.000 claims description 47
- 230000015654 memory Effects 0.000 claims description 38
- 238000012545 processing Methods 0.000 claims description 20
- 230000001364 causal effect Effects 0.000 claims description 12
- 230000006403 short-term memory Effects 0.000 claims description 5
- 230000007787 long-term memory Effects 0.000 claims 2
- 230000008569 process Effects 0.000 description 20
- 238000013518 transcription Methods 0.000 description 11
- 230000035897 transcription Effects 0.000 description 11
- 238000004590 computer program Methods 0.000 description 8
- 238000013528 artificial neural network Methods 0.000 description 5
- 238000004891 communication Methods 0.000 description 5
- 238000010586 diagram Methods 0.000 description 5
- 238000003058 natural language processing Methods 0.000 description 5
- 239000012634 fragment Substances 0.000 description 4
- 230000003993 interaction Effects 0.000 description 4
- 230000003287 optical effect Effects 0.000 description 4
- 239000013598 vector Substances 0.000 description 4
- 230000008901 benefit Effects 0.000 description 3
- 230000006870 function Effects 0.000 description 3
- 230000004044 response Effects 0.000 description 3
- 230000003111 delayed effect Effects 0.000 description 2
- 230000007246 mechanism Effects 0.000 description 2
- 230000006855 networking Effects 0.000 description 2
- 230000009471 action Effects 0.000 description 1
- 238000013459 approach Methods 0.000 description 1
- 230000015556 catabolic process Effects 0.000 description 1
- 230000008859 change Effects 0.000 description 1
- 238000003066 decision tree Methods 0.000 description 1
- 238000006731 degradation reaction Methods 0.000 description 1
- 230000001934 delay Effects 0.000 description 1
- 238000012217 deletion Methods 0.000 description 1
- 230000037430 deletion Effects 0.000 description 1
- 230000010354 integration Effects 0.000 description 1
- 239000004973 liquid crystal related substance Substances 0.000 description 1
- 238000012423 maintenance Methods 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 230000001537 neural effect Effects 0.000 description 1
- 238000010606 normalization Methods 0.000 description 1
- 230000000306 recurrent effect Effects 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
- 238000013519 translation 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
- G10L19/00—Speech or audio signals analysis-synthesis techniques for redundancy reduction, e.g. in vocoders; Coding or decoding of speech or audio signals, using source filter models or psychoacoustic analysis
- G10L19/04—Speech or audio signals analysis-synthesis techniques for redundancy reduction, e.g. in vocoders; Coding or decoding of speech or audio signals, using source filter models or psychoacoustic analysis using predictive techniques
- G10L19/16—Vocoder architecture
-
- 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/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/08—Learning methods
-
- 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
-
- 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
- G10L15/32—Multiple recognisers used in sequence or in parallel; Score combination systems therefor, e.g. voting systems
-
- 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
- G10L25/00—Speech or voice analysis techniques not restricted to a single one of groups G10L15/00 - G10L21/00
- G10L25/27—Speech or voice analysis techniques not restricted to a single one of groups G10L15/00 - G10L21/00 characterised by the analysis technique
- G10L25/30—Speech or voice analysis techniques not restricted to a single one of groups G10L15/00 - G10L21/00 characterised by the analysis technique using neural networks
Landscapes
- Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- Computational Linguistics (AREA)
- Health & Medical Sciences (AREA)
- Theoretical Computer Science (AREA)
- Artificial Intelligence (AREA)
- Evolutionary Computation (AREA)
- Audiology, Speech & Language Pathology (AREA)
- Human Computer Interaction (AREA)
- Acoustics & Sound (AREA)
- Multimedia (AREA)
- Biomedical Technology (AREA)
- General Engineering & Computer Science (AREA)
- Biophysics (AREA)
- Data Mining & Analysis (AREA)
- General Health & Medical Sciences (AREA)
- Molecular Biology (AREA)
- Computing Systems (AREA)
- Life Sciences & Earth Sciences (AREA)
- General Physics & Mathematics (AREA)
- Mathematical Physics (AREA)
- Software Systems (AREA)
- Signal Processing (AREA)
- Machine Translation (AREA)
- Two-Way Televisions, Distribution Of Moving Picture Or The Like (AREA)
- Telephonic Communication Services (AREA)
Abstract
自动语音识别(ASR)模型(200)包括第一编码器(210)、第二编码器(220)和解码器(204)。所述第一编码器接收一系列声帧(110)作为输入,并且在多个输出步中的每个输出步生成对应声帧的第一高阶特征表示(203)。所述第二编码器接收由所述第一编码器在所述多个输出步中的每个输出步生成的第一高阶特征表示作为输入,并且在所述多个输出步中的每个输出步生成对应的第一高阶特征帧的第二高阶特征表示(205)。所述解码器接收由所述第二编码器在所述多个输出步中的每个输出步生成的第二高阶特征表示作为输入,并且在多个时步中的每个时步生成可能的语音识别假设上的第一概率分布。
Description
技术领域
本公开涉及一种用于简化的流式和非流式自动语音识别(ASR)的装置上端到端模型。
背景技术
自动语音识别(ASR)系统已经从每个模型具有专用目的的多个模型演进到单个神经网络被用于将音频波形(即,输入序列)直接映射到输出句子(即,输出序列)的集成模型。这种集成产生一种序列到序列方法,当给定一系列音频特征时,所述序列到序列方法会生成一系列单词(或字素)。通过集成结构,可以将模型的所有组件联合训练为单个端到端(E2E)神经网络。此处,E2E模型指代其架构完全由神经网络构建的模型。完全神经网络在没有外部和/或手动设计的组件(例如,有限状态置换器、词典或文本规范化模块)的情况下工作。另外,当训练E2E模型时,这些模型通常不需要来自决策树的自举(bootstrapping)或来自单独系统的时间对准。这些E2E自动语音识别(ASR)系统已经取得巨大的进步,在包括单词错误率(WER)的几个常见基准方面超过传统ASR系统。E2E ASR模型的架构在很大程度上取决于应用。例如,涉及用户交互的许多应用(例如,语音搜索或装置上听写)需要模型以流式方式执行识别。例如离线视频字幕的其它应用不需要模型是流式的并且可以利用未来上下文来提高性能。现有E2E方法通常包括用于流式和非流式应用的分开的ASR模型。管理用于不同应用的多个模型提供独特的挑战,并且可能导致ASR系统的执行时间变慢。
发明内容
本公开的一个方面提供一种自动语音识别(ASR)模型,所述ASR模型包括第一编码器、第二编码器和解码器。第一编码器接收一系列声帧作为输入,并且在多个输出步中的每个输出步生成所述一系列声帧中的对应声帧的第一高阶特征表示。第二编码器接收由第一编码器在多个输出步中的每个输出步生成的第一高阶特征表示作为输入,并且在多个输出步中的每个输出步生成对应的第一高阶特征帧的第二高阶特征表示。解码器接收由第二编码器在多个输出步中的每个输出步生成的第二高阶特征表示作为输入,并且在多个时步中的每个时步生成可能的语音识别假设上的第一概率分布。
本公开的实现方式可以包括以下可选特征中的一个或多个。在一些实现方式中,第二编码器在不接收任何声帧作为输入的情况下生成第二高阶特征表示。在一些示例中,解码器进一步被配置成接收由第一编码器在多个输出步中的每个输出步生成的第一高阶特征表示作为输入,并且在多个时步中的每个时步生成可能的语音识别假设上的第二概率分布。在这些示例中,模型进一步包括通过从基于第二概率分布的第一概率分布修改初始语音识别结果来生成最终语音识别结果。另外或替代地,解码器可以进一步包括预测网络和联合网络。预测网络被配置成接收由最终Softmax层输出的一系列非空白符号作为输入,并且在多个输出步中的每个输出步生成密集表示。联合网络被配置成接收由预测网络在多个输出步中的每个输出步生成的密集表示作为输入。当ASR模型在流式模式下操作时,联合网络还被配置成接收由第一编码器在多个输出步中的每个输出步生成的第一高阶特征表示,并且在多个输出步中的每个输出步生成可能的语音识别假设上的第二概率分布。当ASR模型在非流式模式下操作时,联合网络被配置成接收由第二编码器在多个输出步中的每个输出步生成的第二高阶特征表示,并且在多个输出步中的每个输出步生成可能的语音识别假设上的第一概率分布。
在一些实现方式中,解码器包括基于长短期记忆(LSTM)的解码器。替代地,解码器包括V2嵌入查找表。在一些示例中,第一编码器包括因果编码器,所述因果编码器包括多个单向长短期记忆(LSTM)层。另外或替代地,第二编码器包括非因果编码器,所述非因果编码器包括一个或多个双向长短期记忆(LSTM)层。在一些实现方式中,模型被配置成接收一组训练话语,并且使用所述一组训练话语联合地训练第一编码器和第二编码器。此处,模型通过生成第一编码器的第一损耗、生成第二编码器的第二损耗以及最小化第一损耗和第二损耗的加权和来联合地训练第一编码器和第二编码器。
本公开的另一方面提供一种计算机实施的方法,所述计算机实施的方法在数据处理硬件上执行时,使数据处理硬件执行操作,该操作包括接收一系列声帧作为至自动语音识别(ASR)模型的输入,并且使用ASR模型对所述一系列声帧执行流式语音识别和非流式语音识别。所述操作还包括由第一编码器在多个输出步中的每个输出步生成所述一系列声帧中的对应的声帧的第一高阶特征表示,以及接收由第一编码器在多个输出步中的每个输出步生成的第一高阶特征表示作为对第二编码器的输入。所述操作还包括由第二编码器在多个输出步中的每个输出步生成对应的第一高阶特征帧的第二高阶特征表示;接收由第二编码器在多个输出步中的每个输出步生成的第二高阶特征表示作为对解码器的输入;以及在多个时步中的每个时步生成可能的语音识别假设上的第一概率分布。
此方面可以包括以下可选特征中的一个或多个。在一些实现方式中,第二编码器在不接收任何声帧作为输入的情况下生成第二高阶特征表示。在一些示例中,当ASR模型在流式模式下操作时,操作进一步包括接收由第一编码器在多个输出步中的每个输出步生成的第一高阶特征表示作为对解码器的输入,并且由解码器在多个时步中的每个时步生成可能的语音识别假设上的第二概率分布。在这些示例中,操作可以进一步包括通过从基于第二概率分布的第一概率分布修改初始语音识别结果来生成最终语音识别结果。另外或替代地,当ASR模型在流式模式下操作时,操作进一步包括接收由最终Softmax层输出的一系列非空白符号作为至预测网络的输入;由预测网络在多个输出步中的每个输出步生成密集表示;接收由预测网络在多个步中的每个步生成的密集表示和由第一编码器在多个输出步中的每个输出步生成的第一高阶特征表示作为对联合网络的输入;以及由联合网络在多个输出步中的每个输出步生成可能的语音识别假设上的第二概率分布。当ASR模型在非流式模式下操作时,操作进一步包括接收由最终Softmax层输出的一系列非空白符号作为对预测网络的输入;由预测网络在多个输出步中的每个输出步生成密集表示;接收由预测网络在多个输出步中的每个输出步生成的密集表示和由第二编码器在多个输出步中的每个输出步生成的第二高阶特征表示作为对联合网络的输入;以及由联合网络在多个输出步中的每个输出步生成可能的语音识别假设上的第一概率分布。
在一些实现方式中,解码器包括基于长短期记忆(LSTM)的解码器。替代地,解码器包括V2嵌入查找表。在一些示例中,第一编码器包括因果编码器,所述因果编码器包括多个单向长短期记忆(LSTM)层。另外或替代地,第二编码器包括非因果编码器,所述非因果编码器包括一个或多个双向长短期记忆(LSTM)层。在一些实现方式中,操作进一步包括接收一组训练话语,并且使用所述一组训练话语联合地训练第一编码器和第二编码器。此处,模型通过生成第一编码器的第一损耗、生成第二编码器的第二损耗以及最小化第一损耗和第二损耗的加权和来联合地训练第一编码器和第二编码器。
下文在附图和具体实施方式中阐述本公开的一个或多个实现方式的细节。其它方面、特征和优点将从具体实施方式和附图以及从权利要求书变得显而易见。
附图说明
图1A和1B是使用级联编码器模型架构进行自动语音识别的示例语音环境的示意图。
图2A到2C是级联编码器模型架构的示意图。
图3是用于促进级联编码器模型学习对非合成语音和合成语音二者的一致预测的示例训练过程的示意图。
图4是用于实施用于流式和非流式自动语音识别的级联编码器模型的方法的操作的示例布置的流程图。
图5是可以用于实施本文中所描述的系统和方法的示例计算装置的示意图。
在各个附图中的相似附图标记指示相似元件。
具体实施方式
端到端(E2E)自动语音识别(ASR)模型传统上被构造成在流式模式或非流式模式下操作。常规上,E2E ASR模型包括编码器和解码器作为主要组件。涉及终端用户交互的应用(例如,语音搜索或装置上听写)可能需要模型以流式方式执行识别,其中期望单词在说出时以尽可能小的时延输出。这样阻止使用未来上下文以提高准确性的模型(例如,双向LSTM)的使用。相比之下,离线视频字幕等应用不需要流式识别并且可以充分利用任何可用的未来上下文来提高性能。
本文中的实现方式涉及单个E2E ASR模型,所述E2E ASR模型使用可以在流式和非流式模式二者下操作的级联编码器。级联编码器包括流式编码器和非流式编码器,并且ASR模型的单个解码器被配置成学习以对来自流式编码器的输出或来自非流式编码器的输出进行解码。除了ASR模型之外,架构还可以应用于其它模型,例如实施流式和非流式模式二者的机器翻译。
图1A和1B是语音环境100、100a-b的示例。在语音环境100中,用户104与例如用户装置10的计算装置交互的方式可以是通过语音输入。用户装置10(通常也称为装置10)被配置成捕获来自语音环境100内的一个或多个用户104的声音(例如,流式音频数据)。此处,流式音频数据可以指代用户104的口头话语106,所述口头话语用作可听查询、装置10的命令或由装置10捕获的可听通信。装置10的支持语音的系统可以通过回答查询和/或使命令由一个或多个下游应用执行/完成来处理查询或命令。
用户装置10可以对应于与用户104相关联的任何计算装置并且能够接收音频数据。用户装置10的一些示例包括但不限于移动装置(例如,移动电话、平板计算机、膝上型计算机等)、计算机、可穿戴装置(例如,智能手表)、智能电器、物联网(IoT)装置、车辆信息娱乐系统、智能显示器、智能扬声器等。用户装置10包括数据处理硬件12和存储器硬件14,所述存储器硬件与数据处理硬件12通信并且存储指令,所述指令在由数据处理硬件12执行时使数据处理硬件12执行一个或多个操作。用户装置10进一步包括音频系统16,所述音频系统具有:音频捕获装置(例如,麦克风)16、16a,用于捕获语音环境100内的口头话语106并且将所述口头话语转换成电信号;以及语音输出装置(例如,扬声器)16、16b,用于传送可听音频信号(例如,如来自装置10的输出音频数据)。虽然用户装置10在所示示例中实施单个音频捕获装置16a,但是用户装置10可以在不偏离本公开的范围的情况下实施音频捕获装置16a的阵列,由此阵列中的一个或多个捕获装置16a可以物理上不驻留在用户装置10上,而是与音频系统16通信。
在语音环境100中,实施ASR模型200(也称为模型200)的自动语音识别(ASR)系统109驻留在用户104的用户装置10上和/或经由网络40与用户装置10通信的远程计算装置60(例如,在云计算环境中执行的分布式系统的一个或多个远程服务器)上。用户装置10和/或远程计算装置60还包括音频子系统108,所述音频子系统被配置成接收由用户104说出并且由音频捕获装置16a捕获的话语106,并且将话语106转换成与能够由ASR系统109处理的输入声帧110相关联的对应数字格式。在图1A中所示的示例中,用户104说出相应的话语106,并且音频子系统108将话语106转换成对应音频数据(例如,声帧)110以用于输入到ASR系统109。此后,模型200接收对应于话语106的音频数据110作为输入,并且生成/预测话语106的对应转录120(也称为识别结果/假设120)作为输出。如下面更详细地描述(例如,图3),可以在单个训练阶段中训练模型200,以简化训练模型200以在流式模式和非流式模式下操作的过程。模型200还包括在其编码器之间共享的解码器204(也称为共享解码器204),这使得模型200能够是可以在流式模式和非流式模式下操作的单个模型(例如,与其中每个模型专用于流式模式或非流式模式的两个单独模型形成对比)。例如,如图1A中所示,在用户装置10上执行的数字助理应用50可以要求语音识别为流式的,使得单词、单词片段和/或单个字符一旦被说出就出现在屏幕上。此外,用户装置10的用户104在发出数字助理应用50要执行的查询时也可能对时延具有低容忍度。在应用要求最小时延的这些场景中,模型200以流式模式操作,其中模型200可以在用户104说出话语106时实时提供流式转录能力。另一方面,当用户104对语音识别时延具有更高容忍度和/或要识别的话语106与长格式语音(即,指由完整段落或多个句子组成的语音)相关联时,同一模型200可以在非流式模式下操作,并且可以利用预测网络来提供准确的转录120,但是导致时延增加。因此,ASR系统109可以针对多个不同的语音识别任务仅实施单个ASR模型200,以提供流式和非流式转录能力二者,而不必以逐任务方式利用单独训练的ASR模型。
在一些实现方式中,模型200首先对音频数据110执行流式语音识别,然后对流式编码器的输出执行非流式语音识别。例如,在所示示例中,模型200使用第一编码器(即,低时延编码器(图2B))对音频数据110执行流式语音识别以产生部分语音识别结果120、120a(例如,语音识别结果120a的第二概率分布),并且使用第二编码器(即,高时延编码器(图2C))对编码音频数据110执行非流式语音识别以产生最终语音识别结果120、120b(例如,语音识别结果120b的第一概率分布)。值得注意的是,模型200在接收到音频数据110时输出部分语音识别结果120a,并且随后在用户104完成说出话语106之后一旦接收到所有音频数据110就输出最终语音识别结果120b。因此,针对输入话语106的最终语音识别结果120b的输出可以是从部分语音识别结果120a延迟的。
用户装置10和/或远程计算装置60还执行用户界面生成器107,所述用户界面生成器被配置成向用户装置10的用户104呈现话语106的转录120的表示。如下文更详细地描述,用户界面生成器107可以在时间1期间以流式方式显示部分语音识别结果120a,并且随后在时间2期间显示最终语音识别结果120b。在一些配置中,例如通过在用户装置10或远程计算装置60上执行的自然语言理解(NLU)模块处理从ASR系统109输出的转录120,以执行由话语106指定的用户命令/查询。另外或替代地,文本到语音系统(未示出)(例如,在用户装置10或远程计算装置60的任何组合上执行)可以将转录120转换成合成语音,以供用户装置10和/或另一装置进行可听输出。
在图1A的示例中,语音环境100a中的用户104与使用ASR系统109的用户装置10的程序或应用50(例如,数字助理应用50a)进行交互。例如,图1A描绘用户104与数字助理应用50a通信,并且数字助理应用50a在用户装置10的屏幕上显示数字助理界面18,以描绘用户10与数字助理应用50a的数字助理之间的会话。在此示例中,用户104问数字助理应用50a“What song is playing right now?(现在正在播放什么歌曲?)”来自用户104的这个问题是由音频捕获装置16a捕获并由用户装置10的音频系统16处理的口头话语106。在此示例中,音频系统16接收口头话语106,并将其转换成声帧110以输入到ASR系统109。
继续示例,当用户104说话时,模型200在接收到与话语106相对应的声帧110时使用第一编码器210(即,图2A)对声帧110进行编码,然后使用解码器204(图2A)将声帧110的编码表示解码为部分语音识别结果120a。在时间1期间,用户界面生成器107经由数字助理界面18以流式方式向用户装置10的用户104呈现话语106的部分语音识别结果120a的表示,使得单词、单词片段和/或单个字符一旦被说出就出现在屏幕上。
在接收到与话语106相对应的所有(或一定量的)声帧110并且第一编码器210已经对这些声帧110进行编码之后,第二编码器220(即,图2A)对来自第一编码器210的编码输出进行编码以生成与已经由第一编码器210编码的话语106相对应的一组声帧110的编码。解码器204然后将已经由第二编码器220编码的声帧110解码为最终语音识别结果120b。例如,当第一编码器210对与话语106相对应的所有声帧110进行编码(例如,随着接收到声帧110)时,第二编码器220对已经由第一编码器210编码的所有声帧110进行编码。在这方面,通过在多个编码声帧110上进行编码,第二编码器210能够以非流式方式提供更大的上下文感知(例如,通过接收话语106的所有声帧110的表示),这潜在地协调或校正由于第一编码器210的流式性质而遗漏或误解的话语106的方面。在一些示例中,标识用户104已经完成说出话语106的指示(例如,端点)触发模型200的第二编码器220以对所有声帧110进行编码。在时间2期间,用户界面生成器107经由数字助理界面18向用户装置10的用户104呈现话语106的最终语音识别结果120b的表示。在一些实现方式中,用户界面生成器107用最终语音识别结果120b的表示替换(或修改)部分语音识别结果120a的表示。例如,最终语音识别结果120b被认为比部分语音识别结果120a更准确,并且最终语音识别结果120b最终显示为转录120,以便修复可能在部分语音识别结果120a中错误识别的任何词项。在此示例中,由模型200输出并在时间1显示在用户装置10的屏幕上的流式部分语音识别结果120a与低时延相关联,并且向用户104提供响应性,表明他/她的查询正在被处理。因此,部分语音识别结果120a可能错误地预测用户104的话语106是“What song is play right now?(现在播放什么歌曲?)”由模型200输出并在时间2以增加的时延显示在屏幕上的最终语音识别结果120通过识别出用户104说的是“playing(正在播放)”而在准确性方面提高语音识别质量。然而,由于用户界面生成器107在用户说出话语106时显示部分语音识别结果,因此与产生并最终显示最终识别结果120b相关联的更高时延对用户104来说不太明显。
在图1A中所示的示例中,数字助理应用50a可以使用自然语言处理对用户104提出的问题作出响应。自然语言处理通常是指解释书面语言(例如,部分语音识别结果120a和/或最终语音识别结果120b)并确定书面语言是否提示任何动作的过程。在此示例中,数字助理应用50a使用自然语言处理来识别来自用户10的问题涉及用户的环境,并且更具体地,涉及在用户附近播放的歌曲。通过使用自然语言处理识别这些细节,自动助理向用户的查询返回响应19,其中响应19陈述“Tweezer is playing right now(正在播放Tweezer)。”在一些配置中,自然语言处理发生在与用户装置10的数据处理硬件12通信的远程计算装置60上。
图1B是利用语音环境100b的ASR系统109进行语音识别的另一示例。如示例中所示,用户104与在用户装置10的屏幕上显示语音邮件应用界面18、18b的语音邮件应用50、50b交互,以转录Jane Doe留给用户104的语音邮件。在此示例中,时延并不重要。在不考虑时延的情况下,ASR系统109的模型200能够通过等待直到生成对应于语音邮件的所有声帧110来利用音频的完整上下文。此语音邮件场景还说明模型200如何能够处理长格式的语音,因为语音邮件通常是多个句子甚至几个段落。处理长格式语音的能力与其它ASR模型(例如,具有LAS解码器的两遍模型)相比特别有利,因为当识别长格式语音时,这些两遍模型通常导致性能降低(例如,长格式语音上的较高单词删除率)。例如,通过结合级联编码器202(例如,第一编码器210和第二编码器220)使用RNN-T解码器作为解码器204,当对长格式语音执行语音识别时,模型200能够消费输入音频的完整上下文,而不会导致如在两遍ASR模型中降低性能。
继续参考图1B,如关于图1A所述,模型200在接收到声帧110时使用第一编码器210对声帧110进行编码。在模型200接收到所有声帧110并且用第一编码器210对声帧110进行编码之后,模型200提供第一编码器输出作为至第二编码器220的输入。在解码器204生成最终语音识别结果120b之前,第二编码器220对第一编码器输出进行编码。此后,用户界面生成器107经由数字助理界面18b呈现最终语音识别结果120b的表示,而不首先显示部分语音识别结果120a。例如,最终语音识别结果120b是Jane Doe的长格式语音邮件的转录:“Giveme a call back when you get this.Just trying to figure out plans for the NewYear.(收到这个后给我回个电话。只是想知道新年计划。)”
图2A到2C包括在流式和非流式模式的各种组合中操作的示例模型200a-c。具体来说,模型200a-c中的每一个包括级联编码器202和解码器204。级联编码器202是指其中编码路径包括级联的两个编码器210、220,使得一个编码器210的输出在解码之前馈送另一个编码器220的输入的模型结构。此处,编码器210、220可以级联,而不论每个编码器的底层架构如何。在一些示例中,编码器210、220包括512个维度卷积增强变换器(conformer)层的堆栈。因果卷积和左上下文注意力层可以用于每个卷积增强变换器层,以严格限制模型不使用未来的输入。多头(例如,8头)注意力机制可以用于自注意力层。级联编码器210、220可以包括17个卷积增强变换器层。此处,第一编码器210可以包括15个卷积增强变换器层,而第二编码器220可以包括采用额外的右上下文(例如,5.04秒)的两个卷积增强变换器层。可选地,可以使用包含自注意力机制的其它类型的层(例如变换器层)代替卷积增强变换器层。第一编码器210可以称为因果编码器,并且第二编码器220可以称为非因果编码器。
在其它实现方式中,一个编码器使用LSTM结构构建,而另一个编码器使用双向LSTM层或卷积增强变换器层(例如,卷积增强变换器-置换器)构建。换句话说,编码器210、220可以具有不同架构或类似架构。例如,级联编码器202可以大致类似于传统ASR系统中的声学模型(AM),并且可以包括堆叠的长短期记忆(LSTM)层的循环网络。此处,第一编码器210是包括单向长短期记忆(LSTM)层的流式编码器,而第二编码器220是包括双向LSTM层或卷积增强变换器层的非流式编码器。在级联编码器202中,在两个编码器210、220都包括LSTM层的情况下,接收第一编码器210的输出的第二编码器220可以利用第一编码器210的LSTM层,使得第二编码器220包括比第一编码器210更少的LSTM层(和比完全非流式模型更少的LSTM层)。通过具有更少的LSTM层,级联编码器202可以减少计算上更昂贵的双向层的数量,使得模型200比简单地将传统的流式模型与传统的非流式模型组合更精简。
参考图2A,第一编码器210读取一系列d维特征向量(例如,图1A和1B中所示的声帧110)x=(x1,x2,···,xT),其中xt∈Rd,并且在每个时步产生第一高阶特征表示203。此第一高阶特征表示被表示为es。类似地,第二编码器220级联连接到第一编码器210,并且进行训练以接收第一高阶特征es作为输入,并且输出第二高阶特征表示205。此第二高阶特征表示被表示为ea。第一编码器210和第二编码器220两者直接连接到解码器204并且由解码器204共享。因此,解码器204接收第一高阶特征表示es和第二高阶特征表示ea两者作为输入。
解码器204可以包括具有联合层230和预测网络240的循环神经网络-置换器(RNN-T)架构。解码器204使用联合层230来组合(即,当模型200在非流式模式下操作时)由级联编码器202输出的第一高阶特征表示es和第二高阶特征表示ea,以及来自用于先前预测yr–1)的预测网络240的嵌入输出,以便产生解码器输出。当模型200在流式模式下操作时,联合层240接收预测网络240的输出,以及仅从第一编码器210输出的第一高阶特征表示es。给定N个先前非空白符号先前单元{yi-1,...,yi–N}和输入x,解码器输出可以是当前子词单元yi上的概率分布P(yi|yi-1,...,y0,x)。尽管未说明,但是模型200可以包括接收解码器204的输出的Softmax层。在一些实现方式中,Softmax层与解码器204分离,并且处理来自解码器204的输出yr。然后,在定向搜索过程中使用Softmax层的输出来选择正交元素。在一些实现方式中,Softmax层与解码器204集成,使得解码器204的输出yr表示Softmax层的输出。
解码器204被配置成在每个输出步生成可能的语音识别假设上的概率分布。换句话说,联合网络230在每个输出步(例如,时步)生成可能的语音识别假设上的概率分布。此处,“可能的语音识别假设”对应于一组输出标签/符号(还称为“语音单元”),每个输出标签/符号表示特定自然语言中的字素(例如,符号/字符)或单词片段。例如,当自然语言是英语时,所述一组输出标签可以包括二十七(27)个符号,例如,英语字母表中的26个字母中的每一个各一个标签,以及指定空格的一个标签。因此,联合网络230可以输出一组值,所述一组值指示预定的一组输出标签中的每一个的发生可能性。这组值可以是向量(例如,独热向量),并且可以指示所述一组输出标签上的概率分布。在一些情况下,输出标签是字素(例如,单个字符,以及可能的标点符号和其它符号),但所述一组输出标签不限于此。例如,除了字素之外或代替字素,所述一组输出标签可以包括单词片段和/或整个单词。输出标签也可以是其它类型的语音单元,例如音素或子音素。联合网络230的输出分布可以包括不同输出标签中的每一个的后验概率值。因此,如果存在代表不同字素或其它符号的100个不同的输出标签,则联合网络230的输出可以包括100个不同概率值,每个输出标签各一个概率值。然后,概率分布可以用于在定向搜索过程中(例如,通过Softmax层)选择候选正交元素(例如,字素、单词片段和/或单词)并将分数分配给候选正交元素以确定转录120。在一些示例中,级联编码器模型200的第一编码器210由八个2048维LSTM层组成,每个层后面跟着640维投影层。在这些示例中,模型200的第二编码器220可以由具有大约1000万个参数的两层双向LSTM组成。
在解码器204内,预测网络240可以具有两个2048维LSTM层,每个层后面也跟着640维投影层,使得基于LSTM的预测网络可以具有大约2340万个参数。在其它配置中,代替LSTM层,预测网络240可以替代地包括卷积增强变换器层或变换器层。在其它配置中,预测网络240包括V2嵌入查找表,所述V2嵌入查找表包括嵌入预测网络。在每个时步,V2嵌入查找表可以接收由联合网络230输出的先前两个预测(例如,独热向量)作为输入,计算先前两个预测中的每一个的相应嵌入d1、d2,并向联合层230提供级联输出[d1、d2]。相比之下,V2嵌入查找表可以仅具有大约两(2)百万个参数,而基于LSTM的预测网络可以包括大约2340万个参数。最后,联合网络230也可以是具有640个隐藏单元的一层神经网络。Softmax层可以由使用多个训练数据集132、132a–n(图3)中的所有唯一的单词片段或字素生成的统一单词片段或字素集合组成。在一些实现方式中,为了限制级联编码器模型200看到的未来上下文的量,第二编码器220使用一定数量的卷积增强变换器层(例如,两个层)连同特定量的右上下文(例如,五秒的右上下文)的,而第一编码器210继续使用LSTM层。对于这些实现方式,第二编码器220中的每个卷积增强变换器层可以具有640个单元来匹配LSTM层,并且添加大约1000万个额外参数。
继续图2A中的示例,在一些实现方式中,模型200a并行地在流式模式和非流式模式两者下操作。当同时在流式和非流式模式两者下操作时,模型200a首先使用第一编码器210对音频数据110执行流式语音识别,以生成用于第二编码器220和解码器204两者的第一高阶表示es。解码器204然后基于第一高阶表示es产生部分语音识别结果120、120a。模型200b还对编码音频数据110执行非流式语音识别,其中第二编码器220使用从第一编码器210接收的第一高阶表示es以生成第二高阶表示ea。解码器204然后基于第二高阶表示ea产生最终语音识别结果120、120b。如通过时间所示,解码器204使用来自第一编码器210的输出以流式方式输出部分语音识别结果120a,然后在非流式模式下操作之前等待直到话语完成,该非流式模式使用来自第二编码器220的输出产生最终语音识别结果120b。因此,针对输入话语106的最终语音识别结果120b可以是从部分语音识别结果120a延迟的。
参考图2B,在一些实现方式中,模型200b仅在流式模式下操作。例如,这可能在用户104正在使用例如语音搜索或装置上听写的应用时发生,这些应用需要尽可能小的时延。此处,模型200b仅使用第一编码器210对音频数据110执行流式语音识别,以生成解码器204的第一高阶表示203es。解码器204然后产生部分语音识别结果120、120a。因为模型200b的流式模式快速地产生部分语音识别结果120、120a,所以词项“play(播放)”的不准确性通常是用户104可接受的。
参考图2C,在一些实现方式中,模型200c仅在非流式模式下操作。非流式模式可以发生在例如非时延密集型应用中,例如当用户104正在查看他/她的手机上留下的语音邮件的转录时(例如,图1B)。如上所述,这种类型的应用受益于使用未来上下文来提高性能,以换取增加的处理时间。此处,模型200c首先使用第一编码器210在每个时步生成第一高阶表示203es以输入到第二编码器220,但是解码器204不解码任何第一高阶表示es。然后,模型200c对所有音频数据110执行非流式语音识别,其中第二编码器220使用从第一编码器210接收的第一高阶表示es以生成第二高阶表示205ea。解码器204然后产生最终语音识别结果120、120b。由于实时产生流式语音识别对用户没有什么价值并且时延不是一个要素,因此模型200c可以简单地仅在非流式模式下操作,以产生最终语音识别结果120、120b。
图3示出用于将模型200训练为针对流式和/或非流式模式两者都可操作的训练过程300的示例。在一些配置中,训练过程300在图1A和1B的远程计算装置60上执行。训练过程300获得存储在样本数据库130中的多个训练话语132、132a–n,并且在训练话语132上训练模型200。样本数据库130可以驻留在远程计算装置60的存储器硬件上。如上文关于图2A所讨论,第一编码器210和第二编码器220共享相同解码器204,并且可以在单个阶段中进行训练,从而简化训练过程300。这意味着非流式编码器220可以直接在流式编码器210的输出(例如,第一高阶表示es)上训练,而不是在输入声学特征(例如,输入声帧110)上训练。
如图3中所示,模型200有两个处理路径,一个用于模型200b的流式模式(图2B中所示),一个用于模型200c的非流式模式(图2C中所示)。因为在训练过程300中存在两个输入处理路径,所以模型的损失包括两个损失函数。具体来说,给定输入训练话语132,模型200b的流式模式的损失大体被定义为与可能的语音识别假设上的概率分布相对应的负对数概率的总和。也就是说,从第一编码器210连接到解码器204的模型损失被定义为给定输入训练话语132,非流式模式的模型损失大体也被定义为与可能的语音识别假设上的概率分布相对应的负对数概率的总和。因此,从第二编码器220连接到解码器204的模型损失被定义为/>基于这些表示,两个输入路径之间的总损失计算为每个输入路径损失的加权和其中λ是加权项。在训练过程300中,联合地训练级联编码器210、220包括最小化两个输入处理路径之间的损失的加权和。
在每个时步,在训练过程300期间,对于每个训练话语132,训练可以在流式或非流式中发生。换句话说,输入处理路径被随机选择为训练模型200b或模型200c。通过对训练话语132进行采样,训练过程仅需要在每个训练步骤为每个训练话语132计算一次损失,这大大加快训练过程300。在一些实现方式中,在容许较长的训练时间的情况下,采用替代的训练过程来训练具有每个训练话语的每个输入处理路径,并且在每个训练步骤计算每个训练话语132的模型200b和模型200c两者的损失。
在所示示例中,选择训练话语132b、132c来训练由级联编码器模型200b表示的第一处理路径。级联编码器模型200b接收训练话语132b、132c,并且第一编码器210将训练话语132b、132c转换为第一高阶特征表示(例如,音频嵌入)作为输出。解码器204然后接收训练话语132b、132c的第一高阶特征表示作为输入,并且生成输出,对该输出测试该输出的准确性。类似地,选择训练话语132a、132d来训练由级联编码器模型200c表示的第二处理路径。级联编码器模型200c接收训练话语132a、132d,并且第一编码器将训练话语132a、132d转换为第一高阶特征表示(例如,音频嵌入)作为输出。第二编码器220接收训练话语132a、132d的第一高阶特征表示作为输入,并且生成训练话语132a、132d的第二高阶特征表示作为输出。解码器204然后接收训练话语132a、132d的第二高阶特征表示作为输入,并且生成输出,对该输出测试该输出的准确性。这确保模型200学习在推理期间以流式模式或非流式模式操作。
图4包括用于使用级联编码器模型200执行流式和非流式语音识别的方法400的操作的示例布置的流程图。在操作402,方法400包括接收一系列声帧110作为对级联编码器模型200的输入。在操作404,方法400进一步包括使用级联编码器模型对所述一系列声帧110执行流式语音识别和非流式语音识别。
在操作406,方法400包括由第一编码器210在多个输出步中的每个输出步生成所述一系列声帧110中的对应声帧110的第一高阶特征表示。方法400进一步包括在操作408,接收由第一编码器210在多个输出步中的每个输出步生成的第一高阶特征表示作为对第二编码器220的输入。在操作410,方法400还包括由第二编码器220在多个输出步中的每个输出步生成对应的第一高阶特征帧的第二高阶特征表示。方法400还包括在操作412,接收由第二编码器220在多个输出步中的每个输出步生成的第二高阶特征表示作为对解码器204的输入。在操作414,方法400进一步包括在多个时步中的每个时步生成可能的语音识别假设上的第一概率分布。
图5是示例计算装置500的示意图,所述计算装置可以用于实施在本文档中描述的系统(例如,音频子系统108、ASR系统109、用户界面生成器107和/或模型200)和方法(例如,方法400)。计算装置500旨在表示各种形式的数字计算机,例如,膝上型计算机、台式计算机、工作站、个人数字助理、服务器、刀片服务器、大型机和其它合适的计算机。此处所示的组件、组件的连接和关系,以及组件的功能意味着仅仅是示例性的,且并不意味着限制本文档中描述和/或要求保护的发明的实现方式。
计算装置500包括处理器510(例如,数据处理硬件)、存储器520(例如,存储器硬件)、存储装置530、连接到存储器520和高速扩展端口550的高速接口/控制器540,以及连接到低速总线570和存储装置530的低速接口/控制器560。组件510、520、530、540、550和560中的每一个使用各种总线互连,并且组件可以安装在通用母板上或视情况以其它方式安装。处理器510可以处理用于在计算装置500内执行的指令,包括存储于存储器520中或存储装置530上以将图形用户界面(GUI)的图形信息显示在外部输入/输出装置,例如耦合到高速接口540的显示器580上的指令。在其它实现方式中,多个处理器和/或多个总线可以视情况与多个存储器以及多种类型的存储器一起使用。而且,可以连接多个计算装置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。在一些实现方式中,低速控制器560耦合到存储装置530和低速扩展端口590。可以包括各种通信端口(例如,USB、蓝牙、以太网、无线以太网)的低速扩展端口590可以例如通过网络适配器耦合到一个或多个输入/输出装置,例如,键盘、指向装置、扫描仪,或例如交换机或路由器的联网装置。
如图所示,计算装置500可以通过多种不同形式实施。例如,所述计算装置可以实施为标准服务器500a,或多次实施于一组此类服务器500a中、实施为膝上型计算机500b,或实施为机架服务器系统500c的一部分。
本文描述的系统和技术的各种实现方式可以在数字电子和/或光学电路、集成电路、专门设计的ASIC(专用集成电路)、计算机硬件、固件、软件,和/或它们的组合中实现。这些各种实现方式可以包括在一个或多个计算机程序中的实现方式,所述计算机程序可在包括至少一个可编程处理器的可编程系统上执行和/或解释,所述可编程处理器可以用于专用或通用目的,且耦合以从存储系统、至少一个输入装置和至少一个输出装置接收数据和指令,并将数据和指令传输到存储系统、至少一个输入装置和至少一个输出装置。
软件应用(即,软件资源)可以指使计算装置执行任务的计算机软件。在一些示例中,软件应用可以称为“应用”、“应用程序”或“程序”。示例应用包括但不限于系统诊断应用、系统管理应用、系统维护应用、文字处理应用、电子表格应用、消息传递应用、媒体流应用、社交网络应用和游戏应用。
这些计算机程序(还称为程序、软件、软件应用或代码)包括用于可编程处理器的机器指令,并且可以用高级程序化和/或面向对象的编程语言,和/或用汇编/机器语言实施。如本文所使用,术语“机器可读介质”和“计算机可读介质”指代用于将机器指令和/或数据提供到可编程处理器的任何计算机程序产品、非暂时性计算机可读介质、设备和/或装置(例如,磁盘、光盘、存储器、可编程逻辑器件(PLD)),包括接收机器指令作为机器可读信号的机器可读介质。术语“机器可读信号”指代用于将机器指令和/或数据提供到可编程处理器的任何信号。
本说明书中描述的过程和逻辑流可以由还称为数据处理硬件的一个或多个可编程处理器执行,所述可编程处理器执行一个或多个计算机程序,以通过在输入数据上操作并且生成输出来执行功能。过程和逻辑流还可以通过专用逻辑电路,例如FPGA(现场可编程门阵列)或ASIC(专用集成电路)执行。举例来说,适合于执行计算机程序的处理器包括通用微处理器和专用微处理器两者,以及任何种类的数字计算机的任何一个或多个处理器。通常,处理器将从只读存储器或随机存取存储器或两者接收指令和数据。计算机的基本元件是用于执行指令的处理器,以及用于存储指令和数据的一个或多个存储器装置。通常,计算机还将包括用于存储数据的一个或多个大容量存储装置(例如,磁盘、磁光盘或光盘),或可操作地耦合以从所述一个或多个大容量存储装置接收数据或将数据传递到所述一个或多个大容量存储装置,或这两者。然而,计算机不需要具有此类装置。适合于存储计算机程序指令和数据的计算机可读介质包括所有形式的非易失性存储器、介质和存储器装置,包括例如,半导体存储器装置,例如EPROM、EEPROM和闪速存储器装置;磁盘,例如内部硬盘或可移动盘;磁光盘;以及CD ROM和DVD-ROM盘。处理器和存储器可以由专用逻辑电路补充或并入专用逻辑电路中。
为了提供与用户的交互,本公开的一个或多个方面可以在具有显示装置(例如,CRT(阴极射线管)或LCD(液晶显示器)监视器或触摸屏)的计算机上实施,以将信息显示给用户以及可选地键盘和指向装置(例如,鼠标或轨迹球),用户可以通过所述键盘和所述指向装置将输入提供到计算机。其它种类的装置也可以用于提供与用户的交互;例如,提供给用户的反馈可以是任何形式的感觉反馈,例如,视觉反馈、听觉反馈或触觉反馈;以及来自用户的输入可以用任何形式接收,包括声音、语音或触觉输入。另外,通过将文档发送到用户使用的装置以及从所述装置接收文档;例如,通过响应于从网络浏览器接收的请求而将网页发送到用户的客户端装置上的网络浏览器,计算机可以与用户交互。
已经描述多个实现方式。然而,应理解,在不脱离本公开的精神和范围的情况下可以进行各种修改。因此,其它实现方式在所附权利要求书的范围内。
Claims (21)
1.一种自动语音识别(ASR)模型(200),包括:
第一编码器(210),所述第一编码器被配置成:
接收一系列声帧(110)作为输入;以及
在多个输出步中的每个输出步生成所述一系列声帧(110)中的对应的声帧(110)的第一高阶特征表示(203);
第二编码器(220),所述第二编码器被配置成:
接收由所述第一编码器(210)在所述多个输出步中的每个输出步生成的第一高阶特征表示(203)作为输入;以及
在所述多个输出步中的每个输出步生成对应的第一高阶特征帧的第二高阶特征表示(205);以及
解码器(204),所述解码器被配置成:
接收由所述第二编码器(220)在所述多个输出步中的每个输出步生成的第二高阶特征表示(205)作为输入;以及
在多个时步中的每个时步生成可能的语音识别假设上的第一概率分布。
2.根据权利要求1所述的ASR模型(200),其中,所述第二编码器(220)在不接收任何所述声帧(110)作为输入的情况下生成所述第二高阶特征表示(205)。
3.根据权利要求1或2所述的ASR模型(200),其中,所述解码器(204)进一步被配置成:
接收由所述第一编码器(210)在所述多个输出步中的每个输出步生成的第一高阶特征表示(203)作为输入;以及
在所述多个时步中的每个时步生成可能的语音识别假设上的第二概率分布。
4.根据权利要求3所述的ASR模型(200),其中,所述解码器(204)进一步被配置成基于可能的语音识别假设上的所述第二概率分布来生成部分语音识别结果(120)。
5.根据权利要求3或4所述的ASR模型(200),其中,所述解码器(204)包括:
预测网络(240),所述预测网络被配置成:
接收由最终Softmax层输出的一系列非空白符号作为输入;以及
在所述多个输出步中的每个输出步生成密集表示;以及
联合网络(230),所述联合网络被配置成:
接收由所述预测网络(240)在所述多个输出步中的每个输出步生成的密集表示以及以下中的一个作为输入:
当所述ASR模型(200)在流式模式下操作时,由所述第一编码器(210)在所述多个输出步中的每个输出步生成的第一高阶特征表示(203);或
当所述ASR模型(200)在非流式模式下操作时,由所述第二编码器(220)在所述多个输出步中的每个输出步生成的第二高阶特征表示(205);以及
在所述多个输出步中的每个输出步生成以下中的一个:
当所述ASR模型(200)在所述流式模式下操作时,可能的语音识别假设上的第二概率分布;或
当所述ASR模型(200)在所述非流式模式下操作时,可能的语音识别假设上的第一概率分布。
6.根据权利要求5所述的ASR模型(200),其中,所述预测网络(240)包括基于长短期记忆(LSTM)的预测网络(240)。
7.根据权利要求5所述的ASR模型(200),其中,所述预测网络(240)包括V2嵌入查找表。
8.根据权利要求1至7中任一项所述的ASR模型(200),其中,所述第一编码器(210)包括因果编码器,所述因果编码器包括以下中的一个:
多个单向长短期记忆(LSTM)层;
多个卷积增强变换器层;或
多个变换器层。
9.根据权利要求1至8中任一项所述的ASR模型(200),其中,所述第二编码器(220)包括非因果编码器,所述非因果编码器包括以下中的一个:
一个或多个双向长短期记忆(LSTM)层;
多个卷积增强变换器层;或
多个变换器层。
10.根据权利要求1至9中任一项所述的ASR模型(200),进一步包括:
接收一组训练话语(132);以及
通过以下操作使用所述一组训练话语(132)联合地训练所述第一编码器(210)和所述第二编码器(220):
生成所述第一编码器(210)的第一损失;
生成所述第二编码器(220)的第二损失;以及
最小化所述第一损失和所述第二损失的加权和。
11.一种计算机实施的方法(400),所述计算机实施的方法在数据处理硬件(12)上执行时使所述数据处理硬件(12)执行操作,所述操作包括:
接收一系列声帧(110)作为对自动语音识别(ASR)模型(200)的输入;以及
通过以下操作使用所述ASR模型(200)对所述一系列声帧(110)执行流式语音识别和非流式语音识别:
由第一编码器(210)在多个输出步中的每个输出步生成所述一系列声帧(110)中的对应的声帧(110)的第一高阶特征表示(203);
接收由所述第一编码器(210)在所述多个输出步中的每个输出步生成的第一高阶特征表示(203)作为对第二编码器(220)的输入;
由所述第二编码器(220)在所述多个输出步中的每个输出步生成对应的第一高阶特征帧的第二高阶特征表示(205);
接收由所述第二编码器(220)在所述多个输出步中的每个输出步生成的第二高阶特征表示(205)作为对解码器(204)的输入;以及
在多个时步中的每个时步生成可能的语音识别假设上的第一概率分布。
12.根据权利要求11所述的方法(400),其中,所述第二编码器(220)在不接收任何所述声帧(110)作为输入的情况下生成所述第二高阶特征表示(205)。
13.根据权利要求11或12所述的方法(400),其中,当所述ASR模型在流式模式下操作时,所述操作进一步包括:
接收由所述第一编码器(210)在所述多个输出步中的每个输出步生成的第一高阶特征表示(203)作为对所述解码器(204)的输入;以及
由所述解码器(204)在所述多个时步中的每个时步生成可能的语音识别假设上的第二概率分布。
14.根据权利要求13所述的方法(400),其中,所述操作进一步包括基于可能的语音识别假设上的所述第二概率分布来生成部分语音识别结果(120)。
15.根据权利要求13或14所述的方法(400),其中,所述操作进一步包括当所述ASR模型(200)在所述流式模式下操作时:
接收由最终Softmax层输出的一系列非空白符号作为对预测网络(240)的输入;
由所述预测网络(240)在所述多个输出步中的每个输出步生成密集表示;
接收由所述预测网络(240)在所述多个步中的每个步生成的密集表示以及由所述第一编码器(210)在所述多个输出步中的每个输出步生成的第一高阶特征表示(203)作为对联合网络(230)的输入;以及
由所述联合网络(230)在所述多个输出步中的每个输出步生成可能的语音识别假设上的第二概率分布。
16.根据权利要求11至15中任一项所述的方法(400),其中,所述操作进一步包括当所述ASR模型(200)在所述非流式模式下操作时:
接收由所述最终Softmax层输出的一系列非空白符号作为对所述预测网络(240)的输入;
由所述预测网络(240)在所述多个输出步中的每个输出步生成密集表示;
接收由所述预测网络(240)在所述多个输出步中的每个输出步生成的密集表示以及由所述第二编码器(220)在所述多个输出步中的每个输出步生成的第二高阶特征表示(205)作为对所述联合网络(230)的输入;以及
由所述联合网络(230)在所述多个输出步中的每个输出步生成可能的语音识别假设上的第一概率分布。
17.根据权利要求11至16中任一项所述的方法(400),其中,所述解码器(204)包括基于长短期记忆(LSTM)的预测网络(240)。
18.根据权利要求11至16中任一项所述的方法(400),其中,所述解码器(204)包括基于V2嵌入查找表的预测网络(240)。
19.根据权利要求11至18中任一项所述的方法(400),其中,所述第一编码器(210)包括因果编码器,所述因果编码器包括以下中的一个:
多个单向长短期记忆(LSTM)层;
多个卷积增强变换器层;或
多个变换器层。
20.根据权利要求11至19中任一项所述的方法(400),其中,所述第二编码器(220)包括非因果编码器,所述非因果编码器包括:
一个或多个双向长短期记忆(LSTM)层;
多个卷积增强变换器层;或
多个变换器层。
21.根据权利要求11至20中任一项所述的方法(400),其中,所述操作进一步包括:
接收一组训练话语(132);以及
通过以下操作使用所述一组训练话语(132)联合地训练所述第一编码器(210)和所述第二编码器(220):
生成所述第一编码器(210)的第一损失;
生成所述第二编码器(220)的第二损失;以及
最小化所述第一损失和所述第二损失的加权和。
Applications Claiming Priority (5)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US202063094300P | 2020-10-20 | 2020-10-20 | |
US63/094,300 | 2020-10-20 | ||
US17/237,021 | 2021-04-21 | ||
US17/237,021 US20220122622A1 (en) | 2020-10-20 | 2021-04-21 | Cascaded Encoders for Simplified Streaming and Non-Streaming ASR |
PCT/US2021/030364 WO2022086589A1 (en) | 2020-10-20 | 2021-05-01 | Cascaded encoders for simplified streaming and non-streaming speech recognition |
Publications (1)
Publication Number | Publication Date |
---|---|
CN116670757A true CN116670757A (zh) | 2023-08-29 |
Family
ID=81185155
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202180071737.0A Pending CN116670757A (zh) | 2020-10-20 | 2021-05-01 | 用于简化的流式和非流式语音识别的级联编码器 |
Country Status (6)
Country | Link |
---|---|
US (1) | US20220122622A1 (zh) |
EP (1) | EP4218008A1 (zh) |
JP (1) | JP2023547847A (zh) |
KR (1) | KR20230086737A (zh) |
CN (1) | CN116670757A (zh) |
WO (1) | WO2022086589A1 (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN117079653A (zh) * | 2023-10-11 | 2023-11-17 | 荣耀终端有限公司 | 语音识别方法、语音识别模型的训练方法、设备及介质 |
Families Citing this family (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US11853381B2 (en) * | 2020-11-13 | 2023-12-26 | Google Llc | Hybrid fetching using a on-device cache |
US11562734B2 (en) * | 2021-01-04 | 2023-01-24 | Kwai Inc. | Systems and methods for automatic speech recognition based on graphics processing units |
US20220230629A1 (en) * | 2021-01-20 | 2022-07-21 | Microsoft Technology Licensing, Llc | Generation of optimized spoken language understanding model through joint training with integrated acoustic knowledge-speech module |
US11798529B2 (en) | 2021-01-20 | 2023-10-24 | Microsoft Technology Licensing, Llc | Generation of optimized knowledge-based language model through knowledge graph multi-alignment |
CN114913848A (zh) * | 2022-04-26 | 2022-08-16 | 北京市商汤科技开发有限公司 | 语音识别方法、装置、计算机设备和存储介质 |
Family Cites Families (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2020153736A1 (en) * | 2019-01-23 | 2020-07-30 | Samsung Electronics Co., Ltd. | Method and device for speech recognition |
-
2021
- 2021-04-21 US US17/237,021 patent/US20220122622A1/en active Pending
- 2021-05-01 WO PCT/US2021/030364 patent/WO2022086589A1/en active Application Filing
- 2021-05-01 CN CN202180071737.0A patent/CN116670757A/zh active Pending
- 2021-05-01 KR KR1020237015863A patent/KR20230086737A/ko unknown
- 2021-05-01 EP EP21727056.0A patent/EP4218008A1/en active Pending
- 2021-05-01 JP JP2023524424A patent/JP2023547847A/ja active Pending
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN117079653A (zh) * | 2023-10-11 | 2023-11-17 | 荣耀终端有限公司 | 语音识别方法、语音识别模型的训练方法、设备及介质 |
Also Published As
Publication number | Publication date |
---|---|
JP2023547847A (ja) | 2023-11-14 |
EP4218008A1 (en) | 2023-08-02 |
WO2022086589A1 (en) | 2022-04-28 |
KR20230086737A (ko) | 2023-06-15 |
US20220122622A1 (en) | 2022-04-21 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP7436760B1 (ja) | サブワードエンドツーエンド自動音声認識のための学習ワードレベルコンフィデンス | |
CN116670757A (zh) | 用于简化的流式和非流式语音识别的级联编码器 | |
CN116250038A (zh) | 变换器换能器:一种统一流式和非流式语音识别的模型 | |
JP7351018B2 (ja) | エンド・ツー・エンド音声認識における固有名詞認識 | |
US20230343328A1 (en) | Efficient streaming non-recurrent on-device end-to-end model | |
US20220310073A1 (en) | Mixture Model Attention for Flexible Streaming and Non-Streaming Automatic Speech Recognition | |
JP2024511198A (ja) | シーケンスにわたって対照損失を用いる教師ありトレーニングおよび教師なしトレーニング | |
CN117099157A (zh) | 用于端到端自动语音识别置信度和删除估计的多任务学习 | |
WO2023183680A1 (en) | Alignment prediction to inject text into automatic speech recognition training | |
US11823697B2 (en) | Improving speech recognition with speech synthesis-based model adapation | |
KR20240065125A (ko) | 희귀 단어 스피치 인식을 위한 대규모 언어 모델 데이터 선택 | |
JP2024512606A (ja) | 自己アライメントを用いたストリーミングasrモデル遅延の短縮 | |
US20230326461A1 (en) | Unified Cascaded Encoder ASR model for Dynamic Model Sizes | |
US20220310061A1 (en) | Regularizing Word Segmentation | |
US20230107695A1 (en) | Fusion of Acoustic and Text Representations in RNN-T | |
US20220310081A1 (en) | Multilingual Re-Scoring Models for Automatic Speech Recognition | |
KR20240068723A (ko) | Rnn-T로 구현된 자동 음성 인식 시스템에서 음향과 텍스트 표현의 융합 | |
CN118176537A (zh) | 用于长形式语音识别的训练 | |
WO2023060002A1 (en) | Training for long-form speech recognition | |
KR20240070689A (ko) | 콘포머에 대한 추론 성능의 최적화 | |
KR20240069763A (ko) | 캐스케이드 인코더를 위한 트랜스듀서 기반 스트리밍 심의 | |
CN118076999A (zh) | 用于级联编码器的基于transducer的流传输推敲 |
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 |