日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

端到端的语音识别模型

發布時間:2023/12/14 编程问答 35 豆豆
生活随笔 收集整理的這篇文章主要介紹了 端到端的语音识别模型 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

端到端的語音識別模型CTC(李宏毅深度學習HLP課程筆記)

一、CTC

1、模型介紹

CTC可以用于在線流式語音識別,因此encoder部分需要選擇uni-directional RNN,模型結構圖如下,輸入的語音信號經過encoder逐一轉換成語音表征,再經過一個線性分類器得到每個時刻輸出類別的概率,假設所有的類別個數為V:

一般來說,假設輸入的語音長度a,對應的輸出label長度為b,則由于語音幀比較長,識別出來的文字序列相對來說較短,所以b << a。在CTC模型中,為了解決alignment問題,在token中增加一個blank(?\varnothing?),可以向輸出的label中隨機添加blank,使得長度對齊,因此輸出的類別總個數為V+1。這樣一來在處理輸出的token時,需要合并所有相鄰的相同token,并移除blank。
比如?\varnothing??\varnothing?dd?\varnothing?e?\varnothing?e?\varnothing?pp,處理之后的輸出為deep。

2、存在的問題

如果把CTC的linear classifier想象成decoder,則decoder每輸入進一個vector,就要對應生成一個輸出,并且每個輸出都是獨立的,并不能有效利用上下文信息(盡管encoder有可能學到上下文信息)。

二、Recurrent Neural Aligner,RNA

針對CTC存在的問題,即linear classifier的每一個輸出之間都是獨立的,RNA將linear classifier換成RNN/LSTM就解決了這個問題,轉換后的結構大致如下圖所示。

三、RNN-T

有時一個發音可以對應輸出一串token,但是CTC和RNA都是每輸入一個vector,對應只輸出一個token。對于這個問題,RNN-T可以針對一個vector輸出多個token,直到沒有token,輸出?\varnothing?,代表需要接收下一個vector,模型結構圖如下所示。(如果一共有t個語音feature,則一共輸出t個?\varnothing?


實際上,RNN-T并不是簡單的地把linear classifier替換成RNN/LSTM,而是在之前linear classifier的基礎上額外增加了RNN,這種方法的優勢是額外的RNN可以看作language model,因此它不用語音數據,只需要大量文本數據(也不需要?\varnothing?)就可以進行訓練。

四、Neural Transducer

CTC、RNA、RNN-T每次都只讀一個feature,Neural Transducer每次可以讀多個feature,并對它們作attention之后作為輸入,模型結構如下圖所示,

五、Monotonic Chunkwise Attention,MoChA

Neural Transducer中window每次移動的距離都是相同的,MoChA可以動態移動窗口。

六、總結

總結

以上是生活随笔為你收集整理的端到端的语音识别模型的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。