Speech Representation预训练模型综述

最近在看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——基于多任务自监督学习的问题无关语音编码器

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.rhkb.cn/news/29421.html

如若内容造成侵权/违法违规/事实不符,请联系长河编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

【综述】NLP 对抗训练(FGM、PGD、FreeAT、YOPO、FreeLB、SMART)

在对抗训练中关键的是需要找到对抗样本,通常是对原始的输入添加一定的扰动来构造,然后放给模型训练,这样模型就有了识别对抗样本的能力。其中的关键技术在于如果构造扰动,使得模型在不同的攻击样本中均能够具备较强的识别性 对抗…

端到端语音识别模型LAS(listen-attention-spell)

目录 端到端语音识别模型LAS介绍:模型:模型代码片段 端到端语音识别模型LAS Listen, Attend and Spell (LAS)的神经网络结构,由listener和speller组成,listener是以fbank为输入的pyramidal RNN encoder,speller是基于…

微调Whisper语音识别模型和加速推理

前言 OpenAI在开源了号称其英文语音辨识能力已达到人类水准的Whisper项目,且它亦支持其它98种语言的自动语音辨识。Whisper所提供的自动语音识与翻译任务,它们能将各种语言的语音变成文本,也能将这些文本翻译成英文。本项目主要的目的是为了…

【回答问题】ChatGPT上线了!给我推荐20个比较流行的nlp预训练模型

目录 给我推荐20个比较流行的nlp预训练模型给我推荐20个比较流行的nlp预训练模型源码给我推荐20个比较流行的nlp预训练模型 BERT (谷歌) GPT-2 (OpenAI) RoBERTa (Facebook) ALBERT (谷歌) ELECTRA (谷歌) XLNet (谷歌/纽约大学) T5 (OpenAI) Transformer-XL (谷歌/香港中文大…

真实世界的人工智能应用落地——OpenAI篇 ⛵

💡 作者:韩信子ShowMeAI 📘 深度学习实战系列:https://www.showmeai.tech/tutorials/42 📘 本文地址:https://www.showmeai.tech/article-detail/414 📢 声明:版权所有,转…

谈谈ChatGPT是否可以替代人

起初我以为我是搬砖的,最近发现其实只是一块砖,哪里需要哪里搬。 这两天临时被抽去支援跨平台相关软件开发,帮忙画几个界面。有了 ChatGPT 之后就觉得以前面向 Googel 编程会拉低我滴档次和逼格,于是全部面向 ChatGPT 编程了。 我…

处理Element 日期选择器el-date-picker 限制时间跨度一年

处理Element 日期选择器el-date-picker 限制时间跨度一年 。 主要通过pickerOptions里的disabledDate来控制禁止选中的日期。实现思想就是,当选中第一个开始日期时,拿到该时间戳计算时间范围,然后控制接下来选中时间在一年以内,超…

elementui 中 DatePicker 日期选择器 设置仅能选今日之前 且展示是上个月到这个月的日期

使用了elementui组件的DatePicker组件,设置了日期选择范围为当前日期后,效果如图,右侧面板是灰色的,使用体验感不太好 而我想要实现的是这种效果:一点击出来,展示的就是上个月到这个月的日期 仔细翻阅了官…

vue+elementui 日期选择器

// 这个日期选择器的规则是开始的日期不能超过当天的日期 // 结束的日期不能超过开始的日期并且只能选开始日期选择的这一年的日期 结束的日期默认年份是开始日期选择的年份<el-form:model"DateTimeModel"ref"DateTimeRef":rules"DateTimeRules&qu…

elementui选择月份范围,限制只能选前后1年范围内

需求&#xff1a; 选中2022-2月之后可选范围为2021-2月~2023-2月&#xff0c;其余的月份禁用 代码&#xff1a; <el-form :model"queryParams" ref"queryForm" :inline"true"><el-form-item label"时间范围"><el-date-…

element plus 限制时间范围选择器,开始日期和结束日期不能超过一年

1.限制开始日期和结束日期不能超过一年 <el-date-pickerclass"date-timeselect"v-model"timeValue"type"daterange"value-format"YYYY-MM-DD"format"YYYY-MM-DD"range-separator"至"start-placeholder"开…

vue2 + elementui 日期时间选择器 禁止选择当前时间之前的日期及时间,并添加相应校验规则

项目里有这样一个需求&#xff1a;文章设置的预发布时间不得早于当前时间&#xff08;包括日期和时分秒时间&#xff09;。 具体实现如下&#xff1a; 1、在日期时间选择其中设置禁止选中&#xff08;包括日期和时间&#xff09; &#xff08;1&#xff09;在html&#xff0…

vue Element ui日期插件的使用设置日期选择范围是当前时间到一年

<li> <p class"input_date"><el-date-pickerv-model"value1"type"date"placeholder"选择日期"prefix-icon" "format"yyyy-MM-dd"value-format"yyyy-MM-dd":picker-options"pickerO…

ElementUI 日期选择器 datepicker选择范围限制

ElementUI 日期选择器 datepicker选择范围限制 在使用 el-date-picker 的时候&#xff0c;经常会对选择的时间进行一定限制&#xff0c;所以今天就总结了一些范围 1、第一步 给 el-date-picker 组件添加 picker-options 属性&#xff0c;并绑定 对应数据 pickerOptions 2、对…

elementUI 日期选择器限制时间范围

elementUI 日期选择器限制时间范围 &#xff08;借鉴或根据自己需求修改&#xff0c;纯用于自己记录使用并学习&#xff09; 产品需求&#xff0c;新建任务的时候&#xff0c;选择一个名称&#xff0c;然后返回该名称的有效日期&#xff0c;只能在有限日期内选择任务的时间 使…

html 手机扁平化范围选择日历控件,ElementUI 日期选择器 datepicker 选择范围限制

在使用elementUI中日期选择器时,经常会遇到这样的需求——对可选择的时间范围有一定限制,比如我遇到的就是:只能选择今天以前的一年以内的日期。 查阅官方文档,我们发现它介绍的并不详细,下面我们就来详细介绍一下: 1.给 el-date-picker 组件添加 picker-options 属性,并…

Pandas+ChatGPT强强结合诞生PandasAI,数据分析师行业要变天了?

大家好,我是千与千寻,可以叫我千寻,我自己主要的编程语言是Python和Java。 说到Python编程语言,使用Python语言主要使用的是数据科学领域的从业者。 Python编程语言之所以在数据科学领域十分火热,源于Python语言的三大数据科学工作包,NumPy,Pandas,SciPy。 以下是三…

Springboot前后端分离国际化实现-chatgpt

前言 Springboot国际化可以帮助使用者在不同语言环境中构建应用程序&#xff0c;这样应用程序可以有效地适应不同语言文化背景下的用户需求。 此外&#xff0c;Springboot国际化也可以方便多语言应用程序重用和维护&#xff0c;从而减少了系统部署的时间成本和维护的费用。 要实…

以 ChatGPT 为代表的「大模型」会是多大的技术革命?如果要发生技术革命需要具备哪些条件?...

AI大模型在具体场景下的多样价值 AI大模型相当于是通过积累大量知识&#xff0c;最后形成的一个有泛化知识的个体。它跟原来传统意义上的小模型之间的差异&#xff0c;就相当于一个经过了大量通用题库训练的大学生&#xff0c;和一个只在特定专业受训练的技校生的差异。 放眼整…