首页 > 乐器声学 专利正文
一种高效语音关键词检测器训练样本使用方法与流程

时间:2022-02-17 阅读: 作者:专利查询

一种高效语音关键词检测器训练样本使用方法与流程

1.本发明涉及数据处理的技术领域,尤其涉及到一种高效语音关键词检测器训练样本使用方法。


背景技术:

2.语音是信息交流的重要媒介。语音关键词检测(keyword spotting,kws)是指从连续的语音流中检测出预先定义的词。相比于自动语音识别(automatic speech recognition,asr),kws只关注所定义的关键词,对于关键词以外的词语并不关注,大大降低系统的开发难度。由于其快速、灵活等特性,kws在音频监控、语音检索以及设备控制等领域都有着广泛的应用。
3.对kws训练而言,正样本的收集成本较高,而负样本的获取比较容易。同时,kws的训练确实需要大量且丰富多样的负样本来防止虚警。虽然大体上可以认为与关键字发音相似的字或各种环境噪声容易造成虚警,但实际却并无法快速准确地知道到底哪些样本容易造成虚警。因此,kws的训练集中往往存在大量的负样本。实际上,无论是正样本还是负样本,都有很大一部分样本之间存在着明显的“信息冗余”现象,数量众多使得它们在训练中很快就可以被训练得很好。然而这些易学习样本在训练中占据主体地位,影响着分类边界,使得需要更多的训练轮次来完成训练,这不仅制约着系统的性能,还极大地降低了训练效率。同时,正负样本数量上的失衡将带来样本不平衡问题,在训练中导致次优模型。此外,即使是由领域专家进行人工标注的数据集,错误标签(标签噪声)都不可避免地存在,标签错误问题对训练和评估都会带来负面影响;类似地,还有样本质量低的问题。
4.实际上,若针对样本不平衡问题,解决方案大致可以分为样本层面的方法和算法层面的方法。基于算法层面的方法主要通过修改现有的一般算法使之适用于不平衡数据,如代价敏感学习。虽然基于设计算法的方法或许也能获得不错的性能,但是这类方法往往使用训练样本集中所有的样本进行训练,训练较耗时,训练效率低的问题并未得到改善。样本层面的方法通过调整原数据集样本分布来缓解不平衡,主要分为上采样和下采样两种方法。上采样的方法是通过算法生成少数类样本,增加少数类样本的数量。但由于上采样方法本质是基于现有样本来生成新样本的,并非真实样本,容易产生过拟合。同时,由于增大了样本集,训练耗时将增加。无论是算法层面的方法,还是样本层面方法中的上采样方法,低效率的训练将抑制很多科研及生产工作的开展,延缓业界的工作进展。相对地,下采样的方法通过丢弃多数类样本,减少多数类样本的数量。由于经过下采样,训练样本集减小,故训练时间将减少。但是,如果随意丢弃样本,可能丢弃对训练“很重要”的样本,导致欠拟合。这里,“很重要”的样本指的是对训练有促进作用的样本,可以认为其对训练能提供更多的区分性信息。所以,需要一种简单、有效的样本挑选方法,挑选出对训练提供更多区分性信息的“重要样本”,而丢弃大部分易学习的样本。这将使得训练更加注重“重要样本”,在提升系统性能的同时,提升训练效率;同时,由于训练集中的负样本大多数并不容易造成虚警,只有极小部分负样本是“重要样本”,所以这也可以缓解样本不平衡的问题,进一步提升系统
性能;而经过挑选,由于只需要使用部分样本进行训练,所以这还可以极大地加速训练。最后,对于标签错误和样本质量低的问题,同样需要一种样本挑选手段来尽量防止低质量和存在错误标签的样本参与训练而影响系统训练。


技术实现要素:

