当前位置: 首页 > 专利查询>清华大学专利>正文

一种基于多任务神经网络的多样例关键词检测方法技术

技术编号:18944658 阅读:23 留言:0更新日期:2018-09-15 11:57
本发明专利技术公开了属于语音信号处理技术领域的一种基于多任务神经网络的多样例关键词检测方法。方法具体包括以下步骤:在多语言的数据集上训练瓶颈深度神经网络、对目标数据集音频逐帧提取fbank特征和提取目标数据集的bottleneck特征、使用训练集,利用关键词的bottleneck特征为每一个关键词,分别训练一个HMM模型,并获取其帧级别状态标签,利用所有非关键词的bottleneck特征训练一个填充词模型;利用bottleneck特征进行多任务DNN声学模型训练;获取测试集音频的声学分数,应用维特比解码得到关键词检测结果。本发明专利技术的多任务技术可以有效改善低资源条件,使得多样例关键词检测性能明显提升。

A method of multiple case keyword detection based on Multitask neural network

The invention discloses a multi-example keyword detection method based on Multi-task neural network, belonging to the technical field of speech signal processing. The method includes the following steps: training bottleneck depth neural network on multilingual data sets, extracting fbank features from audio frames of target data sets, extracting bottleneck features from target data sets, using training sets, training a HMM model for each key word using bottleneck features of key words, and obtaining The frame level status label is used to train a filler model with all non-keyword bottleneck features; the multi-task DNN acoustic model is trained with bottleneck features; the acoustic scores of test set audio are obtained, and the keyword detection results are obtained by Viterbi decoding. The multi-task technique of the invention can effectively improve the low resource condition and obviously improve the performance of multi-example keyword detection.

【技术实现步骤摘要】
一种基于多任务神经网络的多样例关键词检测方法
本专利技术属于语音信号处理
,特别涉及一种基于多任务神经网络的多样例关键词检测方法。
技术介绍
语音关键词检测技术作为处理海量音频数据的人工智能技术之一,为人们快速从海量语音数据中检索出预先定义的关键词提供了解决方案。当前,根据关键词检索对象的不同,关键词检测可以分为两类:基于文本的关键词检测,关键词以文本形式给出;基于样例的关键词检测,关键词以语音片段(样例)的形式给出。在算法方面,文本关键词检测的主流技术基于LVCSR(大词汇量连续语音识别)和文本匹配;样例关键词检测的主流技术则基于DTW(动态时间规整)模板匹配。实际的应用场景中,在处理资源匮乏的语言或使用范围狭小的方言,甚至语种未知的情况下,基于文本的方法难以取得良好的效果。在此低资源条件下,基于样例的方法更为适用,但当每个关键词的样例数目增加到几十量级时,模板匹配方法带来的性能提升有限。
技术实现思路
本专利技术的目的是提出一种基于多任务神经网络的多样例关键词检测方法,其特征在于,所述方法具体包括以下步骤:步骤1:在多语言的数据集上训练瓶颈(bottleneck)深度神经网络(DNN);步骤2:对目标数据集音频逐帧提取频带过滤fbank(Filter-bank,)特征;步骤3:利用bottleneck-DNN提取目标数据集的瓶颈bottleneck特征;步骤4:使用训练集,利用关键词的bottleneck特征为每一个关键词,分别训练一个隐马尔科夫模型(HMM),并获取其帧级别状态标签,利用所有非关键词的bottleneck特征训练一个填充词模型;步骤5:设计主任务和辅助任务,利用bottleneck特征进行多任务深度神经网络(DNN)声学模型训练。步骤6:利用步骤5中训练的多任务深度神经网络(DNN)声学模型获取测试集音频的声学分数,应用维特比解码得到关键词检测结果。所述步骤1中,DNN包含多个隐层,其中的一个隐层称为bottleneck层,该层与其他隐层相比节点数较少,该层激活函数为线性,其余隐层激活函数为S形(sigmoid)函数;在多语言数据集上进行训练时,采用混合音素集方法或多任务学习方法。所述步骤3中,将fbank特征进行前后5帧扩展输入bottleneck-DNN,以利用上下文信息,bottleneck层的输出即为bottleneck特征。所述步骤4中,关键词HMM包含多个隐状态,其帧级别状态标签采用基于GMM-HMM的EM算法强制对齐得到;填充词模型只有1个状态,其帧级别状态标签直接得到;其中帧级别状态标签采用基于GMM-HMM的EM算法强制对齐得到的具体步骤如下:步骤401:统计第k个关键词的平均帧数根据时长信息确定每个关键词的状态数目其中τ为每个状态持续的帧数,可取为10;步骤402:将第i个训练样例的特征oi=(oi1,oi2,...,oit)平均分配到对应的Nk个状态上oi11,oi21,oi32,…,oitNk,其中oimn表示该关键词的第i个样例的第m帧分配到状态n上。步骤403:使用所有样例的属于第n个状态的训练特征,更新其GMM模型;步骤404:使用上一步得到的GMM模型,对样例在状态单元上重新对齐,得到似然分数;步骤405:判断似然分数变化是否小于阈值,或迭代次数是否到达指定次数。步骤406:如果似然分数变化小于阈值或者迭代次数达到指定次数,迭代截止;否则,返回步骤403进行下一次迭代;步骤407:输出对齐的结果。所述步骤5中,主任务设定为对关键词HMM状态和填充词状态进行预测,辅助任务则有多种选择:对关键词状态和填充词状态的上下文进行预测,即假设某N帧M维特征的状态标签为{s1,s2,...,sN-1,sN},其中s1~sN为每一帧的标签,各为一个M维的向量,则辅助任务标签为{s1,s2,...,sN-2,sN-1}和{s2,s3,...,sN,sN};或在辅助任务中对关键词进行整体建模,即直接将每个关键词以单状态形式对应到神经网络的输出;或将辅助任务设置为对特征所属的说话人进行分类。多任务DNN训练的具体方法如下:步骤501:设定对关键词HMM状态和填充词状态进行预测为主任务A,辅助任务为B;步骤502:采用训练数据的bottleneck特征,利用无监督的预训练初始化神经网络参数θ;步骤503:定义主任务A的目标函数为交叉熵函数其中为目标概率,在{0,1}之间取值,为DNN的输出概率,1≤t≤T,T为特征的帧数;相应地,定义辅助任务B的目标函数为其中为目标概率,在{0,1}之间取值,为DNN的输出概率,1≤t≤T,T为特征的帧数。步骤504:DNN前馈计算与步骤505:联合优化FA(θ)与FB(θ)更新DNN参数,具体优化目标函数为其中λ为与辅助任务B绑定的权重。所述步骤6中,解码网络采用自由循环结构。本专利技术的有益效果是,多任务技术可以有效改善低资源条件,使得多样例关键词检测性能明显提升。说明书附图图1是基于多任务神经网络的多样例关键词检测的流程图。具体实施方式本专利技术提出了一种基于多任务神经网络的多样例关键词检测方法,下面结合附图,对优选实施例作详细说明。图1所示是基于多任务神经网络的多样例关键词检测的流程图。图1中所述方法具体包括以下步骤:步骤1:在多语言的数据集上训练瓶颈深度神经网络(bottleneck-DNN)。所述多语言数据集为中英文混合数据集,对该数据集音频提取40维fbank特征及其一、二阶差分(通常一阶差分是计算当前时刻的后一时刻与前一时刻的差值,二阶差分是将一阶差分结果作为当前序列,计算当前时刻的后一时刻与前一时刻的差值),做前后5帧扩展训练bottleneck-DNN,该DNN隐含层数设置为6,隐含层神经元节点数设为1024,bottleneck层节点数设为256。步骤2:对目标数据集音频逐帧提取fbank特征。设帧长为25ms,帧移为10ms,提取其40维fbank特征及其一、二阶差分。步骤3:利用bottleneck-DNN提取目标数据集的bottleneck特征。将步骤2中获得的fbank特征做均值方差归一化和前后5帧扩展输入步骤1训练好的DNN,其bottleneck层的输出即为bottleneck特征。步骤4:使用训练集,利用关键词的bottleneck特征为每一个关键词分别训练一个HMM模型并获取其帧级别状态标签,利用所有非关键词的bottleneck特征训练一个填充词模型。所述帧级别状态标签采用基于GMM-HMM的EM算法强制对齐得到,具体步骤如下:步骤401:统计第k个关键词的平均帧数根据时长信息确定每个关键词的状态数目其中τ为每个状态持续的帧数,可取为10.步骤402:将第i个训练样例的特征oi=(oi1,oi2,...,oit)平均分配到对应的Nk个状态上其中oimn表示该关键词的第i个样例的第m帧分配到状态n上。步骤403:使用所有样例的属于第n个状态的训练特征,更新其GMM模型。步骤404:使用上一步得到的GMM模型,对样例在状态单元上重新对齐,得到似然分数。步骤405:判断似然分数变化是否小于阈值,或迭代次数是否到达指定次数。步骤406:如果似然分数变化小于阈值或者迭代次数达到指定次数,迭代截止。否则,返回步本文档来自技高网...

