拼寫、常識、語法、推理錯誤都能糾正,云從提出基于BART的語義糾錯方法
云從科技語音組提出了一種基于 BART 預訓練模型的語義糾錯技術方案,它不僅可以對 ASR 數據中常見的拼寫錯誤進行糾正,還可以對一些常識錯誤、語法錯誤,甚至一些需要推理的錯誤進行糾正。
近些年來,隨著自動語音識別(ASR)技術的發展,識別準確率有了很大的提升。但是,在 ASR 轉寫結果中,仍然存在一些對人類來說非常明顯的錯誤。我們并不需要聽音頻,僅通過觀察轉寫的文本便可發現。對這類錯誤的糾正往往需要借助一些常識和語法知識,甚至推理的能力。得益于最近無監督預訓練語言模型技術的發展,基于純文本特征的糾錯模型可以有效地解決這類問題。
本文提出的語義糾錯系統分編碼器和****兩個模塊,編碼器著重于理解 ASR 系統輸出文本的語義,****的設計重在使用規范的詞匯重新表達。
論文鏈接:https://arxiv.org/abs/2104.05507
引言
文本糾錯是一項提升 ASR 識別準確率的重要方法,常見的文本糾錯有語法糾錯,拼寫糾錯等。由于 ASR 系統轉寫的錯誤分布與上述的錯誤分布差異較大,所以這些模型往往并不適合直接用在 ASR 系統中。這里,云從科技語音組提出了一種基于 BART 預訓練模型 [1] 的語義糾錯(SC)技術方案,它不僅可以對 ASR 數據中常見的拼寫錯誤進行糾正,還可以對一些常識錯誤、語法錯誤,甚至一些需要推理的錯誤進行糾正。在我們一萬小時數據的實驗中,糾錯模型可以將基于 3gram 解碼結果的錯字率(CER)相對降低 21.7%,取得與 RNN 重打分相近的效果。在 RNN 重打分的基礎上使用糾錯,可以進一步取得 6.1% 的 CER 相對降低。誤差分析結果表明,實際糾錯的效果比 CER 指標顯示的要更好。
模型
1)ASR 語義糾錯系統設計
ASR 語義糾錯流程如圖 1 所示。語義糾錯模塊可以直接應用在第一遍解碼結果上,作為重打分模塊的替代方案。另外,它也可以接在重打分模型之后,進一步提升識別準確率。
Figure1 集成語義糾錯模型的 ASR 系統
2)基線 ASR 系統
作者選取的 baseline 聲學模型結構為 pyramidal FSMN[2],在 1 萬小時普通話音頻數據上訓練。在第一遍解碼中使用的 WFST 由 3gram 語言模型,發音詞典,雙音素結構以及 HMM 結構構成。在重打分中分別使用 4gram 和 RNN,訓練數據為這些音頻對應的參考文本。聲學模型和語言模型使用 Kaldi 工具 [3] 訓練。
3)語義糾錯模型結構
研究者提出的語義糾錯模型基于 Transformer [4]結構,它包含 6 層 encoder layer 和 6 層 decoder layer,建模單位為 token。在使用 Teacher forcing 方法訓練過程中,ASR 輸出的文本輸入到模型的輸入側,對應的參考文本輸入到模型的輸出側,分別使用輸入嵌入矩陣和輸出嵌入矩陣進行編碼,使用交叉熵作為損失函數。在語義糾錯模型推理過程中使用束搜索(beam search)進行解碼,beam 寬度設置為 3。
Figure 2 基于 Transformer 的語義糾錯模型
實驗
1,糾錯訓練數據準備
我們基線 ASR 模型的訓練集為 1 萬小時普通話語音數據,包含約 800 條轉寫文本。側試集由 5 小時混合語音數據組成,包含 Aishell, Thchs30 等側試集。為了對 ASR 系統識別的錯誤分布充分采樣,我們在構建糾錯模型訓練數據集時采用了以下幾個技巧:
使用弱聲學模型生成糾錯訓練數據,這里采用 10% 的語音數據單獨訓練一個小的聲學模型,用于生成訓練數據;
對 MFCC 特征增加擾動,將 MFCC 特征隨機乘上一個 0.8 到 1.2 之間的系數;
將帶噪聲的特征輸入到弱聲學模型,取 beam search 前 20 條結果,并根據錯字率閾值篩選樣本。最后,我們將篩選后的解碼結果和他們對應的參考文本配對,作為糾錯模型訓練數據。通過對全量音頻數據解碼,將閾值設置在 0.3,我們獲得了約 3 千萬糾錯樣本對。
2,輸入輸出表示層
在語義糾錯模型中,輸入和輸出的文本使用相同詞典。但是輸入文本中的錯字相對于其規范的用法蘊含更多的語義,而輸出文本中僅使用規范的字詞進行表達。因此,將輸入和輸出側的 token 采用獨立的表示,更符合糾錯任務的需求。表一的結果證明了我們的這個推論。實驗結果表明在輸入輸出嵌入矩陣共享權重時,糾錯模型會帶來負面效果。當輸入輸出 token 采用獨立的表示時,系統的 CER 可以取得 5.01% 的相對降低。
3,BART vs BERT 初始化
這里,研究者預訓練語言模型技術,將它從大規模語料中學習到的語義知識遷移到糾錯場景中,使得糾錯模型在相對較小的訓練集上獲得較好的魯棒性和泛化性。我們對比隨機初始化,BERT[5]初始化和 BART[1]初始化方法。在初始化過程中,因為 BART 預訓練任務和模型結構于 Transformer 相同,因此參數可以直接復用。在 BERT 初始化中,Transformer 的編碼器和****都適用 BERT 的前 6 層網絡參數[6]。
表二結果顯示 BART 初始化可以將基線 ASR 的錯字率降低 21.7%,但是 BERT 初始化的模型相對隨機初始化模型的提升非常有限。我們推側這可能是因為 BERT 和語義糾錯模型的結構以及訓練目標差異過大,知識沒有得到有效地遷移。
此外,糾錯模型對于語言模型重打分后的輸出再進行糾正,識別率可以獲得進一步提升。相對 4gram,RNN 重打分之后的結果,CER 可以分別相對降低 21.1% 和 6.1%。
4,糾錯模型 vs 大語言模型
一般而言,ASR 系統使用更大的語言模型可以獲得更好的識別效果,但也會消耗更多的內存資源并降低解碼效率。這里,我們在語音數據參考文本的基礎上,加入大量爬蟲或者開源的純文本語料,新訓練 3gram, 4gram 和 RNN 語言模型,并稱之為大語言模型。基線 ASR 系統中使用的稱為為小模型。對比發現,在小模型基礎上加上糾錯的識別準確率超越了單獨使用大模型的效果。另外,在大模型的基礎上使用語義糾錯,識別率可以獲得進一步提升。
部分糾錯示例如下:
5,誤差分析
在對 300 條糾正失敗的例子進行誤差分析時,我們發現語義糾錯實際效果要比 CER 指標評估的明顯要好,有約 40% 的錯誤幾乎不影響語義,比如,一些音譯的外國人名或者地名有多種表達方式,一些人稱代詞因為缺乏上下文,會造成“她他它“的混用,還有一些是不影響語義的語氣詞替換。另外有 30% 的錯誤因為上下文信息不足,不適合基于純文本特征的模型做糾正。剩下有 30% 的錯誤為語義糾錯模型的語義理解或表達能力不足所致。
總結
本文提出了一種基于 BART 的語義糾錯模型,它具有良好的泛化性,對多種 ASR 系統的識別結果有一致性地提升。另外,研究者通過實驗驗證了在文本糾錯任務中,輸入輸出采用獨立表示的重要性。為了更充分地對 ASR 系統識別錯誤分布進行采樣,本文提出了一種簡單有效的糾錯數據生成策略。
最后,我們提出的語義糾錯方法雖然取得了一定收益,但還有可以優化的空間,比如:
1,引入聲學特征,有助于模型辨識文本是否存在錯誤,降低誤觸率。
2,引入更多上下文信息,可以消除文本中一些語義上的歧義或者缺失的信息。
3,針對垂直業務場景進行適配,提升一些專業術語的識別準確率。
參考文獻
[1]M. Lewis et al., “BART: Denoising Sequence-to-Sequence Pre-training for Natural Language Generation, Translation, and Comprehension,” 2019, [Online]. Available: http://arxiv.org/abs/1910.13461.
[2]X. Yang, J. Li, and X. Zhou, “A novel pyramidal-FSMN architecture with lattice-free MMI for speech recognition,” vol. 1, Oct. 2018, [Online]. Available: http://arxiv.org/abs/1810.11352.
[3]D. Povey et al., “The Kaldi Speech Recognition Toolkit,” IEEE Signal Process. Soc., vol. 35, no. 4, p. 140, 2011.
[4]A. Vaswani et al., “Attention Is All You Need,” Jun. 2017, doi: 10.1017/S0140525X16001837.
[5]J. Devlin, M.-W. Chang, K. Lee, and K. Toutanova, “BERT: Pre-training of Deep Bidirectional Transformers for Language Understanding,” 2018, [Online]. Available: http://arxiv.org/abs/1810.04805.
[6]O. Hrinchuk, M. Popova, and B. Ginsburg, “Correction of Automatic Speech Recognition with Transformer Sequence-to-sequence Model,” ICASSP 2020 - 2020 IEEE Int. Conf. Acoust. Speech Signal Process., pp. 7074–7078, Oct. 2019, [Online]. Available: http://arxiv.org/abs/1910.10697.
*博客內容為網友個人發布,僅代表博主個人觀點,如有侵權請聯系工作人員刪除。