5.本发明的目的在于克服现有技术的不足,提供一种一种高效语音关键词检测器训练样本使用方法。
6.为实现上述目的,本发明所提供的技术方案为:
7.一种高效语音关键词检测器训练样本使用方法,基于语音关键词检测器d的迭代训练方法train和关键词搜索方法search,包括以下步骤:
8.s1、基于样本集其中x
i
为语音样本,y
i
为对应的转录文本,n为样本总数,预设训练最大轮次为k,利用训练方法train对语音关键词检测器d进行n(n≥1)轮训练,以保证语音关键词检测器d
n
具有可靠性,此时远未达到训练的收敛标准;
9.s2、在第k(k>n)轮训练,对于样本集z中的每一个样本z
i
=(x
i
,y
i
),基于第k

1轮训练所得的语音关键词检测器d
k
‑1和关键词搜索方法search,获取其目标评分s(t
i
)和目标的竞争者评分s(c
i
);其中,s(*)为检测器从语言样本x
i
中检出检测对象*的评分,其值越大,检测对象*成为检测结果的可能性越大;
10.s3、对于样本集z内每个样本z
i
,构建其参与第k轮训练的概率p
i
,该概率应反比于|s(t
i
)

s(c
i
)|,使得容易纠错的样本更多地参与模型训练;
11.s4、基于样本参与训练的概率从样本集z中挑选出第k轮训练使用的样本集z
k
,其中,也即样本参与训练的概率越大,则被选中参与第k轮训练的概率越大。
12.s5、采用挑选出的样本集z
k
训练语音关键词检测器,获得更新的检测器d
k
,如果训练已收敛或k≥k,结束训练,否则,重复s2~s5。
13.进一步地,所述语音关键词检测器进行n轮训练前,对样本集z中所有语音样本x
i
进行预处理,提取特征。
14.进一步地,所述预处理包括预加重、分帧、加窗。
15.进一步地,所述步骤s2中,获取样本目标评分s(t
i
)和目标的竞争者评分s(c
i
)的过程包括:
16.s2

1、在第k轮训练的准备阶段,对于样本集z中的每一个样本z
i
=(x
i
,y
i
),基于第k

1轮训练所得的语音关键词检测器d
k
‑1,利用关键词搜索方法search,搜索样本z
i
的各个音段,按如下方式获取待检测关键词列表内各个关键词的最大得分:
[0017][0018]
式(1)中,m为w所含关键词数量,r
i
为z
i
的音段数,为z
i
音段t上关键词w
m
的得分;
[0019]
s2

2、对于样本集z内的样本z
i
,基于决策阈值p
out
,根据获取其目标评分
s(t
i
)和目标的竞争者评分s(c
i
);将不存在于待检测关键词列表w中的词统称为非关键词,记为w
nk

[0020]
若z
i
为正样本,即包含关键词的样本,z
i
的目标为其所含有的关键词,设其包含目标关键词为w
m
∈w,在z
i
所有音段中:
[0021]
若w
m
的最大得分大于p
out
,且至少有一个非目标关键词得分大于p
out
,即且使得则令s(c
i
)为非目标关键词得分中的最大者,记其所在音段为t
c
,令s(t
i
)为t
c
上非关键词的得分,也即:
[0022][0023][0024]
否则,令s(t
i
)为w
m
的最大得分,记其所在音段为t
t
,而s(c
i
)为t
t
上非目标关键词得分中的最大者,也即:
[0025][0026][0027]
式(5)中,w
*
=w∪{w
nk
};
[0028]
此时,竞争者包括非关键词和w中不存在于z
i
的关键词;
[0029]
若z
i
为负样本,即不含关键词的样本,z
i
的目标为非关键词,竞争者为w中的所有关键词;
[0030]
在z
i
所有音段中,令s(c
i
)为所有关键词得分中的最大者,记其所在音段为t
w
,令s(t
i
)为t
w
上w
nk
的得分,也即:
[0031][0032][0033]
当一个语音样本中包含多个关键词时,对于正样本,将多个目标关键词最大得分中的最小者作为该样本的目标得分s(t
i
),而获取s(c
i
)的方法无需更改;对于负样本,获取s(t
i
)和s(c
i
)的方法则皆无需更改。
[0034]
进一步地,所述步骤s2中,关键词及非关键词的得分由语音关键词检测器的输出通过g(
·
)映射得到,即:
[0035][0036]
式(8)中,o
i
为语音样本x
i
对应特征输入语音关键词检测器得到的输出;g(
·
)为映射函数,其满足:若语音关键词检测器输出是检测对象的相似性评分,与该相似性评分成正比;若语音关键词检测器输出是与检测对象之间的距离度量,与该距离度量成反比。
[0037]
进一步地,所述步骤s3中,对于样本集z内样本z
i
,基于目标评分s(t
i
)和目标的竞争者评分s(c
i
),z
i
参与第k轮训练的概率p
i
为:
[0038][0039]
式(9)中,α和σ为两个大于0的超参数,控制着样本使用概率对于|s(t
i
)

s(c
i
)|的敏感程度;此时,p
i
∈[e

α
,1],所以α的取值还决定p
i
的分布范围,控制挑选的样本量。
[0040]
p
i
与|s(t
i
)

s(c
i
)|成反比关系,有:
[0041]
当s(t
i
)比较大而s(c
i
)比较小时,表明z
i
很容易训练或已经被训练得很好,竞争力最大的竞争者并不会对目标关键词的检出带来太大影响,这类样本过多地参与训练,将拖慢训练进程,影响决策边界,进而降低检测器性能,故需要减少这类样本参与训练;对应地,此时|s(t
i
)

s(c
i
)|较大,p
i
较小,也即样本z
i
参与训练的概率较小;
[0042]
当s(t
i
)比较小而s(c
i
)比较大时,如前所述,训练是基于“样本转录文本y
i
正确”的假设下进行的,但s(t
i
)却比s(c
i
)小很多,在检测器具有一定可靠性的情况下,有理由判断y
i
存在错误转录或x
i
质量较低,这类样本会给训练带来的负面影响,需要尽量避免其参与训练;对应地,此时|s(t
i
)

s(c
i
)|较大,p
i
较小,也即样本z
i
参与训练的概率较小;
[0043]
当s(t
i
)与s(c
i
)相对接近时,表明当前检测器并不能很好地识别样本z
i
,即z
i
属于较难训练的样本,或接近决策边界的“边界样本”,这种样本可为训练提供更多得区分性信息,需要着重训练;对应地,此时|s(t
i
)

s(c
i
)|较小,p
i
较大,也即样本z
i
参与训练的概率较大。
[0044]
进一步地,对于能为语音关键词检测器d训练提供更多区分性信息的样本,其目标评分s(t
i
)和目标的竞争者评分s(c
i
)接近,参与训练的概率大;对于容易训练的样本,其目标评分s(t
i
)大于目标的竞争者评分s(c
i
),参与训练的概率小;对于低质量或有错误标签的样本,其目标评分s(t
i
)小于目标的竞争者评分s(c
i
),参与训练的概率小。
[0045]
与现有技术相比,本技术方案的原理和优点如下:
[0046]
本技术方案利用样本所含目标关键词和竞争对象的竞争关系,利用语音关键词检测器输出,直接构建样本参与训练的概率,从而挑选出对训练有促进作用的样本集进行训练,具有实现简单、成本较低而高效的优点,克服了传统kws训练中被大量易学习样本影响训练效率的问题;通过样本挑选,缓解了kws训练中面临的样本不平衡问题;克服了普通下采样方法对训练造成欠拟合的问题,不仅可以提升检测性能,还可以极大地加速训练;通过尽量避免低质量和存在错误标签的样本参与训练,可以有效抑制标签噪声和低质量样本对训练的负面影响。
附图说明
[0047]
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的服务作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
[0048]
图1为本发明实施例中一种高效语音关键词检测器训练样本使用方法的原理流程图;
[0049]
图2为本发明实施例中使用和未使用本发明方法训练所得检测器在测试集上的det曲线对比图。
具体实施方式
[0050]
为使本发明的目的、技术方案和优点更加清楚,下面将结合具体实施例对本发明作进一步地详细描述。仅此声明,本发明在文中出现或即将出现的上、下、左、右、前、后、内、外等方位用词,仅以本发明的附图为基准,其并不是对本发明的具体限定。
[0051]
本实施例中,使用aishell

2中文语料库中的样本作为实验数据集,其中训练集中正负样本比例为10107:101070=1:10,也即训练集共111177个样本,测试集中正负样本比例为2018:4036=1:2;在实验数据集中,关键词只出现在一个语音样本的一部分,同时,一个语音样本中可能存在多个关键词;具体的待检测关键词列表为:“音乐”,“歌曲”,“卫视”,“互联网”,“机器人”,共5个关键词。本实施例以crnn

ctc的端到端方案搭建语音关键词检测器模型,通过后向传播算法最小化ctc损失函数来训练语音关键词检测器d;建模单元采用有调音节,特征则采用80维的梅尔语谱图。
[0052]
如图1所示,一种一种高效语音关键词检测器训练样本使用方法,包括以下步骤:
[0053]
s1、基于样本集其中n=111177,x
i
为语音样本,y
i
为对应的转录文本,对z中所有x
i
进行预处理,包括预加重、分帧和加窗后,提取80维的梅尔语谱图特征;将所有样本的特征输入到网络中,训练语音关键词检测器4轮,得到d4。
[0054]
s2、在第k轮训练,对于z中的每一个样本z
i
=(x
i
,y
i
),基于第k

1轮训练所得语音关键词检测器d
k
‑1,利用关键词搜索方法search,通过搜索z
i
各个音段,获取其目标评分s(t
i
)和目标的竞争者评分s(c
i
);其中,s(*)为语音关键词检测器从x
i
中检出检测对象*的评分,其值越大,检测对象成为检测结果的可能性越大。
[0055]
具体地,步骤s2包括以下步骤:
[0056]
s2

1、在第k轮训练,对于z中的每一个样本z
i
=(x
i
,y
i
),基于第k

1轮训练所得语音关键词检测器d
k
‑1,利用关键词搜索方法search,基于模型输出的ctc矩阵,搜索z
i
各个音段,按如下方式获取待检测关键词列表内各个关键词的最大得分:
[0057][0058]
式(1)中,m为w中的关键词数量,故m=5;r
i
为z
i
的音段数,为z
i
音段t上关键词w
m
的得分。对于基于ctc方案的网络模型,首先去除blank和重复的帧,找出ctc中的尖峰帧,记由一系列尖峰帧组成的新矩阵为p
spike
,有:
[0059][0060]
式(2)中,s代表尖峰帧的帧数,v则为分类的类别数,本实施例以有调音节作为建模单元,加上“非关键字”,故v=13;p
spike
中每一行代表一帧,每一行经过softmax,故和为1,每一列代表某个有调音节或“非关键字”的概率。此时,对于两字关键词来说,p
spike
中任意两相邻帧皆可认为是一个音段;对于三字关键词,则为三相邻帧;以此类推。基于滑动窗方法,则可得到样本的一系列音段。
[0061]
上述过程中,关键词及“非关键词”的得分由语音关键词检测器的输出通过映射函
数g(
·
)映射得到,即:
[0062][0063]
式(3)中,o
i
为样本z
i
对应特征输入语音关键词检测器得到的输出ctc矩阵,根据转录文本y
i
,将不存在w中的词定义为“非关键词”,并记为w
nk
,则w
*
=w∪{w
nk
}。本实施例中,在某个音段获取某个关键词得分的方法为:对于q个字符的关键词,在p
spike
中,根据标签按顺序取出各帧对应列的概率值,将各概率值相乘之后,开q次方根以进行归一化。以关键词“音乐”为例,记为w1,若“音”的有调音节“y
ī
n”对应标签为“2”,“乐”的有调音节“yu
è”
对应标签为“3”;基于p
spike
矩阵,在该音段的第一帧取出第2列的概率值,记为p
t1,2
,第二帧取出第3列的概率值,记为p
t2,3
,则在音段t上“音乐”的得分为:
[0064][0065]
s2

