语音端点检测方法及设备转让专利

申请号 : CN201810606354.9

文献号 : CN108877778B

文献日 :

基本信息:

PDF:

法律信息:

相似专利:

发明人 : 李超朱唯鑫

申请人 : 百度在线网络技术(北京)有限公司

摘要 :

本发明实施例提供一种语音端点检测方法及设备,该方法包括对待检测语音进行分帧处理,得到多个待检测的音帧;获取各待检测音帧的声学特征,并将各待检测音帧的声学特征依次输入至语音活动性检测VAD模型;其中,VAD模型用于将待检测语音中的前N个语音帧分类为噪声帧、将第N+1个语音帧至最后一个语音帧分类为语音帧以及将最后一个语音帧之后的M个噪声帧分类为语音帧,N和M为整数;根据VAD模型输出的分类结果确定语音段的起点和终点;其中,起点对应首个被分类为语音帧的音帧,终点对应最后一个被分类为语音帧的音帧。本发明实施例可以提高语音端点检测的准确度。

权利要求 :

1.一种语音端点检测方法,其特征在于,包括:

对待检测语音进行分帧处理,得到多个待检测的音帧;

获取各所述待检测音帧的声学特征,并将各所述待检测音帧的声学特征依次输入至语音活动性检测VAD模型;其中,所述VAD模型用于将所述待检测语音中的前N个语音帧分类为噪声帧、将第N+1个语音帧至最后一个语音帧分类为语音帧以及将所述最后一个语音帧之后的M个噪声帧分类为语音帧,所述N和M为整数;

根据所述VAD模型输出的分类结果确定语音段的起点和终点;其中,所述起点对应首个被分类为语音帧的音帧,所述终点对应最后一个被分类为语音帧的音帧。

2.根据权利要求1所述的方法,其特征在于,所述根据所述VAD模型输出的分类结果确定语音段的起点和终点,包括:根据所述VAD模型输出的首个大于第一阈值的第一分类值对应的音帧,确定首个语音帧,并根据所述首个语音帧确定所述语音段的起点;

在确定所述首个语音帧之后,根据所述VAD模型输出的首个小于第二阈值的第二分类值对应的音帧,确定最后一个语音帧,并根据所述最后一个语音帧,确定所述语音段的终点,所述第一阈值大于所述第二阈值。

3.根据权利要求2所述的方法,其特征在于,所述根据所述VAD模型输出的首个大于第一阈值的第一分类值对应的音帧,确定首个语音帧之后,还包括:从缓存中获取所述首个语音帧之前的P帧音帧;所述P为正整数,且所述P大于所述N;

将所述P帧音帧和被确定为语音帧的音帧发送给语音识别器。

4.根据权利要求1所述的方法,其特征在于,所述将各所述音帧的声学特征依次输入至语音活动性检测VAD模型之前,还包括:对待训练语音进行分帧处理,得到多个待训练的音帧;

获取各所述待训练的音帧的声学特征以及各所述待训练的音帧的声学特征对应的标签;所述标签用于指示待训练的音帧的分类结果,所述待训练语音中的前N个语音帧被分类为噪声帧、第N+1个语音帧至最后一个语音帧被分类为语音帧、所述最后一个语音帧之后的M个噪声帧被分类为语音帧;

根据所述待训练的音帧的声学特征以及各所述待训练的音帧对应的标签,对待训练的VAD模型进行训练,得到训练后的VAD模型。

5.根据权利要求4所述的方法,其特征在于,所述获取各所述待训练的音帧对应的标签,包括:对各所述待训练的音帧的声学特征依次进行标注处理,得到各所述待训练的音帧的声学特征对应的候选标签;

对前N个用于指示语音帧的候选标签进行修改,得到修改后的第一标签,所述第一标签用于指示前N个语音帧被分类为噪音帧;

对最后一个语音帧之后的M个用于指示噪声帧的候选标签进行修改,得到修改后的第二标签,所述第二标签用于指示所述M个噪声帧被分类为语音帧;

根据剩余的候选标签、所述第一标签和所述第二标签,得到各所述待训练的音帧的声学特征对应的标签。

6.根据权利要求1至5任一项所述的方法,其特征在于,所述VAD模型为深度神经网络模型。

7.根据权利要求1至5任一项所述的方法,其特征在于,所述N大于等于M。

8.一种语音端点检测设备,其特征在于,包括:

分帧模块,用于对待检测语音进行分帧处理,得到多个待检测的音帧;

检测模块,用于获取各所述待检测音帧的声学特征,并将各所述待检测音帧的声学特征依次输入至语音活动性检测VAD模型;其中,所述VAD模型用于将所述待检测语音中的前N个语音帧分类为噪声帧、将第N+1个语音帧至最后一个语音帧分类为语音帧以及将所述最后一个语音帧之后的M个噪声帧分类为语音帧,所述N和M为整数;

确定模块,用于根据所述VAD模型输出的分类结果确定语音段的起点和终点;其中,所述起点对应首个被分类为语音帧的音帧,所述终点对应最后一个被分类为语音帧的音帧。

9.根据权利要求8所述的设备,其特征在于,所述确定模块具体用于:根据所述VAD模型输出的首个大于第一阈值的第一分类值对应的音帧,确定首个语音帧,并根据所述首个语音帧确定所述语音段的起点;

