一种残膜回收机防缠绕挑膜装置的制 一种秧草收获机用电力驱动行走机构

语音控制方法、装置、电子设备及存储介质与流程

2021-09-25 02:51:00 来源:中国专利 TAG:电子设备 语音 装置 语音识别 控制


1.本技术涉及语音识别领域,尤其涉及一种语音控制方法、装置、电子设备及存储介质。


背景技术:

2.语音是人与机器之间最自然的交互方式之一。在物联网时代,语音交互被普遍视为最有可能成为下一代信息、内容以及服务的核心入口之一。目前,语音交互已在通讯、智能家居、车载、智能机器人等领域得到广泛的应用,特别是近几年,以智能音箱为代表的语音交互产品在国内外的火爆,极大地激发了语音交互技术的应用和发展,可以说语音交互的时代即将到来。
3.语音唤醒作为交互设备的名称,起到唤醒设备启动后续语音交互进程的作用,对提升交互体验和控制设备功耗具有不可替代的重要作用,是语音交互的核心模块之一。语音唤醒是语音交互设备的入口,需要一直运行,随时响应用户的请求。既要求语音唤醒模块能够准确而灵敏地响应用户的请求,也要求其尽量避免误唤醒。在保证唤醒率不降低的前提下,尽可能地降低误唤醒是语音唤醒领域致力于追求的目标。
4.最为经典的语音唤醒技术是基于hmm

filler解码方案,由声学模型和解码器构成。声学模型计算输入语音的状态后验概率,解码器利用后验概率计算解码路径的得分。最后设计决策器根据解码得分决定是否唤醒。在解码路径构建中,垃圾路径是吸收非唤醒声音的主要途径,对误唤醒的控制至关重要。传统的垃圾路径笼统的用两个状态表示,如图1所示,“sil”是静音和非语音状态状态,“g”是非唤醒词的语音状态。这条垃圾路径能够吸收绝大部分非唤醒声音的得分,特别是对非语音的噪声和干扰,但与唤醒词相近的语音比较容易引起误唤醒,比如对于唤醒词“小度小度”,同样四个字的相近词,比如“小猫小狗”等可能容易引起误唤醒。为了缓解这种情况引起的误唤醒,一个有效的手段是找到引起误唤醒的路径,然后将其加入到解码路径中,但这种方案实施起来非常繁琐,需要通过误唤醒测试找到所有容易引起误唤醒的路径,然后将他们依次加入解码路径中。


技术实现要素:

