Region Proposal Network Based Small-Footprint Keyword Spotting《基于区域提议网络的小足迹关键词发现》

摘要

我们将基于锚的区域建议网络(RPN)应用于端到端关键字发现(KWS)。 RPN已被广泛用于图像和视频处理中的目标检测。在这里,它用于联合建模关键字分类和本地化。该方法提出了多个锚点作为话语中关键词的粗略位置,并且针对每个正锚点共同学习了分类和对地面真实区域的变换。此外,我们扩展了关键字/非关键字二进制分类以检测多个关键字。我们在具有两个热门词的热门词检测数据集上验证了我们提出的方法。在每小时1次的误报率下,我们的方法在多个近期基准上对两个关键字的错误拒绝率相对降低了15%以上。此外,我们的方法可以预测重叠度超过90%的关键字的位置,这对于许多应用而言可能非常重要。
索引词-关键字发现,区域提议网络,多任务学习,端到端,错误拒绝,错误警报。

I. INTRODUCTION

SPEECH关键字识别(KWS)是从流音频或预先录制的音频发音中检测关键字的任务。 它在音频搜索,实时广播中的亵渎行为自动检测以及设备的语音控制等应用程序中发挥着重要作用。 诸如音频搜索之类的需要处理开放式词汇的应用通常建立在大型语音识别(LVCSR)技术上,例如 [1] – [3]。 相比之下,设备控制通常涉及资源占用少的情况(有限的内存和计算),这些情况需要占用很小的空间。 一个重要的例子是唤醒词(或热词)检测,它广泛用于智能电话,个人计算机,智能扬声器等的虚拟助手中。在这封信中,我们重点介绍小尺寸唤醒词检测方案。
小尺寸KWS的主要方法是关键字填充器隐马尔可夫模型(HMM)[4] – [8]。 一HMM通常用于基于电话序列的预定义关键字,而第二填充HMM则通常通过电话循环对非关键字语音段进行评分。高斯混合模型(GMM)曾被用来为关键字/填充HMM的观察特征建模,但是现在KWS系统经常用深度神经网络(DNN)代替GMM以提供HMM状态的后验[9] – [13]。 HMM和混合HMM-DNN方法都通过顺序解码过程来识别关键字和非关键字区域。在[14]中,表明通过对带有子词和填充词输出的前馈DNN进行后处理序列的后处理序列,并以将子词或填充词中的所有帧与相应标签相关联的目标进行训练,可以获得更好的性能。随后对该方法的变体进行了研究[15]-[17],这一发现证实了前馈DNN在低足迹场景中比HMM-DNN方法有了显着改善。
通过将关键字或关键短语作为单个建模单元并仅检测其在语音段中的存在的体系结构,可以获得进一步的性能提升,从而有助于以关键字命中精度为目标的端到端训练。一些配置使用序列模型[18] – [20]。其他配置假定单词中的触发位置,可以通过最大池[21]或注意力[22]自动学习,也可以指定为关键字[23] – [25]的最后一帧。这些模型提供了良好的检测精度,但没有提供准确的关键字位置。但是,关键字的准确位置可以为下游模块提供有价值的信息。在资源较少的情况下,设备上的处理首先检测到关键字,然后将音频发送到服务器以进行关键字验证以及命令或查询识别。准确的关键字位置有助于验证,并确保捕获全部用户话语以进行识别。另外,我们假设学习预测关键词的准确位置将提高关键词检测的准确性。因此,在这封信中,我们建议共同优化关键字检测和位置。以端到端的多任务学习方式。
为了共同优化关键字检测和位置预测,我们针对KWS调整了区域提议网络(RPN)。 RPN最初是在文献[26]中提出的,用于物体检测,它通过共同优化物体的分类和位置估计来达到最先进的性能。与对象检测不同,在对象检测中,RPN用于处理静态图像,在这个字母中,RPN被重新设计为处理流音频信号。实验结果表明,以固定的每小时1次误报率,RPN方法可以达到与其他端到端方法相比,两个关键字的错误拒绝率(FRR)相对降低了15%。 据我们所知,这是将RPN应用于小尺寸关键字查找的第一个成功工作。 源代码位于:https://github.com/jingyonghou/RPN_KWS.git。

II. RPN-BASED KWS

如图1所示,提出的系统由两个模块组成:特征提取器和RPN。
A.FeatureExtractorM0
特征提取器模块将原始语音特征x =(x1,x2,...,xT)的T帧作为输入,并输出h =(h1,h2,...,hT)作为该特征的高级特征表示。输入语音:h = M0(x;θ0),其中θ0是模型M0的参数。在这封信中,我们使用门控循环单位(GRU)作为特征提取器。
B.区域提案网M1和M2
RPN方法不是对所有可能的范围进行评分,而是使用子网M1选择少量锚点(用于包含关键字的候选时间区域),并预测使用子网提取与该区域关联的完整关键字所需的转换M2。
1)锚点:对于每个t帧,建议使用K个锚点,所有锚点的端点都在t处,但是起点的变化在关键字的允许长度上是均匀间隔的。这里的K是一个超参数,将根据开发数据集进行调整。
2)区域分类:子网M1用于将锚分类为关键字ID。 M1将来自特征提取器的每一帧ht作为输入,并为K个锚点的每一个输出一个后验向量:−→yt = M1(ht;θ1),其中−→yt =(yt1,yt2,...,ytK)是在时间t对应于K个锚点的后向量的序列。对于仅使用一个关键字的热词检测,仅需要后一个标量关键字。在这里,RPN用于处理不能同时说出的n个关键字。因此,| yti | = n + 1,并且使用softmax计算yti。

3)区域转换:子网M2用于学习每个正锚到关键字的真实位置的时间转换。 M2还以ht作为输入并为每个锚点输出一个转换向量:-→pt = M2(ht;θ2),其中-→pt =(p1t,p2t,...,pKt)是对应于 K个锚点。 每个凹坑由一个位移因子和一个比例因子组成。
假设我们有两个区域:锚点P =(t1,t2)和关键字Q =(t3,t4)的地面真实框,其中符号A =(b,e)表示区域A从帧b开始并在帧e结束 。 为了将P转换为Q,我们首先将P移位u,以使其中点与Q的中点重合,然后将移位的P按v缩放(固定中点),使其与Q的长度相同,其中

在实践中,M2不是直接预测位移u和比例因子v,而是预测归一化位移uˆ = u / l和比例对数值vˆ = log(v),其中l = t2-t1是长度的长度。 对应的锚点,训练中的均方误差(MSE)损失函数中使用了标准化的uˆ和vˆ,类似于对象识别中的工作。 归一化的uˆ跨长度泛化。 使用自由范围从负数到正数的vˆ值可简化训练[26]。
4)基于IoU的区域接近度:我们使用两个区域之间重叠部分的交集交集(IoU)比来衡量它们的接近度。 具体而言,将锚点P =(t1,t2)与地面真值Q =(t3,t4)之间的接近度计算为联合的交点之比,如下所示:

IoU用于确定锚点是否是某个关键字的积极训练样本,如下所述。
5)训练样本的选择:要训练分类模型M1,我们为每个锚点分配一个类别标签。对于否定性训练话语(不包含任何关键字的话语),所有锚点均为负锚点,对应于类别标签0。对于正向训练话语,我们计算每个锚点和关键字的地面真实区域之间的IoU。如果IoU大于0.7,则将此锚定为正锚,并为其分配与关键字ID对应的类别标签∈1..n。如果IoU小于0.3,则此锚点将用作负锚点,并分配给类别标签0。任何IoU在0.3和0.7之间的锚点都将被视为模棱两可,即不用于训练,因此并非所有K锚点都会可用于任何给定的时间t。只有正锚参与M2的反向传播。
在每种话语中,负锚的数量通常比正锚的数量多得多。在反向传播期间应用了下采样策略。具体来说,对于每个发声,选择100个锚点进行反向传播训练。其中,最多随机选择50个锚点

从正锚中选取,其余则从负锚中随机选择。
从所有话语中选择的训练锚a(i),相关后代y(i)和变换p(i)=(uˆ(i),vˆ(i))表示为{a(i)},{y(i )}和{p(i)},分别为i = 1,。 。 。 ,N。 令A +和A-分别表示正锚和负锚。
6)损失函数:我们使用损失函数最小化MTL目标函数:

其中Lc是锚定i的预测概率y(i)与地面真相标签y ∗(i)之间的交叉熵损失,而Lr是预测的转换矢量p(i)及其预测值之间的MSE损失 训练目标p ∗(i)。 所有N个选定的锚点(正负)都用于训练分类器M1; 仅使用正锚(N + = | A + |)来训练回归模型M2。 分别通过训练量N和N +(以λ加权)将两个损失归一化。
7)流推论:在处理流音频时,RPN预测每个帧t的K个n维后验分类向量-→yt =(yt1,yt2,...,ytK)。 对于每个关键字j∈1,...,n,我们找到(j)处具有最大后验值的锚点:

如果yat(j)(j)>γ,那么我们说关键字j被触发,其中γj是根据给定的误报率(FAR)要求在开发集上调整的置信度阈值。1触发关键字后,下一秒内的任何匹配都将被忽略。

III. EXPERIMENTS

A.语料库
在我们的实验中使用了从商业智能扬声器中收集到的唤醒词集。该数据集称为Ticmini2。该数据集具有大约225小时的数据,大约255 k语音。它是从788位3至65岁的受试者中收集的。从每个主题收集距智能扬声器(1、3和5米)不同距离的关键字和非关键字数据。在采集过程中,具有不同信噪比(SNR)的不同噪声(典型的家庭环境噪声,例如音乐和电视)会在后台播放。大约有187个小时的非关键字讲话;其余每个语音包含一个“ Hi Xiaowen”关键字或一个“ Nihao Wenwen”关键字。我们将上述数据集由不同的演讲者随机分为训练集,开发集和测试集。该数据集的详细信息可在表I中找到。使用HMM和时延神经网络声学模型(AM)训练的通用语音数据可用于获取关键字的起点和终点。

B.设置
1)建议方法:对于特征提取器M0,2层
使用单向GRU和具有ReLU激活的输出投影层。每个GRU层有128个单元。投影层还具有128个输出节点。具有25 ms帧长和10 ms帧偏移的40维梅尔滤波器组特征用作M0的输入。
通过计算训练集中关键字的持续时间,我们发现超过99.9%的关键字在30帧到220帧之间。因此,对于每个帧t,我们选择K个锚点,它们的长度从30到220个帧均匀分布,所有这些都以帧t为结束帧。对于锚点K的数量,wehavetried7、10、13、16和20。由于K = 20,因此在K = 16时仅获得很小的增益,因此认为不需要更高的值。 K = 20用于以后的所有实验。
对于RPN的M1和M2,采用两个线性层。以M0的输出为输入,M1为每个训练锚输出3个分类概率,M2为每个正训练锚输出2个变换因子。
对于使用ADAM优化的神经网络训练,我们尝试了不同的批次大小(200、400话语)和学习率(0.0005、0.001、0.002、0.003)。批次大小400和学习率0.002在开发集上是最佳的。
我们研究了权重λ对方程中回归损失Lr的影响。 2.我们尝试了λ= 0,1,2,3,4,5,并得出结论λ= 3是开发集上的最优值。

2)基准:本信函中实施了三个基准系统。一种是基于Deep KWS [14],它是被广泛使用的基线[15],[16],[22],[24]。为了检测预定义的关键字,它会预测5个中文音节(“ Hi”,“ Xiao”,“ Wen”,“ Ni”和“ Hao”)和一个表示非关键字框架的“ filler”。 (使用整个单词会产生较差的结果。)为了提高性能,将当前帧与15个历史帧和5个将来的帧拼接在一起,作为特征提取器的输入。平滑窗口和滑动窗口分别设置为20和100。第二个基线是RNN注意[22],它会自动学习触发位置。测试中使用了220帧的滑动窗口,与最大锚定窗口一致。最后,我们在[24]中实现了关键字结尾标记方法,将Δt设置为25。所有基线和我们提出的方法都使用相同的网络结构进行特征提取,400句的小批量处理以及开发集上的参数调整。 Deep KWS和关键字结尾标签系统选择了学习率为0.003的ADAM优化器; RNN注意系统选择0.001。

C.结果
1)错误权衡比较:在所有检测错误权衡中-
off(DET)曲线数字,测试集是表I的“测试”列中“ Hi Xiaowen”,“ Nihao Wenwen”和非关键字的72895话语。在计算“ Hi Xiaowen”的DET曲线时, “ Nihao Wenwen”和非关键字语音被视为否定测试数据。同样,“您好文文”的DET曲线会将“您好小文”视为负面数据。
图2和图3中的两个DET曲线都表明,非零的λ使得RPN KWS的性能更好,这意味着回归任务确实对分类任务产生了积极的影响。 “ Nihao Wenwen”的DET曲线优于“ Hi Xiaowen”的发现,可能是因为“ Nihao Wenwen”更长(4个音节而不是3个音节),因此更容易区分“ Nihao Wenwen”和其他非关键字音频。
从图2和图3中,两个关键词都表明我们方法的错误拒绝率(FRR)优于所有三个基线,尤其是在较低的错误警报(FA)率下。以每小时1 FA的速度,我们的方法相对于“ Hi Xiaowen”的相对FRR改善了15%以上,相对于“ Nihao Wenwen”的FRR改善了23%以上。 RNN注意方法比Deep KWS基线要好得多,与先前的工作一致[22]。
在图4和5中,我们分别显示了干净和嘈杂子集的DET曲线,将我们的方法与RNN注意基线进行了比较。我们的发现是:

r如预期的那样,语音清晰的错误率较低;
RPN方法的优势对于嘈杂的r数据而言是巨大的; 和
在干净的数据上,RPN有很多好处
一个关键字而不是另一个关键字的方法。
2)预测区域的分析:我们定量分析了RPN区域建议的执行情况。 给定FA = 1每小时,我们为所有正确识别的阳性话语计算了地面真值框与RPN预测的最佳区域之间的IoU。 我们使用IoU的平均值来评估
预测位置的准确性。
表II显示了定位的精度(平均IoU)
最佳RPN网络,两个关键字的误报率不同。 Pre-RPN列为转换前的最佳锚定IoU,而RPN列为转换后的IoU。 RPN如预期的那样提高了准确性。 我们尝试将FA的阈值设置为每小时1-5,并观察到平均IoU的最小差异。

 

 

IV。 摘要
在这封信中,我们建议为KWS共同进行关键字分类和本地化。 受到RPN在对象检测中的应用的启发,我们将RPN应用于KWS。 所提出的方法首先选择多个锚作为话语中关键词的粗略位置。 RPN将根据所选锚点对每个锚点进行关键字分类。 对于正锚,建议的方法会将锚转换为关键字的地面真实区域。 该方法采用端到端的全字KWS方法,该方法直接预测给定锚点的关键字的后代。 为了学习关键词的位置,所提出的方法只需要知道关键词的开始和结束位置(通过自动比对),而不是关键词的子词细节。 与基于RNN的系统相比,我们的方法不仅可以在不同的FA设置下获得更好的FRR,还可以可靠地识别关键字位置。

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值