在确定所述首个语音帧之后,根据所述VAD模型输出的首个小于第二阈值的第二分类值对应的音帧,确定最后一个语音帧,并根据所述最后一个语音帧,确定所述语音段的终点,所述第一阈值大于所述第二阈值。

10.根据权利要求9所述的设备,其特征在于,还包括,通信模块,用于在根据所述VAD模型输出的首个大于第一阈值的第一分类值对应的音帧,确定首个语音帧之后,从缓存中获取所述首个语音帧之前的P帧音帧;所述P为正整数,且所述P大于所述N;

将所述P帧音帧和被确定为语音帧的音帧发送给语音识别器。

11.根据权利要求8所述的设备,其特征在于,还包括:训练模块,用于将各所述音帧的声学特征依次输入至语音活动性检测VAD模型之前,对待训练语音进行分帧处理,得到多个待训练的音帧;

获取各所述待训练的音帧的声学特征以及各所述待训练的音帧的声学特征对应的标签;所述标签用于指示待训练的音帧的分类结果,所述待训练语音中的前N个语音帧被分类为噪声帧、第N+1个语音帧至最后一个语音帧被分类为语音帧、所述最后一个语音帧之后的M个噪声帧被分类为语音帧;

根据所述待训练的音帧的声学特征以及各所述待训练的音帧对应的标签,对待训练的VAD模型进行训练,得到训练后的VAD模型。

12.根据权利要求11所述的设备,其特征在于,所述训练模块具体用于:对各所述待训练的音帧的声学特征依次进行标注处理,得到各所述待训练的音帧的声学特征对应的候选标签;

对前N个用于指示语音帧的候选标签进行修改,得到修改后的第一标签,所述第一标签用于指示前N个语音帧被分类为噪音帧;

对最后一个语音帧之后的M个用于指示噪声帧的候选标签进行修改,得到修改后的第二标签,所述第二标签用于指示所述M个噪声帧被分类为语音帧;

根据剩余的候选标签、所述第一标签和所述第二标签,得到各所述待训练的音帧的声学特征对应的标签。

13.根据权利要求8至12任一项所述的设备,其特征在于,所述VAD模型为深度神经网络模型。

14.根据权利要求8至12任一项所述的设备,其特征在于,所述N大于等于M。

15.一种语音端点检测设备,其特征在于,包括:至少一个处理器和存储器;

所述存储器存储计算机执行指令;

所述至少一个处理器执行所述存储器存储的计算机执行指令,使得所述至少一个处理器执行如权利要求1至7任一项所述的语音端点检测方法。

16.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质中存储有计算机执行指令,当处理器执行所述计算机执行指令时,实现如权利要求1至7任一项所述的语音端点检测方法。

说明书 :

语音端点检测方法及设备

技术领域

[0001] 本发明实施例涉及语音识别技术领域,尤其涉及一种语音端点检测方法及设备。

背景技术

[0002] 随着人机交互技术的发展,语音识别技术显示出其重要性。在语音识别系统中,语音端点检测技术是非常重要的一项技术,通常也称为语音活动性检测技术(voice activity detection,VAD)。语音端点检测是指在连续声音信号中找出语音部分的起始点和终止点。
[0003] 在现有技术中,可以通过VAD模型来确定一段音频中语音段的起点和终点,其中,VAD模型为分类模型。在具体实现时,对音频进行分帧处理,提取每个音帧的声学特征并依次输入至VAD模型中,VAD模型根据声学特征对每帧进行分类,将每个音帧分类为语音帧或噪音帧;最后将连续个语音帧中的首个语音帧作为语音段的起点,将最后一个语音帧作为语音段的终点。例如,中国专利公开号为CN104409080A的发明专利申请公开了一种语音端点检测方法和装置,即通过语音训练模型来确定整段音频,并将整段音频的起始点和结束点作为一段语音的端点。
[0004] 然而,现有的端点检测技术存在不准确的问题,检测准确度较低。

发明内容