2、对于样本集z内各个样本z
i
,给定决策阈值p
out
=0.5,根据获取其目标评分s(t
i
)和目标的竞争者评分s(c
i
)。其中,若z
i
为正样本,即包含关键词的样本,z
i
的目标是其所含有的关键词,此时,竞争者包括“非关键词”和w中不存在于z
i
的关键词;若z
i
为负样本,即不含关键词的样本,z
i
的目标为“非关键词”,竞争者为w中的所有关键词。具体地:
[0066]
若z
i
为正样本,设其包含目标关键词为w
m
∈w,在z
i
所有音段中:
[0067]
若w
m
的最大得分大于p
out
,且至少有一个非目标关键词得分大于p
out
,即且使得则令s(c
i
)为非目标关键词得分中的最大者,记其所在音段为t
c
,令s(t
i
)为t
c
上“非关键词”的得分,也即:
[0068][0069][0070]
否则,令s(t
i
)为w
m
的最大得分,记其所在音段为t
t
,而s(c
i
)为t
t
上非目标关键词得分中的最大者,也即:
[0071][0072][0073]
若z
i
为负样本,在z
i
所有音段中,令s(c
i
)为所有关键词得分中的最大者,记其所在音段为t
w
,令s(t
i
)为t
w
上w
nk
的得分,也即:
[0074][0075][0076]
s3、对于z内样本z
i
,基于s(t
i
)和s(c
i
)构建z
i
参与第k轮训练的概率p
i
,其中p
i
计算方式为:
[0077]
[0078]
式(11)中,α和σ为超参数,α=1,σ=1,控制着样本使用概率对于|s(t
i
)

s(c
i
)|的敏感程度;此时,p
i
∈[e

α
,1],所以α的取值还决定p
i
的分布范围,控制挑选的样本量。
[0079]
s4、基于样本参与训练的概率进行样本的挑选,具体地:样本参与训练的概率越大,则被选中参与第k轮训练的概率越大。本实施例中,采用如下方式进行样本挑选:基于样本的使用概率,设定一个区间[e

α

eps,1]内的均匀分布u,其中eps=10
‑8。对于z内的每一个样本z
i
,依照u产生一个随机数p
u
,并依据p
u
与p
i
的大小关系选择训练样本,具体地:
[0080]
若p
i
≥p
u
,则z
i
被选中作为第k轮训练的样本,加入到样本集z
k
中;
[0081]
若p
i
<p
u
,则不将z
i
加入到z
k
中,即,不参与第k轮的训练。
[0082]
s5、采用挑选出的样本集z
k
训练语音关键词检测器,获得更新的检测器d
k
,如果训练已收敛或k≥k,结束训练,否则,重复s2~s5,其中k是预设的训练最大轮次,本实施例中,k=50。
[0083]
在测试集上,使用训练所得检测器进行性能测试,根据测试结果绘制det(detection error tradeoff)曲线,如图2所示:在虚警率为0.3次虚警/关键词/小时(0.3fa/kw/h)时,使用本实施例所述样本挑选方法比与未使用时的漏检率下降4.06%,相对下降34.85%。
[0084]
本实施例方法在提升系统性能和加速训练两个方面的表现如下表1所示:
[0085] 漏检率平均每轮训练消耗时间(秒/轮)未使用本实施例方法11.65%1011.91使用本实施例方法7.59%261.06
[0086]
表1
[0087]
表1中漏检率在虚警率为0.3fa/kw/h时得到。
[0088]
以训练中的前20轮为例,与未使用本实施例方法相对,使用本实施例方法,使平均每轮的训练时间从1011.91秒/轮减少为261.06秒/轮,相对减少74.20%,其中,在使用本实施例方法的实验中,样本挑选带来的额外时间消耗已计入每轮训练耗时。在分别进行两个实验过程时,本实施例保证在同一机器进行,并且保证机器运行环境基本一致。
[0089]
使用与未使用本实施例方法时,每轮训练使用样本量以及训练耗时对比的具体结果如下表2所示:
[0090][0091][0092]
表2
[0093]
以上所述之实施例子只为本发明之较佳实施例,并非以此限制本发明的实施范围,故凡依本发明之形状、原理所作的变化,均应涵盖在本发明的保护范围内。