(ICASSP 19)AUTOMATIC GRAMMAR AUGMENTATION FOR ROBUST VOICE COMMAND RECOGNITION

会议:ICASSP 2019
论文:AUTOMATIC GRAMMAR AUGMENTATION FOR ROBUST VOICE COMMAND RECOGNITION
作者:Yang Yang ; Anusha Lalitha ; Jinwon Lee ; Chris Lott

ABSTRACT

该文提出了一种新的语法自动扩充流水线,大大提高了小尺寸声学模型(AM)系统的语音命令识别精度。改进是通过使用替换语法表达式扩充用户定义的语音命令集(也称为语法集)来实现的。对于给定的语法集,一组潜在的语法表达式(候选集)是从特定于AM的统计发音词典中构造的,该词典捕获了由发音、音调、节奏、重音、歧义拼写和噪声条件的变化引起的AM解码中的一致模式和错误。利用该候选集,考虑了基于贪婪优化和交叉熵方法(CEM)的算法,利用一个特定于命令的数据集搜索一个增强文法集,提高了识别精度。实验表明,在不增加虚警率的前提下,本文提出的流水线算法和本文所考虑的算法显著降低了误检率和误分类率。实验也证明了CEM方法比贪婪算法具有一致的优越性能。

CONCLUSION AND FUTURE WORK

本文研究的是一个由基于CTC的小容量声码器和相应的最大后验码器组成的小容量语音命令识别系统,用于识别有限的固定命令集。在command specific dataset上,我们提出了一种新的管道,它可以自动增加命令语法,以提高mis检测和mis分类率。我们通过使解码器适应声学模型一致的解码变化来实现这一点。未来工作的一个重要方向是扩展我们的语法扩充管道以提供个性化,即通过使解码器更好地适应AM和用户的发音模式来提高特定用户的识别精度。

INTRODUCTION

从智能手机到汽车,语音UI在所有类型的设备中无处不在。自从基于深度神经网络的解决方案问世以来,尽管我们已经看到文献报道的语音识别准确度有了实质性的改善[1],[2],[3],[4]因此,在没有基于云的后端的情况下为低内存/低功耗嵌入式设备设计健壮的语音UI系统仍然是一个难题。与基于云的对等设备相比,设备上的推理尽管受到计算能力,内存大小和功耗的限制,但仍具有吸引力,原因有以下几个方面:(i)由于无需将用户语音数据上传到设备,因此隐私问题较少云端; (ii)减少了延迟,因为它不涉及网络访问延迟;(iii)它的使用不受互联网可用性的限制,并且可以在没有内置通信模块的设备中使用。

在这项工作中,我们专注于提高设备上语音UI系统的识别精度,这些系统旨在响应一组有限的预定义语音命令。此类语音UI系统通常用于现代IoT /嵌入式设备,例如蓝牙扬声器,便携式摄像机,听觉设备,家用电器等。特别地,我们假设音频前端固定,并且仅查看将声学特征映射到语音的管道命令。

如图1所示,我们专注于语音命令识别系统,该系统由声学模型(AM)编码器组成,该编码器将声学特征转换为基于音素/字素的概率输出,然后是解码器(例如FST),将从AM到语音命令之一的概率输出。最新的声学模型利用CTC [5],RNN换能器[4]或注意力模型[6](请参阅[7],[8]以获得很好的总结)。它们生成概率输出,该概率输出被馈送到解码器,该解码器生成相应音素或字素标签的后验概率。即使这些模型体系结构和训练方法导致令人满意的甚至超人的转录准确性,但获得的最佳模型通常对于在小型便携式设备中的部署而言仍然太大,例如,即使是[9]中考虑的最小模型(其中的表11) )的参数为18M。
在这里插入图片描述
在这项工作中,我们利用Librispeech [10]和其他一些数据集,利用CTC标准训练的211K参数基于单向RNN的声学模型,输出了字素目标的概率。由于模型尺寸小,其转录准确性低:在Libri-speech测试干净的数据集上,没有任何语言模型的贪婪解码词错误率(WER)为48.6%。因此,我们的工作解决的挑战之一是,给定一个使用通用语音数据集训练的小型声学模型,如何利用有限的特定于命令的数据来提高命令识别精度。在[11]和[12]中已经考虑过将如此小的足迹AM用于关键字检测。。我们的工作通过以较小的占位面积AM来提高命令命令识别精度来扩展这些功能。

在表1中,我们列出了211K参数声学模型中贪婪解码结果的一些样本。值得注意的是,即使单词错误率很高,它产生的错误也往往是正确单词[1]的语音似真再现。通过大型数据集,我们还观察到错误模式在不同话语下趋于一致。这导致了一个有用的见解:对于识别有限的一组语音命令(又称解码器的语法),可以通过添加一些变量来提高识别精度,这些变量将从声学模型中捕获常见和一致的错误,并添加到原始命令集中。我们将语法定义为一组有效的语音命令(例如,语法可以为{ 播放音乐,停止音乐,…… }),我们将这种为原始语法添加变体的技术称为语法增强。有效的语法扩充是这项工作的重点。
在这里插入图片描述
本文的主要贡献是设计了有效的语法扩充框架,该框架对基准系统进行了重大改进。接下来,我们详细介绍我们的主要贡献:(a)对于任何给定的原始语音命令集,我们建议设计一个所有语法变异的候选集,该候选集捕获给定AM的一致错误(b)我们提出一种技术为了快速评估命令识别精度以及任何扩充语法集的错误警报和误检测率,最后(c)我们设计了各种算法,通过适当地添加候选集与原始集之间的差异,自动识别出改进的扩充语法集语法。

我们使用上述技术的新颖管道如图2所示。本文的其余部分安排如下:在第2节中,我们概述了建议的语法扩充管道,并深入探讨了候选集和快速语法评估技术的生成。在第3节中,通过贪婪优化算法和CEM算法来使语法增强过程自动化。实验结果在第4节中介绍,我们在第5节中讨论未来的方向。

PIPELINE FOR AUTOMATIC GRAMMAR AUGMENTATION

我们的AM被训练与CTC损失[5] ,并且因此可以分配一个后验概率ℙ CTC(克| U)为每个命令克在的命令集,用于发声输入Ú。对于给定的测试发声,我们的系统会选择概率最高的命令,如果最高发声率低于预定义的置信度阈值(请参见第2.3节),则拒绝该发声[13] [14]。

如果AM输出偏离基本事实到无法再成功区分其他语法序列的程度,则会发生命令解码错误。语法增强的思想是通过在语法中包括捕获语音变化或一致的AM错误模式的序列变化来恢复声学模型的判别能力。为此,我们从生成包含有意义变体的候选集开始。

2.1. AM-specific statistical pronunciation dictionary
理想情况下,增强候选应从AM捕获一致的错误模式,该错误模式是由发音,音调,速度,重音,模棱两可的拼写甚至AM固有的错误引起的。例如,如果任何命令包含具有同音词的单词,则有必要考虑将这些同音词添加到语法中。为了捕获这些词级变化,我们引入了一个新颖的概念,称为AM专用统计发音词典,可通过以下步骤获得:首先,我们通过大型的通用语音数据集(例如AM的训练集)运行AM。对于每种话语,我们通过在每个时间帧输出具有最大概率的字符,然后是CTC压缩函数,来获得其贪婪解码序列[5]折叠重复的输出字素并清除空白。鉴于一般语音数据集中的大多数话语都对应于一个句子而不是一个单词,因此我们使用Levenshtein算法来找到基本事实到解码的最小编辑路径,并以此获得每个单词的映射为其相应的最大概率解码。对于每个单词,我们收集有关其最大概率解码输出的频率的统计信息。在这里,我们对使用211K参数AM获得的字典中的一些条目进行采样:
在这里插入图片描述
2.2. Candidate set for grammar augmentation
利用该统计字典,我们通过用其前k个可能的最大解码输出重复替换原始语法中的每个单词,来构建包含潜在语法变化的候选集。考虑一个用于小型蓝牙播放器的语音UI应用程序,可以使用以下五个命令来构成原始语法。
在这里插入图片描述
通过在统计字典中查找原始语法中包含的单词,可以形成一系列原始命令的替代表达式,如上所示。对于每个命令,候选集是该命令中每个单词的统计发音词典中前k个解码列表的笛卡尔积。k的值对于不同的单词可能会有所不同,并且被选择为捕获所有变体中的至少一部分。

2.3. Evaluation of command recognition accuracy
略~

AUGMENTATION SEARCH ALGORITHMS

我们考虑的语法扩充算法是在候选集的所有子集中搜索语法集GG通过固定的错误警报目标α使误检测率和误分类率的加权和最小,
在这里插入图片描述
在此,权重因子β控制着误检测与误分类的重要性。由于我们按照公式(1)预先计算了概率,因此对于每个语法摹⊆ g ^ 目标函数可以在不调用AM的情况下进行评估,从而大大加快了搜索算法的速度。

重要的是要注意,向语法添加候选项并不总是会提高性能:(i)对于固定的虚警目标,添加更多候选项只会增加置信度阈值τ(G,α),这可能会导致错误程度降低-检测率。(ii)命令的可区分性具有复杂的相互依赖性,因此为一个命令添加语法候选可能会降低其他命令的识别率,因为这可能会更改命令集之间的分类边界。

3.1. Augmentation via greedy optimization methods
我们考虑以下三种基于贪婪优化的方法:

天真的贪婪搜索:从原始语法开始,反复遍历所有G。在每次迭代中,添加最能改善目标函数的候选者并更新置信度阈值以维持目标FAR,直到没有候选者可以进一步改善为止。

细化贪婪搜索:该算法与贪婪搜索相似,不同之处在于每次将候选添加到语法中时,我们都会在包含添加的候选作为子序列的其余候选中删除那些候选。例如,对于暂停音乐命令,如果将候选姿势音乐添加到语法中,则从后续迭代中删除无聊音乐。以这种方式修剪候选集会增加语法变化的多样性。

波束搜索:在每次迭代中,将维护 l个最佳语法集的列表。当 l = 1时,这退化为朴素的贪婪算法。

3.2. Augmentation via cross entropy method (CEM)
交叉熵方法(CEM)是一种广泛使用的组合优化算法,已成功应用于一些强化学习问题[15],[16]。主要思想源于稀有事件采样,对于该事件,算法尝试将建议的采样分布与最佳零方差重要性采样分布之间的KL差异最小化[16]。
略~

EXPERIMENTS

在本节中,我们将提供一些实验,这些实验说明了通过应用我们的语法增强算法可以提高识别精度。所有结果都是通过包含5个命令的数据集获得的:播放音乐,暂停音乐,停止音乐,下一首和上一首歌。该数据集包含具有不同性别,音调,音量,噪声类型和重音的语音,并分为训练,验证和测试数据集。训练数据集用于训练扩充搜索算法以最小化(2)中定义的目标。验证数据集用于比较所获得的语法集的性能,并决定采用哪个语法集。最后,我们在测试数据集上报告最终语法集的结果。在训练目标函数式(2) ,我们选择β = 1,在这种情况下,最小化的MDR和MCR相当于最大化命令成功率之和1 - MCR(G,α)- MDR(G,α) 。使用第2.1节和第2.2 节中讨论的步骤,通过运行2000小时数据集的211K参数AM获得候选集。我们考虑150名语法候选人(| G| = 150) 使用我们的统计发音词典。

4.1. Performance Evaluation
我们以固定的FAR目标α = 0.1%来分析第3节中描述的语法增强算法,并比较每种算法输出的增强语法。图3显示了命令成功率以及错误检测和错误分类的错误分解。请注意,与基于贪婪优化的算法不同,CEM算法可以最大程度地提高命令成功率,因为​​该算法可能会尽早采用次优语法集。如前所述,向语法集添加更多变体会使它更容易受到错误检测错误的影响。实际上,添加所有150个语法表达式会将命令成功率降低到80%,并将MDR增加到13.76%。但是,图3 结果表明,以有原则的方式执行增强可以大大减少错误分类错误,而不会增加错误检测错误。
在这里插入图片描述
4.2. Complexity of Grammar Augmentation Algorithms
我们评估了第3节中考虑的增强算法的复杂性。在实现我们的扩充算法中,计算上最昂贵的步骤是对任何候选语法集的MCR和MDR评估。因此,我们根据输出最佳扩展语法集所需的语法评估次数来衡量扩展算法的复杂性。图4说明了随着语法评估次数的增加,命令成功率(1-MDR-MCR)的变化/提高。请注意,CEM仅略微进行更多评估,同时最大程度地减少了MCR和MDR之和。虽然Beamsearch进行了更多探索,并且需要更多的语法评估,但与单纯的贪婪相比,它只能提供稍微更好的改进。贪婪算法的改进在最少数量的语法评估中达到了最佳性能。这表明在探索中激励多样性可以更好地提高命令成功率和减少评估次数。
在这里插入图片描述
4.3. Effect of Candidate Set Size on Performance
到目前为止,我们认为候选集大小为150 (| G| = 150)。接下来,我们研究改变候选集大小对增强算法性能的影响。我们通过改变从统计发音词典中每个单词的前k个可能的最大解码输出中选择的单词数k来改变候选字的大小。因此,较大的候选大小会捕获较大的最大解码输出概率。我们通过将候选集大小从25更改为150来重复我们的实验。表2显示了各种候选集大小的增强算法的性能。特别是,它表明CEM随着我们增加候选集而有所改善,并且始终优于基于贪婪的算法。
在这里插入图片描述

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值