[0005] 本发明实施例提供一种语音端点检测方法及设备,以提高语音端点的准确度。
[0006] 第一方面,本发明实施例提供一种语音端点检测方法,包括:
[0007] 对待检测语音进行分帧处理,得到多个待检测的音帧;
[0008] 获取各所述待检测音帧的声学特征,并将各所述待检测音帧的声学特征依次输入至语音活动性检测VAD模型;其中,所述VAD模型用于将所述待检测语音中的前N个语音帧分类为噪声帧、将第N+1个语音帧至最后一个语音帧分类为语音帧以及将所述最后一个语音帧之后的M个噪声帧分类为语音帧,所述N和M为整数;
[0009] 根据所述VAD模型输出的分类结果确定语音段的起点和终点;其中,所述起点对应首个被分类为语音帧的音帧,所述终点对应最后一个被分类为语音帧的音帧。
[0010] 在一种可能的设计中,所述根据所述VAD模型输出的分类结果确定语音段的起点和终点,包括:
[0011] 根据所述VAD模型输出的首个大于第一阈值的第一分类值对应的音帧,确定首个语音帧,并根据所述首个语音帧确定所述语音段的起点;
[0012] 在确定所述首个语音帧之后,根据所述VAD模型输出的首个小于第二阈值的第二分类值对应的音帧,确定最后一个语音帧,并根据所述最后一个语音帧,确定所述语音段的终点,所述第一阈值大于所述第二阈值。
[0013] 在一种可能的设计中,所述根据所述VAD模型输出的首个大于第一阈值的第一分类值对应的音帧,确定首个语音帧之后,还包括:
[0014] 从缓存中获取所述首个语音帧之前的P帧音帧;所述P为正整数,且所述P大于所述N;
[0015] 将所述P帧音帧和被确定为语音帧的音帧发送给语音识别器。
[0016] 在一种可能的设计中,所述将各所述音帧的声学特征依次输入至语音活动性检测VAD模型之前,还包括:
[0017] 对待训练语音进行分帧处理,得到多个待训练的音帧;
[0018] 获取各所述待训练的音帧的声学特征以及各所述待训练的音帧的声学特征对应的标签;所述标签用于指示待训练的音帧的分类结果,所述待训练语音中的前N个语音帧被分类为噪声帧、第N+1个语音帧至最后一个语音帧被分类为语音帧、所述最后一个语音帧之后的M个噪声帧被分类为语音帧;
[0019] 根据所述待训练的音帧的声学特征以及各所述待训练的音帧对应的标签,对待训练的VAD模型进行训练,得到训练后的VAD模型。
[0020] 在一种可能的设计中,所述获取各所述待训练的音帧对应的标签,包括:
[0021] 对各所述待训练的音帧的声学特征依次进行标注处理,得到各所述待训练的音帧的声学特征对应的候选标签;
[0022] 对前N个用于指示语音帧的候选标签进行修改,得到修改后的第一标签,所述第一标签用于指示前N个语音帧被分类为噪音帧;
[0023] 对最后一个语音帧之后的M个用于指示噪声帧的候选标签进行修改,得到修改后的第二标签,所述第二标签用于指示所述M个噪声帧被分类为语音帧;
[0024] 根据剩余的候选标签、所述第一标签和所述第二标签,得到各所述待训练的音帧的声学特征对应的标签。
[0025] 在一种可能的设计中,所述VAD模型为深度神经网络模型。
[0026] 在一种可能的设计中,所述N大于等于M。
[0027] 第二方面,本发明实施例提供一种语音端点检测设备,包括:
[0028] 分帧模块,用于对待检测语音进行分帧处理,得到多个待检测的音帧;
[0029] 检测模块,用于获取各所述待检测音帧的声学特征,并将各所述待检测音帧的声学特征依次输入至语音活动性检测VAD模型;其中,所述VAD模型用于将所述待检测语音中的前N个语音帧分类为噪声帧、将第N+1个语音帧至最后一个语音帧分类为语音帧以及将所述最后一个语音帧之后的M个噪声帧分类为语音帧,所述N和M为整数;
[0030] 确定模块,用于根据所述VAD模型输出的分类结果确定语音段的起点和终点;其中,所述起点对应首个被分类为语音帧的音帧,所述终点对应最后一个被分类为语音帧的音帧。
[0031] 在一种可能的设计中,所述确定模块具体用于:
[0032] 根据所述VAD模型输出的首个大于第一阈值的第一分类值对应的音帧,确定首个语音帧,并根据所述首个语音帧确定所述语音段的起点;
[0033] 在确定所述首个语音帧之后,根据所述VAD模型输出的首个小于第二阈值的第二分类值对应的音帧,确定最后一个语音帧,并根据所述最后一个语音帧,确定所述语音段的终点,所述第一阈值大于所述第二阈值。
[0034] 在一种可能的设计中,还包括,通信模块,用于在根据所述VAD模型输出的首个大于第一阈值的第一分类值对应的音帧,确定首个语音帧之后,从缓存中获取所述首个语音帧之前的P帧音帧;所述P为正整数,且所述P大于所述N;
[0035] 将所述P帧音帧和被确定为语音帧的音帧发送给语音识别器。
[0036] 在一种可能的设计中,还包括:训练模块,用于将各所述音帧的声学特征依次输入至语音活动性检测VAD模型之前,
[0037] 对待训练语音进行分帧处理,得到多个待训练的音帧;
[0038] 获取各所述待训练的音帧的声学特征以及各所述待训练的音帧的声学特征对应的标签;所述标签用于指示待训练的音帧的分类结果,所述待训练语音中的前N个语音帧被分类为噪声帧、第N+1个语音帧至最后一个语音帧被分类为语音帧、所述最后一个语音帧之后的M个噪声帧被分类为语音帧;
[0039] 根据所述待训练的音帧的声学特征以及各所述待训练的音帧对应的标签,对待训练的VAD模型进行训练,得到训练后的VAD模型。
[0040] 在一种可能的设计中,所述训练模块具体用于:
[0041] 对各所述待训练的音帧的声学特征依次进行标注处理,得到各所述待训练的音帧的声学特征对应的候选标签;
[0042] 对前N个用于指示语音帧的候选标签进行修改,得到修改后的第一标签,所述第一标签用于指示前N个语音帧被分类为噪音帧;
[0043] 对最后一个语音帧之后的M个用于指示噪声帧的候选标签进行修改,得到修改后的第二标签,所述第二标签用于指示所述M个噪声帧被分类为语音帧;
[0044] 根据剩余的候选标签、所述第一标签和所述第二标签,得到各所述待训练的音帧的声学特征对应的标签。
[0045] 在一种可能的设计中,所述VAD模型为深度神经网络模型。
[0046] 在一种可能的设计中,所述N大于等于M。
[0047] 第三方面,本发明实施例提供一种语音端点检测设备,包括:至少一个处理器和存储器;
[0048] 所述存储器存储计算机执行指令;
[0049] 所述至少一个处理器执行所述存储器存储的计算机执行指令,使得所述至少一个处理器执行如上第一方面以及第一方面各种可能的设计所述的语音端点检测方法。
[0050] 第四方面,本发明实施例提供一种计算机可读存储介质,所述计算机可读存储介质中存储有计算机执行指令,当处理器执行所述计算机执行指令时,实现如上第一方面以及第一方面各种可能的设计所述的语音端点检测方法。
[0051] 本实施例提供的语音端点检测方法及设备,该方法通过对待检测语音进行分帧处理,得到多个待检测的音帧,获取各待检测音帧的声学特征,并将各待检测音帧的声学特征依次输入至语音活动性检测VAD模型;根据VAD模型输出的分类结果确定语音段的起点和终点,通过该VAD模型将待检测语音中的前N个语音帧分类为噪声帧,能够避免将噪音帧误传递给语音识别器,通过该VAD模型将第N+1个语音帧至最后一个语音帧分类为语音帧以及将最后一个语音帧之后的M个噪声帧分类为语音帧,避免了说话小提前确定终点的问题,同时也会避免用户停顿将一句话断为两句话的情况,挺高了语音端点检测的准确度。