5.为了解决上述技术问题或者至少部分地解决上述技术问题,本技术的实施例提供了一种语音控制方法、装置、电子设备及存储介质。
6.第一方面,本技术的实施例提供了一种语音控制方法,包括以下步骤:获取已知唤醒词的音节;确定与所述唤醒词对应的非唤醒词的音节;根据所述唤醒词的音节、所述非唤醒词的音节和预设的垃圾词信息构建唤醒词解码网络,以根据所述唤醒词解码网络对输入的语音进行解码,并根据解码结果确定是否执行唤醒操作。
7.优选地,所述确定与所述唤醒词对应的非唤醒词的音节,包括:
按照预设的拼读方法,将唤醒词的音节分为多个音节组成;确定与唤醒词的音节组成对应的非唤醒词的音节组成,其中,所述非唤醒词的音节组成为不是唤醒词的当前音节组成且属于当前音节组成所属类型的所有音节组成的集合;按照唤醒词的音节的拼合顺序,将所述非唤醒词的音节组成拼合为非唤醒词的音节。
8.优选地,所述音节组成所属类型包括声母和韵母,所述确定与唤醒词的音节组成对应的非唤醒词的音节组成,包括:对于唤醒词的音节中的声母,确定不是当前声母的所有声母的集合作为与所述唤醒词对应的非唤醒词的音节组成;对于唤醒词的音节中的韵母,确定不是当前韵母的所有韵母的集合作为与所述唤醒词对应的非唤醒词的音节组成,其中,所述韵母上标注声调。
9.优选地,所述根据所述唤醒词解码网络对输入的语音进行解码,包括:将输入的语音输入预先训练的语音唤醒模型,得到所述语音的音素后验概率;利用所述唤醒词解码网络对所述语音的音素后验概率进行解码,得到所述语音的解码得分;根据所述解码得分确定是否执行唤醒动作。
10.优选地,所述根据所述解码得分确定是否执行唤醒动作,包括:利用预先构建的分别用于测试唤醒率和误唤醒率的唤醒数据集确定唤醒得分阈值;判断所述解码得分是否在所述唤醒得分阈值内:当所述解码得分在所述唤醒得分阈值内时,执行唤醒动作。
11.优选地,所述语音唤醒模型通过以下步骤构建得到:对已知的带噪带混响的唤醒词语音以及带有文本标注的通用语音进行强制对齐,得到帧级别的对齐标签;以包括当前帧的多帧数据拼接而成的语音为输入,以当前帧的对齐标签为输出训练神经网络模型,训练得到语音唤醒模型。
12.优选地,所述包括当前帧的多帧数据为以当前帧为中心间隔采样得到的固定数量的多帧数据。
13.第二方面,本技术的实施例提供了一种语音控制装置,包括:获取模块,其用于获取已知唤醒词的音节;确定模块,其用于确定与所述唤醒词对应的非唤醒词的音节;构建模块,其用于根据所述唤醒词的音节、所述非唤醒词的音节和预设的垃圾词信息构建唤醒词解码网络;唤醒模块,其用于根据所述唤醒词解码网络对输入的语音进行解码,并根据解码结果确定是否执行唤醒操作。
14.第三方面,本技术的实施例提供了一种电子设备,包括处理器、通信接口、存储器和通信总线,其中,处理器,通信接口,存储器通过通信总线完成相互间的通信;存储器,用于存放计算机程序;
处理器,用于执行存储器上所存放的程序时,实现如上所述的语音控制方法。
15.第四方面,本技术的实施例提供了一种计算机可读存储介质,其上存储有计算机程序,所述计算机程序被处理器执行时实现如上所述的语音控制方法。
16.本技术实施例提供的上述技术方案与现有技术相比具有如下优点:本技术实施例提供的该方法,获取已知唤醒词的音节;确定与所述唤醒词对应的非唤醒词的音节;根据所述唤醒词的音节、所述非唤醒词的音节和预设的垃圾词信息构建唤醒词解码网络,以根据所述唤醒词解码网络对输入的语音进行解码,并根据解码结果确定是否执行唤醒操作,本技术在解码网络中引入非唤醒词的音节从而统一描述非唤醒词,能够降低非唤醒词引起的误唤醒率。
附图说明
17.此处的附图被并入说明书中并构成本说明书的一部分,示出了符合本发明的实施例,并与说明书一起用于解释本发明的原理。
18.为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,对于本领域普通技术人员而言,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。
19.图1示意性示出了现有技术中垃圾路径示意图;图2示意性示出了本技术实施例提供的一种语音控制方法的流程示意图;图3示意性示出了本技术又一实施例提供的一种语音控制方法流程示意图;图4示意性示出了本技术又一实施例提供的一种语音控制方法流程示意图;图5示意性示出了本技术实施例提供的一种唤醒词解码网络示意图;图6示意性示出了本技术又一实施例提供的一种语音控制方法流程示意图;图7示意性示出了本技术又一实施例提供的一种语音控制方法流程示意图;图8示意性示出了本技术实施例提供的一种语音唤醒模型示意图;图9示意性示出了本技术实施例提供的一种语音唤醒模型输入帧拼接方式示意图;图10示意性示出了本技术又一实施例提供的一种语音控制方法流程示意图;图11示意性示出了本技术又一实施例提供的一种语音控制装置结构示意图;图12示意性示出了本技术又一实施例提供的一种语音控制装置工作流程示意图;图13示意性示出了本技术又一实施例提供的一种电子设备结构示意图。
具体实施方式
20.为使本技术实施例的目的、技术方案和优点更加清楚,下面将结合本技术实施例中的附图,对本技术实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本技术的一部分实施例,而不是全部的实施例。基于本技术中的实施例,本领域普通技术人员在没有做出创造性劳动的前提下所获得的所有其他实施例,都属于本技术保护的范围。
21.图2为本技术实施例提供的一种语音控制方法的流程示意图。如图2所示,本技术的语音控制方法,以下步骤:s1,获取已知唤醒词的音节;
iy4, iy5, iz4, iz5, o1, o4, o5, oo, ong1, ong2, ong3, ong4, ong5, ou1, ou2, ou3, ou4, ou5, u1, u2, u3, u4, u5, ua1, ua2, ua3, ua4, ua5, uai1, uai2, uai3, uai4, uai5, uan1, uan2, uan3, uan4, uan5, uang1, uang2, uang3, uang4, uang5, ueng1, ueng3, ueng4, ueng5, ui1, ui2, ui3, ui4, ui5, un1, un2, un3, un4, un5, uo1, uo2, uo3, uo4, uo5, v1, v2, v3, v4, v5, van1, van2, van3, van4, van5, ve1, ve2, ve3, ve4, ve5, vn1, vn2, vn3, vn4, vn5”。“g”代表不是唤醒词音素(x, iao3, d, uo3)的所有其他音素。“~小~朵~小~朵”是指不是“小朵小朵”的所有其他4字语音。
28.如图6所示,步骤s3中,所述根据所述唤醒词解码网络对输入的语音进行解码,包括:s61,将输入的语音输入预先训练的语音唤醒模型,得到所述语音的音素后验概率;s62,利用所述唤醒词解码网络对所述语音的音素后验概率进行解码,得到所述语音的解码得分;s63,根据所述解码得分确定是否执行唤醒动作。
29.在实际应用中,解码时,提取测试语音的fbank特征,通过跳帧的上下文拼帧将其输入训练好的唤醒词解码网络中,能够得到输入特征对应的状态后验概率。利用该状态后验概率,通过viterbi算法计算当前时刻解码网络中每条路径的解码得分,根据解码得分和/或解码状态判断是否唤醒,其中,解码状态表示唤醒词路径与观测向量序列的对应程度。
30.如图7所示,步骤s61中,所述语音唤醒模型通过以下步骤构建得到:s71,对已知的带噪带混响的唤醒词语音以及带有文本标注的通用语音进行强制对齐,得到帧级别的对齐标签;在实际应用中,可以通过连续语音识别模型对已知的带噪带混响的唤醒词语音以及带有文本标注的通用语音进行强制对齐,得到帧级别的对齐标签,包括以下步骤:步骤一:数据准备,收集纯净唤醒词数据集、纯净的通用语音数据、非语音音频数据(例如各种噪声),利用仿真工具仿真房间冲激响应,使用仿真的房间冲激响应生成带混响的唤醒数据和通用语音数据,通过加噪得到带噪带混响的唤醒数据和通用语音数据;步骤二:特征提取与标签生成,对所有音频数据提取40维的fbank特征,可以采用python_speech_features工具包(https://github.com/jameslyons/python_speech_features)提取该特征;借助kaldi开源工具(https://github.com/kaldi

asr/kaldi)利用纯净的通用语音数据按照开源训练脚本egs/aishell2(https://github.com/kaldi

asr/kaldi/tree/master/egs/aishell2)训练连续语音识别模型,然后利用训练好的连续语音识别模型对纯净的唤醒数据和纯净的通用语音数据进行强制对齐,得到帧级别的hmm状态state对齐标签,然后将其转化为帧级别音素phone对齐标签。最后根据对应的纯净语音数据的对齐标签(带噪带混响的语音是通过纯净语音数据加噪加混产生的,因此,带噪带混响语音的对齐与对应的纯净语音是一样的),对带噪带混响语音打标签;s72,以包括当前帧的多帧数据拼接而成的语音为输入,以当前帧的对齐标签为输出训练神经网络模型,训练得到语音唤醒模型,其中,所述包括当前帧的多帧数据为以当前
帧为中心间隔采样得到的固定数量的多帧数据。
31.在实际应用中,如图8所示,采用深度神经网络(deep neural network,dnn)作为训练前的语音唤醒模型。为了挖掘更多上下文信息,当前帧可以拼接上下文帧例如5帧作为最终的输入特征,总共11帧,每帧特征为40维,总共440维,因此,深度神经网络的输入层可以设置为440个结点。同时,为了在有限的维度内提供更长的上下文信息,在拼接上下文帧时采取跳帧拼接的方式,如图9所示,通过间隔拼接上下文帧,深度神经网络的输入特征维度仍为440维,神经网络的参数量和计算量并没增加,但是神经网络的输入包含更长的上下文信息(跳帧拼接后,可以通过5帧看到上下文10帧的信息)。同时,本实施例所使用的深度神经网络采用4个隐层,每层128个结点,根据分类音素个数设置输出层结点个数,输出层的激活函数为softmax。在语音唤醒模型的训练过程中,以跳帧拼接的上下文特征为输入,以对应的帧级别对齐标签为输出,通过交叉熵(cross

entropy,ce)损失,采取批处理的adam优化对神经网络进行训练,直到收敛。
32.本实施例的语音控制方法以包括当前帧的多帧数据拼接而成的语音为输入训练得到语音唤醒模型,能够在不增加计算量的同时使用更多的上下文信息,使得语音唤醒模型对音素的识别更准确。
33.如图10所示,步骤s63中,所述根据所述解码得分确定是否执行唤醒动作,包括:s91,利用预先构建的分别用于测试唤醒率和误唤醒率的唤醒数据集确定唤醒得分阈值;s92,判断所述解码得分是否在所述唤醒得分阈值内:s93,当所述解码得分在所述唤醒得分阈值内时,执行唤醒动作。
34.在实际应用中,构建一个测试唤醒率的唤醒数据集,包括纯净的唤醒数据和带噪的唤醒数据;构建一个测试误唤醒率的数据集,用以测试误唤醒率;通过网格搜索的方式,在唤醒数据集和误唤醒数据集上测试每个阈值的唤醒率和误唤醒率,根据预设要求,选择合适的阈值作为最终的阈值。
35.基于同一发明构思,如图11所示,本发明实施例提供了一种语音控制装置,所述装置包括:获取模块11、确定模块12、构建模块13和唤醒模块14。
36.在本实施例中,获取模块11,其用于获取已知唤醒词的音节。
37.在本实施例中,确定模块12,其用于确定与所述唤醒词对应的非唤醒词的音节。
38.在本实施例中,构建模块13,其用于根据所述唤醒词的音节、所述非唤醒词的音节和预设的垃圾词信息构建唤醒词解码网络。
39.在本实施例中,唤醒模块14,其用于根据所述唤醒词解码网络对输入的语音进行解码,并根据解码结果确定是否执行唤醒操作。
40.在一些实施例中,所述确定模块12,还用于:按照预设的拼读方法,将唤醒词的音节分为多个音节组成;确定与唤醒词的音节组成对应的非唤醒词的音节组成,其中,所述非唤醒词的音节组成为不是唤醒词的当前音节组成且属于当前音节组成所属类型的所有音节组成的集合;按照唤醒词的音节的拼合顺序,将所述非唤醒词的音节组成拼合为非唤醒词的音节。
41.在一些实施例中,所述音节组成所属类型包括声母和韵母,所述确定模块12,还用于:对于唤醒词的音节中的声母,确定不是当前声母的所有声母的集合作为与所述唤醒词对应的非唤醒词的音节组成;对于唤醒词的音节中的韵母,确定不是当前韵母的所有韵母的集合作为与所述唤醒词对应的非唤醒词的音节组成,其中,所述韵母上标注声调。
42.在一些实施例中,所述唤醒模块14,还用于:将输入的语音输入预先训练的语音唤醒模型,得到所述语音的音素后验概率;利用所述唤醒词解码网络对所述语音的音素后验概率进行解码,得到所述语音的解码得分;根据所述解码得分确定是否执行唤醒动作。
43.在一些实施例中,所述唤醒模块14中,所述语音唤醒模型通过以下步骤构建得到:对已知的带噪带混响的唤醒词语音以及带有文本标注的通用语音进行强制对齐,得到帧级别的对齐标签;以包括当前帧的多帧数据拼接而成的语音为输入,以当前帧的对齐标签为输出训练神经网络模型,训练得到语音唤醒模型。
44.在一些实施例中,所述唤醒模块14中,所述包括当前帧的多帧数据为以当前帧为中心间隔采样得到的固定数量的多帧数据。
45.在一些实施例中,所述唤醒模块14,还用于:利用预先构建的分别用于测试唤醒率和误唤醒率的唤醒数据集确定唤醒得分阈值;判断所述解码得分是否在所述唤醒得分阈值内:当所述解码得分在所述唤醒得分阈值内时,执行唤醒动作。
46.如图12所示,本实施例的语音控制装置的工作流程包括:步骤一,数据准备1)收集纯净唤醒数据集、通用纯净语音数据、非语音音频数据;2)利用仿真的房间冲激响应,生成带混响的语音数据和非语音干扰;3)通过加噪产生带噪音频数据。
47.步骤二,特征提取与对齐1)对所有音频数据提取40维的fbank特征;2)使用大型连续语音识别模型对纯净的唤醒语音数据和通用语音数据进行对齐,得到帧级别对齐标签。
48.步骤三,语音唤醒模型训练1)搭建唤醒模型的网络结构;2)拼接跳帧的上下文特征作为输入,对齐标签作为输出目标;3)训练模型直到收敛。
49.步骤四,解码1)构建带有非唤醒词路径的解码网络;2)利用训练好的语音唤醒模型得到音素后验概率;
3)利用viterbi算法计算解码网络中各条路径的解码得分,根据解码得分判断是否唤醒。
50.步骤五,阈值搜索1)构建一个测试唤醒的唤醒数据集,包括纯净的唤醒数据和带噪的唤醒数据;2)构建一个测试误唤醒的数据集;3)通过网格搜索的方式得到最优的解码阈值,以通过该解码阈值根据解码得分判断是否唤醒。
51.上述装置中各个单元的功能和作用的实现过程具体详见上述方法中对应步骤的实现过程,在此不再赘述。
52.对于装置实施例而言,由于其基本对应于方法实施例,所以相关之处参见方法实施例的部分说明即可。以上所描述的装置实施例仅仅是示意性的,其中所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部模块来实现本发明方案的目的。本领域普通技术人员在不付出创造性劳动的情况下,即可以理解并实施。
53.基于同一发明构思,如图13所示,本发明实施例提供了一种电子设备,包括处理器1110、通信接口1120、存储器1130和通信总线1140,其中,处理器1110,通信接口1120,存储器1130通过通信总线1140完成相互间的通信;存储器1130,用于存放计算机程序;处理器1110,用于执行存储器1130上所存放的程序时,实现如下所示语音控制方法:获取已知唤醒词的音节;确定与所述唤醒词对应的非唤醒词的音节;根据所述唤醒词的音节、所述非唤醒词的音节和预设的垃圾词信息构建唤醒词解码网络,以根据所述唤醒词解码网络对输入的语音进行解码,并根据解码结果确定是否执行唤醒操作。
54.上述的通信总线1140可以是外设部件互连标准(peripheral component interconnect,简称pci)总线或扩展工业标准结构(extended industry standard architecture,简称eisa)总线等。该通信总线1140可以分为地址总线、数据总线、控制总线等。为便于表示,图中仅用一条粗线表示,但并不表示仅有一根总线或一种类型的总线。
55.通信接口1120用于上述电子设备与其他设备之间的通信。
56.存储器1130可以包括随机存取存储器(random access memory,简称ram),也可以包括非易失性存储器(non

volatile memory),例如至少一个磁盘存储器。可选的,存储器1130还可以是至少一个位于远离前述处理器1110的存储装置。
57.上述的处理器1110可以是通用处理器,包括中央处理器(central processing unit,简称cpu)、网络处理器(network processor,简称np)等;还可以是数字信号处理器(digital signal processing,简称dsp)、专用集成电路(application specific integrated circuit,简称asic)、现场可编程门阵列(field

programmable gate array,简称fpga)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件。
58.基于同一发明构思,本发明实施例提供了一种计算机可读存储介质,所述计算机可读存储介质存储有一个或者多个程序,所述一个或者多个程序可被一个或者多个处理器执行,以实现上述任意可能的实现方式中的语音控制方法。
59.可选地,存储介质可以是非临时性计算机可读存储介质,例如,所述非临时性计算机可读存储介质可以是rom、随机存取存储器(ram)、cd

