前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >语音关键词检测方法综述【附PPT与视频资料】

语音关键词检测方法综述【附PPT与视频资料】

作者头像
马上科普尚尚
发布2020-05-11 17:04:50
2.1K0
发布2020-05-11 17:04:50
举报

关注文章公众号 回复"白烨"获取PPT资料 视频资料可点击下方阅读原文在线观看

导读


随着智能音箱、语音助手等应用的出现,普通人也可以像科幻场景一样使用语音与机器进行交流。语音关键词检测是实现人机语音交互的重要技术,被广泛地应用于各类智能设备、语音检索系统当中。语音关键词检测可以分成两种,一种是用于设备唤醒、设备控制keyword spotting;一种是应用于语音文档检索的spoken termdetection,二者虽然名字类似,但从功能侧重和技术路线上都有所区别。本次分享介绍语音关键词检测的主要方法与最新进展。

讲者介绍


白烨,中国科学院自动化研究所博士生,研究兴趣为语音识别、语言模型、语音关键词检测。

白烨

概述


相比于语音识别、语音合成、语音增强、说话人识别等常见语音领域,语音关键词检测相对来说较为“小众”,但是随着智能助理、智能音箱等应用的兴起,语音关键词检测越来越受到产业界的重视。

语音关键词检测关注如何和从连续语音流中检测出用户感兴趣的关键词。典型场景可以分为两类:

1. 语音设备控制:根据用户的语音指令来唤醒或控制智能设备;

2. 语音检索:从大段语音文档中定位到关键词所在位置。语音关键词检测相关的英文术语有“Keyword Spotting”、“Keyword Search”、“Spoken Term Detection”,然而它们实际上有不同的侧重,是两类不同的问题。Keyword Spotting 指的是语音设备控制这一类应用,一般来说它的关键词是固定的,关注的是低内存占用,低计算复杂度,低功耗下的高准确率;Spoken Term Detection或Keyword Search的关键词一般是可变的,需要定位出关键词在音频文档中的位置,困难点在集外词问题。下面我们分别就这两类问题,介绍相关的三种主流方法,然后在介绍几个前沿进展,最后做一个总结。

主流方法


1、补白模型(Filler Models)

补白模型有时也被称为垃圾模型,它将Keyword Spotting问题考虑为一个逐帧的序列标注问题。关键词定为不同的标注,而一个额外的“补白”标注用来匹配所有非关键词。

基于隐马尔可夫模型的补白模型最早用于Keyword Spotting。它对每一个关键词建立一个隐马尔可夫模型,对非关键词额外建立一个隐马尔可夫模型,观测概率通过混合高斯或神经网络建模。直接针对关键词建模在数据稀疏的问题。目前流行的隐马尔可夫模型则采用子词单元,如音素,进行建模。这种情况下,它与基于HMM混合模型的语音识别中的声学模型就十分类似了,只是解码图是手工设计的文法,而不是基于统计语言模型生成的。亚马逊Alexa语音助手所用的Keyword Spotting系统就是基于这一类方法的,它的隐马尔可夫模型示意图如下图所示:

另一种基于神经网络分类的方法就更加直接了,如下图所示,连续语音流逐段地送入神经网络进行分类。类别为所有的关键词,和一个额外的填充类别(Filler),比如有10个关键词,就有11类。

分类完成后,由于输出的概率可能出现“毛刺”,所以进行平滑后处理,之后如果某一个类别概率超过一个阈值,就认为某一个关键词呗检测到了。这种方法内存占用小,不需要解码搜索,准确率高。但是由于需要准备大量包含关键词的语料,如果更换了关键词,则需要再另行搜集一批语料,所以也较难实际使用。相比之下,基于隐马尔可夫模型的Keyword Spotting由于是针对子词单元建模,语料用通用的就可以,所以更常用。

2、基于样例的Keyword Spotting

