CN115527525A - 语音识别模型生成方法、语音交互方法、车辆和存储介质 - Google Patents
语音识别模型生成方法、语音交互方法、车辆和存储介质 Download PDFInfo
- Publication number
- CN115527525A CN115527525A CN202211477169.7A CN202211477169A CN115527525A CN 115527525 A CN115527525 A CN 115527525A CN 202211477169 A CN202211477169 A CN 202211477169A CN 115527525 A CN115527525 A CN 115527525A
- Authority
- CN
- China
- Prior art keywords
- operator
- model
- recognition model
- module
- network model
- 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.)
- Granted
Links
- 238000000034 method Methods 0.000 title claims abstract description 108
- 230000003993 interaction Effects 0.000 title claims abstract description 36
- 238000012545 processing Methods 0.000 claims abstract description 138
- 230000001537 neural effect Effects 0.000 claims abstract description 60
- 239000013598 vector Substances 0.000 claims description 59
- 238000012549 training Methods 0.000 claims description 50
- 230000007246 mechanism Effects 0.000 claims description 34
- 238000010606 normalization Methods 0.000 claims description 34
- 239000011159 matrix material Substances 0.000 claims description 28
- 230000008569 process Effects 0.000 claims description 23
- 230000008707 rearrangement Effects 0.000 claims description 18
- 238000013139 quantization Methods 0.000 claims description 16
- 230000009466 transformation Effects 0.000 claims description 15
- 238000004590 computer program Methods 0.000 claims description 14
- 230000000694 effects Effects 0.000 abstract description 20
- 230000004044 response Effects 0.000 abstract description 13
- 230000008901 benefit Effects 0.000 abstract description 5
- 238000010586 diagram Methods 0.000 description 23
- 238000004364 calculation method Methods 0.000 description 16
- 238000013528 artificial neural network Methods 0.000 description 11
- 230000005012 migration Effects 0.000 description 8
- 238000013508 migration Methods 0.000 description 8
- 238000006243 chemical reaction Methods 0.000 description 7
- 230000006870 function Effects 0.000 description 6
- 230000004048 modification Effects 0.000 description 4
- 238000012986 modification Methods 0.000 description 4
- 230000003068 static effect Effects 0.000 description 4
- 238000012360 testing method Methods 0.000 description 4
- 238000002054 transplantation Methods 0.000 description 3
- 230000004913 activation Effects 0.000 description 2
- 238000004422 calculation algorithm Methods 0.000 description 2
- 238000013135 deep learning Methods 0.000 description 2
- 238000013461 design Methods 0.000 description 2
- 238000003062 neural network model Methods 0.000 description 2
- 230000035945 sensitivity Effects 0.000 description 2
- 238000013519 translation Methods 0.000 description 2
- 239000003086 colorant Substances 0.000 description 1
- 238000010276 construction Methods 0.000 description 1
- 238000013136 deep learning model Methods 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 238000002372 labelling Methods 0.000 description 1
- 230000007774 longterm Effects 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 238000011056 performance test Methods 0.000 description 1
- 230000017105 transposition 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/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/16—Speech classification or search using artificial neural networks
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02T—CLIMATE CHANGE MITIGATION TECHNOLOGIES RELATED TO TRANSPORTATION
- Y02T10/00—Road transport of goods or passengers
- Y02T10/10—Internal combustion engine [ICE] based vehicles
- Y02T10/40—Engine management systems
Landscapes
- Engineering & Computer Science (AREA)
- Artificial Intelligence (AREA)
- Computational Linguistics (AREA)
- Health & Medical Sciences (AREA)
- Audiology, Speech & Language Pathology (AREA)
- Human Computer Interaction (AREA)
- Physics & Mathematics (AREA)
- Acoustics & Sound (AREA)
- Multimedia (AREA)
- Evolutionary Computation (AREA)
- Machine Translation (AREA)
Abstract
本发明公开了一种语音识别模型生成方法、语音交互方法、车辆和存储介质。该语音识别模型的生成方法包括:获取训练好的网络模型;将网络模型中的预设算子进行算子替换处理,以将预设算子替换为神经处理引擎支持的算子,从而根据算子替换处理后的网络模型生成用于部署在神经处理引擎的语音识别模型。本发明的语音识别模型生成方法通过将训练好的网络模型中的预设算子进行算子替换处理,从而将预设算子替换为神经处理引擎支持的算子,从而根据算子替换处理后的网络模型生成用于部署在神经处理引擎的语音识别模型,使得运用该语音识别模型进行语音识别能够达到满意的语音识别效果,实现流式识别的极速对话响应效果。
Description
技术领域
本发明涉及语音交互技术领域,特别涉及一种语音识别模型生成方法、语音交互方法、车辆和存储介质。
背景技术
车载人机交互是智能汽车的重要特点,而语音识别是车载人机交互不可或缺的模块。考虑到车载人机交互场景的特殊性,车载语音识别模块主要包含声学模型和语言模型两部分。现阶段,车载语音识别基本都是基于云端的语音识别系统。
云端语音识别存在两个致命问题:①响应灵敏度受移动信号强弱的干扰;②移动信号的灵敏度&覆盖度影响响应性能。这两个问题都会极大影响用户的使用体验。
因此,如何实现快速的本地极速对话响应是车载语音交互亟待解决的问题,即如何将基于深度学习的端到端神经网络声学模型在相关处理软件的处理器上执行高效、快速且准确地计算,以实现流式识别的极速对话响应效果是车载语音交互亟待解决的问题。
发明内容
本发明实施方式提供一种语音识别模型生成方法、语音交互方法、车辆和存储介质。
本发明实施方式提供一种语音识别模型的生成方法。所述语音识别模型的生成方法包括:获取训练好的网络模型;将所述网络模型中的预设算子进行算子替换处理,以将所述预设算子替换为神经处理引擎支持的算子,从而根据算子替换处理后的网络模型生成用于部署在所述神经处理引擎的语音识别模型。
如此,本发明的语音识别模型生成方法通过将训练好的网络模型中的预设算子进行算子替换处理,从而将预设算子替换为神经处理引擎支持的算子,从而根据算子替换处理后的网络模型生成用于部署在神经处理引擎的语音识别模型,使得运用该语音识别模型进行语音识别能够达到满意的语音识别效果,实现流式识别的极速对话响应效果。
所述将所述网络模型中的预设算子进行算子替换处理,以将所述预设算子替换为神经处理引擎支持的算子,从而根据算子替换处理后的网络模型生成用于部署在所述神经处理引擎的语音识别模型的步骤,包括:将所述网络模型的处理模块中的多头注意力机制子模块的线性变换算子转换为二维卷积算子;替换所述多头注意力机制子模块的概率归一化单元,以使所述概率归一化单元对每个头的矩阵做概率归一化并拼接得到概率归一化结果;为所述多头注意力机制子模块设置历史缓存向量,以使所述多头注意力机制子模块对输入向量以及历史缓存向量与所述输入向量的拼接结果进行处理得到输出向量。
如此,对多头注意力机制子模块进行算子替换,能够确保网络模型的训练与推理的一致性。
所述将所述网络模型中的预设算子进行算子替换处理,以将所述预设算子替换为神经处理引擎支持的算子,从而根据算子替换处理后的网络模型生成用于部署在所述神经处理引擎的语音识别模型的步骤,包括:将所述网络模型的处理模块中的前馈网络子模块的线性变换算子转换为二维卷积算子;设置第一重排单元对所述前馈网络子模块的输入进行重排;设置第二重排单元对所述前馈网络子模块的输出进行重排。
如此,可以实现对前馈网络子模块的算子替换,确保生成的语音识别模型能够在相关芯片的数字信号处理过程进行快速推理。
所述将所述网络模型中的预设算子进行算子替换处理,以将所述预设算子替换为神经处理引擎支持的算子,从而根据算子替换处理后的网络模型生成用于部署在所述神经处理引擎的语音识别模型的步骤,包括:设置第三重排单元对所述网络模型的处理模块中的样本标准化子模块的输入进行重排;设置第四重排单元对所述样本标准化子模块的输出进行重排。
如此,本发明通过对于网络模型的处理模块中的样本标准化子模块(LayerNorm)中进行算子替换,可以确保生成的语音识别模型能够在相关芯片的数字信号处理过程进行快速推理。
在所述获取训练好的网络模型的步骤之前,所述生成方法包括:获取训练语音数据;利用所述训练语音数据对预设模型进行训练得到训练输出数据;根据所述训练语音数据修正所述预设模型的参数得到训练好的所述网络模型。
如此,本发明通过预先收集的大量训练语音数据对预设模型进行训练,并进行网络参数修正,得到训练好的网络模型,能够确保训练好的网络模型可以拟合现有的数据分布。
在所述将所述网络模型中的预设算子进行算子替换处理,以将所述预设算子替换为神经处理引擎支持的算子,从而根据算子替换处理后的网络模型生成用于部署在所述神经处理引擎的语音识别模型的步骤之后,所述生成方法包括:对所述语音识别模型进行模型量化,以减小所述语音识别模型的占用空间。
如此,本发明的语音识别模型的生成方法在对算子替换后生成的语音识别模型,还需要进行模型量化,从而减小生成的语音识别模型的占用空间。
所述生成方法还包括:将模型量化后的所述语音识别模型移植部署到采用所述神经处理引擎的车辆。
本发明的语音识别模型的生成方法在语音识别模型生成后,可以通过模型转换移植模块将模型量化后的语音识别模型移植部署到采用神经处理引擎的车辆,从而实现车辆语音的流式识别。
本发明还提供一种语音交互方法。基于上述实施方式中任一项所述的语音识别模型的生成方法生成的语音识别模型,所述语音交互方法包括:获取车辆座舱内用户输入的用户语音数据;利用所述语音识别模型对所述用户语音数据进行处理得到用户语音请求,以完成语音交互。
本发明的语音交互方法通过应用上述的语音识别模型生成方法生成的语音识别模型对用户语音数据进行处理得到用户语音请求,能够达到满意的语音识别效果,实现流式识别的极速对话响应效果。
本发明还提供一种车辆。所述车辆包括处理器和存储器,所述存储器上存储有计算机程序,当所述计算机程序被所述处理器执行时,实现上述实施方式中任一项的语音识别模型的生成方法或上述实施方式中所述的语音交互方法。
如此,本发明的车辆应用上述语音识别模型生成方法或语音交互方法通过将训练好的网络模型中的预设算子进行算子替换处理,从而将预设算子替换为神经处理引擎支持的算子,从而根据算子替换处理后的网络模型生成用于部署在神经处理引擎的语音识别模型,使得运用该语音识别模型进行语音识别能够达到满意的语音识别效果,实现流式识别的极速对话响应效果。
本发明还提供一种计算机可读存储介质。所述计算机可读存储介质存储有计算机程序,当所述计算机程序被一个或多个处理器执行时,实现上述实施方式中任一项的语音识别模型的生成方法或上述实施方式中所述的语音交互方法。
如此,本发明的存储介质应用上述语音识别模型生成方法或语音交互方法通过将训练好的网络模型中的预设算子进行算子替换处理,从而将预设算子替换为神经处理引擎支持的算子,从而根据算子替换处理后的网络模型生成用于部署在神经处理引擎的语音识别模型,使得运用该语音识别模型进行语音识别能够达到满意的语音识别效果,实现流式识别的极速对话响应效果。
本发明实施方式的附加方面和优点将在下面的描述中部分给出,部分将从下面的描述中变得明显,或通过本发明的实践了解到。
附图说明
本发明的上述和/或附加的方面和优点可以从结合下面附图对实施方式的描述中将变得明显和容易理解,其中:
图1是本发明的语音识别模型的生成方法的流程示意图之一;
图2是本发明的网络模型在相关芯片中的训练和移植过程的示意图;
图3是本发明的声学模型结构的示意图;
图4是本发明的神经处理引擎推理的流程示意图;
图5是本发明的语音识别模型的生成方法的流程示意图之二;
图6是本发明的网络模型中的多头注意力机制子模块在算子替换之前的内部结构示意图;
图7是本发明的网络模型中的多头注意力机制子模块在算子替换之后的内部结构示意图;
图8是本发明的网络模型中的多头注意力机制子模块中采用循环静态缓存方法的简单示意图;
图9是本发明的初始时刻的多头注意力机制模块的计算过程的示意图;
图10是本发明的语音识别模型的生成方法的流程示意图之三;
图11是本发明的网络模型中的前馈网络子模块在算子替换及修改之前的内部结构示意图及输入输出示意图;
图12是本发明的网络模型中的前馈网络子模块在算子替换及修改之后的内部结构示意图及输入输出示意图;
图13是本发明的语音识别模型的生成方法的流程示意图之四;
图14是本发明的网络模型中的样本标准化子模块在算子替换之前的内部结构示意图;
图15是本发明的网络模型中的样本标准化子模块在算子替换之后的内部结构示意图;
图16是本发明的语音识别模型的生成方法的流程示意图之五;
图17是本发明的语音交互方法的流程示意图。
具体实施方式
下面详细描述本发明的实施方式,所述实施方式的示例在附图中示出,其中,相同或类似的标号自始至终表示相同或类似的元件或具有相同或类似功能的元件。下面通过参考附图描述的实施方式是示例性的,仅用于解释本发明的实施方式,而不能理解为对本发明的实施方式的限制。
可以理解地,端到端语音识别是目前主流的语音识别方法,基于链接时序分类(Connectionist Temporal Classification,CTC)的端到端语音识别的基本流程如下:
1)大规模训练语音和标注信息采集:数据的覆盖度是语音识别性能的重要前提。
2)深度学习模型构建与训练学习:设计神经网络模型以及训练准则,通过反向传播算法迭代修正网络参数,使之拟合训练数据的分布。
3)端到端解码:端到端解码包含前缀束搜索和集束搜索等,结合加权有限状态机(Weighted Finite-State Transducers, WFST),可以得到更好的识别性能。
如何将基于深度学习的端到端神经网络声学模型在相关处理软件的处理器上执行高效、快速且准确的计算,以实现流式识别的极速对话响应效果是车载语音交互亟待解决的问题。
有鉴于此,请参阅图1,本发明提供一种语音识别模型的生成方法。该语音识别模型的生成方法包括:
01:获取训练好的网络模型;
03:将网络模型中的预设算子进行算子替换处理,以将预设算子替换为神经处理引擎支持的算子,从而根据算子替换处理后的网络模型生成用于部署在神经处理引擎的语音识别模型。
本发明还提供一种车辆。车辆包括处理器和存储器,存储器上存储有计算机程序,处理器用于:获取训练好的网络模型;将网络模型中的预设算子进行算子替换处理,以将预设算子替换为神经处理引擎支持的算子,从而根据算子替换处理后的网络模型生成用于部署在神经处理引擎的语音识别模型。
具体地,训练好的网络模型由多个小的模块组成,每个小模块又由前馈网络子模块(Feedforward Module)、多头注意力机制子模块(Multi-head self Attention Module,MHA)和卷积子模块(Convolution Module)三部分组成,每个部分均有残差链接。
其中,多头注意力机制子模块是该网络模型的核心模块。语音的长时相关性决定了当前时刻的信息与历史或者未来时刻的信息都有关系,因此需要设计的网络具有上下文的时序建模能力才能达到满意的识别效果。而多头注意力机制的设计使得网络具有了时序建模的能力。
网络模型的计算公式可以包括下面4个式子:
其中,xi是指网络输入,第一个公式中的FFN(xi)代表第一个FeedForward模块的计算。第二个公式中的MHA是 Multi-Head self Attention模块的缩写,代表第二个模块(多头注意力机制子模块)的计算。以此类推,后续模块的计算由第三、四个公式给出,即第三个公式中的Conv是Convolution Module模块的缩写,代表第三个模块(卷积子模块)的计算,第四个公式中的样本标准化(Layernotm)子模块是嵌入在上述三个模块里面的,第四个公式代表第四个模块(样本标准化模块)的计算。
可以理解地,网络模型在相关芯片中的训练和移植过程如图2所示。结合图2的神经处理引擎的训练和移植过程的示意图,下面对车载系统的端到端流式识别的方案的每个模块做出详细说明:
1)网络模型设计:针对不同任务,设计不同的神经网络进行分类。
2)模型训练学习模块:结合设计的神经网络、大规模数据样本以及训练准则,修正网络参数,使之拟合现有的数据分布。
3)模型测试模块:用部分数据对损失函数已经收敛的模型进行性能测试,看能否达到性能要求。
4)模型转换移植模块:将满足性能要求的模型转换成目标平台支持的网络结构。
5)量化模块:模型量化可以大幅减小模型占用空间。
6)推理模块:将完成转换的模型一直到平台进行高效快速的神经网络推理。
7)解码模块:利用网络推理输出的结果,结合加权有限状态机(Weighted Finite-State Transducers, WFST),通过维特比的算法得到流式识别的文本信息。
本申请的技术方案主要对网络训练测试模块和模型转换移植模块两个重要模块做出了改进。
对于网络训练测试模块,该模块通过开源框架(pytorch、caffe、tensorflow等)进行神经网络声学模型迭代训练。模型收敛之后进行网络的前向推理测试,直至满足网络的性能满足分类要求。本方案所涉及的声学模型(Conformer)结构如图3所示。
对于模型转换移植模块,该模型转换移植是将神经网络转成相关神经处理引擎支持的神经网络的格式。
可以理解地,由于神经处理引擎支持的网络结构和算子有限,因此如何将声学模型的神经网络模型成功转换成神经处理引擎支持的模型并且在模型中进行数字信号处理(Digital Signal Processing,DSP)是需要解决的技术问题。
为了确保在模型转换移植阶段成功,如图4所示,在网络模型的设计阶段,需要利用已有算子搭建声学模型(Conformer)的网络结构,并实现前向过程的正确计算。也即是,将网络模型中的预设算子进行算子替换处理,以将预设算子替换为神经处理引擎支持的算子,从而根据算子替换处理后的网络模型生成用于部署在神经处理引擎的语音识别模型。
其中,预设算子可以为上述已训练好的网络模型的多个小的模块中所涉及的任何神经处理引擎不支持的算子,对所有的算子均需替换为神经处理引擎支持的算子。
如此,本发明的语音识别模型生成方法通过将训练好的网络模型中的预设算子进行算子替换处理,从而将预设算子替换为神经处理引擎支持的算子,从而根据算子替换处理后的网络模型生成用于部署在神经处理引擎的语音识别模型,使得运用该语音识别模型进行语音识别能够达到满意的语音识别效果,实现流式识别的极速对话响应效果。
对于网络模型的处理模块中的多头注意力机制子模块(Multi Head SelfAttention,MHA)中的算子替换,请参阅图5,步骤03包括:
031:将网络模型的处理模块中的多头注意力机制子模块的线性变换算子转换为二维卷积算子;
032:替换多头注意力机制子模块的概率归一化单元,以使概率归一化单元对每个头的矩阵做概率归一化并拼接得到概率归一化结果;
033:为多头注意力机制子模块设置历史缓存向量,以使多头注意力机制子模块对输入向量以及历史缓存向量与输入向量的拼接结果进行处理得到输出向量。
处理器用于将网络模型的处理模块中的多头注意力机制子模块的线性变换算子转换为二维卷积算子;替换多头注意力机制子模块的概率归一化单元,以使概率归一化单元对每个头的矩阵做概率归一化并拼接得到概率归一化结果;为多头注意力机制子模块设置历史缓存向量,以使多头注意力机制子模块对输入向量以及历史缓存向量与输入向量的拼接结果进行处理得到输出向量。
如图1所示,多头注意力机制子模块是实现Conformer时序建模能力的核心模块。多头注意力机制子模块中的输入的语音向量的计算公式如下所示:
其中,Attention(Q,K,V)是多头注意力机制子模块中的输入的语音向量,Q:[n,dk],表示n个Query,每个Query为维度为dk的向量;K:[m,dv],表示m个Key,每个Key为维度为dv的向量;V:[m,dv],表示m个Value,每个Value为维度为dv的向量。K和V是以Key-Value对的形式出现的,Key中的每个向量与Value中的每个向量一一对应。
多头注意力机制子模块的内部结构示意图如图6所示。其中,图6中的输入是语音向量,经过线性变换之后得到Q、K、V,然后Q、K、V再通过矩阵相乘、因子放缩等操作输出。
在概率归一化的模块,由于使用多头注意力机制,为了保证在模型移植的过程中,矩阵不会出现自动转置的情况,此处可以将算子做如图6所示的修改替换。算子替换之后的多头注意力机制子模块的结构示意图如图7所示。
在替换多头注意力机制子模块的概率归一化单元之后,可以使概率归一化单元对每个头的矩阵做概率归一化并拼接得到概率归一化结果。
如此,对多头注意力机制子模块进行算子替换,能够确保网络模型的训练与推理的一致性。
此外,如前所述,在图3的网络模型结构示意图中,为了保证训练和推理的逻辑一致性,尽可能地减少推理误差,多头注意力机制子模块中的线性变换不但要替换成二维卷积算子,还需要将偏置向量置False。
另外,为了解决的多头注意力机制对上下文建模带来的历史信息动态问题,本方案创新性地提出循环静态缓存(cache)方法,为多头注意力机制子模块设置历史缓存向量,从而使得Conformer的神经处理引擎的DSP移植成为可能。循环静态缓存方法的简单示意图如图8所示,下面对其做详细说明。
可以理解地,为了更准确地得到当前时刻的输出,前t个时刻的历史信息至关重要,因此,本申请为多头注意力机制子模块设置历史缓存向量来存储历史信息。此处所说的动态,指的是不同时刻的历史信息是不一样的,因此说是动态的。
图8是一个两输入两输出的神经网络示意图,其中输入向量是对应的语音帧信息,而输出向量是模型的预测结果。两输入是指输入向量和历史缓存向量,两输出是指输出向量和刷新后的历史缓存向量。这里的输入向量1输入向量2是指相邻时刻的输入。此处的模型的预测结果是指网络的输出向量。得到网络的输出向量之后还需要经过在中央处理器(Central Processing Unit,CPU)上解码才能得到语音识别结果。
在初始化阶段,我们首先将历史缓存向量全部置零,这样可以避免在多头注意力机制模块引入额外计算误差。在推理阶段,在时间步t1,假设输入是输入向量1,此时Cache是全零,在模型输出的计算过程中,同步刷新历史缓存向量,保存当前时间步的历史信息以便其进入下一个时间步t2的计算。随着时间步的推移,历史缓存向量一步一步刷新,每一步都保存了当前时间步之前的历史信息。其中,在图8中,t2时刻的历史信息就是t1时刻的网络输出的刷新的历史缓存向量。t1时刻,也就是初始时刻的历史信息前一个全0的历史缓存向量。这样就实现了对语音序列的上下文建模的数字能力。
其中,初始时刻的历史缓存向量对输出的贡献如图9所示。图9的示意图形象地描述了初始时刻的多头注意力机制模块的计算过程,其中初始时刻的历史缓存向量cache向量2全置0。输入向量Q、K、V分别用不同深浅的颜色表示,输入向量K跟历史缓存向量cache向量1拼接起来之后进行转置操作,与输入向量Q进行矩阵乘法因子放缩,概率归一化,得到自相关系数矩阵。也就是如下公式1的操作:
该公式1得到的结果中在图9中虚线方框部分是当前时刻的自相关系数,浅黄色的方框是历史信息的自相关系数。
其中输入向量V也跟随初始时刻的历史缓存向量cache向量2拼接起来,然后跟上面提到的自相关系数矩阵相乘,得到最终的输出向量。
如此,本发明进一步提出循环静态缓存方法来解决端到端神经网络推理过程中带来的动态缓存的问题,达到更好的语音识别效果。
对于网络模型的处理模块中的前馈网络子模块(Feed Forward)中的算子替换,请参阅图10,步骤03包括:
034:将网络模型的处理模块中的前馈网络子模块的线性变换算子转换为二维卷积算子;
035:设置第一重排单元对前馈网络子模块的输入进行重排;
036:设置第二重排单元对前馈网络子模块的输出进行重排。
处理器用于将网络模型的处理模块中的前馈网络子模块的线性变换算子转换为二维卷积算子;设置第一重排单元对前馈网络子模块的输入进行重排;设置第二重排单元对前馈网络子模块的输出进行重排。
也即是,对于前馈网络子模块,该模块的算子包括线性变换(Linear)、激活函数(Relu)和随机激活(Dropout)等,由于Relu和Dropout是神经处理引擎支持的算子,因此,此时只需使用神经处理引擎支持的二维卷积(Conv2D)算子替换线性变换(Linear)算子,同时对输入输出做维度上的修改即可,即,设置第一重排单元对前馈网络子模块的输入进行重排和设置第二重排单元对前馈网络子模块的输出进行重排。前馈网络子模块在算子替换及修改之前的内部结构示意图及输入输出示意图如图11所示。前馈网络子模块在算子替换及修改之后的内部结构示意图及输入输出示意图如图12所示。其中,图11中xi(B,T,Fi)为模块的输入矩阵,i=1,2,3,4,y(B,T,F)为输出矩阵,其中输入矩阵和输出矩阵均为三维矩阵,三维矩阵的三个维度分别为B、T和F,维度B是批处理(batch)数量,表示模型同时处理的语音句子数量,维度T表示语句长度,维度F表示的是语音特征。在图12中本申请将输入矩阵进行重排,将输入的三维矩阵转换为四维矩阵,增加的维度为1,并重新排列各个维度进行处理。
如此,可以实现对前馈网络子模块的算子替换,确保生成的语音识别模型能够在相关芯片的数字信号处理(Digital Signal Processing,DSP)过程进行快速推理。
对于网络模型的处理模块中的样本标准化子模块(LayerNorm)中的算子替换,请参阅图13,步骤03,包括:
037:设置第三重排单元对网络模型的处理模块中的样本标准化子模块的输入进行重排;
038:设置第四重排单元对样本标准化子模块的输出进行重排。
处理器用于:设置第三重排单元对网络模型的处理模块中的样本标准化子模块的输入进行重排;设置第四重排单元对样本标准化子模块的输出进行重排。
LayerNorm是标准化某一样本特征的分布,在模型训练学习阶段,LayerNorm操作可以加快模型的收敛速度。样本标准化子模块的计算公式如下所示:
样本标准化子模块在算子替换之前的内部结构示意图如图14所示。
LayerNorm操作是由减均值除标准差等一系列基本操作组成的,但是在实际的移植过程中,为了确保生成的语音识别模型能够在相关芯片的数字信号处理(DigitalSignal Processing,DSP)过程进行快速推理,在模型转换之前需要对LayerNorm的输入利用已有算子做部分等价变换,样本标准化子模块在算子替换之后的内部结构示意图如图15所示。其中,图14中的x(B,T,F)表示输入矩阵,y(B,T,F)表示输出矩阵,即输入矩阵和输出矩阵均为三维矩阵,三维矩阵的三个维度分别为B、T和F,维度B是批处理(batch)数量,表示模型同时处理的语音句子数量,维度T表示语句长度,维度F表示的是语音特征。图15中xi(1,T,F)为模块的输入矩阵,i=1,2,3,y(1,T,F)为输出矩阵,图15中本申请的输入矩阵是维度为1、T和F的三维矩阵,将输入矩阵进行重排转换为四维矩阵,增加的维度为1,然后进行样本标准化进行处理。
可以理解地,由于在数字信号处理中的计算均值和方差过程中降低平均值(reduce mean)的操作仅仅支持4维的向量,因此,需要在模型转换之前需要对LayerNorm的输入利用已有算子做部分等价变换,从而确保生成的语音识别模型能够在相关芯片的数字信号处理过程进行快速推理。
如此,本发明通过对于网络模型的处理模块中的样本标准化子模块(LayerNorm)中进行算子替换,可以确保生成的语音识别模型能够在相关芯片的数字信号处理过程进行快速推理。
对于如何得到训练好的网络模型,请参阅图16,在步骤01之前,生成方法包括:
001:获取训练语音数据;
002:利用训练语音数据对预设模型进行训练得到训练输出数据;
003:根据训练语音数据修正预设模型的参数得到训练好的网络模型。
处理器用于:获取训练语音数据;利用训练语音数据对预设模型进行训练得到训练输出数据;根据训练语音数据修正预设模型的参数得到训练好的网络模型。
由前文所述,本发明车载系统的端到端流式识别方案中的模型训练学习模块的功能包括:结合设计的神经网络、大规模数据样本以及训练准则,修正网络参数,使之拟合现有的数据分布。
也即是,在得到训练好的网络模型之前,首先,需要获取训练语音数据,该训练语音数据为收集的大量的不同用户的语音数据,也称为大规模数据样本。
然后,利用训练语音数据对预设模型进行训练得到训练输出数据,即可以根据默认设置的训练准则利用训练语音数据对预设模型进行训练,从而得到训练输出数据。其中,预设模型为预先建立的网络模型的框架。
最后,根据训练语音数据修正预设模型的参数得到训练好的网络模型,即根据训练语音数据修正预设模型的网络参数,使得训练好的网络模型可以拟合现有的数据分布。
如此,本发明通过预先收集的大量训练语音数据对预设模型进行训练,并进行网络参数修正,得到训练好的网络模型,能够确保训练好的网络模型可以拟合现有的数据分布。
在步骤03之后,生成方法包括:
05:对语音识别模型进行模型量化,以减小语音识别模型的占用空间。
处理器用于对语音识别模型进行模型量化,以减小语音识别模型的占用空间。
由前文所述,本发明车载系统的端到端流式识别方案中的量化模块的功能包括:模型量化,以大幅减小模型占用空间。
也即是,本发明的语音识别模型的生成方法在对算子替换后生成的语音识别模型,还通过量化模块进行模型量化,从而减小生成的语音识别模型的占用空间。
生成方法还包括:
07:将模型量化后的语音识别模型移植部署到采用神经处理引擎的车辆。
处理器用于将模型量化后的语音识别模型移植部署到采用神经处理引擎的车辆。
由前文所述,本发明车载系统的端到端流式识别方案中的模型转换移植模块功能包括:将满足性能要求的模型转换成目标平台支持的网络结构。
也即是,本发明的语音识别模型的生成方法在语音识别模型生成后,可以通过模型转换移植模块将模型量化后的语音识别模型移植部署到采用神经处理引擎的车辆,从而实现车辆语音的流式识别。
上述为如何生成部署在神经处理引擎的语音识别模型,下面介绍一种应用经过上述语音识别模型的生成方法生成的语音识别模型的语音交互方法。
请参阅图17,本申请提供一种语音交互方法。基于上述实施方式中所述的语音识别模型的生成方法生成的语音识别模型,语音交互方法包括:
02:获取车辆座舱内用户输入的用户语音数据;
04:利用语音识别模型对用户语音数据进行处理得到用户语音请求,以完成语音交互。
本发明还提供一种车辆。所述车辆包括处理器和存储器,所述存储器上存储有计算机程序,处理器用于获取车辆座舱内用户输入的用户语音数据;利用语音识别模型对用户语音数据进行处理得到用户语音请求,以完成语音交互。
具体地,车辆座舱内用户输入的用户语音数据指的是车载系统接收到用户输入的全部音频数据。
在接收到用户语音数据后,再利用通过上述生成方法生成的语音识别模型对用户语音数据进行处理得到用户语音请求,即进行语音识别,从而完成语音交互,能够达到满意的语音识别效果,实现流式识别的极速对话响应效果。
其中,语音识别模型的生成方法如前文所述,在此不再赘述。
本发明还提供一种包含有计算机程序的非易失性计算机可读存储介质。当计算机程序被一个或多个处理器执行时,实现上述任意实施例所述的语音识别模型的生成方法或语音交互方法。
例如,计算机程序被处理器执行时实现以下语音识别模型的生成方法的步骤:
01:获取训练好的网络模型;
03:将网络模型中的预设算子进行算子替换处理,以将预设算子替换为神经处理引擎支持的算子,从而根据算子替换处理后的网络模型生成用于部署在神经处理引擎的语音识别模型。
又例如,计算机程序被处理器执行时实现以下语音交互方法的步骤:
02:获取车辆座舱内用户输入的用户语音数据;
04:利用语音识别模型对用户语音数据进行处理得到用户语音请求,以完成语音交互。
可以理解,计算机程序包括计算机程序代码。计算机程序代码可以为源代码形式、对象代码形式、可执行文件或某些中间形式等。计算机可读存储介质可以包括:能够携带计算机程序代码的任何实体或装置、记录介质、U盘、移动硬盘、磁碟、光盘、计算机存储器、只读存储器(ROM,Read-Only Memory)、随机存取存储器(RAM,Random Access Memory)、以及软件分发介质等。
本发明的存储介质应用上述语音识别模型生成方法或语音交互方法通过将训练好的网络模型中的预设算子进行算子替换处理,从而将预设算子替换为神经处理引擎支持的算子,从而根据算子替换处理后的网络模型生成用于部署在神经处理引擎的语音识别模型,使得运用该语音识别模型进行语音识别能够达到满意的语音识别效果,实现流式识别的极速对话响应效果。
Claims (10)
1.一种语音识别模型的生成方法,其特征在于,包括:
获取训练好的网络模型;
将所述网络模型中的预设算子进行算子替换处理,以将所述预设算子替换为神经处理引擎支持的算子,从而根据算子替换处理后的网络模型生成用于部署在所述神经处理引擎的语音识别模型。
2.根据权利要求1所述的语音识别模型的生成方法,其特征在于,所述将所述网络模型中的预设算子进行算子替换处理,以将所述预设算子替换为神经处理引擎支持的算子,从而根据算子替换处理后的网络模型生成用于部署在所述神经处理引擎的语音识别模型的步骤,包括:
将所述网络模型的处理模块中的多头注意力机制子模块的线性变换算子转换为二维卷积算子;
替换所述多头注意力机制子模块的概率归一化单元,以使所述概率归一化单元对每个头的矩阵做概率归一化并拼接得到概率归一化结果;
为所述多头注意力机制子模块设置历史缓存向量,以使所述多头注意力机制子模块对输入向量以及历史缓存向量与所述输入向量的拼接结果进行处理得到输出向量。
3.根据权利要求1所述的语音识别模型的生成方法,其特征在于,所述将所述网络模型中的预设算子进行算子替换处理,以将所述预设算子替换为神经处理引擎支持的算子,从而根据算子替换处理后的网络模型生成用于部署在所述神经处理引擎的语音识别模型的步骤,包括:
将所述网络模型的处理模块中的前馈网络子模块的线性变换算子转换为二维卷积算子;
设置第一重排单元对所述前馈网络子模块的输入进行重排;
设置第二重排单元对所述前馈网络子模块的输出进行重排。
4.根据权利要求1所述的语音识别模型的生成方法,其特征在于,所述将所述网络模型中的预设算子进行算子替换处理,以将所述预设算子替换为神经处理引擎支持的算子,从而根据算子替换处理后的网络模型生成用于部署在所述神经处理引擎的语音识别模型的步骤,包括:
设置第三重排单元对所述网络模型的处理模块中的样本标准化子模块的输入进行重排;
设置第四重排单元对所述样本标准化子模块的输出进行重排。
5.根据权利要求1所述的语音识别模型的生成方法,其特征在于,在所述获取训练好的网络模型的步骤之前,所述生成方法包括:
获取训练语音数据;
利用所述训练语音数据对预设模型进行训练得到训练输出数据;
根据所述训练语音数据修正所述预设模型的参数得到训练好的所述网络模型。
6.根据权利要求1所述的语音识别模型的生成方法,其特征在于,在所述将所述网络模型中的预设算子进行算子替换处理,以将所述预设算子替换为神经处理引擎支持的算子,从而根据算子替换处理后的网络模型生成用于部署在所述神经处理引擎的语音识别模型的步骤之后,所述生成方法包括:
对所述语音识别模型进行模型量化,以减小所述语音识别模型的占用空间。
7.根据权利要求6所述的语音识别模型的生成方法,其特征在于,所述生成方法还包括:
将模型量化后的所述语音识别模型移植部署到采用所述神经处理引擎的车辆。
8.一种语音交互方法,其特征在于,基于权利要求1-7任一项所述的语音识别模型的生成方法生成的语音识别模型,所述语音交互方法包括:
获取车辆座舱内用户输入的用户语音数据;
利用所述语音识别模型对所述用户语音数据进行处理得到用户语音请求,以完成语音交互。
9.一种车辆,其特征在于,所述车辆包括处理器和存储器,所述存储器上存储有计算机程序,当所述计算机程序被所述处理器执行时,实现如权利要求1-7任一项所述的语音识别模型的生成方法或权利要求8所述的语音交互方法。
10.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质存储有计算机程序,当所述计算机程序被一个或多个处理器执行时,实现如权利要求1-7任一项所述的语音识别模型的生成方法或权利要求8所述的语音交互方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202211477169.7A CN115527525B (zh) | 2022-11-23 | 2022-11-23 | 语音识别模型生成方法、语音交互方法、车辆和存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202211477169.7A CN115527525B (zh) | 2022-11-23 | 2022-11-23 | 语音识别模型生成方法、语音交互方法、车辆和存储介质 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN115527525A true CN115527525A (zh) | 2022-12-27 |
CN115527525B CN115527525B (zh) | 2023-04-18 |
Family
ID=84705287
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202211477169.7A Active CN115527525B (zh) | 2022-11-23 | 2022-11-23 | 语音识别模型生成方法、语音交互方法、车辆和存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN115527525B (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN116306796A (zh) * | 2023-05-17 | 2023-06-23 | 北京智源人工智能研究院 | 模型自生长训练加速方法、装置、电子设备和存储介质 |
Citations (16)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20190188295A1 (en) * | 2017-12-15 | 2019-06-20 | Accenture Global Solutions Limited | Cognitive searches based on deep-learning neural networks |
CN110875035A (zh) * | 2019-10-24 | 2020-03-10 | 广州多益网络股份有限公司 | 新型多任务联合的语音识别训练架构和方法 |
US20200090651A1 (en) * | 2018-09-17 | 2020-03-19 | Adobe Inc. | Generating dialogue responses in end-to-end dialogue systems utilizing a context-dependent additive recurrent neural network |
CN112084314A (zh) * | 2020-08-20 | 2020-12-15 | 电子科技大学 | 一种引入知识的生成式会话系统 |
US20200402507A1 (en) * | 2019-06-24 | 2020-12-24 | Google Llc | Generating automated assistant responses and/or actions directly from dialog history and resources |
CN112328674A (zh) * | 2020-11-17 | 2021-02-05 | 深圳力维智联技术有限公司 | 跨数据格式的模型转化加速方法及装置 |
US20210149996A1 (en) * | 2019-11-20 | 2021-05-20 | Apple Inc. | Sanitizing word predictions |
CN112990433A (zh) * | 2021-03-08 | 2021-06-18 | Oppo广东移动通信有限公司 | 模型耗时预测方法、装置、电子设备以及存储介质 |
CN113035178A (zh) * | 2021-03-16 | 2021-06-25 | 华南理工大学 | 基于transformer的语音识别解码加速方法 |
CN113157900A (zh) * | 2021-05-27 | 2021-07-23 | 中国平安人寿保险股份有限公司 | 意图识别方法、装置、计算机设备及存储介质 |
CN113360747A (zh) * | 2020-03-04 | 2021-09-07 | 阿里巴巴集团控股有限公司 | 基于神经网络模型的数据处理方法及装置 |
CN113379070A (zh) * | 2021-08-13 | 2021-09-10 | 苏州浪潮智能科技有限公司 | 一种深度学习框架转换方法、系统、存储介质及设备 |
US20210312914A1 (en) * | 2018-11-29 | 2021-10-07 | Amazon Technologies, Inc. | Speech recognition using dialog history |
CN113516968A (zh) * | 2021-06-07 | 2021-10-19 | 北京邮电大学 | 一种端到端长时语音识别方法 |
US20220028376A1 (en) * | 2020-11-18 | 2022-01-27 | Beijing Baidu Netcom Science Technology Co., Ltd. | Method for semantic recognition, electronic device, and storage medium |
CN114781620A (zh) * | 2022-04-26 | 2022-07-22 | 科大讯飞股份有限公司 | 一种数据处理模型构建方法、装置、设备及存储介质 |
-
2022
- 2022-11-23 CN CN202211477169.7A patent/CN115527525B/zh active Active
Patent Citations (16)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20190188295A1 (en) * | 2017-12-15 | 2019-06-20 | Accenture Global Solutions Limited | Cognitive searches based on deep-learning neural networks |
US20200090651A1 (en) * | 2018-09-17 | 2020-03-19 | Adobe Inc. | Generating dialogue responses in end-to-end dialogue systems utilizing a context-dependent additive recurrent neural network |
US20210312914A1 (en) * | 2018-11-29 | 2021-10-07 | Amazon Technologies, Inc. | Speech recognition using dialog history |
US20200402507A1 (en) * | 2019-06-24 | 2020-12-24 | Google Llc | Generating automated assistant responses and/or actions directly from dialog history and resources |
CN110875035A (zh) * | 2019-10-24 | 2020-03-10 | 广州多益网络股份有限公司 | 新型多任务联合的语音识别训练架构和方法 |
US20210149996A1 (en) * | 2019-11-20 | 2021-05-20 | Apple Inc. | Sanitizing word predictions |
CN113360747A (zh) * | 2020-03-04 | 2021-09-07 | 阿里巴巴集团控股有限公司 | 基于神经网络模型的数据处理方法及装置 |
CN112084314A (zh) * | 2020-08-20 | 2020-12-15 | 电子科技大学 | 一种引入知识的生成式会话系统 |
CN112328674A (zh) * | 2020-11-17 | 2021-02-05 | 深圳力维智联技术有限公司 | 跨数据格式的模型转化加速方法及装置 |
US20220028376A1 (en) * | 2020-11-18 | 2022-01-27 | Beijing Baidu Netcom Science Technology Co., Ltd. | Method for semantic recognition, electronic device, and storage medium |
CN112990433A (zh) * | 2021-03-08 | 2021-06-18 | Oppo广东移动通信有限公司 | 模型耗时预测方法、装置、电子设备以及存储介质 |
CN113035178A (zh) * | 2021-03-16 | 2021-06-25 | 华南理工大学 | 基于transformer的语音识别解码加速方法 |
CN113157900A (zh) * | 2021-05-27 | 2021-07-23 | 中国平安人寿保险股份有限公司 | 意图识别方法、装置、计算机设备及存储介质 |
CN113516968A (zh) * | 2021-06-07 | 2021-10-19 | 北京邮电大学 | 一种端到端长时语音识别方法 |
CN113379070A (zh) * | 2021-08-13 | 2021-09-10 | 苏州浪潮智能科技有限公司 | 一种深度学习框架转换方法、系统、存储介质及设备 |
CN114781620A (zh) * | 2022-04-26 | 2022-07-22 | 科大讯飞股份有限公司 | 一种数据处理模型构建方法、装置、设备及存储介质 |
Non-Patent Citations (3)
Title |
---|
2020-09-30, 华中科学技术大学出版社 * |
JINGYU SUN 等: "Locality Matters:A Locality-Biased Liner Attention for Automatic Speech Recognition", 《ARXIV》 * |
陈凯: "面向硬件实现的深度神经网络模型优化与加速方法研究", 《面向硬件实现的深度神经网络模型优化与加速方法研究》 * |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN116306796A (zh) * | 2023-05-17 | 2023-06-23 | 北京智源人工智能研究院 | 模型自生长训练加速方法、装置、电子设备和存储介质 |
CN116306796B (zh) * | 2023-05-17 | 2023-09-15 | 北京智源人工智能研究院 | 模型自生长训练加速方法、装置、电子设备和存储介质 |
Also Published As
Publication number | Publication date |
---|---|
CN115527525B (zh) | 2023-04-18 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN109036371B (zh) | 用于语音合成的音频数据生成方法及系统 | |
CN113688244B (zh) | 基于神经网络的文本分类方法、系统、设备及存储介质 | |
CN117194637B (zh) | 基于大语言模型的多层级可视化评估报告生成方法、装置 | |
CN115527525B (zh) | 语音识别模型生成方法、语音交互方法、车辆和存储介质 | |
Fujita et al. | Insertion-based modeling for end-to-end automatic speech recognition | |
CN109616093A (zh) | 端对端语音合成方法、装置、设备及存储介质 | |
CN110211562B (zh) | 一种语音合成的方法、电子设备及可读存储介质 | |
CN114118417A (zh) | 一种多模态预训练方法、装置、设备及介质 | |
CN116644168A (zh) | 一种交互数据构建方法、装置、设备及存储介质 | |
EP3657446A1 (en) | Artificial intelligence-based manufacturing part design | |
CN114239536A (zh) | 一种事件抽取方法、系统及计算机可读存储介质 | |
CN114723047A (zh) | 任务模型训练方法、装置以及系统 | |
CN113011448B (zh) | 一种基于迁移学习的多用户下行信道估计方法及装置 | |
Kim et al. | Accelerating RNN transducer inference via adaptive expansion search | |
CN117350360A (zh) | 大模型的微调方法、装置、电子设备和存储介质 | |
CN118015411B (zh) | 一种面向自动驾驶的大视觉语言模型增量学习方法及装置 | |
Yao et al. | Int8 winograd acceleration for conv1d equipped asr models deployed on mobile devices | |
CN114490922B (zh) | 一种自然语言理解模型训练方法及装置 | |
CN118095410A (zh) | 神经网络架构搜索的联邦学习参数高效微调方法及装置 | |
CN110084356B (zh) | 一种深度神经网络数据处理方法和装置 | |
CN114707523A (zh) | 基于交互式Transformer的图像-多语言字幕转换方法 | |
Huang et al. | Training RNN-T with CTC Loss in automatic speech recognition | |
CN117094361B (zh) | 一种选择参数高效微调模块的方法 | |
US20240061506A1 (en) | Method and system for generating haptic feedback effect, and related device | |
Thavasimani et al. | Exploiting execution provenance to explain difference between two data-intensive computations |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |