欢迎访问一起赢论文辅导网
SCI期刊论文
当前位置:首页 > SCI期刊论文
标签同步解码算法及其在语音识别中的应用
来源:一起赢论文网     日期:2019-09-29     浏览数:102     【 字体:

 i beam search whose algorithm complexity is linear with the length of the acoustic waves.Despite the wide adoption,the approach has several weakness.(1)It is an equal interval searchalgorithm and inefficient to deal with the variable length in the feature sequence.(2)As thesequence is decomposed to frame level as the feature sequence,the model granularity is small andthe search space is large,e.g.,Hidden Markov Model states of different histories.(3)Greedybeam pruning is conducted at each frame,which is usually hard to balance search efficiency andsearch errors.In this paper,based on deep learning based confusion blank symbol modeling,wesystematically propose label synchronous decoding (LSD)to transform the search process fromframe level to label level and obtain significant speedups.We propose to transform the searchprocess above from frame level to label level whose complexity is linear with the length of linguisticwords.Namely,we utilize effective blank structure and apply efficient post-processing of blankduring inference before doing Viterbi search.The post-processing is applied on the frame levelacoustic model outputs:(1)Decide whether there is a label output at the current frame.(2)If so,conduct the search process.If not,discard the label output.Thus the post-processing can beviewed as the approximation of the probability calculation of each output label.The advantage ofthis method is the smaller search space versus the traditional methods.The search process can begreatly speed up.Moreover,the proposed framework can be applied to both generative anddiscriminative sequence models.In contrast to phone synchronous decoding we previously proposed,the major contributions are: (1)Propose a general decoding framework and correspondingalgorithms for sequence labeling using various sequence models.(2)Role of blank is investigatedand the general principle to make use of it in acceleration is discussed.The proposed frameworkcan be uniformly applied in both Hidden Markov Model(HMM)and Connectionist TemporalClassification(CTC)based acoustic models.Experiments in the switchboard corpus show 2-4times speed-ups for all above models without performance deterioration.Systematic investigationsof the search space,hypothesis pruning,transition model and frame rate reduction in the proposedframework are conducted.Keywords  automatic speech recognition;hidden Markov model;connectionist temporal classification;frame synchronous decoding;label synchronous decoding;variable frame rate;hypothesis pruning1 引 言序列标注问题是指一类将给定的数据序列转化为标签序列的任务[1],如自动语音识别(AutomaticSpeech Recognition,ASR)和手写体识别等.区别于传统模式识别问题的是,序 列标注 任务中,给定样本的各数据点不符合独立同分布(independent andidentically distributed,i.i.d)假设.该类问题的一个显著特点在于,特征向量序列具有可变长性,如 ASR中,由说 的不同.为了对上述时序特征进行建模,人们提出了序列模型.根据其建模过程,序列模型可以分为以下两类:(1)生成式序列模型(Generative Sequence Models,GSM),如隐马尔可夫模型(Hidden Markov Model,HMM);(2)判别式序列模型(Discriminative SequenceModels,DSM),如 (ConnectionistTemporal Classification,CTC)等.对于 GSM,在序列鉴别性训练时,需要在序列层面使用贝叶斯定理,从条件似然度推导出序列后验概率;而 DSM 则可以直接推导和优化序列后验概率.通常来说,出于以下原因,GSM DSM 被分解为帧层面的训练准则:(1)为了更加高效地发挥帧层面分类器的建模效果,如混合高斯模型(GaussianMixture Model,GMM)[2]和 (DeepNeural Network,DNN)[3];(2)为了减轻模型的稀疏性,以及通过将简单模型分解为多个组分来增强模型的泛化能力,例如 ASR 中将模型分解为声学模型、字典和语言模型等;(3)未经序列分解的模型需2151 计  算  机  学  报 2019年得到整个序列信息再进行后续处理,这将给解码过程造成严重的运行延时.本文提出的序列标注方法即是基于这样的模型[4-6]①.在推理阶段,为了找到与输入特征最为匹配的标签序列,搜索过程需要将声学模型,语言模型和字典等结合起来.这一过程是通过在每帧使用基于束剪枝的 维 特 比 算 法 来 实 现 的[7],称 为 帧 同 步 解 码(Frame Synchronous Decoding,FSD).在该框架中,我们将特征帧的数量和语句长度的比值定义为特征速率,将标签输出数量与语句长度的比值定义为标注速率,将解码的帧数与语句长度的比值定义为解码速 率.那 么,在 帧 同 步 解 码 中,上 述 三 个 速 率 均相等.帧同步解码虽然已被广泛使用,但仍存在一些缺点:(1)这是一个等间隔搜索算法,在处理可变长序列时较为低效;(2)由于序列被分解为帧来作为特征序列,模型的粒度变小,导致搜索空间很大.如ASR中,词语历史、音素序列以及 HMM 状态之间的关联性通常以加权有限状态机(Weighted Finite-State Transducer,WFST)进 行 表 示 (通 常 称 为HCLG[8]搜索空间).由于由多个庞大知识源共同组成,因此组成该搜索空间的状态机最终将达到百亿条边;(3)在每帧进行贪心束剪枝通常很难兼顾搜索效率和搜索误差.近来,神经网络的发展使得更强的上下文和历史建模效果成为可能[9-10].同时,更多的标注数据也进一步缓解了模型的稀疏性和泛化问题.这些进展使得研究人员们有可能在更大的模型粒度上从帧到整个序列层面上[5,11-14]进行序列分解,如 Soltau 等人报道 的 一 个 基 于 单 词 粒 度 深 度 学 习 的 声 学 模型[12],在125K 小时标注数据上的表现优于较小粒度的模型.在这些研究中,标注速率小于特征速率,但解码速率仍然等于特征速率.本文提出将特征层面的搜索过程改变为标签层面,即搜索空间是由不同历史的标签组成的,使得解码速率等于标注速率,从而小 于特 征速率.具体来说,在标签推理阶段,对帧层面声学模型的输出增加一步后处理过程:(1)判断当前帧是否存在标签输出;(2)若有,执 行搜索过程;若 无,则 丢弃 标 签 输出.因此该后处理过程可被看作是每个输出标签概率计算的近似.与传统方法相比,该方法的优势是搜索空间更小,且搜索过程被大大加速.在之前的工作中,本文作者曾提出了音素同步解码[15],与之相比,本文的主要贡献和创新点是:(1)提出了一个可被用于不同序列模型中序列标注任务的通用解码框架和相应算法;(2)研究并讨论了blank单元的作用以及在该加速框架中 blank的设计原则;(3)同 时 研 究 了 搜 索 空 间、候 选 序 列 剪枝、转移模型、降帧率等对加速比的影响,并在所有情况下取得一致性加速.本文第2节将首先对语音识别解码算法的研究现状进行简要介绍和分析,其中2.1节,作者将对序列标注问题进行简要综述,并对比两种序列模型———GSM 和 DSM;2.2节中将介绍传统逐帧同步解码的推理框架.接着,在第3节和第4节,本文将提出标签同步解码算法并对其应用进行介绍;第5节将给出实验和分析结果的描述;最后第6节为本文结论.2 语音识别解码算法研究现状分析2.1 序列标注与序列模型2.1.1 序列标注序列标注包括所有将数据特征序列转化为标签序列的任务[1],本节以 ASR 为例进行简要介绍.在训练阶段,一组带有已知标签的输入特征被提供给系统进行模型构建;而测试阶段则基于特征序列和其他知识源,如语言模型和字典,进行模型推理.序列标注问题与传统模式识别的区别在于以下两个方面:(1)序列内数据的相关性.无论是特征序列,还是标签序列,序列中各数据点均不符合独立同分布(i.i.d.)假设.ASR 中,特征序列是由声道的连续运动而产生的.而标签序列则受到句法和语法规则、字典以及语言模型的约束.因此,特征和标签均为强相关序列.(2)标签与特征序列之间的相关性.ASR中,特征和标签之间的对齐方式是未知的,标签序列总是短于特征序列,即其主要问题在于由语速变化等导致的特征序列的可变长性.这就要求序列模型能够同时确定输出标签的位置和内容.2.1.2 序列模型:GSM 与 DSM为了对上述序列相关性这一特征进行建模,人们提出了序列模型.根据其建模过程,序列模型可被分为生 成 式 序 列 模 型 (GSM)和 判 别 式 序 列 模 型(DSM).7期 陈哲怀等:标签同步解码算法及其在语音识别中的应用3151①最近提出的编码器-解码器模型(encoder-decoder)[4-5]则是直接在序列层面进行处理,而不进行序列分解,因此不在本文讨论之列.本文的一些初步扩展工作可参见文献[6].序列模型是通过计算给定标签序列时特征序列的概率p(x|l)来定义的.该模型通过贝叶斯方法引入人类发声物理过程的先验知识,来提供时序和长度约束.HMM 因其作为生成式序列模型来表征人类语音声学特征的能力,而成为 ASR 的流行建模方 法.在 神 经 网 络-隐 马 尔 可 夫 模 型 (NeuralNetwork-Hidden Markov Model,NN-HMM)混 合系统中,HMMs用来对语音信号的动态变化进行建模,而观测概率则通过神经网络来进行估计.  p(x|l)=∑π∈A (l)p(x|π)=∑π∏Tt=1p(x|πt)P(πt|πt-1)=∑π∏Tt=1p(πt|x)P(πt|πt-1)P(πt)p(x)∑π∏Tt=1p(πt|x)P(πt|πt-1)P(πt)(1)其中l是生成式序列模型的标签序列,如上下文相关(Context Dependent,CD)的音素序列.π 是 HMM状态序列,πt是第t帧对应的 HMM 状态,π(l)s是指第l个 HMM 模型的第s个 HMM 状态.P(πt|πt-1)是HMM 状态转移概率,P(πt)是πt的状态先验概率.A 是指从标签序列l到其相应 HMM 状态序列π 的映射函数,如下所示.A :L {π(1)1,…,π(1)5,…,π(|L|)5} (2)L 是标签序列l 的各个单元的集合.其中每个标签序列单元对应一个 HMM 模型,而每个 HMM模型对应五个 HMM 状态,如图1(a)中所示.状态后验概率p(πt|x)可通过神经网络进行估计得出.而判别式序列模型则是直接计算给定特征序列x时输出标签序列l的后验概率p(l|x).其中,连接时序模型(CTC)用于解决未分割序列数据的标注问题,它通过引入blank标签单元,实现对输入序列任意一点的一对一输出标签预测.p(l|x)=∑π∈B (l)p(π|x)=∑π∏Tt=1p(πt|x) (3)其中B 为如下所定义的一对多映射:B :L L∪{blank} (4)B 决定了标签序列l以及l 对应的模型单元序列π 的集合.如图1(b)所示,通过在序列l的每个标签单元l之间插入一个可选的自循环 blank单元进行映射.p(πt|x)则可使用以特征序列x为输入的循环神经网络(Recurrent Neural Network,RNN)或长短时记忆神经网络(Long Short Term Memory,LSTM)[16]等估计得到.图 1 HMM、CTC和本文提出的方法中隐藏状态的拓扑结构示意图(在后三种结构中,其名称中 B 指 blankHMM 状态,P指标签输出 HMM 状态.每个大圆圈代表一个由神经网络建模发射概率的 HMM 状态.其中,点划线圆圈表示输出标签建模,每个均分配一个特定的模型单元,如(b)CTC 中的l.虚线圆圈表示blank建模,但它们并不完全相同,如(b)CTC 中的〈b〉是使用公共的 blank建模;但(c)中的q2,每个输出标签有独立的blank建模,本文5.2节(3)中详细比较了不同 blank的粒度和拓扑结构所带来的区别.其他实线小圆圈,如(c)中q0、q3,(d)中q0、q3,(e)中q0、q4,代表非发射状态.自循环状态转移表示该状态接受当前状态的重复输出.本文5.2节(3)中对这些拓扑结构进行了详细比较)通常,如本文引言中所述,为了有效利用帧级分类器如 GMM[2]和神经网络[3]的建模效果,减轻建模的稀疏性和增强泛化能力,避免未经分解的模型因处理整个序列而导致的运行延时等问题,GSM 和DSM 都被分解为帧层面上的训练,本文接下来便对传统的帧同步解码进行介绍.2.2 帧同步解码在模型推理阶段,为了找到与输入特征最为匹配的标签序列,搜索过程需要将前述序列模型与其它知识源,即字典、语言模型等融合起来.即解码标签序列是由前述各分解序列所共同决定的.该搜索过程是通过在每帧上使用基于束剪枝的维特比算法进行的[7],即帧同步解码(FSD).FSD 框架中,解码速率等于标注速率,标注速率等于特征速率.2.2.1 公式推导在大词 汇 量 连 续 语 音 识 别 (Large Vocabulary4151 计  算  机  学  报 2019年期:2018-09-16;在线出版日期:2019-03-21.本课题得到国家重点研发计划“智能机器人”重点专项(2017YFB1302400)、国家自然科学基金项目(U1736202)、江苏省基础研究计划(BE2016078)资助.陈哲怀,博士研究生,主要研究方向为语音识别、语音合成和深度学习等.E-mail:chenzhehuai@sjtu.edu.cn.郑文露,博士,研究助理,主要研究方向为语音识别.游永彬,硕士,研究助理,主要研究方向为语音识别.钱彦旻(通信作者),博士,副教授,中国计算机学会(CCF)会员,主要研究方向为语音识别、语音理解及机器学习等.E-mail:yanminqian@sjtu.edu.cn.俞 凯(通信作者),博士,教授,中国计算机学会(CCF)会员,主要研究领域为认知型对话系统、语音合成、识别、理解及机器学习等.E-mail:kai.yu@sjtu.edu.cn.标签同步解码算法及其在语音识别中的应用陈哲怀1),2) 郑文露3) 游永彬4) 钱彦旻1),2) 俞 凯1),2)1)(上海交通大学智能交互与认知工程上海高校重点实验室 上海 200240)2)(上海交通大学计算机科学与工程系智能语音实验室 上海 200240)3)(上海交通大学苏州人工智能研究院 江苏 苏州 215000)4)(苏州思必驰信息科技有限公司 江苏 苏州 215000)摘 要 自动语音识别(Automatic Speech Recognition,ASR)等序列标注任务的一个显著特点是其对相邻帧的时序序列关联性建模.用 于 对 相 邻 帧 进 行 时 序 建 模 的 主 流 序 列 模 型 包 括 隐 马 尔 可 夫 模 型 (Hidden Markov Model,HMM)和连接时序模型(Connectionist Temporal Classification,CTC).针对这些模型,当前主流的推理方法是帧层面的维特比束搜索算法,该算法复杂度很高,限制了语音识别的广泛应用.深度学习的发展使得更强的上下文和历史建模成为可能.通过引入blank单元,端到端建模系统能够直接预测标签在给定特征下的后验概率.该文系统地提出了一系列方法,通过使用高效的blank结构和后处理方法,使得搜索解码过程从逐帧同步变为标签同步.该系列通用方法在隐马尔可夫模型和连接时序模型上均得到了验证.结果表明,在 Switchboard数据集上,不损失性能的前提下,实验取得了2~4倍的加速.该文同时研究了搜索空间、候选序列剪枝、转移模型、降帧率等对加速比的影响,并在所有情况下取得一致性加速.关键词 自动语音识别;隐马尔可夫模型;连接时序模型;逐帧同步解码;标签同步解码;可变帧率;剪枝中图法分类号 TP18   DOI号 10.11897/SP.J.1016.2019.01511Label Synchronous Decoding for Speech RecognitionCHEN Zhe-Huai 1),2) ZHENG Wen-Lu3) YOU Yong-Bin4) QIAN Yan-Min1),2) YU Kai 1),2)1)(Key Laboratory of Shanghai Education Commission for Intelligent Interaction and Cognitive Engineering,Shanghai 200240)2)(SpeechLab,Department of Computer Science and Engineering,Shanghai Jiao Tong University,Shanghai 200240)3)(Suzhou Institute of Artificial Intelligence,Shanghai Jiao Tong University,Suzhou,Jiangsu 215000)4)(AISpeech Ltd.,Suzhou,Jiangsu 215000)Abstract  A unique phenomenon in human speech is the variable lengths in acoustic waves andlinguistic words.Hence automatic speech recognition(ASR)requires both pattern classificationand state alignment modeling between input and output sequences,called sequence predictionproblem.In the inference stage,a speech recognizer is to find a sequence of labels whosecorresponding acoustic and language models best match the input feature,called decoding,whichdetermines the recognition speed and precision in real application.The most recent milestone ofASR is the application of deep neural networks (DNN)in acoustic and language modeling.However,those successful applications are still based on the traditional formulation of speechrecognition and the inference stage is unchanged.In this paper,we aim to improve the decodingalgorithm in the inference stage.The dominant decoding method nowadays is frame synchronousonal Speech Recognition,LVCSR)中,解码算法的目标是找到最佳的词序列.通过应用字典和语言模型将词序列映射到标签序列,解码公式可推导如下:w*=arg maxw{P(w)p(x|w)}=arg maxw{P(w)p(x|lw)} (5)其中,w 是词序列,w* 是最佳词序列.lw表示w 通过映射得到的标签序列,如 NN-HMM 系统中的上下文相关音素.以 CTC为例:w*=arg maxwP(lw|x)P(w)P(lw{ })(6)=arg maxwP(w)maxlwP(lw|x)P(lw{ })(7)这里以单音素的 CTC为例(CTC标签集合包括音素标签和blank符号).P(lw)是音素序列的先验概率.对于某个特定的 CTC标签序列,其前向概率可定义并近似为[17]P(l|x)=∑π∈B (l)∏Tt=1ytπt maxπ∈B (l)∏Tt=1ytπt(8)其中,B 的定义见式(4).因此,式(7)可进一步被推导为如下的帧同步维特比束搜索(frame synchronous Viterbi beam search).这里,整体优化搜索空间———WFST,在每一帧都需要被遍历.w*arg maxwP(w)maxπ∈B (l)1P(lw)∏Tt=1ytπ{ }t(9)2.2.2 解码复杂度分析在 FSD 框架中,特征速率定义为特征帧的数量除以语句的长度,标注速率定义为标签输出数量除以语句的长度,而解码速率定义为 WFST 解码的帧数除以语句的长度.在帧同步解码框架中,这三个速率均相等.也就是说,∏Tt=1ytπt与帧t有关,而最大迭代次数则与序列可能的对齐方式和词汇量的大小有关.因此,解码复杂度 C 可表示为C∝T· L′ · W (10)其中 T 是语句中帧的数量,L′ 是模型单元的集合,W 为词汇量.尽管 被 广 泛 使 用,FSD 方 法 仍 有 一 些 缺 点:(1)它是一个等间隔搜索算法,处理变长特征序列较为低效;(2)当序列被分解为帧层面作为特征序列时,模型粒度较小,导致搜索空间很大;(3)在每帧均进行贪心束剪枝,很难平衡搜索效率和搜索误差.因此,本文通过将特征层面的搜索过程改变为标签层面,提出了基于端到端建模的标签同步推理方法,接下来本文将对该框架及其应用进行详细介绍.3 基于端到端建模的标签同步推理本部分,作者提出将搜索过程从特征层面改为标签层面,称为标签 同步解 码 (Label SynchronousDecoding,LSD).接下来该部分将分别对 DSM 和GSM 中的 LSD 进行公式推导,具体实现方案及一些解码加速的经验方案将在下一节中进行讨论.在测试阶段,根据上文式(5)给出的 ASR 解码,下面分别对 DSM 和 GSM 中的 LSD 给出公式推导过程.3.1 DSM的标签同步解码在基于音素的 CTC 模型中,从式(5)可以推导出式(7).而根据 CTC中输出标签之间的条件独立性假设,P(l|x)可以如下获得:P(l|x)=∏l∈lP(l|x) (11)因此在标签级别上,维特比搜索如下所示:w*=arg maxw P(w)maxlw∏l∈lwP(l|x)P(lw烅烄烆烍烌烎)(12)在P(l|x)的计算中,本文提出在帧级神经网络的输出上进行一步后处理.其中公共 blank帧的集合定义如下:U={u:yublank>T } (13)其中yublank是神经网络在第u帧输出blank单元的概率.在 CTC 模型中的 softmax层,如果 blank 单元的声学得分足够大且接近常数 1,则可以认为所有竞争路径共享相同跨度的 blank帧.因此,忽略这些帧的分数并不会影响解码中的声学得分排序.P(l|x)=∑π∈B (l)∏πP(π|x)∑π∈B (l)∏π∈Uyubl∏πUyupl(14)由于∏π∈Uyubl1,式(14)可被推导为式(15):P(l|x)∑π∈B (l)∏πUyupl(15)3.2 GSM的标签同步解码在 GSM 中,相邻 HMM 之间的输出标签也是条件独立的:P(x|l)=∏lP(x|l) (16)类似地,在标签级别上进行的维特比搜索如下所示.w*=arg maxwP(w)maxlw∏l∈lwP(x|l{ )} (17)7期 陈哲怀等:标签同步解码算法及其在语音识别中的应用5151中,P(x|l)的计算如下所示:P(x|l)=∑π:π∈L′,A (π1:T)=l∏Tt=1P(x|πt)P(πt|πt-1)=∑π:π∈L′,A (π1:T)=l∏Tt=1P(πt|x)P(x)P(πt|πt-1)P(πt)∑π:π∈L′,A (π1:T)=l∏Tt=1P(πt|x)P(πt|πt-1)P(πt)(18)最近,研 究 人 员 们 提 出 了 一 些 新 的 HMM 拓 扑 结构[18-19],它们具有与式(4)中 CTC 的B 函数类似的一对多映射.以文献[18]为例,每个 CD 音素由两个状态建模,如图1(c)所示,且转移概率设置为常数值0.5,因此在式(18)中可被省略.具体来说,其中一个状态模拟 blank建模,如图1(b)中的〈b〉,另外一个状态则模拟输出标签单元,如图中的l.不同之处在于文献[18]中的每个 CD 音素都保留了自己的blank版本.因此 HMM 中的状态由标签输出状态或者与 CTC类似的blank状态组成.虽然在我们的实验中,这些模型的输出分布比CTC中的更平滑,但DSM 中提出的式(13)和(14)可以被扩展到 GSM.这里,本文提出对神经网络的输出 P(πt|x)进行后处理,其中πt是帧t的推理模型单元.由于这些模型中的模拟 blank状态,式(17)中的维特比束搜索不必包括候选标签输出序列的所有帧.因此,给出某一帧的模型推理分布时,是否从维特比搜索中排除某帧的判决如下:U= u:∑l∈L(yubl-yupl)>T{  } (19)其中yupl是帧u 处标签输出状态l的神经网络输出,yubl是对应的blank状态的输出.在第u 帧是否有标签输出,是由所有 blank状态与标签输出状态的概率差异的总和决定的.T 是在开发集中得到的阈值.因此,P(x|l)的计算可以根据 π∈U 与否分为如下两部分:P(x|l)∑π:π∈L′,A (π1:T)=l∏πUyublP(bl|x)P(bl)∏π∈UyuplP(pl|x)P(pl烅烄烆烍烌烎)(20)公式中第一部分是标签输出状态.这种情况下,每个标签输出均在 WFST 中进行维特比搜索.另外一部分为 blank,假设没有标签输出.但不同于 CTC,不同标 签 输 出 保 留 自 己 的 blank 状 态 版 本.即 使 是blank帧,也可能包含不同的输出标签信息.因此,∏πUyublP(bl|x)P(bl)的分数不能被丢弃.本文4.2节将提出一种高效的算法对这一项进行计算.这里所提出的后处理可以被视为输出标签概率P(π|x)的近似,从而使得维特比束搜索得以在标签级别上进行.3.3 FSD和 LSD的对比本文提出将特征层面的搜索过程改变为标签层面,即搜索空间是由不同历史的标签组成的,使得解码速率等于标注速 率,从而小于 特征速率.具体来说,本文所提出的 LSD 的解码复杂度如下:C∝(T- U )· L′ · W (21)其中空白帧的数量 U 总是接近于T.对比式(10)和式(21),可以发现 FSD 得到了很大的加速.FSD和 LSD 的主要区别总结如下:(1)不同的信息率.在FSD中,声学信息和语言信息均在每帧进行处理,使得二者的处理速率和声学特征的帧率相同.而在 LSD 中,声学信息是以声学特征的帧率进行处理的,而语言信息则按声学模型推理的标注速率进行处理.声学信息和语言信息处理的不同速率去除了大量的搜索冗余.(2)可调整的搜索间隔.在FSD框架下,WFST网络是以等间隔方式遍历的(虽然带有跳帧的深度神经网络在解码[20]时是以更长的间隔遍历语言搜索空间,但其间隔仍然是相等的).而在 LSD 中,搜索间隔可通过灵活的自我调整(在不造成性能下降的前提下)来去除 blank帧带来的语言搜索空间搜索冗余,大大提升了解码效率.4 标签同步解码算法及其应用4.1 模 型本文将图1(d)~(e)所示的几种改进的 HMM拓扑结构应 用在了 GSM 中.具体来 说,在 图 1(c)中,每个 CD 音素都有独立的 blank状态,称为 CD音素blank(CD phone blank).为 减 少 模 型 单 元 的数量并 进 一 步 加 快 算 法 速 度,将 中 心 音 素 相 同 的blank状态绑定在 一起,称 为 音素 级 blank(phoneblank);最后如果绑定所有的 blank状态则称作全局blank(global blank).此外,鉴于标签延迟带来的性能改进[11],图1(d)中提出 HMM-PB模型的延迟标签变种,即 HMM-BP.也就是说,模型在确定性标签输出之前输出混淆输出blank.另外,作为对 CTC的完整模拟,图1(e)中提出了 HMM-BPB,允许在标签输出前后都存在 blank.我们的初步实验 结果表明,这两种类型的blank展现出了不同的功能.因此没有将它们绑定在一起.而输出标签单元后面的6151 计  算  机  学  报 2019年所有blank则都被绑定在了一起,以减少所需的模型单元数量.4.2 算 法DSM 的标签同步解码算法如算法1所示.S 和E 是预编译的 WFST网络的起始和结束节点.Q 指有效令牌,B^指解码路径,T 是总帧数.NNPropagate(t)是每帧的声学模型推理过程.isBlankFrame(F)用于检测每帧是否为blank.ViterbiBeamSearch(F,Q)是 FSD 中的标准维特比搜索算法,但在 LSD 中仅在标签级 别 执 行.finaTransition(E,S,Q)用 于 搜索 WFST 的终止节点[21].算法1. DSM 的标签同步维特比束搜索算法.输入:起始节点,结束节点,令牌队列,时间帧输出:识别结果1.PROCEDURE LSD for DSM(S,E,Q,T)2.Q←S/*起始节点初始化*/3.FOR each t∈ [1,T]DO/*逐帧神经网络前向传播*/4. F←NNPropagate(t)5. IF!isBlankFrame(F)THEN/*逐音素解码*/6.  Q←ViterbiBeamSearch(F,Q)7.B^←finalTransition(E,S,Q)/*到达结束节点*/8.backtrace(B^)用于 GSM 的 标 签 同 步 解 码 算 法 如 算 法 2 所示.与算法1相比,在每个 blank帧中,输出序列可以包含不同的 blank单元.因此对相邻的 blank 帧计算∏πUyublP(bl|x)P(bl|x).在非 blank帧中,首先将各个blank单元各自累积得到的概率得分分别添加到当前帧的所有候选序列分数中,之后再进行维特比搜索算法.算法2. GSM 的标签同步维特比束搜索算法.输入:起始节点,结束节点,令牌队列,时间帧输出:识别结果1.PROCEDURE LSD for GSM(S,E,Q,T)2.Q←S/*起始节点初始化*/3.FOR each t∈[1,T]DO/*逐帧神经网络前向传播*/4. F←NNPropagate(t)5. IF!isBlankFrame(F)THEN/*逐音素解码*/6.  F←addAccumulatedBlankScore(V,F)7.  reset(V)8.  Q←ViterbiBeamSearch(F,Q)9. ELSE/*积累blank得分*/10.  V ←accumulateBlankScore(V,F)11.B^←finalTransition(E,S,Q)/*到达结束节点*/12.backtrace(B^)4.3 剪 枝在维特比搜索中,本文除了使用传统的束剪枝算法[7]和直方图剪枝算法[22](自适应束剪枝[23])之外,提出了另外两种剪枝方法.在 LSD 中,blank帧占总帧数的百分比与加速比成正比,而 blank帧可通过式(13)和(19)进行判定.作为束剪枝算法的变体,这里提出了基于blank帧阈值T 的剪枝算法,称为blank剪枝.当阈值T 固定时,推理分布的尖峰属性决定了加速比,而尖峰属性显示了神经网络输出分布的置信度.在神经网络的模型训练阶段,本文又提出了基于假设剪枝的熵剪枝算法.在文献[24]中,作者通过惩罚确定的输出分布来防止过拟合和提高神经网络的泛化能力.受这项工 作的启发,我们在LSD框架中对输出分布的熵进行了控制,作为候选序列的剪枝方法.具体来说,在模型训练中将输出分布的熵添加到负对数似然 L (θ)中,公式如下:L (θ)=-(pθ(π|x)-βH(pθ(π|x))) (22)其中 H(·)是输出分布(pθ(π|x)的熵,β是正比例因子.与文献[24]不同的是,基于熵剪枝算法的训练目的是最小化模型的原有训练准则以 及输出分布 的熵.而通常情况下,基于熵剪枝算法是基于一个已经训练好的模型对参数进行微调.在使用新的准则训练之后,LSD 框架可在少量性能损失的情况下得以加速.在接下来的实验部分,本文将详细比较这四种剪枝方法.5 实验及分析本文实 验 使 用 300 小 时 的 英 语 Switchboard数据集作为训练数据[25],使用 NIST 2000CTS作为测 试 集,对 NIST 2000 CTS 测 试 集 所 包 含 的switchboard(称为swb)和call-home(称为callhm)两个子集分别进行了评估.在所有实验中使用的是经过工程优化的标准 WFST 解码器;实验过程中没有生成词图,也没有使用语言模型重打分[26]技术.解码过程中使用在Switchboard和 Fisher转录文本上训练的插值的 4 阶语言模型;在 DSM 算法验证中,默认使用了经过剪枝的3阶语言模型;在 GSM算法验证中,默认使用4阶语言模型,使得结果与文献[18]具有可比性.解码使用的机器配置为Intel(R)Xeon(R)CPU E5-2690v2@3.00GHz.本文5.1节的DSM 实验中,使用具有1.2M 参数的小型 CTC模型,使得其适用于嵌入式设备,与文献[27]可比;使用40维的对数滤波器组特征,特7期 陈哲怀等:标签同步解码算法及其在语音识别中的应用7151

[返回]
上一篇:车载自组网中基于信任管理的安全组播协议设计
下一篇:基于热核共生矩阵的SAR图像纹理目标识别