【技术保护点】
1.一种基于多任务神经网络的多样例关键词检测方法,其特征在于,所述方法具体包括以下步骤:步骤1:在多语言的数据集上训练瓶颈(bottleneck)深度神经网络(DNN);步骤2:对目标数据集音频逐帧提取频带过滤fbank(Filter‑bank)特征;步骤3:利用bottleneck‑DNN提取目标数据集的bottleneck特征;步骤4:使用训练集,利用关键词的bottleneck特征为每一个关键词,分别训练一个隐马尔科夫模型(HMM),并获取其帧级别状态标签,利用所有非关键词的bottleneck特征训练一个填充词模型;步骤5:设计主任务和辅助任务,利用bottleneck特征进行多任务DNN声学模型训练;步骤6:利用步骤5中训练的多任务深度神经网络声学模型获取测试集音频的声学分数,应用维特比解码得到关键词检测结果。

【技术特征摘要】
1.一种基于多任务神经网络的多样例关键词检测方法,其特征在于,所述方法具体包括以下步骤:步骤1:在多语言的数据集上训练瓶颈(bottleneck)深度神经网络(DNN);步骤2:对目标数据集音频逐帧提取频带过滤fbank(Filter-bank)特征;步骤3:利用bottleneck-DNN提取目标数据集的bottleneck特征;步骤4:使用训练集,利用关键词的bottleneck特征为每一个关键词,分别训练一个隐马尔科夫模型(HMM),并获取其帧级别状态标签,利用所有非关键词的bottleneck特征训练一个填充词模型;步骤5:设计主任务和辅助任务,利用bottleneck特征进行多任务DNN声学模型训练;步骤6:利用步骤5中训练的多任务深度神经网络声学模型获取测试集音频的声学分数,应用维特比解码得到关键词检测结果。2.根据权利要求1所述基于多任务神经网络的多样例关键词检测方法,其特征在于,所述步骤1中,DNN包含多个隐层,其中的一个隐层称为bottleneck层,该隐层与其他隐层相比节点数少;该bottleneck层激活函数为线性,其余隐层激活函数为S形(sigmoid)函数;在多语言数据集上进行训练时,采用混合音素集方法或多任务学习方法。3.根据权利要求1所述基于多任务神经网络的多样例关键词检测方法,其特征在于,所述步骤3中,将fbank特征进行前后5帧扩展输入bottleneck-DNN,以利用上下文信息,bottleneck层的输出即为bottleneck特征。4.根据权利要求1所述基于多任务神经网络的多样例关键词检测方法,其特征在于,所述步骤4中,关键词HMM包含多个隐状态,其帧级别状态标签采用基于GMM-HMM的EM算法强制对齐得到;填充词模型只有1个状态,其帧级别状态标签直接得到;其中帧级别状态标签是采用基于GMM-HMM的EM算法强制对齐得到的,具体步骤如下:步骤401:统计第k个关键词的平均帧数根据时长信息确定每个关键词的状态数目其中τ为每个状态持续的帧数,可取为10;步骤402:将第i个训练样例的特...

【专利技术属性】
技术研发人员:张卫强杨建斌刘加
申请(专利权)人:清华大学
类型:发明
国别省市:北京,11

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1