rom、磁带、软盘和光数据存储设备等。
60.基于同一发明构思,本发明实施例还提供了一种计算机可读存储介质,包括计算机程序,所述程序被处理器执行时实现上述任意可能的实现方式中的语音控制方法。
61.在上述实施例中,可以全部或部分地通过软件、硬件、固件或者其任意组合来实现。当使用软件实现时,可以全部或部分地以计算机程序产品的形式实现。计算机程序产品包括一个或多个计算机指令。在计算机上加载和执行计算机程序指令时,全部或部分地产生按照本发明实施例的流程或功能。计算机可以是通用计算机、专用计算机、计算机网络、或者其他可编程装置。计算机指令可以存储在计算机可读存储介质中,或者从一个计算机可读存储介质向另一个计算机可读存储介质传输,例如,计算机指令可以从一个网站站点、计算机、服务器或数据中心通过有线(例如同轴电缆、光纤、数字用户线(dsl))或无线(例如红外、无线、微波等)方式向另一个网站站点、计算机、服务器或数据中心进行传输。计算机可读存储介质可以是计算机能够存取的任何可用介质或者是包含一个或多个可用介质集成的服务器、数据中心等数据存储设备。可用介质可以是磁性介质,(例如,软盘、硬盘、磁带)、光介质(例如,dvd)、或者半导体介质(例如固态硬盘solid state disk(ssd))等。
62.最后应说明的是:以上实施例仅用以说明本发明的技术方案,而非对其限制;尽管参照前述实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本发明各实施例技术方案的精神和范围。
再多了解一些

本文用于企业家、创业者技术爱好者查询,结果仅供参考。

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表

相关文章

  • 日榜
  • 周榜
  • 月榜