999精品在线视频,手机成人午夜在线视频,久久不卡国产精品无码,中日无码在线观看,成人av手机在线观看,日韩精品亚洲一区中文字幕,亚洲av无码人妻,四虎国产在线观看 ?

DFSMN-T:結合強語言模型Transformer的中文語音識別

2022-05-15 06:35:30胡章芳唐珊珊明子平姜博文
計算機工程與應用 2022年9期
關鍵詞:語言模型

胡章芳,蹇 芳,唐珊珊,明子平,姜博文

重慶郵電大學 光電工程學院,重慶400065

在語音識別發展領域,研究學者們致力于將語音信息盡量完整準確地轉化成文本信息。語音識別的關鍵在于聲學模型和語言模型兩部分。在深度學習興起應用到語音識別領域之前,聲學模型已經有了非常成熟的模型體系,并且也有了被成功應用到實際系統中的案例。比如經典的高斯混合模型(Gaussian mixed model,GMM)和隱馬爾可夫模型(hidden Markov model,HMM)[1]等。神經網絡和深度學習興起以后,循環神經網絡(recurrent neural network,RNN)[2-3]、長短期記憶網絡(long short-term memory,LSTM)[4]、注意力機制(attention)[5-6]等基于深度學習的聲學模型和語言模型將此前各項基于傳統聲學模型和傳統語言模型的識別案例錯誤率降低了一個級別。近年來,也有很多學者嘗試建立端到端語音識別系統,比如百度提出了一種可以識別英語和普通話的端到端的深度學習方法[7],胡章芳等將殘差網絡與雙向長短時期記憶網絡相結合,構建端到端語音識別系統[8]。

在聲學模型領域,Zhang等提出了新一代語音識別模型前饋序列記憶神經網絡(feedforward sequential memory networks,FSMN)[9],緊湊前饋序列記憶神經網絡(compact FSMN,CFSMN)[10]以及深度前饋序列記憶神經網絡(deep FSMN,DFSMN)[11]。其中FSMN 是在標準的隱含層中使用類的內存塊前饋神經網絡,并在語言建模任務上的實驗結果表明FSMN 可以有效地學習長期歷史;CFSMN是在FSMN基礎上增加了投影矩陣,在語音識別交換機任務中,所提出的CFSMN 結構可以使模型規模縮小60%,學習速度提高7 倍以上,而在基于框架級交叉熵準則的訓練和基于mini 的序列訓練方面,該模型仍能顯著優于目前流行的雙向LSTMs;而DFSMN在CFSMN的基礎上增加了跳躍連接(skip connection),在中文語音識別任務上達到了85%的識別準確率。在語言模型領域中,Ashish等提出了基于注意力機制的新模型Transformer,并在英語數據集上進行了驗證,結果顯示比Attention 模型效果更好[12];Zhou 等研究了將音節和音素作為Transformer 模型的建模單元,在序列到序列語音識別系統上進行實驗驗證并得出基于音節的Transformer 模型優于基于ci 音素的對應模型,且與基于CTC-attention 的聯合編解碼網絡的字符錯誤率不相上下[13]。

本文以DFSMN作為聲學模型,引入Transformer作為語言模型建立語音識別系統。在該系統中,將采用CNN 來提取80 維的Fbank 特征,并將CTC loss[14]作為DFSMN 模型訓練的損失函數,采用Adam(adaptive moment estimation)優化器進行優化。在語言模型模塊,將以文獻[15]中的Transformer 模型作為基礎模型,研究Transformer 不同參數對其模型性能的影響,針對Transformer 計算量大的問題進行改進,訓練出最優的Transformer模型與DFSMN模型相結合進行識別任務。

1 相關工作

語音識別系統包括聲學模型和語言模型,在傳統的語音識別系統中,通常采用DFSMN 作為聲學模型,N-gram作為語言模型。

1.1 DFSMN模型

在CFSMN 結構中,因為每個CFSMN 層中包含了較多的子層,一個層中包含了4 個CFSMN 子層,2 個DNN 層的CFSMN 網絡總共需要12 層結構。若通過直接增加CFSMN 層的方法來設計更深的CFSMN 網絡,網絡可能會出現梯度消失的問題。

基于上述問題,DFSMN 被提了出來。DFSMN 在CFSMN 的記憶模塊之間添加了跳層連接,使低層的記憶可以直接流入高層的記憶模塊中。在反向傳播的過程當中,高層的梯度也會直接流入低層的記憶模塊中。因此即使使用了更深的層數,也避免了梯度消失的情況。在特征提取上,DFSMN 結合低幀率LFR(low frame rate)[16],使得模型尺寸更小,延遲也更低。實驗結果表明DFSMN 是用于聲學模型的BLSTM[17]強有力替代方案。DFSMN的結構如圖1所示。

圖1 DFSMN結構Fig.1 DFSMN structure

DFSMN的參數更新公式為:

1.2 N-gram模型

N-gram 是傳統語音識別中最常用到的語言模型[18-19]。N-gram指文本中連續出現的n個語詞。n元語法模型是基于(n-1)階馬爾可夫鏈的一種概率語言模型,通過n個語詞出現的概率來推斷語句的結構。

當n=1時,一個一元模型(Unigram model)表示為:

當n=2 時,一個二元模型(Bigram model)表示為:

當n=3 時,一個三元模型(Trigram model)表示為:

對于N-gram模型而言,可以表示為:

其中,C(w1,w2,…,wn)表示N-gram 中w1,w2,…,wn在訓練語料中出現的次數,m是語料庫的總字數。

2 引入Transformer的語音識別系統

已知一段語音信號,處理成聲學特征向量后表示為X=[x1,x2,x3,…],其中xi表示一幀特征向量,可能的文本序列表示為W=[w1,w2,w3,…],其中wi表示一個詞。語音識別的目的就在于求出。P(W|X)表示為:

其中,P(X|W)稱之為聲學模型(acoustic model),P(W)稱之為語言模型(language model),二者對語音語言現象刻畫得越深刻,識別結果越準確。所以大多數研究都把語音識別分為聲學模型和語言模型兩部分,然而在傳統語音識別系統中,往往將注意力集中在聲學模型的改進上,忽略了語言模型N-gram存在詞條語義相似性,參數n過大導致計算量太大等問題。因此本文引入強語言模型Transformer,結合DFSMN 構建中文語音識別系統,系統結構如圖2所示。

圖2 引入Transformer的中文語音識別系統結構Fig.2 Chinese speech recognition system architecture with Transformer

Transformer 能學習到輸入序列與輸出序列之間的對應關系,其結構包括編碼器和解碼器兩個主要模塊,編碼器編碼時間序列,解碼器結合編碼器輸出和上一時間步長的輸出來生成下一時間步長的輸出,直到生成結束符為止。Transformer模型結構如圖3所示。

圖3 Transformer模型結構Fig.3 Transformer model structure

2.1 編碼器

在進入編碼器之前,要先進行位置編碼字符向量嵌入和字符位置向量嵌入,將兩向量相加得到相同維度的向量作為輸入,目的在于給輸入添加字符順序信息,讓模型能夠學習到字符順序關系。編碼器旨在對原始信息進行編碼表示,編碼表示能夠較完全地體現出該字符序列的語義信息。編碼器由N個編碼單元組成,每個編碼單元具有完全相同的結構。編碼器包括多頭自注意力層(multi-headed attention)、求和與歸一化(add &normalization)、前饋神經網絡(feed-forward)三個基本組件。其中,多頭自注意層利用多個自注意力,從不同的信息維度上來提取字符的向量表示。

2.1.1 位置編碼

由于Transformer 不包含遞歸和卷積,為了讓模型利用序列的順序,必須注入一些關于序列中記號的相對或絕對位置的信息。因此在編碼器和解碼器堆棧底部的輸入嵌入中添加“位置編碼”。位置編碼與嵌入具有相同的模型維數,因此兩者可以相加。位置編碼采用不同頻率的正弦和余弦函數,表示為:

在上式中,pos是位置,i是維數。位置編碼的每一維對應一個正弦信號。波長以幾何級數的形式從2π增長到10 000·2π。

2.1.2 縮放點積注意力機制

在注意力函數的使用中,乘性函數和加性函數在理論上復雜度相同,然而實際應用中,乘性函數得益于高度優化的矩陣乘法代碼的計算,使得乘性函數計算速度更快,更節省空間。縮放點積注意如圖4所示。

圖4 縮放點積注意力機制Fig.4 Scaling dot product attention mechanism

輸入由維度為dk的查詢向量q和鍵向量k以及維度為dv的值v組成。接著計算查詢與所有鍵的點積,再除以,并應用softmax 函數來獲得這些值的權重。在實踐中,將同時計算一組查詢的注意力函數,這些查詢被打包到一個矩陣Q中,鍵和值也被打包到矩陣K和V中。計算輸出矩陣表示為:

對于較大維度的值v,點積的大小也會變大,從而使softmax函數陷入具有極小梯度的區域。為了抵消這個影響,故在式(11)中需要除以。

2.1.3 多頭注意力機制

多頭注意力機制如圖5所示。在該步驟中,將對每一個投射模塊中的查詢、鍵和值并行執行注意力函數,生成dv維的輸出值。它們被連接起來并再次投射,從而得到最終的值。

圖5 多頭注意力機制Fig.5 Multi-headed attention mechanism

多頭注意力機制使模型能夠在不同的表示子空間中,在不同的位置共同關注信息。如果只有一個注意力頭,則會抑制這種情況。多頭注意力機制表示為:

2.1.4 前饋神經網絡

在編碼器和解碼器的子層中,還包括前饋神經網絡層。該層包括矩陣線性變化Linear 層和Relu 非線性激活。該層網絡可表示為:

2.1.5 殘差連接和歸一化

每一個子層之后都會接一個殘差連接和歸一化層。其中,殘差連接層避免了梯度消失的問題,而歸一化層通常采用BN(batch normalization)。BN 的思路在于對每一層的每一小批數據上進行歸一化,把輸入轉化為均值為0 方差為1 的數據,防止經過多層前向計算后數據偏差過大,造成梯度問題。

在多頭自注意力層、求和與歸一化層、前饋神經網絡這三個不同層的結合下,最終得到編碼器的輸出。

2.2 解碼器

解碼器與編碼器的結構類似,但是比編碼器多了一個掩蓋多頭自注意力層。這個層包括了第一層掩蓋多頭自注意力層和第二層多頭自注意力層。第一層使用掩蓋多頭自注意力層的原因是在預測句子的時候,當前時刻是無法獲取到未來時刻信息的。在該層中,q是來自于上一位置Decoder 的輸出,而k和v則來自于編碼器。編碼器可以并行計算,但是解碼器類似于RNN 網絡,需要一步一步去解碼,最終輸出對應位置的輸出詞的概率分布。

2.3 基于Hadamard矩陣濾波的注意力計算

針對Transformer計算復雜度高,且在訓練過程中存在過擬合的問題,本文提出一種基于Hadamard 矩陣濾波的注意力權值計算方法。該方法應用于softmax 層,通過設置閾值對經過softmax歸一化的注意力權值矩陣進行濾波,低于閾值的權值,由于對輸出影響較弱,強制置為0,而高于閾值的分數則不予以改動。在多頭注意力的計算過程中,該方法能夠有效降低后續計算的參數量,從而減少模型的訓練時間,增加解碼速度,并且在訓練不同的數據時,不同的參數丟棄后訓練的模型會增加網絡的泛化能力。Hadamard矩陣濾波位置如圖6所示。

圖6 Hadamard矩陣濾波位置Fig.6 Hadamard matrix filtering position

在圖5中,每個單詞創建三個向量,并通過詞嵌入和每個向量對應的權重矩陣相乘所得。即:

得到q、k、v的值后,則要拿每個查詢向量q去對每個鍵向量k做注意力,計算上下文對當前字符的注意力初始分數,即:

增加Hadamard矩陣濾波后,公式表示為:

公式(11)更新為:

改進后自注意力計算流程如圖7 所示,在該圖中,矩陣H是由矩陣A經過閾值篩選后生成的Hadamard矩陣,矩陣A中值大于等于閾值T則矩陣H中相對應位置處的值為1,而A中值小于閾值T則H中相對應位置處的值為0。

圖7 改進后自注意力計算流程Fig.7 Improved self-attention calculation process

3 實驗

3.1 前期準備

3.1.1 聲學模型參數

聲學模型使用的輸入是具有16 kHz 采樣率的單聲道音頻數據,結合低幀率LFR,通過一個固定的10 ms幀位移的25 ms漢明窗口進行分析,并利用80個mel濾波器組提取80 維的log mel fbank 特征。在卷積層中,根據輸入的音頻數據對其進行卷積操作,整個卷積包括1個卷積層和3個CNN層,以作為DFSMN層的輸入。在DFSMN結構中,一共有6層網絡,模型深度為512維,學習率為1E-4,dropout 為0.5。使用CTC 作為損失函數,對于一對輸入輸出(X,Y)來說,CTC的目標是將下式概率最大化:

在對模型進行預測時,本文采用了Beam search 算法,并將寬度參數設置為10,即在每個時間t輸出時,不同于貪婪算法只找概率最高的,而是找最高的10 個概率作為下一次的輸入,依次迭代。對于優化器的選擇,本文采用了Adam 優化器作為模型優化器,Adam 優化器本質上是帶有動量項的RMSprop(root mean square prop)優化器,它利用梯度的一階矩估計和二階矩估計動態調整每個參數的學習率。Adam的優點主要在于經過偏置校正后,每一次迭代學習率都有個確定范圍,使得參數比較平穩。

3.1.2 語言模型參數

在Transformer 語言模型結構中,將以特征維度為256,批處理大小為40,多頭注意力數為8,隱藏節點為512,學習率為1E-3,dropout 為0.3 作為初始參數設定。在進行訓練時,采用標簽平滑化處理(label smothing)以防止過擬合,表示為:

其中,y′為標簽平滑操作后的樣本標簽,ε為平滑因子,u是人為引入的一個固定分布,并且由參數ε控制相對權重。

語言模型的損失函數則為預測結果與平滑值的交叉熵。表示為:

3.1.3 數據集

為了防止模型過擬合,提高模型的泛化能力,對于識別任務,本文采用的數據集包括Aishell-1[20]、Aidatatang、Magicdata、Thchs30[21]這四個中文數據集,總計1 163 h,包括995 452條語句,其中訓練集863 845條,驗證集50 694 條,測試集80 913 條,訓練集與驗證集及測試集的比例為86∶5∶9。

Aishell-1 數據集是北京希爾貝殼科技有限公司出版的中文語言公開語料庫,由來自中國不同口音地區的400 人參加錄音,總共178 h。Aidatatang 數據集是北京大唐科技有限公司提供的免費中文普通話語料庫,該語料庫包含200 h 的聲學數據,由來自中國不同口音地區的600 人參加錄制,數據庫分為訓練集、驗證集和測試集,比例為7∶1∶2。Magicdata 數據集包含755 h 的語音數據,其中大多數是移動記錄的數據,邀請來自中國不同口音地區的1 080 名演講者參加錄制,該數據庫訓練集、驗證集和測試集的比例為51∶1∶2。Thchs30是清華大學語言技術中心(CSLT)發布的開放式中文語音數據庫,總時長超過30 h。

3.2 實驗結果

針對本文提出的DFSMN結合語言模型Transformer的語音識別系統,實驗圍繞Transformer的影響因素、改進后的Transformer模型及語音識別系統的驗證三方面展開。在針對Transformer 的實驗中,訓練語料為相應開源語音的抄本及對應中文拼音,CER指的是拼音轉漢字結果的字符錯誤率;在針對語音識別系統的實驗中,CER指的是語音轉寫為中文的字符錯誤率。

3.2.1 Transformer的影響因素

對于Transformer 模型結構會受到哪些因素的影響,本文首先做了以下工作:以初始參數化的Transformer結構作為基礎結構,分別以學習率lr、批處理大小batch_size、多頭的數目num_heads以及num_block4 個參數作為變量進行實驗測試,采用控制變量法對比不同參數取值對準確率和解碼速度的影響。其中,學習率參數以L表示,批處理大小batch_size以B表示,多頭的數目num_heads以H 表示,num_block以K 表示。不同參數取值的Transformer結構如表1所示。

表1 不同參數取值下的Transformer結構Table 1 Transformer structure for different parameter values

在表1 中,Transformer 表示未經改動的初始參數模型,Transformer_B、Transformer_H、Transformer_K、Transformer_L 表示在初始參數模型基礎上分別對批處理大小、多頭的數目、num_block以及學習率進行了改變。對上述幾個不同結構的Transformer進行訓練,并在Aishell-1、Aidatatang、Magicdata、Thchs30 四個中文數據集上測試字符錯誤率及解碼時間,實驗結果如表2所示。

從表2可以看出,對比初始參數下的Transformer測試結果,可以得出以下結論:

表2 不同結構下Transformer的測試時間及CERTable 2 Test time and CER for Transformer with different configurations

(1)減小batch_size會使得測試時間增長,解碼速度變慢,但是字符錯誤率平均降低了1.1%;增加batch_size不僅使測試時間減少,解碼速度變快,并且字符錯誤率也平均降低了2.6%。

(2)減少多頭的數目會使測試時間增長,解碼速度變慢,在字符錯誤率上并無明顯變化;增加多頭的數目會使測試時間增長,解碼速度變慢,但是字符錯誤率平均降低了2%。

(3)減少num_block會使測試時間減少,解碼速度變快,并且字符錯誤率平均降低了1.8%;增加num_block會使測試時間增長,解碼速度變慢,但是字符錯誤率平均降低了1.1%。

(4)增加學習率會使測試時間增長,解碼速度變慢,并且字符錯誤率平均提高了2.0%了;減少學習率會使測試時間增長,解碼速度變慢,但是字符錯誤率平均降低了1.4%。

由上述實驗可知,學習率lr、批處理大小batch_size、多頭的數目num_heads以及num_block這4 個參數對Transformer模型的解碼速度及識別準確率都有一定的影響。其中,在模型訓練的過程中,特征維度通常取多頭數目的立方。

3.2.2 改進后的Transformer

基于上述實驗結果,選取學習率lr=0.000 03,批處理batch_size=60,多頭數目num_heads=10,num_block=2作為改進前Transformer模型參數。為了與原始Transformer模型進行區分,將該模型記為Transformer_BHKL,表示在原始Transformer 模型上對四個參數都進行了變動。經過在4 個數據集上大量實驗后,發現在閾值分別為T1=1E-7,T2=1E-6,T3=1E-5時實驗效果最好。將閾值為T1、T2、T3時的Transformer模型分別記為Transformer_BHKLT1、Transformer_BHKLT2、Transformer_BHKLT3進行實驗對比分析,實驗結果如表3所示。

表3 改進后Transformer在數據集上的測試時間及CERTable 3 Test time and CER of improved Transformer on dataset

在表3中,Transformer_BHKL的實驗結果驗證了上述對Transformer模型的影響因素分析;對比Transformer_BHKL和增加閾值后的Transformer模型實驗結果,當閾值為1E-6 時,改進后Transformer 模型在各個數據集上的識別錯誤率和識別速率都達到了最優,驗證了對Transformer增加參數丟棄層后,模型的識別速率及識別錯誤率都有所降低。

3.2.3 語音識別系統的驗證

為了驗證改進Transformer 模型在語音識別系統中的性能,將4 個數據集分別在DFSMN 結合初始Transformer 模型,DFSMN 結合Transformer_BHKLT 模型上進行實驗驗證,測試結果如圖8所示。

圖8 4個數據集在模型改進前與改進后的結果Fig.8 Results for 4 datasets before and after model improvement

由圖8 中4 種不同數據集的驗證結果表明,本文構建的Transformer 結合DFSMN 語音識別系統在不同的數據集上都有良好的性能,在改進Transformer模型后,4種不同數據集上的字符錯誤率都有所降低,體現了該系統識別結果中字符錯誤率較低的同時也有較強的泛化能力。

為了驗證聲學模型DFSMN 結合改進語言模型Transformer 的語音識別系統的優越性,將該系統與BLSTM系統、ResNet-BLSTM-CTC系統、CFSMN-3gram系統、DFSMN-3gram 系統做對比,對比實驗結果如表4所示。

表4 不同語音識別系統的CERTable 4 CER of different speech recognition models

在表4中的數據表明,本文提出將聲學模型DFSMN結合語言模型Transformer構建的語音識別系統相較于其他語音識別系統,在識別準確率上展現了一定的優越性,經過改進語言模型Transformer 后構建的語音識別系統較未改進前在識別準確率上也有所提高。

4 結束語

本文引入強語言模型Transformer,將其和強聲學模型DFSMN相結合,建立了CNN-DFSMN-CTC-Transformer新型語音識別系統,并針對Transformer計算復雜度高,容易過擬合及泛化能力不足的問題提出了一種基于Hadamard 矩陣濾波的注意力計算方法。實驗結果表明,新型語音識別系統總體性能優于某些現有語音識別系統,改進后的Transformer解碼速度有明顯提升。

猜你喜歡
語言模型
一半模型
重要模型『一線三等角』
重尾非線性自回歸模型自加權M-估計的漸近分布
語言是刀
文苑(2020年4期)2020-05-30 12:35:30
讓語言描寫搖曳多姿
多向度交往對語言磨蝕的補正之道
累積動態分析下的同聲傳譯語言壓縮
3D打印中的模型分割與打包
FLUKA幾何模型到CAD幾何模型轉換方法初步研究
我有我語言
主站蜘蛛池模板: 亚洲一道AV无码午夜福利| 无码中文字幕加勒比高清| 伊人精品成人久久综合| 国产精品女熟高潮视频| jizz国产在线| 中国国产高清免费AV片| 亚洲男人的天堂视频| 香蕉久人久人青草青草| 中文字幕久久波多野结衣| 熟妇无码人妻| 成人一级黄色毛片| 亚洲欧美成人| av手机版在线播放| 午夜精品福利影院| 国产激情无码一区二区APP | 九九线精品视频在线观看| 伊人成人在线| 亚洲乱码在线播放| 国产成人1024精品| 日韩久久精品无码aV| 91丝袜乱伦| 国产丝袜精品| 亚洲va在线∨a天堂va欧美va| 大学生久久香蕉国产线观看 | a级毛片一区二区免费视频| 欧美日韩精品一区二区视频| 亚洲AV无码乱码在线观看裸奔 | 国产激情在线视频| 久一在线视频| 国产亚洲精久久久久久无码AV| 久久一级电影| 天天做天天爱天天爽综合区| 久热精品免费| 日本午夜影院| 日韩久草视频| 成人免费午夜视频| 亚洲精品色AV无码看| 亚洲一级色| 亚洲第一视频区| 亚洲成人手机在线| 波多野结衣第一页| 亚洲国产精品VA在线看黑人| 玖玖精品在线| 97超碰精品成人国产| 国产人成乱码视频免费观看| 色妞www精品视频一级下载| 亚欧美国产综合| 国产精品v欧美| 国产SUV精品一区二区6| 88av在线| 片在线无码观看| 久久这里只有精品66| 免费看久久精品99| 国产精品网址你懂的| 啪啪国产视频| 色香蕉影院| 少妇人妻无码首页| 人妻无码一区二区视频| 一级毛片网| 欧日韩在线不卡视频| 久久婷婷五月综合色一区二区| 欧美黄色网站在线看| 国产女人综合久久精品视| 国产成人AV综合久久| 日韩中文欧美| 无码'专区第一页| 成人午夜网址| 国产在线拍偷自揄拍精品| 久久毛片免费基地| 黄色在线网| 欧美精品一区在线看| 蜜臀av性久久久久蜜臀aⅴ麻豆| 伊人激情综合网| 亚洲天堂精品视频| 国产乱人免费视频| 无码网站免费观看| 天堂岛国av无码免费无禁网站| 美女扒开下面流白浆在线试听| 亚洲欧洲AV一区二区三区| 色天天综合| 久久人妻xunleige无码| 亚洲成A人V欧美综合|