ASR文献
整理ASR相关文献
ASR
1.《A Re-thinking ASR Modeling Framework using Attention Mechanisms》
Chih-Ying Yang and Kuan-Yu Chen
作者使用注意力机制来改进 ASR
作者提出的模型名为 re-thinking ASR(rt-ASR)

作者的模型之所以叫 re-thinking ASR 是因为它对假设的语言规律进行了计算,作者是希望通过重新思考假设的语言规律以及文本和声学特征来产生更准确的识别结果
其主要包括 Encoder 和 Decoder 两部分,其中 Decoder 部分使用的是 modified Transformer,其具有 mixed attention 和 self-and-mixed attention
假设语音序列为 \(X=\{x_1,\dots,x_T\}\) 对应的文本序列为 \(Y=\{y_1,\dots,y_L\}\)
在 特征提取 部分作者使用两层 CNN 来获取语音特征,并设置步长为2,从而使得特征数减少到 \(\frac{1}{4}T\) ,接下来引入位置编码,并通过 N 层 Transformer 得到语音的编码特征 \(H^\alpha=\{h^{\alpha}_1,\dots,h^{\alpha}_{T/4}\}\)
在解码器部分作者想的是尽可能利用多模态信息,其输入是 \(\{Y^f,Y^s_{1:(m-1)}\}\),其中 \(Y^f=\{y^f_1,\dots,y^f_{L'}\}\),是由 ASR 假设(First Pass ASR) 得到的预测解码序列,而 \(Y^s_{1:(m-1)}=\{y^s_1,\dots,y^s_{m-1}\}\)则是 rt-ASR 模型的输出,两个部分分别加上位置编码和段落编码,送入 Decoder
在 mixed attention 部分 \[ Q_{mixed}=Y^s_{1:(m-1)}W^Q_{mixed} \\K_{mixed}=[Y^f;Y^s_{1:(m-1)}]W^K_{mixed} \\V_{mixed}=[Y^f;Y^s_{1:(m-1)}]W^V_{mixed} \\ \overline{Y}^s_{1:(m-1)}=softmax(\frac{Q_{mixed}(K_{mixed})^T}{\sqrt{d}})V_{mixed} \] 这里生成的 \(\overline{Y}^s_{1:(m-1)}\) 还拥有了未来的信息(由于 First Pass ASR)
接下来利用 self-and-mixed attention 来混合文本和声音信息,这一步除了利用 \(H^\alpha\) 和 \(\overline{Y}^s_{1:(m-1)}\) 得到 \(\overline{\overline{Y}}^s_{1:(m-1)}\) 以外,还计算了 \(H^\alpha\) 的自我注意力 \(\overline{H}^\alpha\)
作者实验了两种 First Pass ASR 模型,发现都有 3% 左右的提高

2.《SpecAugment: A Simple Data Augmentation Method for Automatic Speech Recognition》
Daniel S. Park, William Chan, Yu Zhang, Chung-Cheng Chiu, Barret Zoph, Ekin D. Cubuk, Quoc V. Le
作者提出了一种简单的用于 ASR 的数据增强的方法 SpecAugment
作者提出的直接作用于 mel 频谱
主要有三种方法,Time warping、Frequency masking、Time masking
Time warping 是指将图像除边界点外部分进行折叠,产生的效果类似水平平移
Frequency masking 则是在屏蔽某一特定宽度的频率值
Time masking 是屏蔽某一特定宽度的时间值

ASR非自回归模型
目前的大部分序列到序列模型都是自回归模型,即利用上一解码步骤的结果来预测当前时间步的结果,但这样的自回归性质会导致在inference时出现很大的延迟,而非自回归模型则可以摆脱这种依赖,提高推理速度
1.《Spike-Triggered Non-Autoregressive Transformer for End-to-End Speech Recognition》
中科院自动化所的文章 Zhengkun Tian, Jiangyan Yi, Jianhua Tao, Ye Bai, Shuai Zhang, Zhengqi Wen
文章提出了讲非自回归网络应用到语音识别上
具体使用的是 Non-Autoregressive Transformer(NAT)。一般的 NAT 会采用固定的长度的掩码序列来作为输入,从而预测目标序列。因此该固定长度对模型性能有很大的影响,目前主要的方法有 1. 引入神经网络来预测目标长度,但该方法需要对不同长度像本进行采样。2. 设定固定长度,由于为了确保模型性能,长度往往会比目标序列长很多。3. 利用 CTC 损失代替交叉熵损失函数,但在inference时会生成重复标记和空白并不会提高infernece速度
因此作者提出了 Spike-Triggered Non-Autoregressive Transformer(ST-NAT)

其主要由编码器,解码器,CTC组成,其中的编码器和解码器和Transformer类似
首先对输入的语音序列进行卷积和添加位置信息,之后送入到编码器
文章的主要创新点在引入CTC峰值模块对目标序列长度进行预测,将编码器的输出输入到CTC网络中,当CTC输出高过阈值之后记录触发阈值来估计长度
随后做实验证明了CTC可以准确预测长度,并且也可以正确触发


2.《Non-Autoregressive Transformer for Speech Recognition》
Nanxin Chen,Shinji Watanabe,Jesús Villalba,Najim Dehak
作者提出了两种非自回归模型:A-CMLM,A-FMLM
目前深层Transformer已经在ASR上得到了很好的应用,但是由于其是自回归模型,在推理阶段会很难并行,消耗大量计算量
因此作者提出使用非自回归模型,并支持目前在ASR领域的 Non-Autoregressive 普遍依赖于 CTC ,作者的灵感来自于 CMLM
在传统的 ASR 方面解码器根据之前的解码结果生成当前时间步骤的解码 \[ P(y_l|y_{<l},x)=P_{dec}(y_l|y_{<l},f_l(h)) \] 在训练阶段,可以通过给予正确的输入以达到并行解码,但在 inference 的时候则需要一步步解码
目前使用 Non-Autoregressive 有两种方法 一种是基于 CTC 的方法,另一种则是多次迭代来完成预测
作者提出的是 Audio-Conditional Masked Language Model (A-CMLM) 其思想是从以前结算中得到的部分替代自回归模型中的 \(y_{<l}\) 在模型中引入了 [MASK] 标签,这里用\(L_M\)和\(L_U\)来表示被 MASK 的部分和未被 MASK 的部分 \[ P(y_{L_M}|y_{L_U},x)=\prod_{l\in l_M}P_{dec}(y_l|y_{L_U},f_l(h)) \] 其过程如上图第二部分所示,在训练阶段随机 MASK 部分,然后要求模型根据输入去预测这些被 MASK 的部分,这里作者假设了预测被 MASK 的部分之间是互相独立的,因此才可以实现概率上的相乘
同时作者在 A-CMLM 的基础上提出了改进后的 Audio-Factorized Masked Language Model (A-FMLM) ,由于在 A-CMLM 中训练和 inference 步骤之间还是存在一定差距,inference 要求初始输入全部都是被 MASK 的,而 A-CMLM 训练中还是需要有部分未被 MASK的存在。为了缓解这种问题,作者提出了 A-FMLM
作者假设输出长度为 \(L\),迭代次数为 \(K\) \[ Z_0=\phi \\ Z_K=[0,1,\dots,L-1] \\ \forall i \ \ Z_i\subset Z_{i+1} \] 这样训练和推理过程都可以变为: \[ P(y|h)=\prod^{K}_{i=1}\prod_{l\in Z_i\cap \overline{Z}_{i-1}}P_{dec}(y_L|y_{Z_{i-1}},f_l(h)) \] 这样定义以后,自回归模型就变成了 \(K=L,Z_i=[0,1,\dots,i-1]\) 的一种特例
在推理过程中,使用了 easy decoding 在第一次预测的时候先预测最可靠的标记,之后根据该结果进行后面的迭代
3.《Listen Attentively, and Spell Once: Whole Sentence Generation via a Non-Autoregressive Architecture for Low-Latency Speech Recognition》
中科院自动化所 Ye Bai, Jiangyan Yi, Jianhua Tao, Zhengkun Tian, Zhengqi Wen, Shuai Zhang
作者指出上一篇文章中提到的模型存在着仍然需要解码器多路前向传播来完成所有的 [MASK] 预测
作者认为可以通过提取语义,在不依赖显式语言模型的情况下生成标记序列,为此作者提出了 LASO (Listen Attentively, and Spell Once)

作者认为可以从声音序列中提取出语言语义表示(这里指的是标签之前的关系),基于此作者定义基于位置的 token 预测为 \[ z=Encoder(x) \\ P(y_i|x)=SummarizeAndDecode(z),\ \ i=1,2,\dots,L \] 其中 \(z_i\) 是经过编码器表示后的隐藏表示序列
LASO 主要由三个部分组成,编码器,position dependent summarizer(PDS),解码器
其中 PDS 负责将编码器输出总结为 token 级别的表示,解码器则在每个位置生成 token
编码器部分和常见的 ASR Transformer 编码器一致
作者认为文本是高度压缩的语义表示,多个声学特征才能对应一个文本标记,为此作者设计了 PDS 来总结编码器表示,并根据token位置来重新组织
在 PDS 中有两个注意力部分,第一部分的 Queries 是最大长度 L 的位置编码,第二部分的 Queries 是上一部分的输出,两部分的 Keys 和 Values 都是编码器提供的,作者使用的是正弦函数来编码位置 \[ pe_{i,2j}=sin(i/10000^{2j/D_m}) \\ pe_{i,2j+1}=cos(i/10000^{2j/D_m}) \]