Human Language Processing——CTC

栏目: IT技术 · 发布时间: 4年前

内容简介:相比LAS算法,CTC能够克服LAS不能online的弊端。只要在Encoder阶段,不采用Bi-LSTM,那么CTC就可以onlineCTC是Connectionist Temporal Classification的缩写,它可以做到线上实时地语音识别。它用的是单向的RNN,且只作为编码器,用MLP作为解码预测文字分布。RNN对当前语音输入xi编码成hi。MLP再对它乘上一个权重,接上Softmax。但有时候当前的语音输入可能并不能对应实际的文本token,所以预测要额外多一个为空的类别,表示模型不知道要

相比LAS算法,CTC能够克服LAS不能online的弊端。只要在Encoder阶段,不采用Bi-LSTM,那么CTC就可以online

CTC算法是如何处理的?

CTC是Connectionist Temporal Classification的缩写,它可以做到线上实时地语音识别。它用的是单向的RNN,且只作为编码器,用MLP作为解码预测文字分布。RNN对当前语音输入xi编码成hi。MLP再对它乘上一个权重,接上Softmax。但有时候当前的语音输入可能并不能对应实际的文本token,所以预测要额外多一个为空的类别,表示模型不知道要输出什么,因此最终会得到V+1大小的概率分布

Human Language Processing——CTC

CTC没有下采样,所以输入和输出的序列长度都是T。模型预测完后,它还要进行后处理,一是把重复的token合并,二是空类别去掉,最终才是预测序列。CTC的这种预测方式,会让它的数据标注变得很难,因为要确保刚好每个输入声音特征都对应一个正确的token。而标注语料的数量,会直接影响模型评测的表现。此外,一个序列正确的标注方式又可以存着很多种,造成标注多标准问题。这也加大标注数据选择的困难

Human Language Processing——CTC

CTC的效果如何?

单纯使用CTC的效果并不是很好;单纯使用CTC的WER处在30左右;采用CTC+LM的WER普遍能够达到10左右

Human Language Processing——CTC

事实上,LM的引入正是为了克服CTC independent解码所基于的不合理假设。也因此,通过LM进行后处理后,能够大幅提升CTC的效果。从这个角度来说,CTC并不是end-to-end的

CTC有什么问题?

最大的问题就在于每个时间步之间的独立性假设,每个MLP的解码器工作是独立的。它可能会遇到一个奇怪的问题。比如语音数据部分前三帧都在发音c,第一个隐层hi解码出是c后,后面两个隐层就无须再解码出c了。但由于它们是独立工作的,后面的解码部分不知道前面解码的是什么,所以第二个可能解码成空或c,第三个也可能解码成空或c。但如果编码器是足够深的RNN,它也可能在编码过程中考虑这种前后关系的依赖,让第一个输出隐层包含更多关于c的信息,而后面两个隐层包含更多关于空类别的信息

Human Language Processing——CTC


以上就是本文的全部内容,希望本文的内容对大家的学习或者工作能带来一定的帮助,也希望大家多多支持 码农网

查看所有标签

猜你喜欢:

本站部分资源来源于网络,本站转载出于传递更多信息之目的,版权归原作者或者来源机构所有,如转载稿涉及版权问题,请联系我们

Web缓存

Web缓存

Duane Wessels / 清华大学 / 2002-11 / 99.00元

When I first sta一起来看看 《Web缓存》 这本书的介绍吧!

JS 压缩/解压工具
JS 压缩/解压工具

在线压缩/解压 JS 代码

在线进制转换器
在线进制转换器

各进制数互转换器

SHA 加密
SHA 加密

SHA 加密工具