基于样例的Keyword Spotting,则将问题考虑为匹配问题。考虑关键词的音频样例,和几个测试音频,分别计算它们的相似度,测试音频中和关键词相似度超过某个阈值的,就认为它是检测出来的关键词。这种方式在使用的过程中,用户可以录制自己的音频并定义为关键词,使用起来就更个性化。

基于样例的关键词检测可以分为两类,一种基于动态时间弯折(Dynamic Time Warping,DTW)算法,它使用DTW算法计算两个音频特征序列之间的相似度;另一种是基于嵌入学习的,它将两个音频分别编码为向量,然后直接计算两个向量之间的距离。基于DTW的方法从上世纪70年代就开始开始应用,但是它在匹配两个序列的时候计算复杂度比较高,目前主要用于无监督的情形;基于嵌入学习的方法,匹配的时候更为简单,在深度学习火热以后就流行起来。

如图所示就是一个基于嵌入学习的关键词检测系统。它由一个LSTM网络构成。训练时,将LSTM视为一个词级别的分类器;测试时,将测试音频和关键词音频输入进LSTM,将最后k个状态拼接起来,计算余弦距离,如果超过某个阈值,就认为是检测到了关键词。

3、基于大词汇量连续语音识别系统的关键词检测

基于大词汇量连续语音识别系统的关键词检测主要是用于音频文档检索任务。首先使用语音识别系统将语音转化为某种形式的文本,然后建立索引,供用户索引。

与一般文本索引不同的是,语音关键词检索中的索引需要包含每一个词的时间位置信息,方便用户定位检索到词的位置。另外一点就是,语音识别结果可能包含一些错误,导致关键词不能找到,所以希望索引将语音识别出的次优候选结果也包含进来,提高检索的召回率。针对这两点的主要方法是,将语音识别出的词格(Lattice)建立为索引。词格是一种保存语音识别候选结果的紧凑形式,还可以包含时间位置信息。

当前比较流行关键词检索的索引是时间因子转换器(Timed Factor Transducer,TFT),在著名的语音识别工具包Kaldi中已经被实现。它可以在线性复杂度下检索到关键词。具体的TFT的构建需要大量背景知识,这里就不展开介绍,详细请见参考文献。

由于语音识别的结果都是在词表内的词,这样如果待查的关键词是集外词,就不可能被查找到了。然而,用户喜欢查找的,往往是人名、地名、组织机构名这样的命名实体,这些词往往都是集外词。解决这一问题的一个方法是代理词:即用一个发音相近的集内词作为待查集外词的“代理”,检索的时候查找“代理”,如果找到了代理,就认为待查的集外词找到了。

前沿进展


在HMM补白模型方面,亚马逊在2017年Interspeech发表了一篇声学模型压缩的文章。具体上,采用时延神经网络(Time Delay Neural Networks,TDNNs)以及降采样结构来减小模型参数,进一步地,还使用了SVD分解,将大的仿射变换矩阵分解为两个小的矩阵相乘的结构,大大减小了参数量。

第二篇文章是基于神经网络来计算异质数据之间相似度的关键词检测。具体上,对于音频用一个循环神经网络来提取高层特征,而对于文本关键词,则采用卷积神经网络来提取高层特征,然后利用多层感知机来判断这两个高层特征是否匹配。由于语音和文本是两个模态的数据,以往的方法很难去计算它们的相似度,而深度神经网络的强大特征映射能力则给我们带来了直接计算两个模态数据相似度的可能。

最后一篇文章介绍针对关键词检测的流式序列到序列模型。RNN-Transducer是语音识别中的一种端到端方法。它可以分为3个部分:encoder是一个RNN,计算高层声学表示;Prediction Network是一个语言模型,计算预测的Label之间的转移概率;Joint Network则融合前两个模块计算出的表示,做出预测。

这篇论文在RNN-Transducer的基础上,加入关键词的编码模块与注意力机制,“引导”RNN-Transducer解码出关键词,提升了关键词检测的准确率。

