1.本发明涉及数据处理的技术领域,尤其涉及到基于检测错误加权编辑距离的语音关键词样本筛选方法。
背景技术:2.近些年来,随着深度学习的快速发展,语音识别和语音关键词检测等任务的性能也获得了极大的提升。基于神经网络的方法成为了目前研究的主流,如循环神经网络(recurrent neural network,rnn)、卷积神经网络(convolutional neural network,cnn)、transformer等。然而,深度神经网络对数据集的规模和质量都有较高的要求。在训练数据量充足、样本质量较高下,深度神经网络表现出了显著的性能。大规模的语音数据集一般是通过组织录音人员进行录音或者从网络上收集的,由于一些客观因素的影响,语料库中往往会包含不准确的文本标签,即样本的语音语义内容与文本存在一定的出入。但无法知道哪些样本的标注是不准确的。当语料库的规模较为庞大时,往往难以对所有样本进行人工审核标注校正,这需要巨大的时间和人工成本,同时效率低下。而这类训练数据会导致模型学习到错误的映射关系,从而影响模型的性能。因此,有必要对语料库进行清洗,筛选出标注不合格的语音关键词样本,从而建设一个高质量的语音数据集,以应用到不同的任务中。
3.语音关键词检测是一种有效的智能语音处理技术。在当前基于神经网络的语音关键词检测方法中,需要使用大量的语音关键词样本进行迭代训练。模型在训练过程中学习样本之间的共性,形成不同的映射关系。在训练过程中模型可以输出许多有用的信息,一个启发性知识是利用关键词模型训练过程的中间信息帮助筛选出标注不合格的样本。该启发性知识的主要依据是大部分的样本是可靠的,在此假设下,训练得到的模型也基本是可靠的,即标注有误的样本由于占据少数,合格的样本占据多数,因此模型所学习到的正确的映射关系要更强。在不同的迭代轮次中,对于合格样本而言,模型的预测会趋向于一致;对于不合格样本而言,模型的预测会出现较大的浮动。通过融合整个训练期间模型的输出信息,将异常的样本剔除。因此如何利用训练期间模型的输出信息成为筛选的关键。
技术实现要素:4.本发明的目的在于克服现有技术的不足,提供一种基于检测错误加权编辑距离的语音关键词样本筛选方法,利用语音关键词识别模型训练过程中的输出信息,通过对样本关键词的检测错误进行加权,从而对解码序列与标签序列的编辑距离进行修订,使得重要样本可以得到更大的关注,从而筛选出不合格的语音关键词样本。
5.为实现上述目的,本发明所提供的技术方案为:
6.基于检测错误加权编辑距离的语音关键词样本筛选方法,包括以下步骤:
7.s1、使用原始语音数据集作为训练样本集其中,x
n
为语音关键词
样本,y
n
为对应的录音文本,n为训练样本总数,然后将训练样本集中的录音文本y
n
转写为有调音节序列所有关键词的有调音节分别用0到k
‑
2编号表示,其它有调音节均用k
‑
1编号表示,k
‑
1为所有关键词的有调音节的个数,构建语音关键词样本的标签序列从而获得训练样本集z
t
;
8.s2、通过获得的训练样本集z
t
迭代训练语音关键词识别模型,直到模型收敛,在每轮迭代后识别所有语音关键词样本,记录每个语音关键词样本x
n
的解码序列
9.s3、分别将每个解码序列与对应的标签序列进行比对以计算编辑距离、关键词漏检数目和虚警数目,并对漏检数目和虚警数目分别加权以修订编辑距离,获得修订后的编辑距离;
10.s4、对每个语音关键词样本在语音关键词识别模型训练过程中得到的所有修订后的编辑距离进行融合,获得每个训练样本的错误值;
11.s5、根据每个训练样本的错误值对语音关键词样本进行筛选,直到合格样本所占的比例满足要求。
12.进一步地,在步骤s3中,对漏检数目和虚警数目分别加权以修订编辑距离,采用的修订公式为:
13.d=d
e
+n
fr
·
d
fr
+n
fa
·
d
fa
ꢀꢀꢀꢀꢀꢀ
(1)
14.式(1)中,d
e
为解码序列与对应的标签序列的编辑距离,n
fr
为关键词漏检数目,d
fr
为关键词漏检代价,n
fa
为关键词虚警数目,d
fa
为关键词虚警代价;d
fr
和d
fa
为经验常数,且满足d
fr
≥0,d
fa
≥0。
15.进一步地,所述步骤s4对每个语音关键词样本在模型训练过程中得到的所有修订后的编辑距离进行融合时,具体融合第二轮迭代到第m轮迭代修订后的编辑距离,融合公式如下:
[0016][0017]
式(2)中,表示训练样本的错误值,m表示在训练样本集z
t
下的关键词识别模型训练的迭代次数,d
i
表示第i轮迭代所计算得到的修订后的编辑距离。
[0018]
进一步地,所述编辑距离为将解码序列调整成标签序列所需要的插入、删除和替换的操作次数。
[0019]
进一步地,所述步骤s5根据每个训练样本的错误值对语音关键词样本进行筛选,具体包括:
[0020]
首先将所有训练样本按照错误值从大到小进行排序,设置一个阈值,若训练样本的错误值小于等于阈值,则将该训练样本放入合格样本集中;若训练样本的错误值大于阈值,则将该训练样本放入候选样本集中;然后对候选样本集中的训练样本进行人工审核,若审核为合格样本,则移入合格样本集;最后将得到的合格样本集作为新的训练样本集z
t
,重复步骤s2
‑
s5,直到合格样本所占的比例满足要求。
[0021]
进一步地,设置的阈值通过以下过程选取得到:
[0022]
1)根据每个训练样本的错误值的数值范围,将排序好的错误值序列划分为不同的连续区间;
[0023]
2)从数值最大的区间开始,依次在每个区间随机抽取k个训练样本进行人工审核,若训练样本的录音文本与语音语义内容一致,则该训练样本视为合格样本,否则视为不合格样本,记录审核过的训练样本;
[0024]
3)统计当前区间所抽取的k个训练样本中不合格样本的占比率,若不合格样本占比率小于系数α,则停止人工审核,并将该区间的最大错误值作为所设置的阈值;其中k和α为经验参数。
[0025]
进一步地,直到合格样本所占的比例满足要求时,所有连续区间的不合格样本占比率均小于系数α。
[0026]
本技术方案中,语音关键词样本,指用于训练语音关键词检测器的所有样本,包括含有关键词的正样本和不含关键词的负样本。在语音关键词检测器训练过程中,正样本和负样本是缺一不可的,同样在语音关键词检测器评价过程中,正负样本都是不可或缺,还且负样本一般多于正样本。文献普遍将其统称为语音关键词样本。
[0027]
与现有技术相比,本技术方案的原理如下:
[0028]
本技术方案利用语音关键词识别模型训练过程中的输出信息,通过对样本关键词的检测错误进行加权,从而对解码序列与标签序列的编辑距离进行修订,使得重要样本可以得到更大的关注,从而筛选出不合格的语音关键词样本。
[0029]
与现有技术相比,本技术方案的优点如下:
[0030]
本技术方案大大降低了人工审核所有样本的工作量,提升了筛选的效率。为语料库的清洗,构建一个高质量的语音数据集提供了一个有效的方案,减少了低资源小语种语料库建设的难度,同时也为深度神经网络提供了质量更高的语音关键词样本,推动低资源语种相关语音技术的研究发展。
附图说明
[0031]
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的服务作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
[0032]
图1为本发明实施例中基于检测错误加权编辑距离的语音关键词样本筛选方法的原理流程图。
具体实施方式
[0033]
下面结合实施例及附图对本发明作进一步详细的描述,但本发明的实施方式不限于此。
[0034]
如图1所示,本实施例所述的基于检测错误加权编辑距离的语音关键词样本筛选方法,包括以下步骤:
[0035]
s1、使用原始语音数据集作为训练样本集其中,x
n
为语音关键词样本,y
n
为对应的录音文本,n为训练样本总数,然后将训练样本集中的录音文本y
n
转写为有调音节序列所有关键词的有调音节分别用0到k
‑
2编号表示,其它有调音节用k
‑
1编号表示,k
‑
1为所有关键词的有调音节的个数,构建语音关键词样本的标签序列从而获得训练样本集z
t
;
[0036]
在本实施例中,使用录制的未经人工审核的392.67小时江西赣州客家话语音数据作为训练样本集,共包含761个不同的说话人;另外,使用已经过人工审核的15.51小时的客家话语音数据作为验证样本集,其中,验证样本集作为模型收敛的判断准则,并与训练样本集没有交集;预定义待识别的关键词个数为50。首先将所有的关键词用有调音节表示,将关键词的有调音节排序后分别用数字0到k
‑
2表示,得到映射关系表。对于每个语音关键词样本,将其文本序列转写为有调音节序列,根据映射关系表,遍历样本的有调音节序列,若当前有调音节在映射关系表内,则用其对应的数字表示,否则用数字k
‑
1表示,得到每个语音关键词样本的标签序列
[0037]
s2、通过获得的训练样本集z
t
迭代训练关键词识别模型,直到模型收敛,在每轮迭代后识别所有语音关键词样本,记录每个语音关键词样本x
n
的解码序列
[0038]
在本实施例中,首先对训练样本集和验证样本集的每个语音关键词样本按照帧长25ms和帧移10ms提取80维的对数梅尔频谱特征,得到样本的语音特征表达。所用关键词识别模型的结构为卷积循环神经网络,具体包含3层卷积网络、2层双向门控单元和2层全连接层,卷积核大小为3
×
3,损失函数使用联结主义时序分类器,优化器使用adam,初始学习率为0.001。在模型训练过程中,一轮迭代为所有的训练样本参与一次训练,模型收敛的判断准则为验证样本集的关键词识别性能不再提升。在每一轮迭代训练后,利用当前的模型对所有的训练样本进行一次识别,解码方法采用束搜索算法,设置束宽为20,得到语音关键词样本的解码序列并记录下来。
[0039]
s3、分别将每个解码序列与标签序列进行比对以计算编辑距离、关键词漏检数目和虚警数目,并对漏检数目和虚警数目分别加权以修订编辑距离,获得修订后的编辑距离;
[0040]
在本实施例中,验证样本集的关键词识别性能在第16轮达到最佳。对于每个训练样本而言,分别有16个解码序列,对应于第1轮到第16轮模型的输出结果;将每个解码序列与标签序列进行比对以计算编辑距离d
e
。在关键词检测任务中,更关注两种类型的检测错误,即关键词的漏检和虚警。尽管编辑距离衡量了解码序列与标签序列的偏差,但其对于虚警和漏检的错误代价与非关键词的错误代价是一致的,因此有必要对编辑距离进行修订,使得样本的质量评价指标更突出关键词检测出错的样本。因此,根据关键词的序列,统计样本出现虚警和漏检的数目后分别加权,并对编辑距离d
e
进行修订,具体实现公式为:
[0041]
d=d
e
+n
fr
·
d
fr
+n
fa
·
d
fa
ꢀꢀꢀꢀꢀꢀ
(1)
[0042]
式(1)中,d
e
为解码序列与对应的标签序列的编辑距离,n
fr
为语音关键词样
本的关键词漏检数目,d
fr
为关键词漏检代价,n
fa
为语音关键词样本的关键词虚警数目,d
fa
为关键词虚警代价;d
fr
和d
fa
为经验常数,且满足d
fr
≥0,d
fa
≥0。在本实施例中,d
fr
=3,d
fa
=3。
[0043]
s4、对每个语音关键词样本在关键词识别模型训练过程中得到的所有修订后的编辑距离进行融合,获得每个训练样本的错误值;
[0044]
具体融合第二轮迭代到第m轮迭代修订后的编辑距离,融合公式如下:
[0045][0046]
式(2)中,表示训练样本的错误值,m表示在训练样本集z
t
下关键词识别模型训练的迭代次数,d
i
表示第i轮迭代所计算得到的修订后的编辑距离。关键词识别模型采用随机初始化的方式开启训练,第1轮的模型输出会产生较大的误差,因此融合第二轮迭代到第m轮迭代修订后的编辑距离。在本实施例中,m为16,每个训练样本计算得到一个错误值取值范围在[0,+∞)之间。
[0047]
s5、根据每个训练样本的错误值对语音关键词样本进行筛选,得到合格的语音关键词样本,具体过程如下:
[0048]
每个训练样本的错误值以从大到小的顺序进行排序,设置一个阈值,将训练样本集划分为两个子集,若错误值大于阈值,则将样本放入候选样本集,否则放入合格样本集。阈值的选取方式具体为:
[0049]
根据样本错误值的数值范围划分为不同的连续区间;
[0050]
从数值最大的区间开始,依次在每个区间随机抽取k个训练样本进行人工审核,若训练样本的录音文本与语音语义内容一致,则该样本视为合格样本,否则视为不合格样本,记录审核过的训练样本;
[0051]
统计当前区间所抽取的k个训练样本中不合格样本的占比率,若不合格样本占比率小于系数α,则停止人工审核,并将该区间的最大错误值作为所设置的阈值;其中k和α为经验参数。
[0052]
在本实施例中,所划分的区间为[0,2),[2,4),[4,6),[6,8),[8,10),[10,12),[12,14),[14,16),[16,+∞),经验参数k=100,α=0.1。
[0053]
候选样本集中的样本即为筛选出来的不合格样本,为避免误删除正确样本以及重新利用这些样本,可以进行人工审核,经审核合格或修订后合格后,将其重新放入合格样本集。
[0054]
将合格样本集作为新的训练样本集z
t
,重复步骤s2
‑
s5,直到所有连续区间的不合格样本占比率均小于系数α,最后得到的合格样本集即为清洗后的语料库。
[0055]
以上所述之实施例子只为本发明之较佳实施例,并非以此限制本发明的实施范围,故凡依本发明之形状、原理所作的变化,均应涵盖在本发明的保护范围内。