附图说明

[0052] 为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作一简单地介绍,显而易见地,下面描述中的附图是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。
[0053] 图1为本发明实施例提供的语音识别系统的语音识别原理示意图;
[0054] 图2为本发明实施例提供的VAD模型获取流程图;
[0055] 图3为本发明实施例提供的声学特征的结构示意图;
[0056] 图4为本发明实施例提供的声学特征对应的候选标签的示意图;
[0057] 图5为本发明实施例提供的标签修改示意图;
[0058] 图6为本发明实施例提供的语音端点检测方法的流程示意图一;
[0059] 图7为本发明实施例提供的语音端点检测方法的流程示意图二;
[0060] 图8为本发明实施例提供的语音端点检测设备的结构示意图一;
[0061] 图9为本发明实施例提供的语音端点检测设备的结构示意图二;
[0062] 图10为本发明实施例提供的语音端点检测设备的硬件结构示意图。

具体实施方式

[0063] 为使本发明实施例的目的、技术方案和优点更加清楚,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
[0064] 图1为本发明实施例提供的语音识别系统的语音识别原理示意图。语音识别(Automatic Speech Recognition,ASR)所要解决的问题是让计算机能够"听懂"人类的语音,将语音转化成文本。如图1所示,该语音识别系统的识别过程包括前端处理过程和后端处理过程。其中,前端可以为能够与用户进行语音交互的各种智能终端,例如智能手机、智能音箱、智能电视、智能冰箱等,本实施例对智能终端的实现方式不做特别限制。后端可以为能够进行数据逻辑处理的服务器,本领域技术人员可以理解,该后端也可以为智能终端的处理器。预先训练好声学模型和语言模型可以存储到后端。其中,声学模型对应于语音到音节概率的计算,语音模型对应于音节到字概率的计算。
[0065] 在具体实现过程中,前端在接收到语音之后,对接收到的语音进行分帧处理,然后进行端点检测,在检测到语音段的起点后,对起点之后的语音帧进行降噪处理,然后进行特征提取直至检测到语音段的终点,根据提取到的声学特征、声学模型、语音模型进行解码,得到识别结果。在一种可能的实现方式中,解码是将声学模型、词典以及语言模型编译成一个网络。解码就是在这个动态网络空间中,基于最大后验概率,选择一条或多条最优路径作为识别结果(最优的输出字符序列)。
[0066] 由此可见,在此过程中端点检测尤其重要,决定了语音识别系统的输入。然而现有在端点检测时,由于语音段之前的噪声段被分类成语音,存在起点检测不准确的情况,同时在用户说话声越来越小或停顿时,存在终点检测不准确的情况等等,因此端点检测的准确度不够高。基于此,本发明实施例提供一种语音端点检测方法,以提高语音端点检测的准确度。
[0067] 在本实施例中,通过语音活动性检测(voice activity detection,VAD)模型来进行语音端点检测。本实施例对该VAD模型中的起点和终点进行不同的算法约束,来提高语音端点检测的准确度。在本实施例中,给出来该算法约束的一种可能的实现方式,对语音起点和语音终点进行延迟控制,以获得足够的置信度,从而提高语音端点检测的准确度。下面分别从训练模型和使用模型两方面分别进行详细说明。
[0068] 图2为本发明实施例提供的VAD模型获取流程图。如图2所示,该方法包括:
[0069] S201、对待训练语音进行分帧处理,得到多个待训练的音帧。
[0070] 在具体实现过程中,可以采集用户的多条语音作为待训练语音,例如采集1万条语音,每条大约几秒钟。针对每个待训练语音,对每个待训练语音进行分帧处理,得到多个待训练的音帧。
[0071] 具体地,可以根据预设帧长和预设帧移来进行分帧处理,例如帧长为25ms,帧移为10ms。由此,每帧之间在时序上存在部分重叠。本领域技术人员可以理解,此处的帧长和帧移仅为示例性的,本实施例此处不做特别限制。
[0072] S202、获取各所述待训练的音帧的声学特征以及各所述待训练的音帧的声学特征对应的标签;所述标签用于指示待训练的音帧的分类结果,所述待训练语音中的前N个语音帧被分类为噪声帧、第N+1个语音帧至最后一个语音帧被分类为语音帧、所述最后一个语音帧之后的M个噪声帧被分类为语音帧;
[0073] 在得到分帧结果后,提取每个音帧的声学特征。其中,该声学特征可以为梅尔滤波64维的特征,该声学特征还可以为梅尔频率倒谱系数(Mel  Frequency Cepstrum Coefficient,MFCC)特征,还可以为感知线性预测(Perceptual Linear Predict ive,PLP)特征等,本实施例对声学特征的类型不做特别限制。
[0074] 在得到每个音帧的声学特征后,识别每个音帧为噪音帧或语音帧,对于识别噪音帧或语音帧的方式,可采用人工识别或语音识别中的机器强制对齐方法等,本实施例对识别音帧为噪音帧或语音帧的方式不做特别限制。
[0075] 在获知每个音帧为噪音帧或语音帧之后,确定待训练的音帧的声学特征对应的标签。其中,该标签用于指示待训练的音帧的分类结果,即该音帧被分类为噪音帧还是语音帧。
[0076] 在本实施例中,为了增加端点检测的精确度,本实施例在当前帧为语音帧时,也不会立刻分类出这个是语音帧。因为,总有噪声的波动在里面,需要一个延迟来确定足够的置信度,也就是说当语音出现了一段时间以后,才能确认语音真的出现了,因此,待训练语音中的前N个语音帧被分类为噪声帧、第N+1个语音帧至最后一个语音帧被分类为语音帧。
[0077] 同理,不能再语音停止的时候,立刻就给出语音停止即噪声帧的标签,而需要一个延迟,从而积累足够的置信度,保证语音真的结束了,因此,最后一个语音帧之后的M个噪声帧被分类为语音帧。
[0078] 在采用二值法进行标签时,语音帧对应的标签值为1,噪音帧对应的标签值为0。由此,针对每条语音,训练的数据是由无数个{x,y}对组成。X是特征,y是标签(label)。
[0079] S203、根据所述待训练的音帧的声学特征以及各所述待训练的音帧对应的标签,对待训练的VAD模型进行训练,得到训练后的VAD模型。
[0080] 在得到待训练的音帧的声学特征以及待训练的音帧对应的标签后,对待训练的VAD模型进行训练,得到训练后的VAD模型。
[0081] 在本实施例中,该VAD模型为深度神经网络模型,该深度神经网络模型例如可以是循环神经网络(Recurrent Neural Networks,RNN)。具体地,例如可以采用长短期记忆网络(longshort-termmemory,LSTM)模型,或者选通重复单元(Gated Recurrent Unit,GRU)模型,其中,GRU模型为LSTM模型的一种变体。针对GRU模型,网络有多层RNN堆砌而成,最后的输出层是2个节点,softmax做为激活,采用交叉熵作为代价函数。每一帧都有分类结果。
[0082] 本实施例通过训练获取的VAD模型,该VAD模型的训练数据充分考虑了语音出现了一段时间以后,才能确认语音真的出现了,在语音停止的时候,需要一个延迟,从而积累足够的置信度,保证语音真的结束了,从而提高了端点检测的准确度。
[0083] 下面采用一个具体的实现方式,来说明如何对每个音帧进行标注。
[0084] 图3为本发明实施例提供的声学特征的结构示意图。如图3所示,待训练语音经过分帧处理后,得到550帧音帧。横轴代表音帧的顺序,纵轴代表声学特征X。
[0085] 针对该声学特征X,采用人工标注或语音识别中的机器强制对齐的方法,来获得标注。针对实际的噪声和语音情况进行标注,将对应的标签称为候选标签。具体地,对各待训练的音帧的声学特征依次进行标注处理,得到各待训练的音帧的声学特征对应的候选标签。
[0086] 图4为本发明实施例提供的声学特征对应的候选标签的示意图。如图4所示,语音帧对应的候选标签为1,噪声帧对应的候选标签为0。
[0087] 在本实施例中,通过对候选标签进行修改,得到用于训练模型的样本数据。具体地,对前N个用于指示语音帧的候选标签进行修改,得到修改后的第一标签,第一标签用于指示前N个语音帧被分类为噪音帧;对最后一个语音帧之后的M个用于指示噪声帧的候选标签进行修改,得到修改后的第二标签,第二标签用于指示M个噪声帧被分类为语音帧;根据剩余的候选标签、第一标签和第二标签,得到各待训练的音帧的声学特征对应的标签。
[0088] 本实施例以对图4实施例中的候选标签进行修改为例,结合图5对标签修改的过程进行详细说明。
[0089] 图5为本发明实施例提供的标签修改示意图。如图5所示,在本实施例中,可以设置N大于M,因为对语音的终点检测需要平衡算法置信度和响应速度,因此不能够延迟太久,将M设置的小一点儿,可以满足算法置信度和响应速度。同时,语音的起点可以稍微延迟的多一点,因为这时用户在说话,并不需要系统给他任何回应。延迟的时间越长,积累的置信度就越高。
[0090] 可选地,在本实施例中,以N=20,M=10为例进行详细说明。如图5所示,虚线代表的是候选标签,在对候选标签进行修改时,将前20帧语音帧分类为噪音帧,即标签由1修改为0。将最后一个语音帧之后的10帧噪音帧分类为语音帧,即标签由0修改为1,对于剩余的候选标签,则不进行修改。
[0091] 本领域技术人员可以理解,通过这样设置,可以得到足够的置信度。例如,针对起点,采用现有技术的VAD模型,在第1帧至第18帧实际上为噪音帧,而第1帧至第10帧被分类为语音帧时,则确定第1帧为语音段的起点,第10帧为语音段的终点,此时存在将噪音段误认为语音段的情况。通过本实施例这样设置训练数据,在得到前20帧为语音帧时,即积累了足够的置信度之后,才确定语音段的出现,会避免将噪音误认为语音段的情况。
[0092] 再例如,针对终点,采用现有技术的VAD模型,在确认第20帧至第40帧为语音帧,而第41帧和第42帧为噪声帧时,第43帧至第60帧为语音帧时,则确定第20帧至第40帧为语音段,第43帧至第60帧为语音帧,然而由于用户在第41帧和第42帧出现声音变小或停顿时,现有的VAD模型会把它段成两句话,而在本实施例中,通过延迟的方式设置训练数据,只有在噪声帧的置信度积累到一定程度时,才相信语音真的结束了,所以在获取训练数据过程中,将噪声帧分类为语音帧,以获取足够的置信度。
[0093] 下面采用具体的实施例来说明本发明实施例通过该训练模型来进行端点检测的方法。
[0094] 图6为本发明实施例提供的语音端点检测方法的流程示意图一。如图6所示,该方法包括:
[0095] S601、对待检测语音进行分帧处理,得到多个待检测的音帧。
[0096] 其中,对于待检测语音进行分帧处理的过程,与上述S201类似,本实施例此处不做特别赘述。
[0097] S602、获取各所述待检测音帧的声学特征,并将各所述待检测音帧的声学特征依次输入至语音活动性检测VAD模型;其中,所述VAD模型用于将所述待检测语音中的前N个语音帧分类为噪声帧、将第N+1个语音帧至最后一个语音帧分类为语音帧以及将所述最后一个语音帧之后的M个噪声帧分类为语音帧,所述N和M为整数。
[0098] 在得到待检测的音帧之后,提取各所述待检测音帧的声学特征,然后将该待检测音帧的声学特征依次输入至通过图4至图6所示方法训练好的VAD模型中。
[0099] 该VAD模型针对每个声学特征都会输出一个分类值。本领域技术人员可以理解,对应于上述的模型的训练过程,则该VAD模型可以将待检测语音中的前N个语音帧分类为噪声帧、将第N+1个语音帧至最后一个语音帧分类为语音帧以及将最后一个语音帧之后的M个噪声帧分类为语音帧。
[0100] S603、根据所述VAD模型输出的分类结果确定语音段的起点和终点;其中,所述起点对应首个被分类为语音帧的音帧,所述终点对应最后一个被分类为语音帧的音帧。
[0101] 在本实施例中,可以直接根据VAD模型输出的分类结果来确定起点和终点。将确定的首个语音帧作为语音段的起点,将确定的最后一个语音帧作为语音端的终点。
[0102] 本实施例中,针对起点而言,第1帧至第30帧被分类为噪音帧,而第31帧至第50帧可能为噪音或语音时,则第31帧至第50帧都会被VAD模型分类为噪音帧,当第51帧为噪音帧时,则说明第31帧至第50帧实际是噪音帧,从而避免了将噪音帧传递给语音识别器。当第51帧为语音帧时,则说明第31帧至第50帧实际是语音帧,从而第51帧为语音段的起点,可以将第51帧之前的30帧连同第51帧即之后的语音帧传递给语音识别器。
[0103] 针对终点而言,在第50帧至第230帧为语音帧,在第231帧与第240帧为停顿或声音小时,本实施例的VAD模型不会把第231帧与第240帧分类为噪音帧,而是分类为语音帧,当第241帧被分类为噪声帧时,则说明语音段结束了,而当第241帧被分类为语音帧时,则说明语音段没有结束,后续会继续采用上述的方法来判断语音段结束的终点。通过该实施例,避免了说话小提前确定终点的问题,同时也会避免用户停顿将一句话断为两句话的情况。
[0104] 本实施例提供的语音端点检测方法,通过对待检测语音进行分帧处理,得到多个待检测的音帧,获取各待检测音帧的声学特征,并将各待检测音帧的声学特征依次输入至语音活动性检测VAD模型;根据VAD模型输出的分类结果确定语音段的起点和终点,通过该VAD模型将待检测语音中的前N个语音帧分类为噪声帧,能够避免将噪音帧误传递给语音识别器,通过该VAD模型将第N+1个语音帧至最后一个语音帧分类为语音帧以及将最后一个语音帧之后的M个噪声帧分类为语音帧,避免了说话小提前确定终点的问题,同时也会避免用户停顿将一句话断为两句话的情况,挺高了语音端点检测的准确度。
[0105] 图7为本发明实施例提供的语音端点检测方法的流程示意图二。如图7所示,该方法包括:
[0106] S701、对待检测语音进行分帧处理,得到多个待检测的音帧;
[0107] S702、获取各所述待检测音帧的声学特征,并将各所述待检测音帧的声学特征依次输入至语音活动性检测VAD模型。
[0108] S703、根据所述VAD模型输出的首个大于第一阈值的第一分类值对应的音帧,确定首个语音帧,并根据所述首个语音帧确定所述语音段的起点;
[0109] S704、在确定所述首个语音帧之后,根据所述VAD模型输出的首个小于第二阈值的第二分类值对应的音帧,确定最后一个语音帧,并根据所述最后一个语音帧,确定所述语音段的终点。
[0110] S705、从缓存中获取所述首个语音帧之前的P帧音帧,将所述P帧音帧和被确定为语音帧的音帧发送给语音识别器;所述P为正整数,且所述P大于所述N。
[0111] 其中,S701与S702与图6实施例中的S601和S602类似,本实施例此处不再赘述。
[0112] 本领域技术人员可以理解,由于VAD模型是针对有限的训练数据进行训练,得到的VAD模型,所以VAD模型的输出可能不是0或1,而是一个0至1之间的概率值。该概率值越接近于1,则该音帧为语音帧的概率越大。因此,在S703与S704中,本实施例来设置第一阈值和第二阈值,通过第一阈值和第二阈值,来判断首个语音帧和最后一个语音帧。其中,第一阈值大于第二阈值。
[0113] 具体地,采用的是起点和终点不同的阈值。正如模型训练所示,起点的延迟更多,也就VAD模型积累了更多的置信度,因此,起点的第一阈值设置的高一些,例如0.6;但是终点的检测延迟比较小,积累的置信度也就相对少,因此,采用的第二阈值也就小一点,例如0.4。
[0114] 在S705中,由于在训练过程中,将前N帧语音帧分类为噪音帧,所以当检测到语音的起点时,从缓存中获取首个语音帧之前的P帧音帧,将P帧音帧发送给语音识别器,然后再将起点之后被确定为语音帧的音帧发送给语音识别器,可以为每确定一个语音帧,即向语音识别器发送一个语音帧,直至检测到语音段的终点。
[0115] 本实施例提供的端点检测方法,对待检测语音进行分帧处理,得到多个待检测的音帧;获取各待检测音帧的声学特征,并将各待检测音帧的声学特征依次输入至语音活动性检测VAD模型,根据VAD模型输出的首个大于第一阈值的第一分类值对应的音帧,确定首个语音帧,并根据首个语音帧确定语音段的起点,在确定首个语音帧之后,根据VAD模型输出的首个小于第二阈值的第二分类值对应的音帧,确定最后一个语音帧,并根据最后一个语音帧,确定语音段的终点,使得起点的延迟更多,终点的延迟更小,同时从缓存中获取首个语音帧之前的P帧音帧,将P帧音帧和被确定为语音帧的音帧发送给语音识别器;使得语音识别器可以获取完整的语音段。
[0116] 图8为本发明实施例提供的语音端点检测设备的结构示意图一。如图8所示,该语音端点检测设备80包括:分帧模块801、检测模块802以及确定模块803。
[0117] 分帧模块801,用于对待检测语音进行分帧处理,得到多个待检测的音帧;
[0118] 检测模块802,用于获取各所述待检测音帧的声学特征,并将各所述待检测音帧的声学特征依次输入至语音活动性检测VAD模型;其中,所述VAD模型用于将所述待检测语音中的前N个语音帧分类为噪声帧、将第N+1个语音帧至最后一个语音帧分类为语音帧以及将所述最后一个语音帧之后的M个噪声帧分类为语音帧,所述N和M为整数;
[0119] 确定模块803,用于根据所述VAD模型输出的分类结果确定语音段的起点和终点;其中,所述起点对应首个被分类为语音帧的音帧,所述终点对应最后一个被分类为语音帧的音帧。
[0120] 本发明实施例提供的语音端点检测设备,分帧模块通过对待检测语音进行分帧处理,得到多个待检测的音帧,检测模块获取各待检测音帧的声学特征,并将各待检测音帧的声学特征依次输入至语音活动性检测VAD模型;确定模块根据VAD模型输出的分类结果确定语音段的起点和终点,通过该VAD模型将待检测语音中的前N个语音帧分类为噪声帧,能够避免将噪音帧误传递给语音识别器,通过该VAD模型将第N+1个语音帧至最后一个语音帧分类为语音帧以及将最后一个语音帧之后的M个噪声帧分类为语音帧,避免了说话小提前确定终点的问题,同时也会避免用户停顿将一句话断为两句话的情况,挺高了语音端点检测的准确度。
[0121] 图9为本发明实施例提供的语音端点检测设备的结构示意图二。如图9所示,该语音端点检测设备80还包括:通信模块804、训练模块805。
[0122] 可选地,所述确定模块803具体用于:
[0123] 根据所述VAD模型输出的首个大于第一阈值的第一分类值对应的音帧,确定首个语音帧,并根据所述首个语音帧确定所述语音段的起点;
[0124] 在确定所述首个语音帧之后,根据所述VAD模型输出的首个小于第二阈值的第二分类值对应的音帧,确定最后一个语音帧,并根据所述最后一个语音帧,确定所述语音段的终点,所述第一阈值大于所述第二阈值。
[0125] 可选地,通信模块804,用于在根据所述VAD模型输出的首个大于第一阈值的第一分类值对应的音帧,确定首个语音帧之后,从缓存中获取所述首个语音帧之前的P帧音帧;所述P为正整数,且所述P大于所述N;
[0126] 将所述P帧音帧和被确定为语音帧的音帧发送给语音识别器。
[0127] 可选地,训练模块805,用于将各所述音帧的声学特征依次输入至语音活动性检测VAD模型之前,
[0128] 对待训练语音进行分帧处理,得到多个待训练的音帧;
[0129] 获取各所述待训练的音帧的声学特征以及各所述待训练的音帧的声学特征对应的标签;所述标签用于指示待训练的音帧的分类结果,所述待训练语音中的前N个语音帧被分类为噪声帧、第N+1个语音帧至最后一个语音帧被分类为语音帧、所述最后一个语音帧之后的M个噪声帧被分类为语音帧;
[0130] 根据所述待训练的音帧的声学特征以及各所述待训练的音帧对应的标签,对待训练的VAD模型进行训练,得到训练后的VAD模型。
[0131] 可选地,所述训练模块805具体用于:
[0132] 对各所述待训练的音帧的声学特征依次进行标注处理,得到各所述待训练的音帧的声学特征对应的候选标签;
[0133] 对前N个用于指示语音帧的候选标签进行修改,得到修改后的第一标签,所述第一标签用于指示前N个语音帧被分类为噪音帧;
[0134] 对最后一个语音帧之后的M个用于指示噪声帧的候选标签进行修改,得到修改后的第二标签,所述第二标签用于指示所述M个噪声帧被分类为语音帧;
[0135] 根据剩余的候选标签、所述第一标签和所述第二标签,得到各所述待训练的音帧的声学特征对应的标签。
[0136] 可选地,所述VAD模型为深度神经网络模型。
[0137] 可选地,所述N大于等于M。
[0138] 本发明实施例提供的端点检测设备,可用于执行上述的方法实施例,其实现原理和技术效果类似,本实施例此处不再赘述。
[0139] 图10为本发明实施例提供的语音端点检测设备的硬件结构示意图。如图10所示,本实施例提供的语音端点检测设备100包括:至少一个处理器1001和存储器1002。该语音端点检测设备100还包括通信部件1003。其中,处理器1001、存储器1002以及通信部件1003通过总线1004连接。
[0140] 在具体实现过程中,至少一个处理器1001执行所述存储器1002存储的计算机执行指令,使得至少一个处理器1001执行如上语音端点检测设备100所执行的语音端点检测方法。
[0141] 当本实施例的后端由服务器执行时,该通信部件1003可以将语音帧发送给服务器。
[0142] 处理器1001的具体实现过程可参见上述方法实施例,其实现原理和技术效果类似,本实施例此处不再赘述。
[0143] 在上述的图10所示的实施例中,应理解,处理器可以是中央处理单元(英文:Central Processing Unit,简称:CPU),还可以是其他通用处理器、数字信号处理器(英文:
Digital Signal Processor,简称:DSP)、专用集成电路(英文:Application Specific Integrated Circuit,简称:ASIC)等。通用处理器可以是微处理器或者该处理器也可以是任何常规的处理器等。结合发明所公开的方法的步骤可以直接体现为硬件处理器执行完成,或者用处理器中的硬件及软件模块组合执行完成。
[0144] 存储器可能包含高速RAM存储器,也可能还包括非易失性存储NVM,例如至少一个磁盘存储器。
[0145] 总线可以是工业标准体系结构(Industry Standard Architecture,ISA)总线、外部设备互连(Peripheral Component,PCI)总线或扩展工业标准体系结构(Extended Industry Standard Architecture,EISA)总线等。总线可以分为地址总线、数据总线、控制总线等。为便于表示,本申请附图中的总线并不限定仅有一根总线或一种类型的总线。
[0146] 本申请还提供一种计算机可读存储介质,所述计算机可读存储介质中存储有计算机执行指令,当处理器执行所述计算机执行指令时,实现如上语音端点检测设备执行的语音端点检测方法。
[0147] 本申请还提供一种计算机可读存储介质,所述计算机可读存储介质中存储有计算机执行指令,当处理器执行所述计算机执行指令时,实现如上语音端点检测设备执行的语音端点检测方法。
[0148] 上述的计算机可读存储介质,上述可读存储介质可以是由任何类型的易失性或非易失性存储设备或者它们的组合实现,如静态随机存取存储器(SRAM),电可擦除可编程只读存储器(EEPROM),可擦除可编程只读存储器(EPROM),可编程只读存储器(PROM),只读存储器(ROM),磁存储器,快闪存储器,磁盘或光盘。可读存储介质可以是通用或专用计算机能够存取的任何可用介质。
[0149] 一种示例性的可读存储介质耦合至处理器,从而使处理器能够从该可读存储介质读取信息,且可向该可读存储介质写入信息。当然,可读存储介质也可以是处理器的组成部分。处理器和可读存储介质可以位于专用集成电路(Application Specific Integrated Circuits,简称:ASIC)中。当然,处理器和可读存储介质也可以作为分立组件存在于设备中。
[0150] 本领域普通技术人员可以理解:实现上述各方法实施例的全部或部分步骤可以通过程序指令相关的硬件来完成。前述的程序可以存储于一计算机可读取存储介质中。该程序在执行时,执行包括上述各方法实施例的步骤;而前述的存储介质包括:ROM、RAM、磁碟或者光盘等各种可以存储程序代码的介质。
[0151] 最后应说明的是:以上各实施例仅用以说明本发明的技术方案,而非对其限制;尽管参照前述各实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分或者全部技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本发明各实施例技术方案的范围。