CTC(Connectionist Temporal Classfication)详细介绍,中文版

所需积分/C币:46 2019-04-06 21:29:17 1.94MB PDF
收藏 收藏 3
举报

楼主自己整理的,网上关于CTC的资料参差不齐,一些比较好的资料都是英文版的,因此在这里祭上全网最好的CTC中文版学习资料,图文并茂,容易理解,欢迎下载。
NbNN或者GMM 后验概率 阵 y aoeiuinhbpnfhh C 7发音时长为1发音时长h发音时长T3c音T4O音T 这里的结构如图所示,我们以一段“你好”的诘音为例,经过MFCC特征提取后产生30帧,每帧含 有12个特征,即x∈×12。经过NN后得到后验概率y∈h30×14(这里以14个音素为例,实际上音索 有20个左右),矩贮里的每一列之和为1。 后面提到的 CTC-loss和区分度训练的MMI-los都是基于后验概率yi算得到的 2 CTC-loss 2.1路径π和B变换 在实际训练屮并不知道每一帧(fame)对应的音素,因此进行训练比较困难。不妒先考虑一种简单 的情况,已知每一帧音素的标签,即训练样本为x和z,其z3不再是简单的,,a,可标签,而是 T1+T:+T3+1+T=T 在我们的例子中,z-[n,n,m,m.,n,n、n,m,,2,,h,,;h,A,h,h,a,,,a,0,00,0,z包含了每一 的标签。在这种情况下有 p(zx)-plz'ly-Nu())-m,y2..i 该值即为后验概率图中用黑线圖起来的值相乘。我们希望的值越大越好,因此,数学规划可以写为: subject to y=2(x) 日标两数对于后验概率矩y中的每个元素的偏导为: 0-0…)(一吃 if h=z and t=i 也就是说,在每一时刻t(对应了矩阵的一列),日标只与y是相关的。在这个例子中是只与被框起来的元 素关 其中№可以看作是)NN嗅型。如果训练缴据的母一帧都标记了正确的因素信号,那么训绦过程就很 简单了,但实际上这咩的标记过的数据非常稀少,而没有逐帧标记的数据很多,CTC可以徹到用未逐帧 标记的数据做训练 首先定义几个符号 L=fa.o,e i, u,i, b P, ILI,... 表示所有音素的集合 ),丌∈L 表示一条由/中元素组成的长度为T的径,比如z就是一条路径,以下为几个路径的例子: r=(,j, i, n, y, y,e, e, u, u, u, ul,r, r,e,e, n, n, r, r, u, ul, sh, sh, sh, u, ",u, i, i) 丌2-(h,h,h,An,h,A,u,a,u,、u,a,u,,O,0,0,.0,0,n,”n,n,n,n,n, (,i,h,h,,,,n,n,n,,h,h,h,O,O,O,,C,h,h,h,O,O,a,a,0,0,0) (n,i,h,,0,0,0、0,O,O,O、O,O、O,,0.0,0,C,0,、O,0,0,0,0、0,O,0,0,0) (n, n, n, n, n, n,i, i, i, i, i, i, h, h, h h, h. h, a. a, a,a,a, a,, 0, 0, 0, 2, 0) (n,n,m,m,,,,,,,,.h,,h,a、,,n,,0,C,O,0,0,O,0,0,0 这6条路径中,π1可以被认为在说“今夜无人入睡”,丌可以被认为在说“好你”,丌3无法别在说 什么,丌1,丌5,都可以被认为是在说“你好”。 定义变换,表示简单的压缩例 b.b. b.c 以上述六条路径为例: B(r1)=(j,t,n,v,,,t,T,C, (h )=(i,1、i,n,,h 4) BIT (n, i, h,a, o) B ,i,,a,o 因此,如果一条路径π有B(丌)=n,,h,,,则可以认为丌是在说“你好”。即使它是如x4所小,有很多 ”音素,而其他盲素很少。跸径丌=(π1,丌2,…,,丌)的概率为它所经过的矩阵y上的元素相乘: p(rx)=p(Tly=Nu(x))=prly)=ya 因此在音素没有对齐的情况下,日标函数应该为{丌B丌)-z}中所有元素的彬率之和。即: max p(zly=Nu(x)=p(z x)=> Pakx F(丌)=z 在T=30,音素为n,i,h,a,的情况下,共有C2≈1200条路径可以被压缩为,,h,a,O。路径效 日的计算公式为C素个数,星级大约为(r-1)国个数。一段30秒包含50个汉字的语音,其可能的路径数日可 以高达10,显然这么大的路径数目是无法直接计算的。因此CIC方法中借用了HMM中的向前向后算法 ( forward backward algorithn)来计算 因此,如果·条路径x有B丌)-n,、h,a,o,则可以认为丌是在说“你好”。国使它是如x4所示,有很多 ”音索,而兵他音素很少。路径r-(m1,m2,…,丌r)的概率为它所经过的矩阵y上的元素相垂: p(r(x)-plrly-Nu(x )-p(rly)-Ia 因此在音素没有对齐的情况下,目标函数应该为{丌B(丌)=功}中所有元素的彬率之和。即: max p(zly-N(x)-p( x)-2 P(]x) 在T=30,音素为π,i,,a,的情況下,共有C3≈120000路径可以被压缩为n,,h,a,O。路径数 的计算公式为了个数,量级大约为(r-1)个数。一段30秒包含50个汉字的语音,其可能的路径数目可 以高达10,然这么大的路径数目是无法直接计算的。因此CTC方沄中借用了HMN的向前向后算法 ( forward- backward algorithn)来计算。 22训练实施方法 CTC的训练过程是通过以调整值使得值最大,而的计算过程如下 .(p(=ly) 因此,只要得到,即可恨据反向传播,得到。下面以“你好”为例,个绍该值计算方 首先,根据上例,找到所有可以被压缩为z={n,,1,、可的路径,记为{xB、r)=z}可知所有丌均 有n,1,…,,…,h,…,h,a,…,a,O,……,可的形式,即日标函数只与后验概率矩阵y中表示n,,h,a,O 的5行相关,因此为了简便,我们将这5行提取出来,如下图所示 ·P·“1“产·i“了 山====l=Ja 2345670101121311516111520212232125262722930 在每一个点上,路径只能向右或者向下转移,画出两条路径,分别用q和r表小,这两条跸径都经 过y}这点,表示这两羔烙径均在第14帧的时候在发“h”音。因为在目标函数的连加项中,有的项 与l4关,因此可以剔除这部分,只留下与yl4有关的部分,记为{r)-z,丌14-h ly)∑Br)zp(Ty)m 有关的项 t B02 t-1 i∑Br l丌 这里的q和r就是与v4相关的两条路径。用q132和q1分别表示q的在h4之首和之后的部分,可以 发现,q1:13+h+r1:0与r1+h-q15:30同样也是两条可行的路径,这四条路经的率之和为: 13 L4⊥5 路径q1幸 13 q5… q30 路径r1:14+q14:30根 13 1 41 you t y 可以发现,该值可以总结为”(前置项)·4·(后置项)”由此可以想到,对于所有经过vn4的路径,有: ∑I磷1=(前置项)4(后置项) 定义 1(b)=(前置项)·y=∑ 该值叫以理解为从初始到v4这一段里,所有出向路径的概率之和。并且发现,a14()可以由a(h)和a13(i)递 推得到,即 1(h)=(m13(h)+a13(i) 该递推公式的含义是,只有在(=13发音是h或i,在(=14时才有可能发音是l,那么在=14时刻发音为h 的所有止向路径概率a14(h就等、在t=13时刻,发音为的止向概率a13(h)上发音为的止向概率a13(), 再乘以当前音素被判断为h的概率4。由此可知,每一个n5)均可以由a-1(s)和nt-1(-1)两个值得到, 计算流稈如图所示: 701(n)2(n)-a(n4()wx5(74)6(7)÷ 9(7)1( (i→0(4)4|→s(1)→ce(一 r—10:i}v11() a3(++a4h→c6(h)÷c6(h 9()-÷10(h11(kx12(h) c()5(a)-0e(a÷ a0(a)-a10(a)x11(ax12(a)x13() as(a)->aG(oh- c9(a)-101a}11(0)12()c13{o)14(o) 6 30 即每个值都可有上一时刻的一个或两个值得到,总计算量大约为2·T·首素数。与之类似的,定 义(s),递推公式为 1(h)=(B15(h)+15() 因止有: ∑∏=(前置项)4·(后置项) B 九t=1 a14()14(h) 因此 zly)0∑B 014(h) (h)314(h) 得到此值后,即可根据反向传播进行训练。 可以看到,这里总计算量非常小,计算a和的计算量均大约为(2·T·音素数)(加法乘法各一次), 得到a和后,在计算对每个v的偏导值的计算量为(3·T·音素数),因此总计算量约为7T·音素数),这 是非常小的,便于计算。

...展开详情
试读 7P CTC(Connectionist Temporal Classfication)详细介绍,中文版
立即下载 低至0.43元/次 身份认证VIP会员低至7折
抢沙发
一个资源只可评论一次,评论内容不能少于5个字
  • GitHub

    绑定GitHub第三方账户获取
  • 分享精英

    成功上传11个资源即可获取
关注 私信 TA的资源
上传资源赚积分,得勋章
最新推荐
CTC(Connectionist Temporal Classfication)详细介绍,中文版 46积分/C币 立即下载
1/7
CTC(Connectionist Temporal Classfication)详细介绍,中文版第1页
CTC(Connectionist Temporal Classfication)详细介绍,中文版第2页

试读结束, 可继续读1页

46积分/C币 立即下载 >