CN114596841A - 实时语音识别方法、模型训练方法、装置及设备 - Google Patents
实时语音识别方法、模型训练方法、装置及设备 Download PDFInfo
- Publication number
- CN114596841A CN114596841A CN202210253123.0A CN202210253123A CN114596841A CN 114596841 A CN114596841 A CN 114596841A CN 202210253123 A CN202210253123 A CN 202210253123A CN 114596841 A CN114596841 A CN 114596841A
- Authority
- CN
- China
- Prior art keywords
- block
- module
- frame
- sequence
- feature sequence
- 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 title claims abstract description 122
- 238000012549 training Methods 0.000 title claims abstract description 67
- 238000012545 processing Methods 0.000 claims abstract description 153
- 230000008569 process Effects 0.000 claims abstract description 39
- 238000003860 storage Methods 0.000 claims description 24
- 238000010606 normalization Methods 0.000 claims description 23
- 239000011159 matrix material Substances 0.000 claims description 19
- 230000007246 mechanism Effects 0.000 claims description 19
- 238000004590 computer program Methods 0.000 claims description 7
- 238000013473 artificial intelligence Methods 0.000 abstract description 13
- 238000010586 diagram Methods 0.000 description 31
- 238000004364 calculation method Methods 0.000 description 28
- 238000005516 engineering process Methods 0.000 description 20
- 230000006870 function Effects 0.000 description 18
- 239000000872 buffer Substances 0.000 description 16
- 239000013598 vector Substances 0.000 description 12
- 210000005266 circulating tumour cell Anatomy 0.000 description 10
- 238000010801 machine learning Methods 0.000 description 7
- 238000013528 artificial neural network Methods 0.000 description 4
- 230000000694 effects Effects 0.000 description 4
- 230000003993 interaction Effects 0.000 description 4
- 241000282414 Homo sapiens Species 0.000 description 3
- 230000000903 blocking effect Effects 0.000 description 3
- 238000013527 convolutional neural network Methods 0.000 description 3
- 238000013459 approach Methods 0.000 description 2
- 230000001364 causal effect Effects 0.000 description 2
- 238000013135 deep learning Methods 0.000 description 2
- 238000001514 detection method Methods 0.000 description 2
- 230000003287 optical effect Effects 0.000 description 2
- 238000011160 research Methods 0.000 description 2
- 239000007787 solid Substances 0.000 description 2
- 230000004913 activation Effects 0.000 description 1
- 238000004458 analytical method Methods 0.000 description 1
- 230000003190 augmentative effect Effects 0.000 description 1
- 230000006399 behavior Effects 0.000 description 1
- 230000009286 beneficial effect Effects 0.000 description 1
- 238000004422 calculation algorithm Methods 0.000 description 1
- 238000004891 communication Methods 0.000 description 1
- 230000006835 compression Effects 0.000 description 1
- 238000007906 compression Methods 0.000 description 1
- 230000006837 decompression Effects 0.000 description 1
- 238000013461 design Methods 0.000 description 1
- 238000011161 development Methods 0.000 description 1
- 238000011156 evaluation Methods 0.000 description 1
- 238000000605 extraction Methods 0.000 description 1
- 238000009432 framing Methods 0.000 description 1
- 238000011478 gradient descent method Methods 0.000 description 1
- 230000006872 improvement Effects 0.000 description 1
- 230000001939 inductive effect Effects 0.000 description 1
- 230000002452 interceptive effect Effects 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 238000003058 natural language processing Methods 0.000 description 1
- 230000008447 perception Effects 0.000 description 1
- 238000012805 post-processing Methods 0.000 description 1
- 238000007781 pre-processing Methods 0.000 description 1
- 230000000306 recurrent effect Effects 0.000 description 1
- 230000002787 reinforcement Effects 0.000 description 1
- 230000002441 reversible effect Effects 0.000 description 1
- 238000000638 solvent extraction Methods 0.000 description 1
- 238000001228 spectrum Methods 0.000 description 1
- 230000002123 temporal effect Effects 0.000 description 1
- 238000012546 transfer Methods 0.000 description 1
- 238000013526 transfer learning Methods 0.000 description 1
- 230000009466 transformation Effects 0.000 description 1
Images
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
- 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
- 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
-
- 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/04—Segmentation; Word boundary detection
-
- 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
- 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
Landscapes
- Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- Health & Medical Sciences (AREA)
- Computational Linguistics (AREA)
- Audiology, Speech & Language Pathology (AREA)
- Human Computer Interaction (AREA)
- Acoustics & Sound (AREA)
- Multimedia (AREA)
- Artificial Intelligence (AREA)
- Signal Processing (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Theoretical Computer Science (AREA)
- Evolutionary Computation (AREA)
- Life Sciences & Earth Sciences (AREA)
- Biophysics (AREA)
- Data Mining & Analysis (AREA)
- General Health & Medical Sciences (AREA)
- Molecular Biology (AREA)
- Computing Systems (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Mathematical Physics (AREA)
- Software Systems (AREA)
- Biomedical Technology (AREA)
- Compression, Expansion, Code Conversion, And Decoders (AREA)
- Telephonic Communication Services (AREA)
Abstract
本申请公开了一种实时语音识别方法、模型训练方法、装置及设备,涉及人工智能技术领域。本申请实施例可用于人工智能、智慧交通、辅助驾驶等各种场景。所述方法包括:获取目标语音数据的待识别块的音频特征序列;复用待识别块的历史块的处理结果,对待识别块的音频特征序列进行编码处理,得到待识别块的隐层特征序列;其中,历史块是指与待识别块具有至少一个重叠的帧,且已经过编码处理的块;根据隐层特征序列,解码得到待识别块的语音识别结果。本申请减少了编码处理过程的计算量,加快了语音识别的速度,从而更好地满足实时语音识别的需求。
Description
技术领域
本申请实施例涉及人工智能技术领域,特别涉及一种实时语音识别方法、模型训练方法、装置及设备。
背景技术
语音识别是指对对象提供的语音数据进行识别,得到相应的文本数据。
语音识别一般分为实时语音识别和非实时语音识别。非实时语音识别是指系统在对象说完一句话或一段话后再进行识别,而实时语音识别是指系统在对象还在说话的时候便同步进行识别,在实时语音识别场景下识别速度和延时往往成为其实际落地的瓶颈。
在相关技术中,提供了一种端到端的实时语音识别方案。通过构建包含编码器和解码器的语音识别模型,将对象输入的语音数据的音频特征输入至编码器,由编码器对其进行编码处理得到隐层特征,然后由解码器根据上述隐层特征解码得到相应的语音识别结果。
然而,这种方式在编码处理过程中计算量较大,导致语音识别的延时较大。
发明内容
本申请实施例提供了一种实时语音识别方法、模型训练方法、装置及设备,可以解决相关技术在编码处理过程中计算量较大,导致语音识别的延时较大的技术问题。所述技术方案如下:
根据本申请实施例的一个方面,提供了一种实时语音识别方法,所述方法包括:
在采集目标语音数据的过程中,获取所述目标语音数据的待识别块的音频特征序列,所述待识别块包括所述目标语音数据中的至少两个连续的帧,所述待识别块的音频特征序列包括所述待识别块所包含的各个帧的音频特征;
复用所述待识别块对应的历史块的处理结果,对所述待识别块的音频特征序列进行编码处理,得到所述待识别块的隐层特征序列,所述隐层特征序列包括所述待识别块所包含的各个帧的隐层特征;其中,所述历史块是指与所述待识别块具有至少一个重叠的帧,且已经过编码处理的块;
根据所述隐层特征序列,解码得到所述待识别块的实时语音识别结果。
根据本申请实施例的一个方面,提供了一种实时语音识别模型的训练方法,所述方法包括:
获取样本语音数据的音频特征序列,所述音频特征序列包括所述样本语音数据的多个帧的音频特征;
将所述音频特征序列输入至所述实时语音识别模型的编码器,通过所述编码器对所述音频特征序列进行编码处理,得到所述样本语音数据的隐层特征序列,所述隐层特征序列包括所述多个帧的隐层特征;其中,所述编码器以块为单位进行编码处理,每个块包括所述多个帧中的至少两个连续的帧,且相邻两个块之间存在至少一个重叠的帧,所述编码器在对第一块进行编码处理时,复用与所述第一块具有重叠帧的至少一个第二块的处理结果;
通过所述实时语音识别模型的解码器根据所述隐层特征序列,解码得到所述样本语音数据的预测识别结果;
基于所述样本语音数据的预测识别结果和真实识别结果,对所述实时语音识别模型进行训练。
根据本申请实施例的一个方面,提供了一种实时语音识别装置,所述装置包括:
序列获取模块,用于在采集目标语音数据的过程中,获取所述目标语音数据的待识别块的音频特征序列,所述待识别块包括所述目标语音数据中的至少两个连续的帧,所述待识别块的音频特征序列包括所述待识别块所包含的各个帧的音频特征;
编码处理模块,用于复用所述待识别块对应的历史块的处理结果,对所述待识别块的音频特征序列进行编码处理,得到所述待识别块的隐层特征序列,所述隐层特征序列包括所述待识别块所包含的各个帧的隐层特征;其中,所述历史块是指与所述待识别块具有至少一个重叠的帧,且已经过编码处理的块;
解码处理模块,用于根据所述隐层特征序列,解码得到所述待识别块的实时语音识别结果。
根据本申请实施例的一个方面,提供了一种实时语音识别模型的训练装置,所述装置包括:
样本获取模块,用于获取样本语音数据的音频特征序列,所述音频特征序列包括所述样本语音数据的多个帧的音频特征;
编码处理模块,用于将所述音频特征序列输入至所述实时语音识别模型的编码器,通过所述编码器对所述音频特征序列进行编码处理,得到所述样本语音数据的隐层特征序列,所述隐层特征序列包括所述多个帧的隐层特征;其中,所述编码器以块为单位进行编码处理,每个块包括所述多个帧中的至少两个连续的帧,且相邻两个块之间存在至少一个重叠的帧,所述编码器在对第一块进行编码处理时,复用与所述第一块具有重叠帧的至少一个第二块的处理结果;
解码处理模块,用于通过所述实时语音识别模型的解码器根据所述隐层特征序列,解码得到所述样本语音数据的预测识别结果;
模型训练模块,用于基于所述样本语音数据的预测识别结果和真实识别结果,对所述实时语音识别模型进行训练。
根据本申请实施例的一个方面,提供了一种计算机设备,所述计算机设备包括处理器和存储器,所述存储器中存储有至少一条指令、至少一段程序、代码集或指令集,所述至少一条指令、所述至少一段程序、所述代码集或指令集由所述处理器加载并执行以实现上述实时语音识别方法,或者上述实时语音识别模型的训练方法。
根据本申请实施例的一个方面,提供了一种计算机可读存储介质,所述计算机可读存储介质中存储有至少一条指令、至少一段程序、代码集或指令集,所述至少一条指令、所述至少一段程序、所述代码集或指令集由处理器加载并执行以实现上述实时语音识别方法,或者上述实时语音识别模型的训练方法。
根据本申请实施例的一个方面,提供了一种计算机程序产品或计算机程序,该计算机程序产品或计算机程序包括计算机指令,该计算机指令存储在计算机可读存储介质中。计算机设备的处理器从计算机可读存储介质读取该计算机指令,处理器执行该计算机指令,使得该计算机设备执行上述实时语音识别方法,或者上述实时语音识别模型的训练方法。
本申请实施例提供的技术方案至少包括如下有益效果:
通过将目标语音数据划分为多个待识别块,在对该待识别块进行编码处理时,复用该待识别块的前一个或前几个历史块的处理结果,从而减少了编码处理过程的计算量,加快了语音识别的速度,从而更好地满足实时语音识别的需求。
附图说明
图1是本申请一个实施例提供的AED(Attention based Encoder-Decoder,基于注意力的编码器-解码器)-CTC(Connectionist Temporal Classification,联结主义时间分类)/Attention(注意力)架构的示意图;
图2是本申请一个实施例提供的基于分块(chunk)操作的实时语音识别模型的训练图;
图3是本申请一个实施例提供的实时语音识别模型在使用阶段的示意图;
图4是本申请一个实施例提供的方案实施环境的示意图;
图5是本申请一个实施例提供的目标应用程序中实时语音识别的工作流程图;
图6是本申请一个实施例提供的实时语音识别方法的流程图;
图7是本申请一个实施例提供的目标语音数据的待识别块的划分示意图;
图8是本申请另一个实施例提供的实时语音识别方法的流程图;
图9是本申请一个实施例提供的Conformer网络的结构示意图;
图10是本申请一个实施例提供的卷积模块的结构示意图;
图11是本申请一个实施例提供的多头自注意力模块的结构示意图;
图12是本申请一个实施例提供的添加了缓存区的Conformer的结构示意图;
图13是本申请一个实施例提供的自注意力机制的计算方法的示意图;
图14是本申请一个实施例提供的运用缓存区进行计算的示意图;
图15是本申请一个实施例提供的实时语音识别模型的训练方法的流程图;
图16是本申请一个实施例提供的基于掩码矩阵进行块划分的示意图;
图17是本申请一个实施例提供的实时语音识别装置的框图;
图18是本申请另一个实施例提供的实时语音识别装置的框图;
图19是本申请一个实施例提供的实时语音识别模型的训练装置的框图;
图20是本申请一个实施例提供的计算机设备的结构示意图。
具体实施方式
为使本申请的目的、技术方案和优点更加清楚,下面将结合附图对本申请实施方式作进一步地详细描述。
人工智能(Artificial Intelligence,AI)是利用数字计算机或者数字计算机控制的机器模拟、延伸和扩展人的智能,感知环境、获取知识并使用知识获得最佳结果的理论、方法、技术及应用系统。换句话说,人工智能是计算机科学的一个综合技术,它企图了解智能的实质,并生产出一种新的能以人类智能相似的方式做出反应的智能机器。人工智能也就是研究各种智能机器的设计原理与实现方法,使机器具有感知、推理与决策的功能。
人工智能技术是一门综合学科,涉及领域广泛,既有硬件层面的技术也有软件层面的技术。人工智能基础技术一般包括如传感器、专用人工智能芯片、云计算、分布式存储、大数据处理技术、操作/交互系统、机电一体化等技术。人工智能软件技术主要包括计算机视觉技术、语音处理技术、自然语言处理技术以及机器学习/深度学习等几大方向。
语音技术(Speech Technology)的关键技术有自动语音识别(Automatic SpeechRecognition,ASR)技术和语音合成(Text To Speech,TTS)技术以及声纹识别技术。让计算机能听、能看、能说、能感觉,是未来人机交互的发展方向,其中语音成为未来被看好的人机交互方式之一。
机器学习(Machine Learning,ML)是一门多领域交叉学科,涉及概率论、统计学、逼近论、凸分析、算法复杂度理论等多门学科。专门研究计算机怎样模拟或实现人类的学习行为,以获取新的知识或技能,重新组织已有的知识结构使之不断改善自身的性能。机器学习是人工智能的核心,是使计算机具有智能的根本途径,其应用遍及人工智能的各个领域。机器学习和深度学习通常包括人工神经网络、置信网络、强化学习、迁移学习、归纳学习、示教学习等技术。
本申请实施例提供的方案涉及人工智能的语音技术和机器学习等技术,具体通过如下实施例进行说明。
下面,先对相关技术提供的一种语音识别模型的架构进行说明。需要说明的是,该相关技术作为可选方案与本申请实施例的技术方案可以进行任意结合,其均属于本申请实施例的保护范围。本申请实施例包括以下内容中的至少部分内容。
该相关技术提供的语音识别模型采用AED-CTC/Attention架构。该架构示例性如图1所示,包括编码网络10、解码网络20、CTC模块30和CE(Cross Entropy,交叉熵)模块40。其中,编码网络10是对声学特征进行建模,解码网络20是联合语言特征与声学特征进行建模,CTC损失能自动学习字边界对齐,CTC的自动对齐能力可以使得文本与声学特征上有更强单调对齐关系,解码网络20可以避免长句截断等问题;而解码网络20的联合建模能力也可以使得CTC带有更丰富的文本上下文能力,拥有更强的识别能力。在基于AED-CTC/Attention的端到端实时识别系统中,编码网络10只能对截止当前时刻或包含有限未来时刻的部分音频特征进行编码,然后利用这些编码信息和历史预测来进行解码,通常的做法是对音频进行分块(chunk),在块内进行注意力(Attention)计算。
在模型训练阶段,通过CTC模块30和CE模块40两个模块分别计算训练损失,基于计算得到的训练损失对语音识别模型进行参数调整。在一些实施例中,编码网络10使用Conformer结构,解码网络20使用Transformer结构。在编码网络10的末端增加CTC模块30计算CTC损失,在解码网络20的输出端增加CE模块40计算CE损失,整个模型联合两个训练准则(即上述两个损失)进行参数更新。
在模型使用阶段,去掉解码网络20和CE模块40,只使用编码网络10和CTC模块生成声学后验概率,然后引入n元语音模型,通过搜索构建的加权有限状态转换器(WeightedFinite State Transducer,WFST)图进行解码得到识别结果。
Transformer网络是深度自注意力变换网络,也常用于指代所有类似的深度自注意力变换网络结构。Transformer网络突破了循环神经网络不能并行计算的限制,相比卷积神经网络,计算两个位置之间的关联所需的操作次数不随距离增长,自注意力可以产生更具可解释性的模型。
Conformer网络是卷积增强的Transformer网络,Conformer用卷积去加强Transformer在语音识别领域的效果。在编码端利用Transformer擅长捕捉全局特征和卷积神经网络能够有效地表示局部特征的特性,将二者融合更好地提取音频特征的全局和局部依赖性,从而加强语音识别的效果。
在一些实施例中,如图2所示,图2示例性示出了基于分块操作的实时语音识别模型的训练图,图2也是图1给出的架构图的展开图。在实时语音识别模型的训练阶段,首先将输入的语音数据21基于音频帧划分为多个块,每个块包含多个音频帧。可选地,每个块所包含的音频帧数量相同。当然在一些其他实施例中,每个块所包含的音频帧数量也可以是不同的,本申请对此不作限定。将每个块所包含的音频帧划分为历史帧、有效帧和未来帧。基于设置的有效帧帧数对输入的语音数据进行块的划分。在本申请例中,设置每个块的音频帧的数量是相同的,同时,由于块的划分是基于有效帧进行划分的,所以后一个块的历史帧必定和前一个块的有效帧部分重合,因此块与块之间存在重合部分。其中,有效帧是块中所需要被语音识别的部分,历史帧和未来帧是用来帮助语音识别块中有效帧部分的,历史帧是有效帧的前置帧,未来帧是有效帧的后置帧,通过有效帧的前置历史帧和后置未来帧帮助块中的有效帧部分进行语音识别。如图中区域22,区域22中展示了划分为多个块的语音数据,Nc所表示的是块的有效帧,Nl所表示的是块的历史帧,Nr所表示的是块的未来帧。可选地,块1的未来帧部分可以和块2的有效帧部分重合,块2的历史帧部分可以和块1的有效帧部分重合。然后通过编码器对每个块进行编码处理,分别得到每个块的隐层特征序列,将每个块的隐层特征序列拼接组合后得到语音数据对应的完整隐层特征序列。同时,为了实现解码延时可控,在编码器端采用动态的分块方式,训练每个识别结果时随机选择一组块的参数来进行分块操作。
最后,通过解码器对上述完整隐层特征序列进行解码,得到预测识别结果(如预测文本信息)。其中,基于CTC模块计算完整隐层特征序列的训练损失,对编码器进行参数调整;基于CE模块计算预测识别结果的训练损失,对编码器和解码器进行参数调整。为了保持和训练策略的一致性,当对象开始输入语音后,累积到Nl+Nc+Nr帧语音特征时才开始一个块的声学后验概率计算,最终只取出有效帧Nc帧的后验概率然后使用CTC图解码得到识别结果。
在一些实施例中,如图3所示,图3示例性示出了语音识别模型在实际使用阶段的示意图。为了加快语音识别的速度,在语音识别模型的使用阶段,通过实时输入的语音数据进行音频帧的抽取,在音频帧的数量满足一个块的音频帧数量时,将上述得到的块输入至编码器进行编码,得到该块的隐层特征序列,将该块的隐层特征序列组合后得到语音数据对应的完整隐层特征序列。最后,对上述完整隐层特征序列进行解码,得到预测文本信息。
请参考图4,其示出了本申请一个实施例提供的方案实施环境的示意图。该方案实施环境可以实现成为一种实时语音识别系统,用于对对象输入的语音数据进行识别,如实现实时语音识别的功能。该方案实施环境可以包括:模型训练设备410和模型使用设备420。其中,模型训练设备410可以是终端设备,也可以是服务器。同样的,模型使用设备420可以是终端设备,也可以是服务器。
模型训练设备410可以是诸如电脑、服务器、智能机器人等电子设备,或者是其他一些具有较强计算能力的电子设备。模型训练设备410用于对实时语音识别模型430进行训练。在本申请实施例中,实时语音识别模型430是用于对语音数据进行识别的模型,实时语音识别模型430可以包括编码器431、解码器432。模型训练设备410可以采用机器学习的方式对该语音识别模型430进行训练,以使得其具备较好的性能。
上述训练完成的实时语音识别模型430可部署在模型使用设备420中使用,以对语音数据进行识别,得到相应的识别结果(即预测文本数据)。模型使用设备420可以是诸如手机、电脑、智能电视、多媒体播放设备、可穿戴设备、医疗设备、智能语音交互设备、智能家电、车载终端设备等终端设备,也可以是服务器,本申请对此不作限定。本申请实施例可应用于各种场景,包括但不限于人工智能、智慧交通、辅助驾驶等。
终端设备可以是诸如手机、平板电脑、PC(Personal Computer,个人计算机)、可穿戴设备、车载终端设备、VR(Virtual Reality,虚拟现实)设备和AR(Augmented Reality,增强现实)设备等电子设备,本申请对此不作限定。终端设备中可以安装运行有目标应用程序的客户端。
在本申请实施例中,上述目标应用程序是指能够对对象输入的语音数据进行识别的应用程序。示例性地,该应用程序可以是输入法类应用程序、社交类应用程序、互动娱乐类应用程序、地图导航类应用程序等等对象可以输入语音数据的应用程序。
服务器可以是独立的物理服务器,也可以是多个物理服务器构成的服务器集群或分布式系统,还可以是提供云计算服务的云服务器。服务器可以是上述目标应用程序的后台服务器,用于为目标应用程序的客户端提供后台服务,例如对对象输入的语音数据进行识别并发送给客户端,在客户端中显示该语音数据对应的文本信息。可选地,语音识别也可以由客户端在本地完成,本申请对此不作限定。
可选地,上述目标应用程序可以是单独开发的独立APP(Application,应用程序),也可以是小程序,或者网页应用等其他形式的应用程序,本申请对此不作限定。
终端设备和服务器之间可以通过网络进行互相通信。
在一些实施例中,对象在目标应用程序对应的客户端中输入语音数据,该语音数据可以是对象实时输入的。目标应用程序的客户端获取到对象输入的语音数据后,将该语音数据发送至服务器中,通过服务器对语音数据进行识别,得到对应的预测文本数据。之后将识别得到的预测文本数据发送至客户端并显示在客户端中。
在一些实施例中,本申请的实时语音识别模型可用于具有不同时延需求的在线实时语音识别产品,例如语音输入法、语音笔记、车载智能语音识别、同声传译和在线直播语音识别等产品。如图5所示,图5示例性示出了目标应用程序中实时语音识别的工作流程图。对象点击按钮开始输入语音,客户端启动录音功能,通过客户端VAD(Voice ActivityDetection,语音激活检测),将有效语音段检测出,经过音频压缩编码后上传至后台服务端,服务端首先完成音频解压缩,然后通过服务端VAD进一步检测出有效语音段,将其送入服务端语音识别解码器进行识别解码,识别结果再经过后处理操作后通过网络传回客户端呈现给对象。本申请对图5中的服务端ASR解码部分进行了优化,提出了下文实施例介绍的实时语音识别模型的使用方法和训练方法。
请参考图6,其示出了本申请一个实施例提供的实时语音识别方法的流程图。该方法的执行主体可以是图1所示方案实施环境中的模型使用设备20。该方法可以包括如下几个步骤(610~630)中的至少一个步骤:
步骤610,在采集目标语音数据的过程中,获取目标语音数据的待识别块的音频特征序列,待识别块包括目标语音数据中的至少两个连续的帧,待识别块的音频特征序列包括待识别块所包含的各个帧的音频特征。
可选地,采集目标语音数据的过程和对目标语音数据进行识别的过程可以是同一个设备中进行的,例如都在终端设备中进行。可选地,采集目标语音数据的过程和对目标语音数据进行识别的过程也可以在不同的设备中进行,例如,采集目标语音数据的过程是终端设备进行的,然后终端设备将采集的目标语音数据发送给服务端,由服务端对目标语音数据进行识别。
目标语音数据是对象在客户端中提供的待识别的语音数据。例如,该目标语音数据可以是对象在客户端中实时输入或录制的语音数据,也可以是提前录制好的语音数据。通过对对象输入的语音数据进行识别,可以得到对应的文本数据。例如对象想要在客户端中输入“早上好”文本数据,则对象可以在客户端对应的语音输入区域中输入对应文本数据是“早上好”的语音数据。
目标语音数据可以按照时间进行分帧,得到多个音频帧,每个音频帧的时间是相同的。待识别块是将目标语音数据进行块(chunk)划分后的部分语音数据,根据帧数对目标语音数据进行划分,得到多个待识别块。可选地,多个待识别块所包含的帧数是相同的,每个待识别块至少包括两个连续的帧。当然,在一些其他实施例中,多个待识别块所包含的帧数也可以是不相同的,本申请对此不作限定。在本申请中,主要以多个待识别块所包含的帧数是相同的为例进行介绍说明。
在一些实施例中,待识别块包括:至少一个有效帧、位于有效帧之前的至少一个历史帧,以及位于有效帧之后的至少一个未来帧。
待识别块由有效帧,历史帧和未来帧组成。有效帧是待识别块中所要识别的音频帧,历史帧和未来帧是用于帮助提高识别结果的精确度所用的音频帧,通过有效帧与历史帧、有效帧与未来帧之间的关系,通过前后音频帧来更精确地识别出有效帧部分的识别结果。可选地,选择的有效帧和未来帧的数量越多,有效帧部分的识别结果越精确,但语音识别场景的时延就越大;选择的有效帧和未来帧的数量越少,有效帧部分的识别结果越不精确,语音识别场景的时延就越小。其中,由于待识别块的选取是根据有效帧进行选取的,所以各个块之间存在重叠部分(该重叠部分为重叠的部分音频帧)。
音频特征序列目标语音数据的待识别块的各个帧所对应的音频特征的集合,对于待识别块的每一帧,通过将各个帧对应的音频特征组合生成音频特征序列。音频特征用于表示音频帧的语义特征,音频特征可以通过音频帧对应的波形图得到,通过对音频帧对应的波形图进行频率、相位、幅度、梅尔频谱倒数等特征的计算,得到音频帧对应的音频特征。
在一些实施例中,如图7所示,图7示例性示出了目标语音数据的待识别块的划分示意图。假设输入的目标语音数据70的音频帧数量为20帧,且待识别块中设置的有效帧为4帧,历史帧为8帧,未来帧为4帧,则可以将输入的目标语音数据70划分为5个块,各个块的帧数依次为:8帧、12帧、16帧、16帧和12帧,如图中的块71、72、73、74和75所示。其中,块71只拥有4个有效帧和4个未来帧,块72拥有4个历史帧、4个有效帧和4个未来帧,块73和74都拥有8个历史帧、4个有效帧和4个未来帧,块75拥有8个历史帧和4个有效帧。其中,各个块之间存在重合部分,例如块71的未来帧部分和块72的有效帧部分重合,块72的历史帧部分和块71的有效帧部分重合。
在实际语音识别过程中,为了减少语音识别过程的延时,在获取目标语音数据时,实时获取目标语音数据的音频帧。在音频帧的数量满足一个块的音频帧的数量时,获取该块。同样的,在音频帧数量满足下一个块的音频帧的数量时,获取下一个块。
在一些实施例中,假设块中设置的有效帧为4帧,历史帧为8帧,未来帧为4帧。在获取到音频帧的数量为8帧时,获取第一个块,第一个块拥有4个有效帧和4个未来帧,第一个块由第1~8帧组成;在获取的音频帧的数量为8个基础上,再获取到音频帧的数量为4帧时,获取第二个块,第二个块拥有4个历史帧、4个有效帧和4个未来帧,第二个块由第1~12帧组成;在获取的音频帧的数量为12帧基础上,再获取到音频帧的数量为4帧时,获取第三个块,第三个块拥有8个历史帧、4个有效帧和4个未来帧,第三个块由第1~16帧组成。依次类推,第四个块由第5~20帧组成。其中,第一个块需要获取的音频帧数量为设置的有效帧数量加未来帧数量,后续的块的获取条件为再获取的音频帧数量为设置的有效帧数量。
步骤620,复用待识别块对应的历史块的处理结果,对待识别块的音频特征序列进行编码处理,得到待识别块的隐层特征序列,隐层特征序列包括待识别块所包含的各个帧的隐层特征;其中,历史块是指与待识别块具有至少一个重叠的帧,且已经过编码处理的块。
如图7所示,以块73为待处理块为例,在处理待识别块73时,此时块71和块72已被处理。对待识别块73的有效帧部分进行编码处理时,需要同时考虑待识别块73的历史帧部分和未来帧部分。而此时待识别块73的历史帧部分为块71的有效帧部分和块72的有效帧部分,此时块71和块72都为待识别块73的历史块。同时,块71和块72的有效帧部分已经处理完毕,因此可以直接使用块71和块72的有效帧部分的处理结果,来对待识别块73进行编码处理。
隐层特征序列是对目标语音数据对应的音频特征序列进行编码处理后的结果,编码处理是对音频特征序列划分出的各个待识别块中的有效帧部分进行编码处理,基于待识别块中的历史帧、有效帧和未来帧对有效帧部分进行编码处理,得到有效帧对应的隐层特征。各个待识别块的有效帧对应的编码处理后的隐层特征组合后生成隐层特征序列。
隐层特征与音频特征相对应,音频特征是音频帧未经编码处理时的特征,隐层特征是音频帧经过编码处理后的特征。
在一些实施例中,如图7所示,对目标语音数据进行编码处理,首先对待识别块71进行编码处理,基于待识别块71的4个有效帧和4个未来帧,得到待识别块71中4个有效帧对应的隐层特征。接着对待识别块72进行编码处理,基于待识别块72的4个历史帧、4个有效帧和4个未来帧,得到待识别块72中4个有效帧对应的隐层特征。其中,当块72是待识别块时,待识别块72的4个历史帧也就是块71的有效帧部分,也就是块71为待识别块72的历史块。在已经计算得到块71的4个有效帧的计算结果时,在编码处理待识别块72时,就不用再重复计算该4个音频帧了。同样的,对于块73、74和75也是如此,在此不再赘述。
在一些实施例中,基于当前语音识别场景的时延需求,确定有效帧和未来帧的数量。
时延用于表示语音识别场景的延时,时延包含首字时延和尾字时延,首字时延表示用户输入语音数据到得到第一个识别字所需要的时间,尾字时延表示用户输入语音数据到得到最后一个识别字所需要的时间。实时率是处理一段语音数据所要的时间除以该段语音数据的时间所得到的计算结果,实时率表示的是解码识别速度,实时率越小,表示解码识别速度越快,相应的时延也就越小。例如,如果处理一段长度为2小时的音频花了8个小时,则实时率为8/2=4。经实验评估,本申请中的实时语音识别模型的时延能够在500ms以内、解码实时率0.5左右,达到了很高的识别准确率。
上述编码处理中,通过对历史块的复用,无需重复对历史块中音频帧的进行计算,从而节约了对待识别块中对历史帧进行计算所需要的时间。因此,对于待识别块识别过程中,在对象获取到音频帧的数量满足历史帧+有效帧+未来帧时,获取第一个待识别块,并对该待识别块进行识别,得到对应的识别结果并显示在对象的客户端中。其中,通过调整未来帧的数量,来调整历史帧+有效帧+未来帧的帧数总和,相当于调整了获取第一个待识别块所需要的时间,相当于调整了对象在客户端中看到部分实时语音识别结果所需要的时间。
通过调整有效帧和未来帧的数量,来控制客户端中显示部分实时语音识别结果所需要的时间。可以根据对象的需求来进行有效帧和未来帧数量的调整,增加了实时语音识别功能的多样性和灵活性。
步骤630,根据隐层特征序列,解码得到待识别块的实时语音识别结果。
在一些实施例中,根据编码得到的隐层特征序列,通过对隐层特征序列进行解码,得到预测识别结果。
在本申请实施例中,通过将目标语音数据划分为多个待识别块,在对该待识别块进行编码处理时,复用该待识别块的前一个或前几个历史块的处理结果,从而减少了编码处理过程的计算量,加快了语音识别的速度,从而更好地满足实时语音识别的需求。
请参考图8,其示出了本申请另一个实施例提供的实时语音识别方法的流程图。该方法的执行主体可以是图1所示方案实施环境中的模型使用设备20。该方法可以包括如下几个步骤(810~840)中的至少一个步骤:
步骤810,在采集目标语音数据的过程中,获取目标语音数据的待识别块的音频特征序列,待识别块包括目标语音数据中的至少两个连续的帧,待识别块的音频特征序列包括待识别块所包含的各个帧的音频特征。
步骤820,从缓存区存储的数据中,获取历史块的处理结果。
缓存区是用于存储历史块的处理结果的区域,缓存区中存储有待识别块的历史块对应的有效帧计算结果。可选地,缓存区中存储的有效帧计算结果的数量与设置的历史帧数量相同。
步骤830,通过实时语音识别模型的编码器根据历史块的处理结果,对待识别块的音频特征序列进行编码处理,得到待识别块的隐层特征序列。
实时语音识别模型是用于对语音数据进行实时语音识别的模型,对于实时语音识别模型的结构在下文实施例中介绍。例如,实时语音识别模型可以是基于神经网络构建的模型。可选地,实时语音识别模型包括编码器(或称为编码网络)和解码器(或称为解码网络)。其中,编码器用于对输入的音频特征进行编码处理,得到隐层特征;解码器用于对隐层特征进行解码处理,得到语音识别结果。
需要说明的是,上文图5示出的服务端ASR解码部分,是指服务端执行本申请实施例提供的实时语音识别方法的完整流程,例如获取目标语音数据的待识别块的音频特征序列,然后通过实时语音识别模型的编码器根据待识别块对应的历史块的处理结果,对待识别块的音频特征序列进行编码处理,得到待识别块的隐层特征序列,之后再通过服务端CTC-WFST解码器的解码器根据隐层特征序列,解码得到待识别块的实时语音识别结果。
实时语音识别模型在对待识别块进行编码处理时,可以使用缓存区中的历史块的处理结果来帮助后续待识别块进行编码处理。进一步地,当获取到最新计算得到的有效帧的计算结果时,覆盖掉缓存区中相对最早存储进来的有效帧的计算结果。
在一些实施例中,结合参考图7,对目标语音数据进行编码处理,首先对块71进行编码处理,此时块71为待识别块,基于待识别块71的4个有效帧和4个未来帧,得到待识别块71中4个有效帧对应的隐层特征,将该4个有效帧对应的隐层特征存储在缓存区中。接着对块72进行编码处理,基于待识别块72的4个历史帧、4个有效帧和4个未来帧,得到待识别块72中4个有效帧对应的隐层特征。其中,当块72是待识别块时,待识别块72的4个历史帧也就是块71的有效帧部分,也就是块71为待识别块72的历史块。此时,可以从缓存区中获取该4个有效帧对应的隐层特征,也就不用再计算该4个音频帧了。
步骤840,根据隐层特征序列,解码得到待识别块的实时语音识别结果。
步骤810和步骤840已在上文实施例中介绍,在此不再赘述。
在一些实施例中,编码器包括n个串联的编码层,n为大于1的整数。编码层包括多头自注意力模块和卷积模块,多头自注意力模块用于采用多头自注意力机制对输入的特征序列进行处理,卷积模块用于对输入的特征序列进行卷积处理。相应地,缓存区包括第一缓存区和第二缓存区,第一缓存区用于存储多头自注意力模块针对历史块的处理结果,第二缓存区用于存储卷积模块针对历史块的处理结果。
第一缓存区和第二缓存区的功能相同,都是对模块的输出结果进行存储,不同的是,第一缓存区存储的是多头自注意力模块中的处理结果,第二缓存区存储的是卷积模块中的处理结果。
在一些实施例中,编码层还包括第一前馈模块、第二前馈模块和层归一化模块。第一前馈模块也就是前馈模块(Feed Forward Module,简称为FFM),用于对输入特征序列进行前馈处理,得到第一中间特征序列。多头自注意力模块(Multi-Head Self AttentionModule,简称为MHSA)用于采用多头自注意力机制对第一中间特征序列进行处理,得到第二中间特征序列。卷积模块(Convolution Module)用于对第二中间特征序列进行卷积处理,得到第三中间特征序列。第二前馈模块与上一个前馈模块相同,用于对第三中间特征序列进行前馈处理,得到第四中间特征序列。层归一化模块(Layernorm)用于对第四中间特征序列进行归一化处理,得到输出特征序列。
在一些实施例中,如图9所示,图9示例性示出了Conformer网络的结构图,Conformer首先对输入的特征序列进行预处理,包括数据增强模块(SqecAug)910、卷积下采样模块(Convolution Subsampling)920、排列模块(Linear)930和去除模块(Dropout)940,得到预处理后的特征序列。然后将特征序列输入至编码模块950中进行编码处理,编码模块950拥有多层编码层,每层编码层的结构相同,可选地,每层编码层的结构也可以不同。在本实施例中,每层编码层的结构相同,都为图2中区域960所示的结构图。如区域960中所示,编码层由多层组成:第一前馈模块961、多头自注意力模块962、卷积模块963、第二前馈模块964和层归一化模块965,对于每个模块的介绍在下文实施例中。编码模块950所拥有的编码层的数量可以是4层,也可以是6层,本申请对此不作限定。其中,第一前馈模块961的输出结果是第一中间特征序列,将第一中间特征序列输入至多头自注意力模块962得到第二中间特征序列,将第二中间特征序列输入至卷积模块963得到第三中间特征序列,将第三中间特征序列输入至第二前馈模块964得到第四中间特征序列,将第四中间特征序列输入至层归一化模块965得到输出特征序列。其计算公式如下所示:
x″i=x′i+Conv(x′i)
其中,FFN是前馈模块,MHSA是多头自注意力机制模块,Conv是卷积模块,Layernorm是层归一化模块。
在一些实施例中,如图10所示,图10示例性示出了卷积模块的结构示意图。卷积模块通过多层结构组成,通过层归一化模块,三个卷积模块、两个激活函数模块、加速神经网络训练混合暂时去除模块组成。其中,第一卷积模块和第三卷积模块是相同的卷积模块,都是Pointwise卷积模块,只改变特征图的数量而不改变特征图大小,第二卷积模块是Depthwise卷积模块,指改变特征图的大小,不改变通道的数量。
在一些实施例中,如图11所示,图11示例性示出了多头自注意力模块的结构示意图。图11中(a)部分是多头自注意力模块的结构示意图,图11中(b)部分是(a)部分中的缩放后的注意力机制的展开结构图。对于自注意力机制的计算方法在下文中介绍。
在一些实施例中,如图12所示,图12示例性示出了添加了缓存区的Conformer的结构示意图。图12中在多头自注意力模块962和卷积模块963前都添加了缓存区,在多头自注意力模块962前添加了第一缓存区121,在卷积模块963前添加了第二缓存区122。
在一些实施例中,如图13所示,图13示例性示出了自注意力机制的计算方法示意图。注意力机制和编码过程不同,它是一个求各个输入之间的关联度的过程。因此,在本申请中,通过采用自注意力机制获取历史帧或未来帧与有效帧之间的关联度,来对有效帧的识别结果进行预测。
首先,如图13所示,从上述第一前馈模块的历史帧或未来帧和有效帧第一中间特征序列作为注意力机制的输入,其中,将历史帧的前馈结果设为a1,有效帧的前馈结果设为a2,未来帧的前馈结果设为a3。
接着,将向量a1,a2,a3分别乘上三个不同的嵌入转换矩阵Wq,Wk,Wv,分别得到不同的向量q,k,v,其中以a1为例,就可以得到三个向量q1,k1,v1。其中,q代表的是查询向量,k代表的是键向量,v代表的是信息提取向量。
然后,以a1为例,使用向量q1与向量k1相乘,就是一个注意力匹配的过程,其中,为了防止数值过大,要进行归一化的过程,将向量q1与向量k1相乘后,要除以得到α1.1,以此类推,可以得到α1.2,α1.3。其中d是q和k的维度,维度通常的理解是:“点是0维、直线是1维、平面是2维、体是3维”。通过这个过程可以得出内积向量α1.i。
其次,我们将得到的内积向量α1.i进行softmax函数操作,该元素的softmax函数值,就是该元素的指数与所有元素指数和的比值。以α1.1为例,它的softmax函数操作就是将α1.1的指数除以α1.1的指数,α1.2的指数,α1.3的指数的总和。为α1.i进行softmax函数操作后的值。
之后,将得到的与vi相乘,具体来说,把乘上v1,把乘上v2,把乘上v3,把得到的结果相加得到b1,其中b1就是最后的输出结果,以此类推,可以得到b2,b3。其中,b1即为历史帧和有效帧之间的第二中间特征序列,b3即为未来帧和有效帧之间的第二中间特征序列。
在一些实施例中,卷积模块用于对当前帧的第二中间特征和当前帧的至少一个历史帧的第二中间特征进行卷积处理,得到当前帧的第三中间特征。
为了减少语音识别过程中的样式,Conformer里的卷积模块使用因果卷积,如果卷积核数是15的话,需要利用历史14帧和当前帧来预测当前帧的卷积输出。
设计缓存机制如下:每个块在计算卷积模块之前,把当前块的有效帧Nc部分的最后14帧进行缓存,下一个块计算卷积模块之前把这部分缓存拿来当作历史帧来使用。
在一些实施例中,如图14所示,图14中L部分为上一个块中缓存的自注意力计算结果,显而易见的,每个块在计算第二中间特征序列时Query维度是C,Key维度是L+C,在多头自注意力机制中,Key维度的C和Query维度的C是同源的,都是在当前块内计算的,但L不是在当前块计算,而是复用上一个块计算时缓存在第一缓存区中的中间结果,一般L是C的n倍。
在本申请实施例中,通过设置第一缓存区和第二缓存区,对已经计算完的块的计算结果进行存储,并将其运用于后续计算中,通过复用计算结果,减少了计算量,节约了计算时间。
另外,还通过在卷积模块中不对未来帧进行卷积,减少了计算量,节约了计算时间,减少了语音识别过程的时延。
请参考图15,其示出了本申请一个实施例提供的实时语音识别模型的训练方法的流程图。该方法的执行主体可以是图1所示方案实施环境中的模型训练设备10。该方法可以包括如下几个步骤(1510~1540)中的至少一个步骤:
步骤1510,获取样本语音数据的音频特征序列,音频特征序列包括样本语音数据的多个帧的音频特征。
样本语音数据是用来训练实时语音识别模型的语音数据,样本语音数据对应有真实识别结果,真实识别结果是样本语音数据所要表达的准确识别结果。
获取样本语音数据,按照时间对样本语音数据进行分帧,得到多个音频帧。获取各个帧的音频特征,整合得到样本语音数据的音频特征序列。
步骤1520,将音频特征序列输入至实时语音识别模型的编码器,通过编码器对音频特征序列进行编码处理,得到样本语音数据的隐层特征序列,隐层特征序列包括多个帧的隐层特征;其中,编码器以块为单位进行编码处理,每个块包括多个帧中的至少两个连续的帧,且相邻两个块之间存在至少一个重叠的帧,编码器在对第一块进行编码处理时,复用与第一块具有重叠帧的至少一个第二块的处理结果。
第一块是正在编码处理的待识别块,第二块是已经编码处理完成的待识别块。当第二块和第一块存在重叠部分(该重叠部分为重叠的部分音频帧)时,可以复用第二块的处理结果来帮助第一块进行编码处理。
与模型使用过程不同的是,在模型训练过程中,不再实时获取待识别块,而是将整个音频特征序列输入至编码器中。例如,在样本语音数据为10帧的数据时,将该10帧全部输入至编码器中;又如在样本语音数据为20帧的数据时,将该20帧全部输入至编码器中。在编码器中,对音频特征序列进行分块,生成与多个块。对各个块进行编码处理,得到各个块的有效帧部分对应的隐层特征。同样的,由于各个块存在重叠,可以像上述实施例一样,在对后续待识别块进行编码处理时,复用历史块中的有效帧部分的计算结果,节约计算时间。
可选地,编码器根据掩码矩阵确定各个块所包含的帧;其中,掩码矩阵包括多组元素,每组元素用于指示一个块所包含的帧,每组元素中通过两种不同的数值来区分一个块中包含和不包含的帧。
当编码器使用Transformer或Conformer结构时,Transformer或Conformer结构中拥有多头自注意力模块。在多头自注意力模块中通过掩码(Mask)矩阵的方式对语音数据进行块的划分。如图16所示,图16示例性示出了掩码矩阵进行块的划分时的示意图。图13中仅显示了块的有效帧和历史帧部分,其中,设置的块的有效帧为2帧,历史帧为4帧,如图16中(a)部分所示,1表示的是掩码矩阵关注的音频帧,0表示的是掩码矩阵未关注的音频帧。各个实线框表示的是各个块,其中每个块的右边4个1为有效帧部分,剩下部分都为历史帧部分。如图16中(b)部分所示,Mask矩阵竖轴代表Query(查询)(Q)方向,横轴代表Key(关键词)(K)方向。具体的多头自注意力模块的计算公式如下:
MultiHead(Q,K,V)=Concat(headi,…,headh)Wo
headi=Attention(QWi Q,KWi K,VWi V)
其中,图16是描述的QK^T这部分矩阵计算,Q是m×n维矩阵,K是k×n维矩阵,T代表矩阵的转置,QK^T矩阵计算结果是一个m×k维的矩阵,描述的是Query的每一帧和Key的每一帧之间的关联系数(程度)。
在一些实施例中,编码器包括n个串联的编码层,n为大于1的整数,步骤1520包括:
将音频特征序列输入至编码器的第1个编码层,通过第1个编码层对音频特征序列进行编码处理,得到第1个编码层的输出特征序列;
对于编码器的第i个编码层,将第i-1个编码层的输出特征序列输入至第i个编码层,通过第i个编码层对第i-1个编码层的输出特征序列进行编码处理,得到第i个编码层的输出特征序列;其中,第i个编码层在对第一块进行编码处理时,复用至少一个第二块在第i-1个编码层的输出特征,i为大于1且小于或等于n的整数;
其中,编码器的第n个编码层的输出特征序列,作为隐层特征序列。
可选地,第1个编码层所确定的块,包括:至少一个有效帧、位于有效帧之前的至少一个历史帧,以及位于有效帧之后的至少一个未来帧;第i个编码层所确定的块,包括:至少一个有效帧,以及位于有效帧之前的至少一个历史帧。
对于模型训练阶段,在编码过程中,仅对第1个编码层的块中有效帧编码处理时考虑未来帧,在后续第i个编码层中,仅对块的历史帧和有效帧进行编码处理。因为在编码过程如果对所有编码层中的块的未来帧进行编码处理,会产生大量的时延,其时延会远大于Nc+n*Nr。如果仅对第1层编码层中的块的未来帧进行编码处理时,所产生的时延仅为Nc+Nr,相比上述编码方法所产生的时延小很多,降低了实时语音识别系统的时延。同时,只在第一层conformer关注未来帧,其他层只关注有限历史帧和当前有效帧,这样就可以直观且灵活地控制语音识别系统的延时。
可选地,上述编码层包括:第一前馈模块、多头自注意力模块、卷积模块、第二前馈模块和层归一化模块;
第一前馈模块用于对输入特征序列进行前馈处理,得到第一中间特征序列;
多头自注意力模块用于采用多头自注意力机制对第一中间特征序列进行处理,得到第二中间特征序列;
卷积模块用于对第二中间特征序列进行卷积处理,得到第三中间特征序列;
第二前馈模块用于对第三中间特征序列进行前馈处理,得到第四中间特征序列;
层归一化模块用于对第四中间特征序列进行归一化处理,得到输出特征序列。
对于Conformer编码层的介绍已在上文实施例中介绍,在此不再赘述。
可选地,卷积模块用于对当前帧的第二中间特征和当前帧的至少一个历史帧的第二中间特征进行卷积处理,得到当前帧的第三中间特征。
为了减少语音识别过程中的样式,Conformer里的卷积模块使用因果卷积,如果卷积的系统内核核数是15的话,需要利用历史14帧和当前帧来预测当前帧的卷积输出。
步骤1530,通过实时语音识别模型的解码器根据隐层特征序列,解码得到样本语音数据的预测识别结果。
根据得到的隐层特征序列,通过解码器对隐层特征序列进行解码,得到样本语音数据的预测识别结果。可选地,上述编码器可以是Transformer编码器。
步骤1540,基于样本语音数据的预测识别结果和真实识别结果,对实时语音识别模型进行训练。
根据真实文本数据和预测文本数据,确定实时语音识别模型的训练损失,并基于训练损失调整实时语音识别模型的网络参数。实时语音识别模型的训练损失用于衡量预测识别结果和真实识别结果差距,可选地,基于训练损失采用梯度下降法调整模型参数,最终得到完成训练的实时语音识别模型。
在本申请实施例中,通过对语音数据整句训练而不是对语音数据分块训练,并通过掩码矩阵来进行分块处理,从而加快了模型训练速度,提高了语音识别模型的训练效率。另外,在对第一块进行编码处理时,通过复用第一块具有重叠帧的至少一个第二块的处理结果,来进行第一块的编码处理,减少了计算量和计算时间,进一步加快了模型训练速度,提高了语音识别模型的训练效率。
另外,通过在第二层编码层及其后续编码层中不对未来帧进行编码处理,减少了实时语音识别模型训练的时延。
下述为本申请装置实施例,可以用于执行本申请方法实施例。对于本申请装置实施例中未披露的细节,请参照本申请方法实施例。
请参考图17,其示出了本申请一个实施例提供的实时语音识别装置的框图。该装置具有实现上述实时语音识别方法的功能,所述功能可以由硬件实现,也可以由硬件执行相应的软件实现。该装置可以是上文介绍的模型使用设备,也可以设置在模型使用设备中。该装置1700可以包括:序列获取模块1710、编码处理模块1720和解码处理模块1730。
序列获取模块1710,用于在采集目标语音数据的过程中,获取所述目标语音数据的待识别块的音频特征序列,所述待识别块包括所述目标语音数据中的至少两个连续的帧,所述待识别块的音频特征序列包括所述待识别块所包含的各个帧的音频特征。
编码处理模块1720,用于复用所述待识别块对应的历史块的处理结果,对所述待识别块的音频特征序列进行编码处理,得到所述待识别块的隐层特征序列,所述隐层特征序列包括所述待识别块所包含的各个帧的隐层特征;其中,所述历史块是指与所述待识别块具有至少一个重叠的帧,且已经过编码处理的块。
解码处理模块1730,用于根据所述隐层特征序列,解码得到所述待识别块的实时语音识别结果。
在一些实施例中,如图18所示,所述编码处理模块1720包括:缓存结果获取单元1721和编码处理单元1722。
缓存结果获取单元1721,用于从缓存区存储的数据中,获取所述历史块的处理结果。
编码处理单元1722,用于通过实时语音识别模型的编码器根据所述历史块的处理结果,对所述待识别块的音频特征序列进行编码处理,得到所述待识别块的隐层特征序列。
在一些实施例中,所述编码器包括n个串联的编码层,n为大于1的整数;
所述编码层包括多头自注意力模块和卷积模块,所述多头自注意力模块用于采用多头自注意力机制对输入的特征序列进行处理,所述卷积模块用于对输入的特征序列进行卷积处理;
所述缓存区包括第一缓存区和第二缓存区,所述第一缓存区用于存储所述多头自注意力模块针对所述历史块的处理结果,所述第二缓存区用于存储所述卷积模块针对所述历史块的处理结果。
在一些实施例中,所述编码层还包括第一前馈模块、第二前馈模块和层归一化模块;
所述第一前馈模块用于对输入特征序列进行前馈处理,得到第一中间特征序列;
所述多头自注意力模块用于采用多头自注意力机制对所述第一中间特征序列进行处理,得到第二中间特征序列;
所述卷积模块用于对所述第二中间特征序列进行卷积处理,得到第三中间特征序列;
所述第二前馈模块用于对所述第三中间特征序列进行前馈处理,得到第四中间特征序列;
所述层归一化模块用于对所述第四中间特征序列进行归一化处理,得到输出特征序列。
在一些实施例中,所述卷积模块用于对当前帧的第二中间特征和所述当前帧的至少一个历史帧的第二中间特征进行卷积处理,得到所述当前帧的第三中间特征。
在一些实施例中,所述待识别块包括:至少一个有效帧、位于所述有效帧之前的至少一个历史帧,以及位于所述有效帧之后的至少一个未来帧。
在一些实施例中,如图18所示,所述装置还包括:未来帧确定模块1740。
未来帧确定模块1740,用于基于当前语音识别场景的时延需求,确定所述未来帧的数量。
在本申请实施例中,通过将目标语音数据划分为多个待识别块,在对该待识别块进行编码处理时,复用该待识别块的前一个或前几个历史块的处理结果,从而减少了编码处理过程的计算量,加快了语音识别的速度,从而更好地满足实时语音识别的需求。
请参考图19,其示出了本申请一个实施例提供的实时语音识别模型的训练装置的框图。该装置具有实现上述实时语音识别模型的训练方法的功能,所述功能可以由硬件实现,也可以由硬件执行相应的软件实现。该装置可以是上文介绍的模型训练设备,也可以设置在模型训练设备中。该装置1900可以包括:样本获取模块1910、编码处理模块1920、解码处理模块1930和模型训练模块1940。
样本获取模块1910,用于获取样本语音数据的音频特征序列,所述音频特征序列包括所述样本语音数据的多个帧的音频特征。
编码处理模块1920,用于将所述音频特征序列输入至所述实时语音识别模型的编码器,通过所述编码器对所述音频特征序列进行编码处理,得到所述样本语音数据的隐层特征序列,所述隐层特征序列包括所述多个帧的隐层特征;其中,所述编码器以块为单位进行编码处理,每个块包括所述多个帧中的至少两个连续的帧,且相邻两个块之间存在至少一个重叠的帧,所述编码器在对第一块进行编码处理时,复用与所述第一块具有重叠帧的至少一个第二块的处理结果。
解码处理模块1930,用于通过所述实时语音识别模型的解码器根据所述隐层特征序列,解码得到所述样本语音数据的预测识别结果。
模型训练模块1940,用于基于所述样本语音数据的预测识别结果和真实识别结果,对所述实时语音识别模型进行训练。
在一些实施例中,所述编码器包括n个串联的编码层,n为大于1的整数,所述编码处理模块1920用于:
将所述音频特征序列输入至所述编码器的第1个编码层,通过所述第1个编码层对所述音频特征序列进行编码处理,得到所述第1个编码层的输出特征序列;
对于所述编码器的第i个编码层,将第i-1个编码层的输出特征序列输入至所述第i个编码层,通过所述第i个编码层对所述第i-1个编码层的输出特征序列进行编码处理,得到所述第i个编码层的输出特征序列;其中,所述第i个编码层在对所述第一块进行编码处理时,复用所述至少一个第二块在所述第i-1个编码层的输出特征,i为大于1且小于或等于n的整数;
其中,所述编码器的第n个编码层的输出特征序列,作为所述隐层特征序列。
在一些实施例中,所述第1个编码层所确定的块,包括:至少一个有效帧、位于所述有效帧之前的至少一个历史帧,以及位于所述有效帧之后的至少一个未来帧;所述第i个编码层所确定的块,包括:至少一个有效帧,以及位于所述有效帧之前的至少一个历史帧。
在一些实施例中,所述编码层包括:第一前馈模块、多头自注意力模块、卷积模块、第二前馈模块和层归一化模块;
所述第一前馈模块用于对输入特征序列进行前馈处理,得到第一中间特征序列;
所述多头自注意力模块用于采用多头自注意力机制对所述第一中间特征序列进行处理,得到第二中间特征序列;
所述卷积模块用于对所述第二中间特征序列进行卷积处理,得到第三中间特征序列;
所述第二前馈模块用于对所述第三中间特征序列进行前馈处理,得到第四中间特征序列;
所述层归一化模块用于对所述第四中间特征序列进行归一化处理,得到输出特征序列。
在一些实施例中,所述卷积模块用于对当前帧的第二中间特征和所述当前帧的至少一个历史帧的第二中间特征进行卷积处理,得到所述当前帧的第三中间特征。
在一些实施例中,所述编码器根据掩码矩阵确定各个所述块所包含的帧;其中,所述掩码矩阵包括多组元素,每组元素用于指示一个块所包含的帧,每组元素中通过两种不同的数值来区分一个块中包含和不包含的帧。
在本申请实施例中,在对第一块进行编码处理时,通过复用第一块具有重叠帧的至少一个第二块的处理结果,来进行第一块的编码处理,较少了计算量和计算时间,从而加快了模型训练速度,提高了语音识别模型的训练效率。
需要说明的是,上述实施例提供的装置,在实现其功能时,仅以上述各功能模块的划分进行举例说明,实际应用中,可以根据需要而将上述功能分配由不同的功能模块完成,即将设备的内部结构划分成不同的功能模块,以完成以上描述的全部或者部分功能。另外,上述实施例提供的装置与方法实施例属于同一构思,其具体实现过程详见方法实施例,这里不再赘述。
请参考图20,其示出了本申请一个实施例提供的计算机设备的结构示意图。该计算机设备可以是任何具备数据计算、处理和存储功能的电子设备,如手机、平板电脑、PC(Personal Computer,个人计算机)或服务器等。该计算机设备可以实现成为模型使用设备,用于实施上述实施例中提供的实时语音识别方法;或,该计算机设备可以实现成为模型训练设备,用于实施上述实施例中提供的实时语音识别模型的训练方法。具体来讲:
该计算机设备2000包括中央处理单元(如CPU(Central Processing Unit,中央处理器)、GPU(Graphics Processing Unit,图形处理器)和FPGA(Field Programmable GateArray,现场可编程逻辑门阵列)等)2001、包括RAM(Random-Access Memory,随机存取存储器)2002和ROM(Read-Only Memory,只读存储器)2003的系统存储器2004,以及连接系统存储器2004和中央处理单元2001的系统总线2005。该计算机设备2000还包括帮助服务器内的各个器件之间传输信息的基本输入/输出系统(Input Output System,I/O系统)2006,和用于存储操作系统2013、应用程序2014和其他程序模块2015的大容量存储设备2007。
该基本输入/输出系统2006包括有用于显示信息的显示器2008和用于对象输入信息的诸如鼠标、键盘之类的输入设备2009。其中,该显示器2008和输入设备2009都通过连接到系统总线2005的输入输出控制器2010连接到中央处理单元2001。该基本输入/输出系统2006还可以包括输入输出控制器2010以用于接收和处理来自键盘、鼠标、或电子触控笔等多个其他设备的输入。类似地,输入输出控制器2010还提供输出到显示屏、打印机或其他类型的输出设备。
该大容量存储设备2007通过连接到系统总线2005的大容量存储控制器(未示出)连接到中央处理单元2001。该大容量存储设备2007及其相关联的计算机可读介质为计算机设备2000提供非易失性存储。也就是说,该大容量存储设备2007可以包括诸如硬盘或者CD-ROM(Compact Disc Read-Only Memory,只读光盘)驱动器之类的计算机可读介质(未示出)。
不失一般性,该计算机可读介质可以包括计算机存储介质和通信介质。计算机存储介质包括以用于存储诸如计算机可读指令、数据结构、程序模块或其他数据等信息的任何方法或技术实现的易失性和非易失性、可移动和不可移动介质。计算机存储介质包括RAM、ROM、EPROM(Erasable Programmable Read-Only Memory,可擦写可编程只读存储器)、EEPROM(Electrically Erasable Programmable Read-Only Memory,电可擦写可编程只读存储器)、闪存或其他固态存储技术,CD-ROM、DVD(Digital Video Disc,高密度数字视频光盘)或其他光学存储、磁带盒、磁带、磁盘存储或其他磁性存储设备。当然,本领域技术人员可知该计算机存储介质不局限于上述几种。上述的系统存储器2004和大容量存储设备2007可以统称为存储器。
根据本申请实施例,该计算机设备2000还可以通过诸如因特网等网络连接到网络上的远程计算机运行。也即计算机设备2000可以通过连接在该系统总线2005上的网络接口单元2011连接到网络2012,或者说,也可以使用网络接口单元2011来连接到其他类型的网络或远程计算机系统(未示出)。
存储器还包括至少一条指令、至少一段程序、代码集或指令集,该至少一条指令、至少一段程序、代码集或指令集存储于存储器中,且经配置以由一个或者一个以上处理器执行,以实现上述实时语音识别方法或实时语音识别模型的训练方法。
在示例性实施例中,还提供了一种计算机可读存储介质,存储介质中存储有至少一条指令、至少一段程序、代码集或指令集,至少一条指令、至少一段程序、代码集或指令集在被计算机设备的处理器执行时实现上述实施例提供的实时语音识别方法或实时语音识别模型的训练方法。
可选地,该计算机可读存储介质可以包括:ROM(Read-Only Memory,只读存储器)、RAM(Random-Access Memory,随机存储器)、SSD(Solid State Drives,固态硬盘)或光盘等。其中,随机存取记忆体可以包括ReRAM(Resistance Random Access Memory,电阻式随机存取记忆体)和DRAM(Dynamic Random Access Memory,动态随机存取存储器)。
在示例性实施例中,还提供了一种计算机程序产品或计算机程序,计算机程序产品或计算机程序包括计算机指令,计算机指令存储在计算机可读存储介质中。计算机设备的处理器从计算机可读存储介质中读取计算机指令,处理器执行计算机指令,使得计算机设备执行上述实时语音识别方法或实时语音识别模型的训练方法。
应当理解的是,在本文中提及的“多个”是指两个或两个以上。“和/或”,描述关联对象的关联关系,表示可以存在三种关系,例如,A和/或B,可以表示:单独存在A,同时存在A和B,单独存在B这三种情况。字符“/”一般表示前后关联对象是一种“或”的关系。另外,本文中描述的步骤编号,仅示例性示出了步骤间的一种可能的执行先后顺序,在一些其它实施例中,上述步骤也可以不按照编号顺序来执行,如两个不同编号的步骤同时执行,或者两个不同编号的步骤按照与图示相反的顺序执行,本申请实施例对此不作限定。
以上仅为本申请的示例性实施例,并不用以限制本申请,凡在本申请的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本申请的保护范围之内。
Claims (18)
1.一种实时语音识别方法,其特征在于,所述方法包括:
在采集目标语音数据的过程中,获取所述目标语音数据的待识别块的音频特征序列,所述待识别块包括所述目标语音数据中的至少两个连续的帧,所述待识别块的音频特征序列包括所述待识别块所包含的各个帧的音频特征;
复用所述待识别块对应的历史块的处理结果,对所述待识别块的音频特征序列进行编码处理,得到所述待识别块的隐层特征序列,所述隐层特征序列包括所述待识别块所包含的各个帧的隐层特征;其中,所述历史块是指与所述待识别块具有至少一个重叠的帧,且已经过编码处理的块;
根据所述隐层特征序列,解码得到所述待识别块的实时语音识别结果。
2.根据权利要求1所述的方法,其特征在于,所述复用所述待识别块的历史块的处理结果,对所述待识别块的音频特征序列进行编码处理,得到所述待识别块的隐层特征序列,包括:
从缓存区存储的数据中,获取所述历史块的处理结果;
通过实时语音识别模型的编码器根据所述历史块的处理结果,对所述待识别块的音频特征序列进行编码处理,得到所述待识别块的隐层特征序列。
3.根据权利要求2所述的方法,其特征在于,所述编码器包括n个串联的编码层,n为大于1的整数;
所述编码层包括多头自注意力模块和卷积模块,所述多头自注意力模块用于采用多头自注意力机制对输入的特征序列进行处理,所述卷积模块用于对输入的特征序列进行卷积处理;
所述缓存区包括第一缓存区和第二缓存区,所述第一缓存区用于存储所述多头自注意力模块针对所述历史块的处理结果,所述第二缓存区用于存储所述卷积模块针对所述历史块的处理结果。
4.根据权利要求3所述的方法,其特征在于,所述编码层还包括第一前馈模块、第二前馈模块和层归一化模块;
所述第一前馈模块用于对输入特征序列进行前馈处理,得到第一中间特征序列;
所述多头自注意力模块用于采用多头自注意力机制对所述第一中间特征序列进行处理,得到第二中间特征序列;
所述卷积模块用于对所述第二中间特征序列进行卷积处理,得到第三中间特征序列;
所述第二前馈模块用于对所述第三中间特征序列进行前馈处理,得到第四中间特征序列;
所述层归一化模块用于对所述第四中间特征序列进行归一化处理,得到输出特征序列。
5.根据权利要求4所述的方法,其特征在于,所述卷积模块用于对当前帧的第二中间特征和所述当前帧的至少一个历史帧的第二中间特征进行卷积处理,得到所述当前帧的第三中间特征。
6.根据权利要求1至5任一项所述的方法,其特征在于,所述待识别块包括:至少一个有效帧、位于所述有效帧之前的至少一个历史帧,以及位于所述有效帧之后的至少一个未来帧。
7.根据权利要求6所述的方法,其特征在于,所述方法还包括:
基于当前语音识别场景的时延需求,确定所述未来帧的数量。
8.一种实时语音识别模型的训练方法,其特征在于,所述方法包括:
获取样本语音数据的音频特征序列,所述音频特征序列包括所述样本语音数据的多个帧的音频特征;
将所述音频特征序列输入至所述实时语音识别模型的编码器,通过所述编码器对所述音频特征序列进行编码处理,得到所述样本语音数据的隐层特征序列,所述隐层特征序列包括所述多个帧的隐层特征;其中,所述编码器以块为单位进行编码处理,每个块包括所述多个帧中的至少两个连续的帧,且相邻两个块之间存在至少一个重叠的帧,所述编码器在对第一块进行编码处理时,复用与所述第一块具有重叠帧的至少一个第二块的处理结果;
通过所述实时语音识别模型的解码器根据所述隐层特征序列,解码得到所述样本语音数据的预测识别结果;
基于所述样本语音数据的预测识别结果和真实识别结果,对所述实时语音识别模型进行训练。
9.根据权利要求8所述的方法,其特征在于,所述编码器包括n个串联的编码层,n为大于1的整数;
所述将所述音频特征序列输入至所述实时语音识别模型的编码器,通过所述编码器对所述音频特征序列进行编码处理,得到所述样本语音数据的隐层特征序列,包括:
将所述音频特征序列输入至所述编码器的第1个编码层,通过所述第1个编码层对所述音频特征序列进行编码处理,得到所述第1个编码层的输出特征序列;
对于所述编码器的第i个编码层,将第i-1个编码层的输出特征序列输入至所述第i个编码层,通过所述第i个编码层对所述第i-1个编码层的输出特征序列进行编码处理,得到所述第i个编码层的输出特征序列;其中,所述第i个编码层在对所述第一块进行编码处理时,复用所述至少一个第二块在所述第i-1个编码层的输出特征,i为大于1且小于或等于n的整数;
其中,所述编码器的第n个编码层的输出特征序列,作为所述隐层特征序列。
10.根据权利要求9所述的方法,其特征在于,
所述第1个编码层所确定的块,包括:至少一个有效帧、位于所述有效帧之前的至少一个历史帧,以及位于所述有效帧之后的至少一个未来帧;
所述第i个编码层所确定的块,包括:至少一个有效帧,以及位于所述有效帧之前的至少一个历史帧。
11.根据权利要求9所述的方法,其特征在于,所述编码层包括:第一前馈模块、多头自注意力模块、卷积模块、第二前馈模块和层归一化模块;
所述第一前馈模块用于对输入特征序列进行前馈处理,得到第一中间特征序列;
所述多头自注意力模块用于采用多头自注意力机制对所述第一中间特征序列进行处理,得到第二中间特征序列;
所述卷积模块用于对所述第二中间特征序列进行卷积处理,得到第三中间特征序列;
所述第二前馈模块用于对所述第三中间特征序列进行前馈处理,得到第四中间特征序列;
所述层归一化模块用于对所述第四中间特征序列进行归一化处理,得到输出特征序列。
12.根据权利要求11所述的方法,其特征在于,所述卷积模块用于对当前帧的第二中间特征和所述当前帧的至少一个历史帧的第二中间特征进行卷积处理,得到所述当前帧的第三中间特征。
13.根据权利要求8至12任一项所述的方法,其特征在于,所述编码器根据掩码矩阵确定各个所述块所包含的帧;其中,所述掩码矩阵包括多组元素,每组元素用于指示一个块所包含的帧,每组元素中通过两种不同的数值来区分一个块中包含和不包含的帧。
14.一种实时语音识别装置,其特征在于,所述装置包括:
序列获取模块,用于在采集目标语音数据的过程中,获取所述目标语音数据的待识别块的音频特征序列,所述待识别块包括所述目标语音数据中的至少两个连续的帧,所述待识别块的音频特征序列包括所述待识别块所包含的各个帧的音频特征;
编码处理模块,用于复用所述待识别块对应的历史块的处理结果,对所述待识别块的音频特征序列进行编码处理,得到所述待识别块的隐层特征序列,所述隐层特征序列包括所述待识别块所包含的各个帧的隐层特征;其中,所述历史块是指与所述待识别块具有至少一个重叠的帧,且已经过编码处理的块;
解码处理模块,用于根据所述隐层特征序列,解码得到所述待识别块的实时语音识别结果。
15.一种实时语音识别模型的训练装置,其特征在于,所述装置包括:
样本获取模块,用于获取样本语音数据的音频特征序列,所述音频特征序列包括所述样本语音数据的多个帧的音频特征;
编码处理模块,用于将所述音频特征序列输入至所述实时语音识别模型的编码器,通过所述编码器对所述音频特征序列进行编码处理,得到所述样本语音数据的隐层特征序列,所述隐层特征序列包括所述多个帧的隐层特征;其中,所述编码器以块为单位进行编码处理,每个块包括所述多个帧中的至少两个连续的帧,且相邻两个块之间存在至少一个重叠的帧,所述编码器在对第一块进行编码处理时,复用与所述第一块具有重叠帧的至少一个第二块的处理结果;
解码处理模块,用于通过所述实时语音识别模型的解码器根据所述隐层特征序列,解码得到所述样本语音数据的预测识别结果;
模型训练模块,用于基于所述样本语音数据的预测识别结果和真实识别结果,对所述实时语音识别模型进行训练。
16.一种计算机设备,其特征在于,所述计算机设备包括处理器和存储器,所述存储器中存储有至少一条指令、至少一段程序、代码集或指令集,所述至少一条指令、所述至少一段程序、所述代码集或指令集由所述处理器加载并执行以实现如权利要求1至7任一项所述的方法,或者实现如权利要求8至13任一项所述的方法。
17.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质中存储有至少一条指令、至少一段程序、代码集或指令集,所述至少一条指令、所述至少一段程序、所述代码集或指令集由处理器加载并执行以实现如权利要求1至7任一项所述的方法,或者实现如权利要求8至13任一项所述的方法。
18.一种计算机程序产品,其特征在于,所述计算机程序产品包括计算机指令,所述计算机指令存储在计算机可读存储介质中,处理器从所述计算机可读存储介质中读取并执行所述计算机指令,以实现如权利要求1至7任一项所述的方法,或者实现如权利要求8至13任一项所述的方法。
Priority Applications (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202210253123.0A CN114596841A (zh) | 2022-03-15 | 2022-03-15 | 实时语音识别方法、模型训练方法、装置及设备 |
PCT/CN2022/142596 WO2023173890A1 (zh) | 2022-03-15 | 2022-12-28 | 实时语音识别方法、模型训练方法、装置、设备及存储介质 |
US18/384,009 US20240062744A1 (en) | 2022-03-15 | 2023-10-26 | Real-time voice recognition method, model training method, apparatuses, device, and storage medium |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202210253123.0A CN114596841A (zh) | 2022-03-15 | 2022-03-15 | 实时语音识别方法、模型训练方法、装置及设备 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN114596841A true CN114596841A (zh) | 2022-06-07 |
Family
ID=81808903
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202210253123.0A Pending CN114596841A (zh) | 2022-03-15 | 2022-03-15 | 实时语音识别方法、模型训练方法、装置及设备 |
Country Status (3)
Country | Link |
---|---|
US (1) | US20240062744A1 (zh) |
CN (1) | CN114596841A (zh) |
WO (1) | WO2023173890A1 (zh) |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2023173890A1 (zh) * | 2022-03-15 | 2023-09-21 | 腾讯科技(深圳)有限公司 | 实时语音识别方法、模型训练方法、装置、设备及存储介质 |
CN116913266A (zh) * | 2023-09-13 | 2023-10-20 | 腾讯科技(深圳)有限公司 | 一种语音检测方法、装置、设备及存储介质 |
CN117275484A (zh) * | 2023-11-17 | 2023-12-22 | 深圳市友杰智新科技有限公司 | 命令词识别方法、装置、设备和介质 |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20190189111A1 (en) * | 2017-12-15 | 2019-06-20 | Mitsubishi Electric Research Laboratories, Inc. | Method and Apparatus for Multi-Lingual End-to-End Speech Recognition |
CN110619871A (zh) * | 2018-06-20 | 2019-12-27 | 阿里巴巴集团控股有限公司 | 语音唤醒检测方法、装置、设备以及存储介质 |
CN113362812A (zh) * | 2021-06-30 | 2021-09-07 | 北京搜狗科技发展有限公司 | 一种语音识别方法、装置和电子设备 |
CN113889076A (zh) * | 2021-09-13 | 2022-01-04 | 北京百度网讯科技有限公司 | 语音识别及编解码方法、装置、电子设备及存储介质 |
Family Cites Families (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111696526B (zh) * | 2020-06-22 | 2021-09-10 | 北京达佳互联信息技术有限公司 | 语音识别模型的生成方法、语音识别方法、装置 |
CN114023309A (zh) * | 2020-07-15 | 2022-02-08 | 阿里巴巴集团控股有限公司 | 语音识别系统、相关方法、装置及设备 |
CN114596841A (zh) * | 2022-03-15 | 2022-06-07 | 腾讯科技(深圳)有限公司 | 实时语音识别方法、模型训练方法、装置及设备 |
-
2022
- 2022-03-15 CN CN202210253123.0A patent/CN114596841A/zh active Pending
- 2022-12-28 WO PCT/CN2022/142596 patent/WO2023173890A1/zh unknown
-
2023
- 2023-10-26 US US18/384,009 patent/US20240062744A1/en active Pending
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20190189111A1 (en) * | 2017-12-15 | 2019-06-20 | Mitsubishi Electric Research Laboratories, Inc. | Method and Apparatus for Multi-Lingual End-to-End Speech Recognition |
CN110619871A (zh) * | 2018-06-20 | 2019-12-27 | 阿里巴巴集团控股有限公司 | 语音唤醒检测方法、装置、设备以及存储介质 |
CN113362812A (zh) * | 2021-06-30 | 2021-09-07 | 北京搜狗科技发展有限公司 | 一种语音识别方法、装置和电子设备 |
CN113889076A (zh) * | 2021-09-13 | 2022-01-04 | 北京百度网讯科技有限公司 | 语音识别及编解码方法、装置、电子设备及存储介质 |
Non-Patent Citations (1)
Title |
---|
XIE CHEN ET AL: "《DEVELOPING REAL-TIME STREAMING TRANSFORMER TRANSDUCER FOR SPEECH RECOGNITION ON LARGE-SCALE DATASET》", ARXIV, 29 December 2021 (2021-12-29) * |
Cited By (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2023173890A1 (zh) * | 2022-03-15 | 2023-09-21 | 腾讯科技(深圳)有限公司 | 实时语音识别方法、模型训练方法、装置、设备及存储介质 |
CN116913266A (zh) * | 2023-09-13 | 2023-10-20 | 腾讯科技(深圳)有限公司 | 一种语音检测方法、装置、设备及存储介质 |
CN116913266B (zh) * | 2023-09-13 | 2024-01-05 | 腾讯科技(深圳)有限公司 | 一种语音检测方法、装置、设备及存储介质 |
CN117275484A (zh) * | 2023-11-17 | 2023-12-22 | 深圳市友杰智新科技有限公司 | 命令词识别方法、装置、设备和介质 |
CN117275484B (zh) * | 2023-11-17 | 2024-02-20 | 深圳市友杰智新科技有限公司 | 命令词识别方法、装置、设备和介质 |
Also Published As
Publication number | Publication date |
---|---|
WO2023173890A1 (zh) | 2023-09-21 |
US20240062744A1 (en) | 2024-02-22 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN109874029B (zh) | 视频描述生成方法、装置、设备及存储介质 | |
US11069345B2 (en) | Speech recognition using convolutional neural networks | |
CN111930992B (zh) | 神经网络训练方法、装置及电子设备 | |
CN114596841A (zh) | 实时语音识别方法、模型训练方法、装置及设备 | |
JP2022530785A (ja) | 画像処理方法、装置、電子機器及びコンピュータプログラム | |
CA3036067A1 (en) | Generating audio using neural networks | |
CN110234018B (zh) | 多媒体内容描述生成方法、训练方法、装置、设备及介质 | |
CN112989120B (zh) | 一种视频片段查询系统和视频片段查询方法 | |
CN112804558B (zh) | 视频拆分方法、装置及设备 | |
CN114390218A (zh) | 视频生成方法、装置、计算机设备和存储介质 | |
CN113987269A (zh) | 数字人视频生成方法、装置、电子设备和存储介质 | |
CN110795549A (zh) | 短文本对话方法、装置、设备及存储介质 | |
CN114360502A (zh) | 语音识别模型的处理方法、语音识别方法及装置 | |
CN113782042B (zh) | 语音合成方法、声码器的训练方法、装置、设备及介质 | |
CN111444379A (zh) | 音频的特征向量生成方法及音频片段表示模型的训练方法 | |
CN116071811A (zh) | 人脸信息验证方法及装置 | |
CN115937516A (zh) | 一种图像语义分割方法、装置、存储介质及终端 | |
CN114360490B (zh) | 语音合成方法、装置、计算机设备和存储介质 | |
CN115205760A (zh) | 基于深度局部自注意力网络的视频密集描述生成方法 | |
CN114373443A (zh) | 语音合成方法和装置、计算设备、存储介质及程序产品 | |
CN113762056A (zh) | 演唱视频识别方法、装置、设备及存储介质 | |
CN113593600B (zh) | 混合语音分离方法和装置、存储介质及电子设备 | |
CN117373455B (zh) | 一种音视频的生成方法、装置、设备及存储介质 | |
CN114898741B (zh) | 基于层重要度排序和rnn降维的轻量化语音识别方法及系统 | |
US20230419082A1 (en) | Improved Processing of Sequential Data via Machine Learning Models Featuring Temporal Residual Connections |
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 |