视频目录

bilibili
P1-course overview
P2-speech recognition introduction
P3-LAS model
P4-CTC、RNN-T model
P5-HMM in speech recognition
P6-Alignment技术

正文

LAS,which has decoder:

  • 输入context vector C,输出probability distribution P(a)。
  • 无法找到全局最优,只能使用bean search。
李宏毅2020人类语言处理—P6李宏毅2020人类语言处理—P6

在训练的时候就是在训练参数???? ,使得给定X生成 Y ^ \hat{Y} Y^与真正的Y的CrossEntropy越小越好。

CTC、RNN-T,which need alignment

  • 只能计算某一种alignment的几率,h=a????b????
李宏毅2020人类语言处理—P6

方法:穷举所有可能的alignment

李宏毅2020人类语言处理—P6

问题

  1. 怎样穷举所有可能的alignment

  2. 怎样把所有alignment相加

  3. 怎么训练?CTC,RNN-T用的是gradient descent,怎么计算alignment加起来的偏微分。
    李宏毅2020人类语言处理—P6

  4. 怎么做Decoding?
    李宏毅2020人类语言处理—P6

Question1

HMM、CTC、RNN-T这三者所需要做的alignments有相似的地方也有一些不同。假设acoustic feature由6个vector(T=6)组成,token sequence由3个token (N=3)c,a,t 组成。实际上HMM用state来作为token,这里只是方便比较。
阿芒Aris

李宏毅2020人类语言处理—P6
  • HMM:把state重复到等长
  • CTC:有两种方法(重复 or 加 ???? )直到等长(最后转成文字时,会先去重,再去掉????)
  • RNN-T:会加 T个????
  • 回顾RNN-T (在训练的时候,声音讯号经过encoder得到hidden state h后,每次decoder输出一个????的时候,模型就会处理下一个h,故输入T个h,会依次输出T个????)。

HMM的Alignment

寻找多少路径算法:

起始点:红点出发,要走到终点:蓝点位置。
→走代表重复当前token,↘走代表产生下一个token。

李宏毅2020人类语言处理—P6

CTC的Alignment

李宏毅2020人类语言处理—P6

走法约束:

  • 红点出发,最终可以走到蓝点(二选一)。
  • 对起始点:↘代表插入???? ,↘+↓代表产生下一个token
  • 对????点:→代表重复???? ,↘代表产生下一个token (2种选择)
  • 对token点:→代表重复本次token,↘代表插入???? ,↘+↓代表产生下一个token(3种选择)
李宏毅2020人类语言处理—P6

特殊情况:

token有连续两个一样的,如 s e e,则在第一个e的时候,就不能走↘+↓产生下一个token,因为如果直接这样生成,后处理后ee -> e 两个e就变成一个e了。故连续相同的token间必须生成????来间隔区分。

李宏毅2020人类语言处理—P6

RNN-T的Alignment

RNN-T输入一个acoustic feature,可以连续输出多个token,输出????代表结束。接着输入下一个acoustic feature。

  • 最后至少要有一个????代表结束。
  • 一个acoustic feature可以连续c,a,t。 x 1 x^1 x1一直往下走
  • 或者直接输出????,从 x 1 x^1 x1转到 x 2 x^2 x2
  • 左上蓝点出发,最终可以走右下点。在除了最后的token点,我们有两种选择→或↓,在最后的token点只有→
  • 没有到达最后一行时,不能走到最后一列,即token还没输出完。
李宏毅2020人类语言处理—P6
李宏毅2020人类语言处理—P6

HMM,CTC区别
HMM是generative model,生成式模型。隐状态token/state产生可观测变量acoustic feature
CTC给出acoustic feature,产生token。

RNN-T,CTC区别
RNN-T没有重复token,最后一点输出????。


如果想了解生成式模型和判别式模型,HMM与CRF模型的区别,可以看b站上面的白板推导

相关文章: