DEEP RESIDUAL LEARNING FOR SMALL-FOOTPRINT KEYWORD SPOTTING(2018)

基于深度残差学习的小足迹关键词识别

摘要

我们以最近发布的谷歌语音命令数据集为基准,探讨了深度残差学习扩展卷积在关键词识别任务中的应用。

我们的最佳残差网络(ResNet)实现在准确性方面明显优于谷歌之前的卷积神经网络。通过改变模型的深度和宽度,我们可以实现紧凑的模型,其性能也优于以前的小占地面积变体。

据我们所知,我们是第一个研究这些关键字识别方法的人,我们的结果建立了一个开源的最新参考,以支持未来基于语音的接口的开发。

研究内容

设备上的关键字识别有两个主要用途:首先,可以直接在用户的设备上识别常见命令,如“开”“关”,以及其他常见单词,如“是”“否”,从而避免任何潜在的隐私问题。其次,关键字识别可用于检测“命令触发器”,如“hey Siri”,它为针对设备的交互提供明确提示。

此外,还希望此类模型具有较小的占地面积(例如,以模型参数的数量衡量),以便可以将其部署在低功耗和性能受限的设备上。

紧凑型模型通常是从完整模型衍生出来的变体,通常通过某种形式的稀疏化,以牺牲精度换取更小的模型足迹。

在这项工作中,我们重点研究了卷积神经网络(CNN),这是一类近年来成功应用于小足迹关键词识别的模型

特别是,我们探讨了残差学习技术和扩展卷积的使用。在最近发布的谷歌语音命令数据集上,我们的完整残差网络模型优于谷歌此前最好的CNN(准确率分别为95.8%和91.7%)。我们可以调整网络的深度和宽度,以实现模型足迹和精度之间的理想折衷:一种变体仅能实现略低于谷歌最佳CNN的精度,模型参数减少50倍,前馈推理过程中的倍数减少18倍。

这种模式远远优于以前的紧凑型CNN变体。

提出的方法&模型架构

特征提取和输入预处理

对于特征提取,我们首先对输入音频应用20Hz/4kHz的带通滤波器以减少噪声。然后,使用30ms窗口和10ms帧移位构造和堆叠四维Mel倒谱系数(MFCC)帧。所有帧以1s的间隔堆叠,形成模型的二维输入。

模型体系结构

残差块:深层网络中的附加层不能仅仅“附加”在较浅的网络上。

He等人提出,学习残差H(x)=F(x)+x可能更容易,而不是真实映射F(x),因为当模型具有不必要的深度时,根据经验很难学习F的单位映射。图1其中层i的输入x被添加到一些下游层i+k的输出中,强制执行残差定义H(x)=F(x)+x

残差块从无偏差卷积层开始,权值为W∈ R(r)×n,其中m和r分别是宽度和高度,n是特征图的数量。在卷积层之后,有ReLU激活单元,一个批量归一化层(非dropout层)

 

Fig. 1. 我们的完整架构,有一个放大的残差块。

卷积扩张:我们还使用(dw,dh 卷积扩张[12]来增加网络的感受野,这允许我们使用较少的层来考虑1秒的整体输入。为了扩展我们对残差块的输入,这要求整个块的输入和输出大小相等,我们的整个架构从一个权值为W∈ R(m×R)×n的卷积层开始。一在残差块链上进一步附加了一个单独的非残差卷积层和批处理归一化层,如图1表1所示。

 

Table 1. 用于res15的参数,以及参数的数量和乘数。

我们的基本模型,我们称之为res15,包括六个这样的残差块和n=45个特征图(见图1)。对于扩张,如图2所示,使用指数调整计划[12]:在第i层,扩张为dw=dh=2[i/3],导致总感受野为125×125。正如ResNet体系结构中的标准,所有输出在每一层都是零填充的,最后平均汇集并馈送到完全连接的softmax层。之前的工作之后,我们用两个量来衡量一个模型的“足迹”:模型中的参数数量完整前馈推理过程所需的倍数数量。我们的体系结构使用了大约238K个参数和894M个倍数(具体细分见表1)。

 

Fig. 2. 指数增加扩张卷积;在这种情况下,k=1。  (Receptive field  接收野,Convolution filter 卷积滤波器)

要导出紧凑的小占地面积模型,一种简单的方法是减少网络的深度。我们尝试将残差块的数量减半到三个,得到了一个我们称之为res8的模型。由于res15的足迹来源于其宽度和深度,因此紧凑模型在第一个卷积层之后添加了一个4×3的平均池层,将时间和频率维度的大小分别减少了四倍和三倍。由于平均池层充分减少了输入维度,因此在这种变体中我们没有使用扩展卷积。

相反,我们探索了更深层次模型的影响。我们构建了一个具有两倍数量的残差块(12)和26层的模型,我们称之为res26。为了使训练易于处理,我们在残差块链上预先设置了一个2×2的平均池层。由于25个3×3卷积滤波器的感受野足够大,足以覆盖我们的输入大小,因此也没有使用扩张器。

除了深度,我们还改变了模型宽度。上面描述的所有模型都使用了n=45个特征映射,但我们也考虑了n=19个特征映射的变体,在基础模型的名称后面附加了-窄(-narrow)表示。表2显示了我们最好的紧凑型res8-narrow的详细占地面积细分;表3显示了对我们最深和最宽模型res26的相同分析。

 

Table 2. 用于res8窄的参数.

 

Table 3.用于res26的参数.

文章贡献

本文描述了深度残差学习和扩展卷积在关键词识别问题中的应用

数据集

我们使用Google的语音命令数据集[9]评估了我们的模型,该数据集于2017年8月根据知识共享许可证发布。该数据集包含数千名不同的人发出的65000个1秒长的30个短词的话语,以及背景噪声样本,如粉红噪声、白噪声和人造声音。宣布数据发布的博客文章还引用了谷歌对Sainath和Parada模型的TensorFlow实现

在谷歌实施之后,我们的任务是区分12个类别:“是”、“否”、“上”、“下”、“左”、“右”、“开”、“关”、“停”、“走”、“未知”或“沉默”。我们的实验遵循与TensorFlow参考完全相同的程序。语音命令数据集分为训练集、验证集和测试集,分别进行80%的训练、10%的验证和10%的测试。这导致大约22000个培训示例和2700个验证和测试示例。为了在运行中保持一致性,数据集中音频文件的SHA1哈希名称决定分割。

为了生成训练数据,我们遵循Google的预处理过程,在每个epoch以0.8的概率向每个样本添加背景噪声,其中噪声是从数据集中提供的背景噪声中随机选择的。在将音频转换为MFCC之前,我们的实现还执行Y毫秒的随机时间偏移,其中Y~ UNIFORM[−100,100]。为了加速训练过程,所有预处理的输入都被缓存起来,以便在不同的训练时期重用。在每个epoch中,30%的缓存被逐出。

准确度是我们衡量质量的主要指标,它只是衡量分类决策正确与否的分数。对于每个实例,模型都会输出其最有可能的预测,并且不提供“不知道”选项。我们还绘制了接收机工作特性(ROC)曲线,其中x轴和y轴分别显示假警报率(FAR)和假拒绝率(FRR)。对于一个给定的灵敏度阈值,定义为在评估过程中一类被视为阳性的最小概率,FAR和FRR分别表示获得false positives和false negatives的概率。通过扫描敏感度区间[0.0,1.0],计算每个关键字的曲线,然后垂直平均,以生成特定模型的整体曲线。曲线下面积(AUC)越小的曲线越好

结果

与ResNet的论文[2]类似,我们使用了动量为0.9、起始学习率为0.1的随机梯度下降法,在高原上乘以0.1。我们还对Nesterov动量进行了实验,但我们发现在交叉熵损失和测试准确性方面,学习性能略有下降。我们使用64的最小批量和10-5的L2重量衰减我们的模型总共接受了26个epoch的训练,大约有9000个训练步骤。

 

Table 4. 具有95%置信区间(跨5次试验)的每个模型的测试准确性,以及在参数数量和乘法方面的足迹大小。

由于我们自己的网络是在PyTorch中实现的,因此我们使用PyTorch对Sainath和Parada模型的重新实现作为比较点。我们之前已经确认,我们的PyTorch实现与原始TensorFlow参考文献[10]达到了相同的精度。

我们的ResNet模型与Sainath和Parada提出的三种CNN变体进行了比较:trad-fpool3,这是他们的基本模型;tpool2是他们研究的最精确的变体;和one-Stripe1,它们最好的紧凑型变体。这些模型的精度如表4所示,表4还显示了使用不同随机种子的五个不同优化试验的95%置信区间。该表提供了模型参数的数量以及推理过程中的倍数。我们看到,tpool2确实是性能最好的模型,略优于trad-fpool3。one-Strad1模型大大减少了模型的占地面积,但这在准确性方面代价高昂。

表4还显示了我们的ResNet变体的性能。我们的基本res15模型比之前的任何谷歌CNN都具有更好的准确性(置信区间不重叠)。然而,该模型需要较少的参数,但需要更多的倍数。res15-narrow变体以较少的功能地图牺牲了准确性,但仍明显优于谷歌CNN(尽管它仍然使用∼倍数增加30%)。

 

Fig. 3.不同模型的ROC曲线。

看看我们紧凑的res8架构,我们发现“宽”版本严格控制着所有的谷歌模型——它以更小的占地面积实现了更高的精度。虽然与tpool2相比性能略有下降,但“窄”变型更能减少占地面积,但需要的模型参数少50倍,倍数少18倍。这两种型号都远远优于谷歌的紧凑型变体one-Stradi1。

将我们的注意力转向更深层次的变体,我们发现res26的精确度低于res15,这表明我们已经超越了网络深度,我们可以适当优化模型参数。从整体上比较窄型和宽型变体,宽度(特征图的数量)对精度的影响似乎大于深度

我们在图3中绘制了所选模型的ROC曲线,将两条竞争基线与res8res8-narrowres15进行比较。其余的模型不太有趣,因此为了清晰起见,省略了。这些曲线与表4中给出的精度结果一致,我们发现res15在所有工作点的性能上都优于其他模型。

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值