总结


关键词检测分为两种:KeywordSpotting关注在计算资源有限的情况下,快速准确地从音频流中检测出关键词;Spoken Term Detection中的一大难题是如何检测出集外词。

参考文献


基于隐马尔可夫模型的补白模型

1. Wilpon JG, Lee C, Rabiner L R, et al. Application of hidden Markov models forrecognition of a limited set of words in unconstrained speech[C]. internationalconference on acoustics, speech, and signal processing, 1989: 254-257.

2. Sun M,Snyder D, Gao Y, et al. Compressed Time Delay Neural Network forSmall-Footprint Keyword Spotting.[C]. conference of the international speechcommunication association, 2017: 3607-3611.

直接用DNN进行分类的补白模型

3. Chen G,Parada C, Heigold G, et al. Small-footprint keyword spotting using deep neuralnetworks[C]. international conference on acoustics, speech, and signalprocessing, 2014: 4087-4091.

动态时间弯折

4. ItakuraF. Minimum prediction residual principle applied to speech recognition[J]. IEEETransactions on Acoustics, Speech, and Signal Processing, 1975, 23(1): 154-158.

5. Sakoe H,Chiba S. Dynamic programming algorithm optimization for spoken wordrecognition[J]. IEEE Transactions on Acoustics, Speech, and Signal Processing,1978, 26(1): 159-165.

6. MantenaG V, Achanta S, Prahallad K, et al. Query-by-example spoken term detectionusing frequency domain linear prediction and non-segmental dynamic timewarping[J]. IEEE Transactions on Audio, Speech, and Language Processing, 2014,22(5): 946-955.

7. Zhang Y,Glass J R. Unsupervised spoken keyword spotting via segmental DTW on Gaussianposteriorgrams[C]. ieee automatic speech recognition and understandingworkshop, 2009: 398-403.

基于嵌入学习的样例检索

8. Chen G,Parada C, Sainath T N, et al. Query-by-example keyword spotting using longshort-term memory networks[C]. international conference on acoustics, speech,and signal processing, 2015: 5236-5240.

9. KamperH, Wang W, Livescu K, et al. Deep convolutional acoustic word embeddings usingword-pair side information[J]. international conference on acoustics, speech,and signal processing, 2016: 4950-4954.

大词汇量连续语音识别的关键词检索:时间因子转换器索引构建

10. Can D, Saraclar M. Lattice Indexing forSpoken Term Detection[J]. IEEE Transactions on Audio, Speech, and LanguageProcessing, 2011, 19(8): 2338-2347.

大词汇量连续语音识别的关键词检索:代理词生成

11. Chen G, Yilmaz O, Trmal J, et al. Usingproxies for OOV keywords in the keyword search task[C]. ieee automatic speechrecognition and understanding workshop, 2013: 416-421.

异质数据相似度计算

12. Audhkhasi K, Rosenberg A, Sethy A, et al.End-to-end ASR-free keyword search from speech[J]. IEEE Journal of SelectedTopics in Signal Processing, 2017, 11(8): 1351-1359.

流式端到端识别系统的关键词检测

13. He Y, Prabhavalkar R, Rao K, et al. Streamingsmall-footprint keyword spotting using sequence-to-sequencemodels[C]//Automatic Speech Recognition and Understanding Workshop (ASRU), 2017IEEE.

本文参与 腾讯云自媒体分享计划,分享自微信公众号。
原始发表:2019-02-03,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 人工智能前沿讲习 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体分享计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
相关产品与服务
语音识别
腾讯云语音识别(Automatic Speech Recognition,ASR)是将语音转化成文字的PaaS产品,为企业提供精准而极具性价比的识别服务。被微信、王者荣耀、腾讯视频等大量业务使用,适用于录音质检、会议实时转写、语音输入法等多个场景。
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档