CTC总结
如上图所示
CTC模型就是先将一段声音信号x作为输入输入到encoder中,输出h,再经过一个classifier产生token distribution,最后经过一个softmax输出最后结果。但是如果只是以上这种模型,并不能有很好的结果,因为如果token只是一个大小为V的矩阵的话,不一定每一段x会有输出,于是就会有一个Ø(NULL)便可以有效处理这种情况。如下图所示
于是,CTC便会产生以下的输出
但是CTC还是有一些问题,如下图所示
如果输出为“好棒”,但是我们其实并不知道每一个x输出的到底是什么,就比如只有4个token,就会有以下这些可能性。
那么CTC究竟是否有效呢?我们可以看以下数据:
我们可以看到CTC其实是可以输出,但是由于开始语料库可能并不够大,导致输出并不理想,就像上图单词为”dietary”,由于我们的语料库只有7K的大小,就导致只能输出”diet”和”terry”,但是其实读音还是正确的。
如上图所示,,如果对CTC的输出再进行一系列的操作。就可以把误差稳定在5-10之间,其实就已经很不错了。