CN114842855A - 语音唤醒模型的训练、唤醒方法、装置、设备及存储介质 - Google Patents
语音唤醒模型的训练、唤醒方法、装置、设备及存储介质 Download PDFInfo
- Publication number
- CN114842855A CN114842855A CN202210356735.2A CN202210356735A CN114842855A CN 114842855 A CN114842855 A CN 114842855A CN 202210356735 A CN202210356735 A CN 202210356735A CN 114842855 A CN114842855 A CN 114842855A
- Authority
- CN
- China
- Prior art keywords
- model
- training
- audio data
- module
- voice
- 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
- 238000012549 training Methods 0.000 title claims abstract description 210
- 238000000034 method Methods 0.000 title claims abstract description 72
- 230000006870 function Effects 0.000 claims abstract description 95
- 108091026890 Coding region Proteins 0.000 claims description 22
- 238000012545 processing Methods 0.000 claims description 22
- 238000004590 computer program Methods 0.000 claims description 17
- 238000000605 extraction Methods 0.000 claims description 16
- 238000010606 normalization Methods 0.000 claims description 12
- 230000015654 memory Effects 0.000 claims description 9
- 230000004044 response Effects 0.000 claims description 4
- 238000013473 artificial intelligence Methods 0.000 abstract description 5
- 238000013135 deep learning Methods 0.000 abstract description 3
- 238000005516 engineering process Methods 0.000 abstract description 2
- 230000002618 waking effect Effects 0.000 abstract description 2
- 238000010586 diagram Methods 0.000 description 13
- 230000007246 mechanism Effects 0.000 description 13
- 230000008569 process Effects 0.000 description 10
- 238000004891 communication Methods 0.000 description 8
- 238000013527 convolutional neural network Methods 0.000 description 8
- 230000000694 effects Effects 0.000 description 4
- 230000003993 interaction Effects 0.000 description 4
- 230000004048 modification Effects 0.000 description 4
- 238000012986 modification Methods 0.000 description 4
- 238000004458 analytical method Methods 0.000 description 3
- 230000003287 optical effect Effects 0.000 description 3
- 238000012360 testing method Methods 0.000 description 3
- 238000013459 approach Methods 0.000 description 2
- 238000013528 artificial neural network Methods 0.000 description 2
- 238000004364 calculation method Methods 0.000 description 2
- 238000003491 array Methods 0.000 description 1
- 230000001413 cellular effect Effects 0.000 description 1
- 238000010276 construction Methods 0.000 description 1
- 230000007547 defect Effects 0.000 description 1
- 238000013461 design Methods 0.000 description 1
- 238000011161 development Methods 0.000 description 1
- 238000001914 filtration Methods 0.000 description 1
- 230000006872 improvement Effects 0.000 description 1
- 239000004973 liquid crystal related substance Substances 0.000 description 1
- 238000010801 machine learning Methods 0.000 description 1
- 239000013307 optical fiber Substances 0.000 description 1
- 238000007781 pre-processing Methods 0.000 description 1
- 230000000306 recurrent effect Effects 0.000 description 1
- 239000004065 semiconductor Substances 0.000 description 1
- 230000001953 sensory effect Effects 0.000 description 1
- 230000006403 short-term memory Effects 0.000 description 1
- 238000001228 spectrum Methods 0.000 description 1
- 238000006467 substitution reaction Methods 0.000 description 1
- 230000002123 temporal effect Effects 0.000 description 1
- 230000000007 visual effect 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
- G10L17/00—Speaker identification or verification techniques
- G10L17/22—Interactive procedures; Man-machine interfaces
-
- 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
-
- G—PHYSICS
- G10—MUSICAL INSTRUMENTS; ACOUSTICS
- G10L—SPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
- G10L15/00—Speech recognition
- G10L15/22—Procedures used during a speech recognition process, e.g. man-machine dialogue
-
- 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
- G10L17/00—Speaker identification or verification techniques
- G10L17/02—Preprocessing operations, e.g. segment selection; Pattern representation or modelling, e.g. based on linear discriminant analysis [LDA] or principal components; Feature selection or extraction
-
- 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
- G10L17/00—Speaker identification or verification techniques
- G10L17/04—Training, enrolment or model building
-
- 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
- G10L17/00—Speaker identification or verification techniques
- G10L17/18—Artificial neural networks; Connectionist approaches
-
- 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
- G10L17/00—Speaker identification or verification techniques
- G10L17/22—Interactive procedures; Man-machine interfaces
- G10L17/24—Interactive procedures; Man-machine interfaces the user being prompted to utter a password or a predefined phrase
Landscapes
- Engineering & Computer Science (AREA)
- Multimedia (AREA)
- Audiology, Speech & Language Pathology (AREA)
- Human Computer Interaction (AREA)
- Physics & Mathematics (AREA)
- Acoustics & Sound (AREA)
- Health & Medical Sciences (AREA)
- Artificial Intelligence (AREA)
- Computational Linguistics (AREA)
- Evolutionary Computation (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Telephone Function (AREA)
- Electrically Operated Instructional Devices (AREA)
Abstract
本公开提供了一种语音唤醒模型的训练、唤醒方法、装置、设备及存储介质,涉及人工智能领域,尤其涉及深度学习、语音技术等领域。具体实现方案为:获取创建的语音识别训练数据以及语音唤醒训练数据,首先根据语音识别训练数据对基础模型进行训练,得到模型损失函数收敛时的基础模型的模型参数;随后基于模型配置指令更新基础模型中解码模块的配置参数,得到第一模型;再根据语音唤醒训练数据对第一模型进行训练,在模型损失函数收敛时,获得训练好的语音唤醒模型。上述方案可提升语音唤醒模型训练的收敛速度,基于上述语音唤醒模型对音频数据进行处理分析,可提高识别精度,降低误报率。
Description
技术领域
本公开涉及人工智能领域中的深度学习和语音技术领域,尤其涉及一种语音唤醒模型的训练、唤醒方法、装置、设备及存储介质。
背景技术
随着人工智能的发展,越来越多的电子设备开始支持语音交互功能。语音唤醒作为语音交互的开关,在其中占据着重要的组成部分。目前,语音唤醒功能存在多设备同时被唤醒的问题,例如同一品牌的设备往往支持同一个唤醒词,就会导致一次唤醒,多个设备响应的尴尬情况。
发明内容
本公开提供了一种语音唤醒模型的训练、唤醒方法、装置、设备及存储介质。
根据本公开的第一方面,提供了一种语音唤醒模型的训练方法,包括:
获取语音识别训练数据,根据所述语音识别训练数据对基础模型进行语音识别训练,得到模型损失函数收敛时的基础模型的模型参数;所述基础模型包括编码模块和解码模块;
响应于用户发起的模型配置指令,基于所述基础模型的模型参数,更新所述基础模型中解码模块的配置参数,得到第一模型;
获取语音唤醒训练数据,根据所述语音唤醒训练数据,对所述第一模型进行语音唤醒训练,得到模型损失函数收敛时的第一模型;
将模型损失函数收敛时的第一模型作为所述语音唤醒模型。
根据本公开的第二方面,提供了一种语音唤醒方法,包括:
接收用户输入的音频数据;
对所述音频数据进行特征提取,得到所述音频数据对应的滤波器组FBank特征;
基于语音唤醒模型的编码模块,对所述音频数据对应的FBank特征进行编码,得到所述音频数据对应的特征编码序列;采用连结时序分类ctc解码确定所述特征编码序列中得分大于或等于预设值的目标特征编码序列;
获取用户自定义唤醒词对应的语义标签序列;
基于所述语音唤醒模型的解码模块,对所述目标特征编码序列以及所述语义标签序列进行解码分析,确定是否唤醒所述终端设备。
根据本公开的第三方面,提供一种语音唤醒模型的训练装置,包括:
第一训练模块,用于根据所述语音识别训练数据对基础模型进行语音识别训练,得到模型损失函数收敛时的基础模型的模型参数;所述基础模型包括编码模块和解码模块;
模型配置模块,用于响应于用户发起的模型配置指令,基于所述基础模型的模型参数,更新所述基础模型中解码模块的配置参数,得到第一模型;
第二获取模块,用于获取语音唤醒训练数据;
第二训练模块,用于根据所述语音唤醒训练数据,对所述第一模型进行语音唤醒训练,得到模型损失函数收敛时的第一模型;
模型生成模块,用于将模型损失函数收敛时的第一模型作为所述语音唤醒模型。
根据本公开的第四方面,提供一种语音唤醒装置,包括:
接收模块,用于接收用户输入的音频数据;
特征提取模块,用于对所述音频数据进行特征提取,得到所述音频数据对应的FBank特征;
第一处理模块,用于基于语音唤醒模型的编码模块,对所述音频数据对应的FBank特征进行编码,得到所述音频数据对应的特征编码序列;
第二处理模块,用于采用ctc解码确定所述特征编码序列中得分大于或等于预设值的目标特征编码序列;
获取模块,用于获取用户自定义唤醒词对应的语义标签序列;
第三处理模块,用于基于所述语音唤醒模型的解码模块,对所述目标特征编码序列以及所述语义标签序列进行解码分析,确定是否唤醒终端设备。
根据本公开的第五方面,提供了一种电子设备,包括:
至少一个处理器;以及
与所述至少一个处理器通信连接的存储器;其中,
所述存储器存储有可被所述至少一个处理器执行的指令,所述指令被所述至少一个处理器执行,以使所述至少一个处理器能够执行第一方面或第二方面所述的方法。
根据本公开的第六方面,提供了一种存储有计算机指令的非瞬时计算机可读存储介质,其中,所述计算机指令用于使所述计算机执行第一方面或第二方面所述的方法。
根据本公开的第七方面,提供了一种计算机程序产品,所述计算机程序产品包括:计算机程序,所述计算机程序存储在可读存储介质中,电子设备的至少一个处理器可以从所述可读存储介质读取所述计算机程序,所述至少一个处理器执行所述计算机程序使得电子设备执行第一方面或第二方面所述的方法。
根据本公开的技术提高了自定义语音唤醒的精度。
应当理解,本部分所描述的内容并非旨在标识本公开的实施例的关键或重要特征,也不用于限制本公开的范围。本公开的其它特征将通过以下的说明书而变得容易理解。
附图说明
附图用于更好地理解本方案,不构成对本公开的限定。其中:
图1为本公开实施例提供的一种应用场景的示意图;
图2为本公开实施例提供的一种语音唤醒模型的结构示意图;
图3为本公开实施例提供的语音唤醒模型的训练方法的流程示意图;
图4为本公开实施例提供的创建语音识别训练数据的流程示意图;
图5为本公开实施例提供的创建语音唤醒训练数据的流程示意图;
图6为本公开实施例提供的语音唤醒方法的流程示意图;
图7为本公开实施例提供的一种语音唤醒模型的结构示意图;
图8为本公开实施例提供的语音唤醒模型的训练装置的结构示意图;
图9为本公开实施例提供的语音唤醒装置的结构示意图;
图10为本公开实施例提供的电子设备的结构示意图。
具体实施方式
以下结合附图对本公开的示范性实施例做出说明,其中包括本公开实施例的各种细节以助于理解,应当将它们认为仅仅是示范性的。因此,本领域普通技术人员应当认识到,可以对这里描述的实施例做出各种改变和修改,而不会背离本公开的范围和精神。同样,为了清楚和简明,以下的描述中省略了对公知功能和结构的描述。
通过自定义唤醒词可以解决多设备同时被唤醒的问题,例如用户根据需求对不同设备设置不同的自定义唤醒词。然而,基于自定义唤醒词的语音唤醒的精度不高。
本公开提供一种语音唤醒模型的训练方法和语音唤醒方法,应用于人工智能领域中的深度学习和语音技术领域,以达到提升自定义语音唤醒的精度。
为了便于理解本公开提供的技术方案,首先结合图1对本公开实施例的应用场景进行说明。
图1为本公开实施例提供的一种应用场景的示意图。如图1所示,该应用场景涉及模型训练阶段和模型应用阶段。
在模型训练阶段,模型训练设备基于第一训练数据集训练第一模型。其中第一训练数据集包括用于语音识别的训练数据,第一模型具有语音识别功能。通过调整第一模型的模型配置参数,获得第二模型。模型训练设备基于第二训练数据集训练第二模型,其中第二训练数据集包括用于语音唤醒的训练数据,第二模型具有语音唤醒功能。将训练好的第二模型作为最终的语音唤醒模型。
需要说明的是,第一模型和第二模型的模型结构保持一致,两者的区别是模型输出部分的参数配置不同,例如维度参数不同。
可以理解,第一模型具有语音识别功能,第一模型的输出为音频数据对应的音节信息,例如无调音节序列。第二模型具有语音唤醒功能,第二模型的输出为是否唤醒的二分类唤醒结果。由此可见,第一模型和第二模型的模型输出部分的维度参数不同。
在模型应用阶段,语音唤醒设备中预置训练好的第二模型,即图1中的语音唤醒模型,语音唤醒设备接收用户输入的音频数据,经音频数据的预处理过程以及语音唤醒模型的处理分析,最终得到是否唤醒的结果。
本公开实施例中,语音唤醒模型可采用编码器-解码器(encoder-decoder)架构,或者包括编码器和解码器的其他模型结构。其中编码器也可称为编码模块,解码器也可称为解码模块。
下面结合图2对语音唤醒模型的内部结构进行详细说明。
图2为本公开实施例提供的一种语音唤醒模型的结构示意图。如图2所示,本实施例提供的语音唤醒模型包括编码模块和解码模块。
其中,编码模块包括卷积神经网络(Convolutional Neural Networks,CNN)模块和循环神经网络(Recurrent Neural Networks,RNN)模块。图2示出了2个CNN模块和2个RNN模块,编码模块的数据处理过程:先经过2个CNN模块,再经过2个RNN模块。编码模块用于对音频特征进行编码,得到编码后的特征数据。
其中,解码模块包括注意力(attention)机制模块,RNN模块,全连接(full)模块以及归一化(softmax)模块。图2示出了两个RNN模块,解码模块的数据处理过程:一路数据经RNN模块输入注意力机制模块,另一路数据直接输入注意力机制模块,经注意力机制模块处理后,再经过RNN模块、全连接模块以及归一化模块,最终输出是否唤醒的结果。
可选的,在一些实施例中,上述RNN模块可以替换为长短期记忆网络(Long ShortTerm Memory,LSTM)模块。
需要说明的是,语音唤醒模型包括两路输入数据,第一输入数据为音频数据对应的特征序列,例如滤波器组(FilterBank,FBank)特征、梅尔频率倒谱系数(Mel-frequencycepstral coefficients,MFCC)特征等。第二输入数据为音频数据对应的语义标签序列。
需要说明的是,本公开实施例中模型训练设备或语音唤醒设备可以是终端设备,也可以是服务器或者虚拟机等,还可以是一个或多个服务器和/或计算机等组成的分布式计算机系统等。
其中,该终端设备包括但不限于:智能手机、笔记本电脑、台式电脑、平台电脑、车载设备、智能穿戴设备等,本公开实施例不作限定。服务器可以为普通服务器或者云服务器,云服务器又称为云计算服务器或云主机,是云计算服务体系中的一项主机产品。服务器也可以为分布式系统的服务器,或者是结合了区块链的服务器。
本公开实施例中,首先构造两轮模型训练的训练数据集,即构造语音识别的训练数据集以及语音唤醒的训练数据集,基于基础模型和语音识别的训练数据集,先进行语音识别的预训练,经模型配置参数调整后,再基于预训练得到的模型和语音唤醒的训练数据集进行语音唤醒的二次训练,最终生成可用于识别用户自定义唤醒词的语音唤醒模型。其中语音唤醒模型可采用encoder-decoder结构,且在decoder部分使用注意力机制。上述训练过程得到的语音唤醒模型,相比现有唤醒方案,提升了自定义语音唤醒模型的识别精度,在降低误报率的同时,识别精度逼近定制唤醒的水平,可满足包括车载、智能家居等场景的唤醒需求。
下面,结合上述图1所示的应用场景,通过具体实施例对本公开的技术方案进行详细说明。需要说明的是,下面这几个具体的实施例可以相互结合,对于相同或相似的概念或过程可能在某些实施例中不再赘述。
图3为本公开实施例提供的语音唤醒模型的训练方法的流程示意图。该方法以图1中的模型训练设备作为执行主体进行解释说明。如图3所示,该语音唤醒模型的训练方法可以包括如下步骤:
步骤301、获取语音识别训练数据。
本实施例中,语音识别训练数据包括第一音频数据对应的FBank特征、语义标签序列以及音节序列,第一音频数据为用户输入的包含自定义唤醒词的任意一条音频数据。
其中,第一音频数据对应的FBank特征是对第一音频数据进行特征提取得到的。第一音频数据对应的语义标签序列用于指示第一音频数据的语义信息。第一音频数据对应的音节序列为帧级别对齐的无调音节序列。
步骤302、根据语音识别训练数据对基础模型进行语音识别训练,得到模型损失函数收敛时的基础模型的模型参数。
本实施例中,将语音识别训练数据中的第一音频数据对应的FBank特征以及第一音频数据对应的语义标签序列作为基础模型的输入,将语音识别训练数据中的第一音频数据对应的音节序列作为基础模型的输出,进行模型训练,在基础模型损失函数收敛时,获取基础模型损失函数收敛时的模型参数。其中,基础模型的内部结构可参照图2,此处不再赘述。
步骤303、响应于用户发起的模型配置指令,基于基础模型的模型参数,更新基础模型中解码模块的配置参数,得到第一模型。
其中,配置参数包括模型的输出维度。需要说明的是,可以根据实际需求,设置更新模型的其他参数,对此本实施例不作任何限制。
作为一种示例,更新基础模型中解码模块的配置参数,包括:将基础模型中解码模块在输出端的输出维度进行修改。由于语音唤醒任务的输出结果包括唤醒和不唤醒两种结果,因此,需要将基础模型中解码模块在输出端的输出维度修改为二维。
上述修改逻辑可写入设备的配置信息中,基于设备配置信息,在训练好的基础模型的基础上,更新训练好的基础模型中解码模块的配置参数。
步骤304、获取语音唤醒训练数据。
本实施例中,语音唤醒训练数据包括正例训练数据和负例训练数据,其中正例训练数据包括第一音频数据对应的FBank特征、语义标签序列以及唤醒标签,负例训练数据包括第一音频数据对应的FBank特征,随机生成的语义标签序列以及不唤醒标签。
语音唤醒训练数据的正例训练数据是基于语音识别训练数据构造的,与语音识别训练数据不同的是,语音唤醒训练数据的正例训练数据将第一音频数据对应的音节序列替换为唤醒标签。第一音频数据在语音唤醒训练阶段,又称为正例音频数据。
语音唤醒训练数据的负例训练数据对应的音频数据同样为用户输入的音频数据(即,负例音频数据),只是该音频数据不包含用户自定义的唤醒词。需要指出的是,针对负例音频数据,可随机生成一个语义标签序列,只要该语义标签序列与该负例音频数据对应的语义标签序列不同即可。
步骤305、根据语音唤醒训练数据,对第一模型进行语音唤醒训练,得到模型损失函数收敛时的第一模型。
本实施例中,将语音唤醒训练数据中的第一音频数据对应的FBank特征以及第一音频数据对应的语义标签序列作为第一模型的输入,将唤醒标签作为第一模型的输出,以及将语音唤醒训练数据中的第一音频数据对应的FBank特征以及随机生成的语义标签序列作为第一模型的输入,将不唤醒标签作为第一模型的输出,进行模型训练,在第一模型损失函数收敛时,获取第一模型损失函数收敛时的模型参数。其中,第一模型的内部结构可参照图2,此处不再赘述。
需要说明的是,基础模型和第一模型训练时,可采用相同的损失函数。就模型结构而言,基础模型和第一模型均包括编码模块和解码模块,编码模块对应一个损失函数,解码模块对应一个损失函数,因此基础模型和第一模型均包括两个损失函数。
作为一种示例,基础模型的编码模块对应的损失函数与第一模型的编码模块对应的损失函数相同,例如均采用连结时序分类(connectionist temporal classification,ctc)损失函数;基础模型的解码模块对应的损失函数与第一模型的解码模块对应的损失函数相同,例如均采用交叉熵误差(cross-entropy error,ce)损失函数。
可选的,在一些实施例中,基础模型的编码模块对应的损失函数与第一模型的编码模块对应的损失函数可以不同,基础模型的解码模块对应的损失函数与第一模型的解码模块对应的损失函数可以不同。
步骤306、将模型损失函数收敛时的第一模型作为语音唤醒模型。
本实施例示出的语音唤醒模型的训练方法,获取创建的语音识别训练数据以及语音唤醒训练数据,首先根据语音识别训练数据对基础模型进行语音识别训练,得到模型损失函数收敛时的基础模型的模型参数;随后基于用户发起的模型配置指令,更新基础模型中解码模块的配置参数,得到第一模型;最后根据语音唤醒训练数据对第一模型进行语音唤醒训练,得到模型损失函数收敛时的第一模型,将其作为最终的语音唤醒模型。上述模型训练方案基于语音识别训练的模型参数,通过调整模型解码模块的配置参数,进行语音唤醒训练,可提升语音唤醒模型训练的收敛速度,提高语音唤醒模型的识别精度,降低误报率。
可选的,在一些实施例中,响应于用户发起的模型配置指令,基于基础模型的模型参数,更新基础模型中解码模块的配置参数,得到第一模型,包括:响应于用户发起的模型配置指令,基于基础模型的模型参数,更新基础模型中解码模块的全连接子模块和归一化子模块的配置参数,得到第一模型。作为一种示例,更新基础模型中解码模块的全连接子模块和归一化子模块的配置参数,包括:将基础模型中解码模块的全连接子模块和归一化子模块的输出维度更新为二维。
本实施例通过调整基础模型的模型参数,实现对模型功能的调整,由语音识别功能调整为语音唤醒功能,再经过第二轮模型训练,即语音唤醒训练,实现语音唤醒目的。
可选的,在一些实施例中,基础模型的损失函数和第一模型的损失函数均包括ctc损失函数和ce损失函数。其中
ctc损失函数,用于训练基础模型或第一模型的编码模块。
ce损失函数,用于训练基础模型或第一模型的解码模块。
本实施例的一个可选实施例中,根据语音识别训练数据对基础模型进行语音识别训练,得到模型损失函数收敛时的基础模型的模型参数,包括:根据语音识别训练数据对基础模型的编码模块和解码模块进行联合训练;在编码模块对应的ctc损失函数和解码模块对应的ce损失函数均收敛时,得到基础模型的模型参数。
本实施例的一个可选实施例中,根据语音唤醒训练数据,对第一模型进行语音唤醒训练,得到模型损失函数收敛时的第一模型,包括:根据所述语音唤醒训练数据,对第一模型的编码模块和解码模块进行联合训练;在编码模块对应的ctc损失函数和解码模块对应的ce损失函数均收敛时,得到第一模型。
本实施例中,基于上述两种损失函数,分别对基础模型和第一模型进行模型训练,可加速模型训练的收敛速度。
图4为本公开实施例提供的创建语音识别训练数据的流程示意图。该过程可以以图1中的模型训练设备作为执行主体,也可以以独立于该模型训练设备的其他设备作为执行主体。如图4所示,语音识别训练数据的创建过程,可以包括如下步骤:
步骤401、接收用户输入的第一音频数据,第一音频数据为包含自定义唤醒词的音频数据。
步骤402、对第一音频数据进行特征提取,得到第一音频数据对应的FBank特征。
本实施例中,对第一音频数据进行特征提取是指对第一音频数据逐帧进行特征提取。第一音频数据分帧后得到的是时域信号,为了提取FBank特征,首先需要将时域信号转换为频域信号,可通过傅里叶变换将信号从时域转换至频域。在完成傅里叶变换后,得到的是频域信号,每个频带范围的能量大小不同,不同音素的能量谱不同。再通过梅尔Mel滤波和对数运算,得到第一音频数据对应的FBank特征。
步骤403、获取第一音频数据对应的语义标签序列和音节序列。
本实施例中,通过对第一音频数据进行语义识别,得到语义信息,基于预设的标签库,获取语义信息对应的语义标签序列,即第一音频数据对应的语义标签序列。
标签库包括每个中文字对应的数字,即每个中文字与数字的对应关系,例如“你”和“好”分别对应8和9。
示例性的,在确定音频数据对应的语义信息后,基于标签库可生成语义信息对应的数字序列,该数字序列即语义标签序列。例如,经语义识别得到语义信息为“小满,今天天气如何”,标签库中“小”对应0,“满”对应7,“今”对应2,“天”对应1,“气”对应3,“如”对应5,“何”对应6,可生成对应的语义标签序列为{0,7,2,1,1,3,5,6}。本示例中,用户自定义唤醒词为“小满”。
本实施例中,通过对第一音频数据进行帧级别分析,获取第一音频数据中每帧对应的音节,基于预设的得到第一音频数据对应的音节序列。
标签库包括每个中文字的音节对应的数字,即每个中文字的音节与数字的对应关系,例如音节“ni”和“hao”分别对应8和9。
示例性的,在确定音频数据中每帧对应的音节后,基于标签库可生成音频数据对应的音节序列,例如音频数据中“小满”对应的音节为xiaoxiaoxiaomanman,标签库中音节“xiao”和“man”分别对应0和7,可生成对应的音节序列为{0,0,0,7,7}。
需要指出的是,步骤402和步骤403可以顺序执行,也可以同时执行,对此本实施例不作任何限制。
步骤404、将第一音频数据对应的FBank特征、语义标签序列以及音节序列,作为语音识别训练的一组训练数据。
本实施例中,第一音频数据对应的FBank特征作为基础模型的编码模块的输入,第一音频数据对应的语义标签序列作为基础模型的解码模块的输入,第一音频数据对应的音节序列作为基础模型的解码模块的输出。
可选的,在一些实施例中,也可以提取第一音频数据对应的MFCC特征,将第一音频数据对应的MFCC特征、语义标签序列以及音节序列,作为语音识别训练的一组训练数据。
其中,MFCC特征是在FBank特征的基础上再进行离散余弦变换(DCT),与FBank特征相比,具有更好的判别度,但计算量更大。
本实施例示出的语音识别训练数据包括多组训练数据,每组训练数据包括用户自定义的音频数据,音频数据对应的语义标签序列以及音节序列。通过对基础模型进行训练,使得模型能够准确识别用户自定义的音频数据,提升对自定义音频的识别效果。
图5为本公开实施例提供的创建语音唤醒训练数据的流程示意图。该过程可以以图1中的模型训练设备作为执行主体,也可以以独立于该模型训练设备的其他设备作为执行主体。如图5所示,语音唤醒训练数据的创建过程,可以包括如下步骤:
步骤501、将用户输入的第一音频数据对应的FBank特征、语义标签序列以及唤醒标签,作为语音唤醒训练的一组正例数据。第一音频数据为包含自定义唤醒词的音频数据。
本实施例中,基于语音识别训练数据中的已有数据,创建语音唤醒训练数据的正例数据,只需要将第一音频数据对应的音节序列替换为唤醒标签,即可得到一组正例数据。
对于任意一组正例数据,第一音频数据对应的FBank特征作为第一模型的编码模块的输入,第一音频数据对应的语义标签序列作为第一模型的解码模块的输入,唤醒标签作为第一模型的解码模块的输出。
步骤502、接收用户输入的第二音频数据。
本实施例中,第二音频数据为不包括用户自定义唤醒词的音频数据。
步骤503、对第二音频数据进行特征提取,得到第二音频数据对应的FBank特征。对第二音频数据进行特征提取的方法可参照上文实施例的步骤402,此处不再赘述。
步骤504、将第二音频数据对应的FBank特征,随机生成的语义标签序列以及不唤醒标签,作为语音唤醒训练的一组负例数据。
对于任意一组负例数据,第二音频数据对应的FBank特征作为第一模型的编码模块的输入,随机生成的语义标签序列作为第一模型的解码模块的输入,不唤醒标签作为第一模型的解码模块的输出。
其中,随机生成的语义标签序列与第二音频数据对应的语义标签序列不同。示例性的,基于步骤403的示例,构造负例训练数据,例如负例音频数据的语义信息为“今天天气如何”,不包括用户自定义的唤醒词“小满”,该负例音频数据对应的语义标签序列为{2,1,1,3,5,6}。随机生成的语义标签序列只要与{2,1,1,3,5,6}不同即可。
应理解,也可以使用正例音频数据的语义信息对应的语义标签序列,例如步骤403示例中的{0,7,2,1,1,3,5,6},作为基于负例音频数据构造的一组负例训练数据中的语义标签序列。
可选的,在一些实施例中,也可以提取第一音频数据/第二音频数据对应的MFCC特征。将第一音频数据对应的MFCC特征、语义标签序列以及唤醒标签,作为语音唤醒训练的一组正例数据,将第二音频数据对应的MFCC特征,随机生成的语义标签序列以及不唤醒标签,作为语音唤醒训练的一组负例数据。
本实施例示出的语音唤醒训练数据包括多组正例数据以及多组负例数据,每组正例数据包括用户自定义的音频数据,该音频数据对应的语义标签序列以及唤醒标签,每组负例数据包括不含用户自定义唤醒词的音频数据,随机生成的语义标签序列以及不唤醒标签。基于语音唤醒训练数据,对第一模型进行训练,使得模型能够准确判断是否唤醒设备,提升对自定义音频的唤醒识别效果。
基于上述各个实施例,可以将训练好的语音唤醒模型预置在语音唤醒设备中,例如智能音箱、电视、手机等设备,使得设备具有自定义语音唤醒的功能。下面结合图6对语音唤醒设备的数据处理过程进行说明。
图6为本公开实施例提供的语音唤醒方法的流程示意图。该过程可以以图1中的语音唤醒设备作为执行主体。如图6所示,该语音唤醒方法可以包括如下步骤:
步骤601、接收用户输入的音频数据。
步骤602、对音频数据进行特征提取,得到音频数据对应的FBank特征。对音频数据进行特征提取的方法可参照上文实施例的步骤402,此处不再赘述。
步骤603、基于语音唤醒模型的编码模块,对音频数据对应的FBank特征进行编码,得到音频数据对应的特征编码序列。
本实施例中,将音频数据对应的FBank特征作为语音唤醒模型的编码模块的输入,参照图2,将音频数据对应的Fbank特征输入编码模块最底层的CNN模块,经两个CNN模块、两个RNN模块处理后,输出音频数据对应的特征编码序列。
步骤604、采用ctc解码确定特征编码序列中得分大于或等于预设值的目标特征编码序列。
本实施例中,ctc解码是基于预设长度的滑动窗,例如2s的滑动窗,从滑动窗起始位置对应的特征编码序列开始解码,获取解码得分大于或等于预设值的音频片段,将该音频片段对应的特征编码序列,即目标特征编码序列,作为语音唤醒模型的解码模块的输入。其中预设值可根据实际应用合理设置,对此本实施例不作具体限定。
需要指出的是,语音唤醒模型的训练过程不包括本步骤,可将ctc解码作为单独的处理模块。图7为本公开实施例提供的一种语音唤醒模型的结构示意图。如图7所示,将用于ctc解码的处理模块置于语音唤醒模型的编码模块和解码模块之间,经该处理模块过滤后,将得分大于或等于预设值的目标特征编码序列,输出至语音唤醒模型的解码模块的注意力机制模块中。
步骤605、获取用户自定义唤醒词对应的语义标签序列。
用户自定义唤醒词对应的语义标签序列是预先存储在语音唤醒设备中的,其获取方法可参照上文实施例的步骤403。
步骤606、基于语音唤醒模型的解码模块,对目标特征编码序列以及语义标签序列进行解码分析,确定是否唤醒终端设备。
本实施例中,将目标特征编码序列和用户自定义唤醒词对应的语义标签序列,作为语音唤醒模型的解码模块的输入,参照图2,将用户自定义唤醒词对应的语义标签序列输入解码模块的RNN模块(注意力机制模块右侧的RNN模块),将目标特征编码序列输入解码模块的注意力机制模块,经注意力机制模块、RNN模块、全连接模块以及归一化模块处理后,输出是否唤醒的结果。
本实施例示出的语音唤醒方法,基于训练好的语音唤醒模型,该语音唤醒模型采用encoder-decoder架构,其中模型解码部分包括注意力机制模块,极大地提升了自定义语音唤醒的性能。
本公开实施例示出的语音唤醒方案是基于包含注意力机制模块的语音唤醒模型来确定是否唤醒设备。通过实验测试,得到表1和表2,其中表1示出了卷积神经网络CNN-深度神经网络(Deep Neural Networks,DNN)自定义唤醒与包含注意力机制的自定义唤醒的测试统计数据,表2示出了定制唤醒与包含注意力机制的自定义唤醒的测试统计数据。需要指出的是,定制唤醒是指设备出厂前制造商预置了设备唤醒词,没有改唤醒词的功能,通常定制唤醒性能优于自定义唤醒。
表1
表2
由表1可知,本案自定义唤醒方案相较于CNN-DNN方案,在内噪精度提升13.6%的同时,误报降低了超过70%。
由表2可知,本案自定义唤醒方案相较于定制唤醒方案,在误报基本持平的情况下,内噪精度降低了0.1%,外噪精度降低了2.9%。本案自定义唤醒方案的精度逼近定制唤醒水平。
需要说明的是,内噪是指设备自身产生的噪声,外噪是指设备所处环境产生的噪声总和。外噪包括底噪和点噪,底噪包括例如空调噪音、车噪,属于平稳噪音;点噪是有明确方向的噪音,属于非平稳噪音。
图8为本公开实施例提供的语音唤醒模型的训练装置的结构示意图。本实施例提供的语音唤醒模型的训练装置可以为一种电子设备或者为电子设备中的装置。如图8所示,本公开实施例提供的语音唤醒模型的训练装置800可以包括:
第一获取模块801,用于获取语音识别训练数据;
第一训练模块802,用于根据所述语音识别训练数据对基础模型进行语音识别训练,得到模型损失函数收敛时的基础模型的模型参数;所述基础模型包括编码模块和解码模块;
模型配置模块803,用于响应于用户发起的模型配置指令,基于所述基础模型的模型参数,更新所述基础模型中解码模块的配置参数,得到第一模型;
第二获取模块804,用于获取语音唤醒训练数据;
第二训练模块805,用于根据所述语音唤醒训练数据,对所述第一模型进行语音唤醒训练,得到模型损失函数收敛时的第一模型;
模型生成模块806,用于将模型损失函数收敛时的第一模型作为所述语音唤醒模型。
本实施例的一个可选实施例中,所述模型配置模块803,包括:模型参数更新子模块,用于响应于用户发起的模型配置指令,基于所述基础模型的模型参数,更新所述基础模型中所述解码模块的全连接子模块和归一化子模块的配置参数,得到所述第一模型。
本实施例的一个可选实施例中,所述模型配置模块803,包括:模型参数更新子模块,用于响应于用户发起的模型配置指令,基于所述基础模型的模型参数,将所述基础模型中所述解码模块的全连接子模块和归一化子模块的输出维度更新为二维。
本实施例的一个可选实施例中,所述模型损失函数包括ctc损失函数和ce损失函数;所述ctc损失函数,用于训练所述基础模型或所述第一模型的编码模块;所述ce损失函数,用于训练所述基础模型或所述第一模型的解码模块。
本实施例的一个可选实施例中,所述第一训练模块802,包括:
第一联合训练子模块,用于根据所述语音识别训练数据对所述基础模型的编码模块和解码模块进行联合训练;在所述编码模块对应的ctc损失函数和所述解码模块对应的ce损失函数均收敛时,得到所述基础模型的模型参数。
本实施例的一个可选实施例中,所述第二训练模块805,包括:
第二联合训练子模块,用于根据所述语音唤醒训练数据,对所述第一模型的编码模块和解码模块进行联合训练;在所述编码模块对应的ctc损失函数和所述解码模块对应的ce损失函数均收敛时,得到所述第一模型。
本实施例的一个可选实施例中,所述第一获取模块801,包括:
第一接收子模块,用于接收用户输入的第一音频数据,所述第一音频数据为包含自定义唤醒词的音频数据;
第一特征提取子模块,用于对所述第一音频数据进行特征提取,得到所述第一音频数据对应的FBank特征;
第一获取子模块,用于获取所述第一音频数据对应的语义标签序列以及音节序列;
第一创建子模块,用于将所述第一音频数据对应的FBank特征、语义标签序列以及音节序列,作为所述语音识别训练的一组训练数据。
本实施例的一个可选实施例中,所述第二获取模块804,包括:
第二创建子模块,用于将用户输入的第一音频数据对应的FBank特征、语义标签序列以及唤醒标签,作为所述语音唤醒训练的一组正例数据;所述第一音频数据为包含自定义唤醒词的音频数据;
第二接收子模块,用于接收用户输入的第二音频数据,对所述第二音频数据进行特征提取,得到所述第二音频数据对应的FBank特征;所述第二音频数据为不包含所述自定义唤醒词的音频数据;
第三创建子模块,用于将所述第二音频数据对应的FBank特征,随机生成的语义标签序列以及不唤醒标签,作为所述语音唤醒训练的一组负例数据;所述随机生成的语义标签序列与所述第二音频数据对应的语义标签序列不同。
本实施例提供的语音唤醒模型的训练装置,可用于执行前述方法实施例中的模型训练方法,其实现原理和技术效果类似,此处不做作赘述。
图9为本公开实施例提供的语音唤醒装置的结构示意图。本实施例提供的语音唤醒装置可以为一种电子设备或者为电子设备中的装置。如图9所示,本公开实施例提供的语音唤醒装置900可以包括:
接收模块901,用于接收用户输入的音频数据;
特征提取模块902,用于对所述音频数据进行特征提取,得到所述音频数据对应的FBank特征;
第一处理模块903,用于基于语音唤醒模型的编码模块,对所述音频数据对应的FBank特征进行编码,得到所述音频数据对应的特征编码序列;
第二处理模块904,用于采用ctc解码确定所述特征编码序列中得分大于或等于预设值的目标特征编码序列;
获取模块905,用于获取用户自定义唤醒词对应的语义标签序列;
第三处理模块906,用于基于所述语音唤醒模型的解码模块,对所述目标特征编码序列以及所述语义标签序列进行解码分析,确定是否唤醒终端设备。
本实施例提供的语音唤醒装置,可用于执行前述方法实施例中的语音唤醒方法,其实现原理和技术效果类似,此处不做作赘述。
根据本公开的实施例,本公开还提供了一种电子设备、一种可读存储介质和一种计算机程序产品。
根据本公开的实施例,本公开还提供了一种计算机程序产品,计算机程序产品包括:计算机程序,计算机程序存储在可读存储介质中,电子设备的至少一个处理器可以从可读存储介质读取计算机程序,至少一个处理器执行计算机程序使得电子设备执行上述任一实施例提供的方案。
图10为本公开实施例提供的电子设备的结构示意图。电子设备旨在表示各种形式的数字计算机,诸如,膝上型计算机、台式计算机、工作台、个人数字助理、服务器、刀片式服务器、大型计算机、和其它适合的计算机。电子设备还可以表示各种形式的移动装置,诸如,个人数字处理、蜂窝电话、智能电话、可穿戴设备和其它类似的计算装置。本文所示的部件、它们的连接和关系、以及它们的功能仅仅作为示例,并且不意在限制本文中描述的和/或者要求的本公开的实现。
如图10所示,设备1000包括计算单元1001,其可以根据存储在只读存储器(ROM)1002中的计算机程序或者从存储单元1008加载到随机访问存储器(RAM)1003中的计算机程序,来执行各种适当的动作和处理。在RAM 1003中,还可存储设备1000操作所需的各种程序和数据。计算单元1001、ROM 1002以及RAM 1003通过总线1004彼此相连。输入/输出(I/O)接口1005也连接至总线1004。
设备1000中的多个部件连接至I/O接口1005,包括:输入单元1006,例如键盘、鼠标等;输出单元1007,例如各种类型的显示器、扬声器等;存储单元1008,例如磁盘、光盘等;以及通信单元1009,例如网卡、调制解调器、无线通信收发机等。通信单元1009允许设备1000通过诸如因特网的计算机网络和/或各种电信网络与其他设备交换信息/数据。
计算单元1001可以是各种具有处理和计算能力的通用和/或专用处理组件。计算单元1001的一些示例包括但不限于中央处理单元(CPU)、图形处理单元(GPU)、各种专用的人工智能(AI)计算芯片、各种运行机器学习模型算法的计算单元、数字信号处理器(DSP)、以及任何适当的处理器、控制器、微控制器等。计算单元1001执行上文所描述的各个方法和处理,例如语音唤醒模型的训练方法或者语音唤醒方法。例如,在一些实施例中,语音唤醒模型的训练方法或者语音唤醒方法可被实现为计算机软件程序,其被有形地包含于机器可读介质,例如存储单元1008。在一些实施例中,计算机程序的部分或者全部可以经由ROM1002和/或通信单元1009而被载入和/或安装到设备1000上。当计算机程序加载到RAM 1003并由计算单元1001执行时,可以执行上文描述的语音唤醒模型的训练方法或者语音唤醒方法的一个或多个步骤。备选地,在其他实施例中,计算单元1001可以通过其他任何适当的方式(例如,借助于固件)而被配置为执行语音唤醒模型的训练方法或者语音唤醒方法。
本文中以上描述的系统和技术的各种实施方式可以在数字电子电路系统、集成电路系统、场可编程门阵列(FPGA)、专用集成电路(ASIC)、专用标准产品(ASSP)、芯片上系统的系统(SOC)、复杂可编程逻辑设备(CPLD)、计算机硬件、固件、软件、和/或它们的组合中实现。这些各种实施方式可以包括:实施在一个或者多个计算机程序中,该一个或者多个计算机程序可在包括至少一个可编程处理器的可编程系统上执行和/或解释,该可编程处理器可以是专用或者通用可编程处理器,可以从存储系统、至少一个输入装置、和至少一个输出装置接收数据和指令,并且将数据和指令传输至该存储系统、该至少一个输入装置、和该至少一个输出装置。
用于实施本公开的方法的程序代码可以采用一个或多个编程语言的任何组合来编写。这些程序代码可以提供给通用计算机、专用计算机或其他可编程数据处理装置的处理器或控制器,使得程序代码当由处理器或控制器执行时使流程图和/或框图中所规定的功能/操作被实施。程序代码可以完全在机器上执行、部分地在机器上执行,作为独立软件包部分地在机器上执行且部分地在远程机器上执行或完全在远程机器或服务器上执行。
在本公开的上下文中,机器可读介质可以是有形的介质,其可以包含或存储以供指令执行系统、装置或设备使用或与指令执行系统、装置或设备结合地使用的程序。机器可读介质可以是机器可读信号介质或机器可读储存介质。机器可读介质可以包括但不限于电子的、磁性的、光学的、电磁的、红外的、或半导体系统、装置或设备,或者上述内容的任何合适组合。机器可读存储介质的更具体示例会包括基于一个或多个线的电气连接、便携式计算机盘、硬盘、随机存取存储器(RAM)、只读存储器(ROM)、可擦除可编程只读存储器(EPROM或快闪存储器)、光纤、便捷式紧凑盘只读存储器(CD-ROM)、光学储存设备、磁储存设备、或上述内容的任何合适组合。
为了提供与用户的交互,可以在计算机上实施此处描述的系统和技术,该计算机具有:用于向用户显示信息的显示装置(例如,CRT(阴极射线管)或者LCD(液晶显示器)监视器);以及键盘和指向装置(例如,鼠标或者轨迹球),用户可以通过该键盘和该指向装置来将输入提供给计算机。其它种类的装置还可以用于提供与用户的交互;例如,提供给用户的反馈可以是任何形式的传感反馈(例如,视觉反馈、听觉反馈、或者触觉反馈);并且可以用任何形式(包括声输入、语音输入或者、触觉输入)来接收来自用户的输入。
可以将此处描述的系统和技术实施在包括后台部件的计算系统(例如,作为数据服务器)、或者包括中间件部件的计算系统(例如,应用服务器)、或者包括前端部件的计算系统(例如,具有图形用户界面或者网络浏览器的用户计算机,用户可以通过该图形用户界面或者该网络浏览器来与此处描述的系统和技术的实施方式交互)、或者包括这种后台部件、中间件部件、或者前端部件的任何组合的计算系统中。可以通过任何形式或者介质的数字数据通信(例如,通信网络)来将系统的部件相互连接。通信网络的示例包括:局域网(LAN)、广域网(WAN)和互联网。
计算机系统可以包括客户端和服务器。客户端和服务器一般远离彼此并且通常通过通信网络进行交互。通过在相应的计算机上运行并且彼此具有客户端-服务器关系的计算机程序来产生客户端和服务器的关系。服务器可以是云服务器,又称为云计算服务器或云主机,是云计算服务体系中的一项主机产品,以解决了传统物理主机与VPS服务("Virtual Private Server",或简称"VPS")中,存在的管理难度大,业务扩展性弱的缺陷。服务器也可以为分布式系统的服务器,或者是结合了区块链的服务器。
应该理解,可以使用上面所示的各种形式的流程,重新排序、增加或删除步骤。例如,本发公开中记载的各步骤可以并行地执行也可以顺序地执行也可以不同的次序执行,只要能够实现本公开公开的技术方案所期望的结果,本文在此不进行限制。
上述具体实施方式,并不构成对本公开保护范围的限制。本领域技术人员应该明白的是,根据设计要求和其他因素,可以进行各种修改、组合、子组合和替代。任何在本公开的精神和原则之内所作的修改、等同替换和改进等,均应包含在本公开保护范围之内。
Claims (21)
1.一种语音唤醒模型的训练方法,包括:
获取语音识别训练数据,根据所述语音识别训练数据对基础模型进行语音识别训练,得到模型损失函数收敛时的基础模型的模型参数;所述基础模型包括编码模块和解码模块;
响应于用户发起的模型配置指令,基于所述基础模型的模型参数,更新所述基础模型中解码模块的配置参数,得到第一模型;
获取语音唤醒训练数据,根据所述语音唤醒训练数据,对所述第一模型进行语音唤醒训练,得到模型损失函数收敛时的第一模型;
将模型损失函数收敛时的第一模型作为所述语音唤醒模型。
2.根据权利要求1所述的方法,其中,所述响应于用户发起的模型配置指令,基于所述基础模型的模型参数,更新所述基础模型中解码模块的配置参数,得到第一模型,包括:
响应于用户发起的模型配置指令,基于所述基础模型的模型参数,更新所述基础模型中所述解码模块的全连接子模块和归一化子模块的配置参数,得到所述第一模型。
3.根据权利要求1或2所述的方法,其中,所述响应于用户发起的模型配置指令,基于所述基础模型的模型参数,更新所述基础模型中解码模块的配置参数,得到第一模型,包括:
响应于用户发起的模型配置指令,基于所述基础模型的模型参数,将所述基础模型中所述解码模块的全连接子模块和归一化子模块的输出维度更新为二维。
4.根据权利要求1至3中任一项所述的方法,其中,所述模型损失函数包括连结时序分类ctc损失函数和交叉熵误差ce损失函数;
所述ctc损失函数,用于训练所述基础模型或所述第一模型的编码模块;
所述ce损失函数,用于训练所述基础模型或所述第一模型的解码模块。
5.根据权利要求1至3中任一项所述的方法,其中,所述根据所述语音识别训练数据对基础模型进行语音识别训练,得到模型损失函数收敛时的基础模型的模型参数,包括:
根据所述语音识别训练数据对所述基础模型的编码模块和解码模块进行联合训练;在所述编码模块对应的ctc损失函数和所述解码模块对应的ce损失函数均收敛时,得到所述基础模型的模型参数。
6.根据权利要求1至3中任一项所述的方法,其中,所述根据所述语音唤醒训练数据,对所述第一模型进行语音唤醒训练,得到模型损失函数收敛时的第一模型,包括:
根据所述语音唤醒训练数据,对所述第一模型的编码模块和解码模块进行联合训练;在所述编码模块对应的ctc损失函数和所述解码模块对应的ce损失函数均收敛时,得到所述第一模型。
7.根据权利要求1至6中任一项所述的方法,其中,所述获取语音识别训练数据,包括:
接收用户输入的第一音频数据,所述第一音频数据为包含自定义唤醒词的音频数据;
对所述第一音频数据进行特征提取,得到所述第一音频数据对应的滤波器组FBank特征;
获取所述第一音频数据对应的语义标签序列以及音节序列;
将所述第一音频数据对应的FBank特征、语义标签序列以及音节序列,作为所述语音识别训练的一组训练数据。
8.根据权利要求1至6中任一项所述的方法,其中,所述获取语音唤醒训练数据,包括:
将用户输入的第一音频数据对应的FBank特征、语义标签序列以及唤醒标签,作为所述语音唤醒训练的一组正例数据;所述第一音频数据为包含自定义唤醒词的音频数据;
接收用户输入的第二音频数据,对所述第二音频数据进行特征提取,得到所述第二音频数据对应的FBank特征;所述第二音频数据为不包含所述自定义唤醒词的音频数据;
将所述第二音频数据对应的FBank特征,随机生成的语义标签序列以及不唤醒标签,作为所述语音唤醒训练的一组负例数据;所述随机生成的语义标签序列与所述第二音频数据对应的语义标签序列不同。
9.一种语音唤醒方法,应用于终端设备,所述方法包括:
接收用户输入的音频数据;
对所述音频数据进行特征提取,得到所述音频数据对应的滤波器组FBank特征;
基于语音唤醒模型的编码模块,对所述音频数据对应的FBank特征进行编码,得到所述音频数据对应的特征编码序列;采用连结时序分类ctc解码确定所述特征编码序列中得分大于或等于预设值的目标特征编码序列;
获取用户自定义唤醒词对应的语义标签序列;
基于所述语音唤醒模型的解码模块,对所述目标特征编码序列以及所述语义标签序列进行解码分析,确定是否唤醒所述终端设备。
10.一种语音唤醒模型的训练装置,包括:
第一获取模块,用于获取语音识别训练数据;
第一训练模块,用于根据所述语音识别训练数据对基础模型进行语音识别训练,得到模型损失函数收敛时的基础模型的模型参数;所述基础模型包括编码模块和解码模块;
模型配置模块,用于响应于用户发起的模型配置指令,基于所述基础模型的模型参数,更新所述基础模型中解码模块的配置参数,得到第一模型;
第二获取模块,用于获取语音唤醒训练数据;
第二训练模块,用于根据所述语音唤醒训练数据,对所述第一模型进行语音唤醒训练,得到模型损失函数收敛时的第一模型;
模型生成模块,用于将模型损失函数收敛时的第一模型作为所述语音唤醒模型。
11.根据权利要求10所述的装置,其中,所述模型配置模块,包括:模型参数更新子模块,用于响应于用户发起的模型配置指令,基于所述基础模型的模型参数,更新所述基础模型中所述解码模块的全连接子模块和归一化子模块的配置参数,得到所述第一模型。
12.根据权利要求10或11所述的装置,其中,所述模型配置模块,包括:模型参数更新子模块,用于响应于用户发起的模型配置指令,基于所述基础模型的模型参数,将所述基础模型中所述解码模块的全连接子模块和归一化子模块的输出维度更新为二维。
13.根据权利要求10至12中任一项所述的装置,其中,所述模型损失函数包括连结时序分类ctc损失函数和交叉熵误差ce损失函数;
所述ctc损失函数,用于训练所述基础模型或所述第一模型的编码模块;
所述ce损失函数,用于训练所述基础模型或所述第一模型的解码模块。
14.根据权利要求10至12中任一项所述的装置,其中,所述第一训练模块,包括:
第一联合训练子模块,用于根据所述语音识别训练数据对所述基础模型的编码模块和解码模块进行联合训练;在所述编码模块对应的ctc损失函数和所述解码模块对应的ce损失函数均收敛时,得到所述基础模型的模型参数。
15.根据权利要求10至12中任一项所述的装置,其中,所述第二训练模块,包括:
第二联合训练子模块,用于根据所述语音唤醒训练数据,对所述第一模型的编码模块和解码模块进行联合训练;在所述编码模块对应的ctc损失函数和所述解码模块对应的ce损失函数均收敛时,得到所述第一模型。
16.根据权利要求10至15中任一项所述的装置,其中,所述第一获取模块,包括:
第一接收子模块,用于接收用户输入的第一音频数据,所述第一音频数据为包含自定义唤醒词的音频数据;
第一特征提取子模块,用于对所述第一音频数据进行特征提取,得到所述第一音频数据对应的滤波器组FBank特征;
第一获取子模块,用于获取所述第一音频数据对应的语义标签序列以及音节序列;
第一创建子模块,用于将所述第一音频数据对应的FBank特征、语义标签序列以及音节序列,作为所述语音识别训练的一组训练数据。
17.根据权利要求10至15中任一项所述的装置,其中,所述第二获取模块,包括:
第二创建子模块,用于将用户输入的第一音频数据对应的FBank特征、语义标签序列以及唤醒标签,作为所述语音唤醒训练的一组正例数据;所述第一音频数据为包含自定义唤醒词的音频数据;
第二接收子模块,用于接收用户输入的第二音频数据,对所述第二音频数据进行特征提取,得到所述第二音频数据对应的FBank特征;所述第二音频数据为不包含所述自定义唤醒词的音频数据;
第三创建子模块,用于将所述第二音频数据对应的FBank特征,随机生成的语义标签序列以及不唤醒标签,作为所述语音唤醒训练的一组负例数据;所述随机生成的语义标签序列与所述第二音频数据对应的语义标签序列不同。
18.一种语音唤醒装置,包括:
接收模块,用于接收用户输入的音频数据;
特征提取模块,用于对所述音频数据进行特征提取,得到所述音频数据对应的滤波器组FBank特征;
第一处理模块,用于基于语音唤醒模型的编码模块,对所述音频数据对应的FBank特征进行编码,得到所述音频数据对应的特征编码序列;
第二处理模块,用于采用连结时序分类ctc解码确定所述特征编码序列中得分大于或等于预设值的目标特征编码序列;
获取模块,用于获取用户自定义唤醒词对应的语义标签序列;
第三处理模块,用于基于所述语音唤醒模型的解码模块,对所述目标特征编码序列以及所述语义标签序列进行解码分析,确定是否唤醒终端设备。
19.一种电子设备,包括:
至少一个处理器;以及
与所述至少一个处理器通信连接的存储器;其中,
所述存储器存储有可被所述至少一个处理器执行的指令,所述指令被所述至少一个处理器执行,以使所述至少一个处理器能够执行权利要求1至8中任一项所述的方法,或者,执行权利要求9所述的方法。
20.一种存储有计算机指令的非瞬时计算机可读存储介质,其中,所述计算机指令用于使所述计算机执行根据权利要求1至8中任一项所述的方法,或者,执行权利要求9所述的方法。
21.一种计算机程序产品,包括计算机程序,该计算机程序被处理器执行时实现权利要求1至8中任一项所述的方法,或者,权利要求9所述的方法。
Priority Applications (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202210356735.2A CN114842855A (zh) | 2022-04-06 | 2022-04-06 | 语音唤醒模型的训练、唤醒方法、装置、设备及存储介质 |
PCT/CN2022/115175 WO2023193394A1 (zh) | 2022-04-06 | 2022-08-26 | 语音唤醒模型的训练、唤醒方法、装置、设备及存储介质 |
US18/328,135 US20230317060A1 (en) | 2022-04-06 | 2023-06-02 | Method and apparatus for training voice wake-up model, method and apparatus for voice wake-up, device, and storage medium |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202210356735.2A CN114842855A (zh) | 2022-04-06 | 2022-04-06 | 语音唤醒模型的训练、唤醒方法、装置、设备及存储介质 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN114842855A true CN114842855A (zh) | 2022-08-02 |
Family
ID=82564796
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202210356735.2A Pending CN114842855A (zh) | 2022-04-06 | 2022-04-06 | 语音唤醒模型的训练、唤醒方法、装置、设备及存储介质 |
Country Status (2)
Country | Link |
---|---|
CN (1) | CN114842855A (zh) |
WO (1) | WO2023193394A1 (zh) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN115132210A (zh) * | 2022-09-02 | 2022-09-30 | 北京百度网讯科技有限公司 | 音频识别方法、音频识别模型的训练方法、装置和设备 |
WO2023193394A1 (zh) * | 2022-04-06 | 2023-10-12 | 北京百度网讯科技有限公司 | 语音唤醒模型的训练、唤醒方法、装置、设备及存储介质 |
Family Cites Families (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN107134279B (zh) * | 2017-06-30 | 2020-06-19 | 百度在线网络技术(北京)有限公司 | 一种语音唤醒方法、装置、终端和存储介质 |
CN112185382B (zh) * | 2020-09-30 | 2024-03-08 | 北京猎户星空科技有限公司 | 一种唤醒模型的生成和更新方法、装置、设备及介质 |
CN113096647B (zh) * | 2021-04-08 | 2022-11-01 | 北京声智科技有限公司 | 语音模型训练方法、装置和电子设备 |
CN113963688B (zh) * | 2021-12-23 | 2022-05-20 | 深圳市友杰智新科技有限公司 | 语音唤醒模型的训练方法、唤醒词的检测方法和相关设备 |
CN114242065A (zh) * | 2021-12-31 | 2022-03-25 | 科大讯飞股份有限公司 | 语音唤醒方法及装置、语音唤醒模块的训练方法及装置 |
CN114842855A (zh) * | 2022-04-06 | 2022-08-02 | 北京百度网讯科技有限公司 | 语音唤醒模型的训练、唤醒方法、装置、设备及存储介质 |
-
2022
- 2022-04-06 CN CN202210356735.2A patent/CN114842855A/zh active Pending
- 2022-08-26 WO PCT/CN2022/115175 patent/WO2023193394A1/zh unknown
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2023193394A1 (zh) * | 2022-04-06 | 2023-10-12 | 北京百度网讯科技有限公司 | 语音唤醒模型的训练、唤醒方法、装置、设备及存储介质 |
CN115132210A (zh) * | 2022-09-02 | 2022-09-30 | 北京百度网讯科技有限公司 | 音频识别方法、音频识别模型的训练方法、装置和设备 |
Also Published As
Publication number | Publication date |
---|---|
WO2023193394A1 (zh) | 2023-10-12 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN107134279B (zh) | 一种语音唤醒方法、装置、终端和存储介质 | |
CN114842855A (zh) | 语音唤醒模型的训练、唤醒方法、装置、设备及存储介质 | |
CN112259089B (zh) | 语音识别方法及装置 | |
CN112382285B (zh) | 语音控制方法、装置、电子设备和存储介质 | |
CN114360557B (zh) | 语音音色转换方法、模型训练方法、装置、设备和介质 | |
CN113674746B (zh) | 人机交互方法、装置、设备以及存储介质 | |
CN102945673A (zh) | 一种语音指令范围动态变化的连续语音识别方法 | |
CN110992940B (zh) | 语音交互的方法、装置、设备和计算机可读存储介质 | |
CN115457938A (zh) | 识别唤醒词的方法、装置、存储介质及电子装置 | |
CN114267342A (zh) | 识别模型的训练方法、识别方法、电子设备及存储介质 | |
CN113611316A (zh) | 人机交互方法、装置、设备以及存储介质 | |
CN114242065A (zh) | 语音唤醒方法及装置、语音唤醒模块的训练方法及装置 | |
KR102220964B1 (ko) | 오디오 인식을 위한 방법 및 디바이스 | |
CN111640423B (zh) | 一种词边界估计方法、装置及电子设备 | |
CN109862408B (zh) | 一种用于智能电视语音遥控器的用户语音识别控制方法 | |
CN112669837A (zh) | 智能终端的唤醒方法、装置及电子设备 | |
CN114399992B (zh) | 语音指令响应方法、装置及存储介质 | |
CN115862604A (zh) | 语音唤醒模型训练及语音唤醒方法、装置及计算机设备 | |
CN114121022A (zh) | 语音唤醒方法、装置、电子设备以及存储介质 | |
CN113257238B (zh) | 预训练模型的训练方法、编码特征获取方法及相关装置 | |
CN111048068A (zh) | 语音唤醒方法、装置、系统及电子设备 | |
CN113327596B (zh) | 语音识别模型的训练方法、语音识别方法和装置 | |
CN114783423A (zh) | 基于语速调整的语音切分方法、装置、计算机设备及介质 | |
CN113553413A (zh) | 对话状态的生成方法、装置、电子设备和存储介质 | |
CN114512136B (zh) | 模型训练、音频处理方法、装置、设备、存储介质及程序 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination |