最近在看Speech Representation预训练相关的论文,NLP的Bert模型大杀四方后,语音领域也开始涌现一些优秀的预训练模型,比如:Mockingjay,Wav2Vec,PASE,DeCoAR系列。
《Probing acoustic representations for phonetic properties》对比了4种预训练语音表征模型的效果,包括mockingjay,wav2vec,vqwav2vec,DeCoAR,实验发现预训练模型得到的特征比传统特征的分类效果更好,泛化性能更好。
本文梳理一下这几个重要的预训练模型。
文章目录
- Wav2Vec
- VqWav2Vec
- Wav2Vec2.0
- PASE
- Mockingjay
- DeCOAR
- 参考资料
Wav2Vec
论文:wav2vec: Unsupervised Pre-training for Speech Recognition
本文提出了一种无监督的生成speech representation的预训练算法wav2vec。wav2vec在大量未标注的数据上进行预训练。作者在一种噪声对比学习二分类任务(noise contrastive binary classification task)得到预训练模型。实验结果证明wav2vec预训练得到的speech representation可以显着提升ASR模型的表现。
Wav2Vec基于全卷积网络架构,可以分为两部分,encoder network将原始音频 x x x编码潜在空间 Z Z Z,context network将多个 Z Z Z转换为contextualized representation(即要求的特征表示)。encoder network基于5层卷积,context network基于9层因果卷积。
最终contextualized representation得到的特征维度为512*音频帧长
VqWav2Vec
论文:vq-wav2vec: Self-Supervised Learning of Discrete Speech Representations
与Wav2vec不同的是,VqWav2Vec学到的是离散特征。由 Z Z Z得到离散特征 Z ^ \hat{Z} Z^,文章中用了两种方法,Gumbel softmax和K-Means。实验表明,在不使用Bert模型情况下,gumbel softmax表现更好,使用Bert之后,k-means表现更好。
Vq-Wav2Vec结合了Bert模型。由于量化过程不利于语音的连续性。输入语音被离散化到K-way量化嵌入空间,因此连续语音可以像NLP任务中的单词标记一样充当离散单元。该方法可以直接应用于连续语音。得到的 L L L特征送入训练好的Bert,得到的潜在向量即为要求的representation。
Wav2Vec2.0
论文:wav2vec 2.0: A Framework for Self-Supervised Learning of Speech Representations
Wav2Vec2.0是一个半监督预训练模型,基于vq2vec的思路,通过mask 在latent space 上的语音输入,训练一个contrastive task将真正的量化的latent变量表示与其他负例分辨出来(同时训练了量化过程的latent representation), 由此得到的representation, 基于少量的有标签数据fine-tuning就取得了不错的效果。
与Wav2Vec类似,整个网络也可以分为两部分,encoder network将原始音频 x x x编码潜在空间 Z Z Z,context network将多个 Z Z Z转换为contextualized representation。与Wav2Vec不同的是,encoder network基于CNN,而context network基于Transformer。Quantized representation则是将 Z Z Z离散化。
PASE
论文:Learning Problem-agnostic Speech Representations from Multiple Self-supervised Tasks
PASE是最近比较优秀的利用自监督方法来学习语音表示的工作,作者使用多个自监督任务来训练模型,这些任务有回归也有二分类,这里作者统称它们为worker。每个worker都为模型输出的特征施加了一种soft constraint,这就使得我们可以把最终得到的特征看作多个worker之间的共识,因此具有problem-agnostic的优点。作者也因此将它们的方法称为PASE (problem-agnostic speech encoder)。使得训练得到的speech representation可以适应多种语音相关的任务,实验结果证明PASE得到的特征相较传统的语音特征如MFCC可以显着提升模型的表现。
一共有7个worker,前4个为回归,后三个为二分类分类任务。
Waveform:从得到的representation中解码音频
Log power spectrum (LPS):预测功率谱对数
Mel-frequency cepstral coefficients (MFCC):预测MFCC
Prosody:预测音频的fundamental frequency(F0)、voiced/unvoiced概率、zero-crossing rate和energy
Local info max (LIM):判断representation是否为目标anchor对应的特征,正样本为anchor来自相同句子的representation,负样本是和anchor不同speaker的representation
Global info max (GIM):anchor为长度1s的语音的所有frame的PASE的平均,positive为来自相同句子的同样长度的语音的PASE平均,negative则是用同样方法计算的来自另一个句子的PASE平均。
Sequence predicting coding (SPC):这个任务的目的在于让PASE能建模上下文信息。anchor是一个随机的frame,positive为anchor未来的5个连续frames,negative则为anchor过去的5个连续frames。
整个网络结构包括基于卷积SincNet,紧接着是7层的卷积block(有一维卷积构成),最后进入线性层得到512维度的PASE特征。
Mockingjay
论文:Mockingjay: Unsupervised Speech Representation Learning with Deep Bidirectional Transformer Encoders
整个网络基于双向Transformer,Mockingjay根据过去和未来的frame来预测当前frame。根据实验,Mockingjay可以微调用于下游任务,2个epoch就可以达到较好的效果。
Mockingjay基于多层transformer和多头注意力机制实现双向编码,本质上是Transformer的隐藏状态的表示,为了实现无监督预训练,Mockingjay在“Masked Acoustic Model”(MAM)下进行训练。在训练过程中,将给出蒙版帧,并且该模型将学习重建和预测原始帧。因此给它起了模仿声音的鸟的名字Mockingjay。
具体的encode network网络结构如上图所示,每个encoder层有两个子层,即多头自注意力网络和前馈网络。“Masked Acoustic Model”任务即随机选择15%的输入帧,这15%的蒙版的处理方法与Bert类似(80%全部置为0,10%随机替换,10%不变),然后模型根据其左右上下文预测所选的帧,训练过程中添加预测头(两层前馈网络),用L1 Loss作为真实帧和预测帧之间的误差。
作者一共对比了以下5种设置,其中base和large的差异在于encoder layer number,downsample factor,consecutive masking number。得到的特征维度均为768。
1)BASE —— 最后一层Transformer Encoder输出作为Mockingjay 表示
2)LARGE ——最后一层Transformer Encoder输出作为Mockingjay 表示
3)BASE-FT2 —— BASE加上随机初始化参数的下游模型,微调2个epoch
4)BASE-FT500 —— BASE加上随机初始化参数的下游模型,微调50W个epoch
5)LARGE-WS —— LARGE中所有encoder layers的输出加权求和,作为Mockingjay表示(类似ELMo的方法)
DeCOAR
论文:Deep Contextualized Acoustic Representations For Semi-Supervised Speech Recognition
DeCOAR是一个半监督speech representation模型,作者结合了ELMo的双向性和APC的重构目标。首先在encode网络,根据过去和将来的frame重建特征,得到的特征再送入基于CTC的说话人识别网络。DeCOAR representation即encode得到的特征。相比mockingjay使用transformer作为encode网络,DeCOAR使用双向LSTM作为encode网络,算是以上几种预训练网络最简单的。
参考资料
Wav2vec——无监督的Speech Representation预训练模型
wav2vec2.0: A Framework for Self-Supervised Learning of Speech Representations
PASE——基于多任务自监督学习的问题无关语音编码器