迪力扎提·伊力哈木,米吉提·阿不里米提,鄭 方,艾斯卡爾·艾木都拉
(1.新疆大學信息科學與工程學院,新疆 烏魯木齊 830046;2.清華大學信息科學技術學院,北京 100084)
語種識別是預測一段語音語言種類的過程[1]。對于多語種語音識別系統(tǒng)來說,語種識別是一個重要的前置技術,也被稱為自動語言辨識,但實際的應用場景中,各式各樣的語音采集設備與傳輸信道差異,使得訓練語音與測試語音之間存在信道失配的情況,導致語種識別性能急劇下降。這便是語種識別中的跨信道問題,它也是影響自動語音識別系統(tǒng)性能最重要的因素之一。因此,如何在最大程度上降低跨信道對識別性能的影響,將是本文的研究重點。神經網絡等高性能的建模技術能夠同時處理多個完全不一樣的語言信息,需要將語種識別技術融入其中,進而推動語種識別在多語言語音處理方面的發(fā)展[2]。基于語音的語種識別中,首先需要選擇合適的語音特征,對音素特征的識別是通過音素的不同搭配來實現的[3]。之后,聲學特征受到研究者們關注,并進行了較為廣泛的研究。Fernandes 等人對梅爾頻率倒譜進行研究[4]。Atmani 等人使用了高斯混合模型[5]。Veera等人提出基于SDC 特征的語種識別方法[6]。
深度學習的出現為語種識別方法提供了發(fā)展機遇。Vuddagiri 等人提出DNN 模型,為語種識別奠定了基礎[7]。文獻[8]提取了深度瓶頸特征DBF。此外,端到端的語種識別系統(tǒng)也相繼出現[9]。2014年Google 的研究人員將特征提取、特征變換和分類結合到一個神經網絡模型中,這是端到端系統(tǒng)首次應用于語種識別任務中[9]。2014年,Lei 等人提出卷積網絡[10]。此后,研究者展開了進一步的研究,包括時延神經網絡TDNN[11]、長短時記憶遞歸神經網絡LSTM?RNN[12]等。2016年,Wang 等人將注意力機制模型引入到語種識別系統(tǒng)中[13]。2017年,Bartz 等人利用卷積網絡結合循環(huán)神經網絡的方法(CRNN)進行語種識別[14]。
本文為了提高跨信道環(huán)境下的語種識別性能,提出一種基于注意力機制的BiLSTM 語種識別方法,在AP19?OLR 和AP20?OLR 兩個數據集上進行實驗。兩個數據集中的跨信道數據是從不同的錄音設備采集組成,例如手機、麥克風等。通過實驗指標分析,驗證了本文方法良好的性能。
聲音是通過聲帶的振動以波的形式進行傳播的,語音信號可以認為是時間與振幅變化的時域信號,它是不同頻率下周期信號的疊加,所以很難看出信號的規(guī)律,通常是將時域信號通過傅里葉變換轉為頻域上進行相關操作[15]。為了更好地表示聲音的特征,需要將聲波信號轉換為聲學特征向量計算機可識別的形式。常用的聲學特征提取方法有:梅爾頻率倒譜系數(Mel Frequency Cepstral Coefficient,MFCC)、頻域特征(FBANK)、線性預測倒譜系數(LPCC)等[16]。本文通過對比實驗后采用了提取FBANK 特征的方法,該方法可以有效地提高跨信道環(huán)境下語種識別的性能,符合人的聽覺特性,被廣泛應用于語音特征提取當中。
人的聽覺感知是呈非線性的,FBANK 方法考慮到人的聽覺特性,先將線性頻譜映射到非線性空間,然后轉換到倒譜上[17]。Mel頻率公式如下:
提取FBANK 特征步驟如下:
1)語音預加重、分幀和加窗;
2)FFT 傅里葉變換得到頻譜;
3)經過Mel濾波器組得到Mel頻譜;
4)Mel頻譜做對數變換,得到FBANK 特征。
圖1是整個FBANK 語音特征提取過程。
圖1 FBANK 特征提取流程
Stacking 融合模型在國內外建模比賽中應用廣泛,憑借著集成多模型的優(yōu)勢,極大地提升分類回歸問題的效果。因此本文使用Stacking 建立語種識別模型。Stacking 融合模型如圖2所示,分為訓練集模塊與測試集模塊,上半部分訓練集用到了5 折交叉驗證,也就是把數據分為5 份,使用4 份來訓練,1 份用作預測[18]?;A模型間是相互獨立的,基礎模型選擇的測試數據也不盡相同,在第一次的交叉驗證中,模型會得到關于當前測試數據的預測值,單個模型5 次的預測值會按列拼接在一起。下半部分測試集經過上半部訓練好的模型預測出對應value 構成的向量,這些向量并沒有做拼接操作,而是將向量做了加權平均,以保持維度不變,作為下一步模型的測試數據。Stacking 第一部分通常包含多個模型,第一部分模型的選擇很關鍵,通常會選擇非線性性較強的模型。本文選擇的組合是Model1:SVM;Model2:隨機森林;Model3:XGBoost。
圖2 Stacking 融合模型結構
1.3.1 BiLSTM 模型
深度學習的發(fā)展彌補了傳統(tǒng)機器學習樣本不足表現的復雜函數能力不足問題,同時也避免了人工構建特征的麻煩。深度學習有較強的非線性性,能很好地模擬函數的能力。
在語音分析的任務中,語音信號與時序相關,所以使用的模型不僅要提取語音信號的特征,有時也要了解輸入語音在整體語音中的聯系,這里只使用存儲信息有限的循環(huán)神經網絡(RNN)是不夠的,RNN 記憶周期是比較短的,在實際應用中會出現梯度爆炸或梯度消失問題。另外,RNN 結構簡單,含有一個非線性激活函數,很難表征復雜的數據結。深度學習發(fā)展到20世紀90年代,Schmidhuber 和Hochreiter 提出了LSTM 長短時記憶網絡,在RNN 基礎上增加了輸入門、遺忘門、輸出門等門控限制,對單元狀態(tài)、隱含層輸出做更新、刪除、過濾操作。門控限制能有效選擇讓有價值信息通過,同時也緩解了長期依賴(Long?Term Dependencies)問題,很大程度上避免了梯度消失或梯度爆炸的問題。圖3為LSTM 網絡單元結構。
圖3 LSTM 網絡單元結構
在圖3中:tanh 為雙曲正切激活函數;?為向量相乘;⊕為向量相加;σ為sigmoid 激活函數。LSTM 模型由輸入門it、遺忘門ft、輸出門ot三個時序模塊,以及一個記憶單元ct組成[19]。LSTM 模型t時刻三個門控單元的更新公式分別如下:
式中:Wi,Wf,Wo和bi,bf,bo分別為三個門控單元的權重和偏置項;xt表示當前時刻的輸入;ht-1表示上一時刻隱藏層輸出。LSTM 模型通過結合當前時刻xt和上一時刻輸出ht-1,計算更新上下記憶單元,公式如下:
cell單元狀態(tài)更新公式如下:
cell 單元狀態(tài)更新輸出后,輸入到輸出門由神經單元決定輸出。cell 單元狀態(tài)采用tanh 雙曲正切激活函數,對輸出門限ot進行過濾操作,公式如下:
LSTM 網絡的傳遞僅是對下文做了記憶存儲,也就是說網絡輸入的文本信息傳遞過程中僅有下文記憶,并沒有保存上文的記憶信息。所以本文引入了BiLSTM 模型,BiLSTM 結構包含兩個LSTM 網絡:一個正向LSTM的Forward 層,一個反向LSTM 的Backward 層。Forward層為前向計算,從0~t時刻隱含層按時序計算輸出;Backward 為反向計算,從t時刻到0 隱含層按倒序計算輸出,然后將同一隱藏層得到的正反向結果兩兩結合。這樣BiLSTM 包含了上下文的雙向信息。
1.3.2 注意力機制
注意力機制的原理借鑒了人視覺的特性,人的眼睛觀察事物一般會聚焦在某個局部,只去關注事物的部分特征而非全貌,同樣在語音與自然語言處理(NLP)領域也經常用到Attention 機制,其深度學習中起到了很重要的作用,具有很深的研究價值。文獻[20]中提出了自注意力機制(Self?Attention),其意在用注意力機制代替?zhèn)鹘y(tǒng)的CNN 和RNN 網絡。Self?Attention 是由注意力機制原理演化而來,是一種特殊的注意力機制方法,它能夠把不同位置的信息關聯起來,考慮不同位置信息的內在聯系計算出整個序列的表達。
編碼?解碼模型(Encoder?Decoder 模型)編碼部分是將初始向量轉化為固定長度的特征向量;而解碼是將定長的特征向量解碼為對應的字符文本??蚣芙Y構如圖4所示。
圖4 Encoder?Decoder 框架結構圖
Encoder?Decoder 框架在自然語言處理領域的應用,是將編碼部分將輸入序列Source 轉化為語義編碼c,解碼則參考該語義編碼c生成對應的Target 過程,公式為:
編碼器Encoder 對輸入的Source 進行特征變換,轉化為語義編碼c:
解碼器Decoder,通過語義編碼c和上一時刻解碼的數據來生成yi:
對于較長文本采用Encoder?Decoder 模型,編碼器生成的語義編碼c會存在無法存儲較長的信息問題,故基于Encoder?Decoder 框架,引入了注意力機制,結構如圖5所示。
圖5 引入注意力模型Encode?Decoder 框架
基于Encoder?Decoder 的注意力機制能將固定的語義編碼自適應調整,替換成當前生成詞的ci,Target 中的每個單詞都會學習與其對應的注意力計算的概率信息:
式(12)為Encoder 部分轉化為整個句子的語義編碼的變換函數,實際是對各詞向量的加權求和,公式如下:
式中:LX為Source 的長度;hj為Source 第j個詞的中間語義編碼;aij表示Target 輸出的第i個單詞時,Source 輸入第j個詞的注意力計算系數[21]。注意力機制模型框架如圖6所示。
圖6 注意力機制的本質思想
Source(數據源)是由一系列的
注意力機制的計算過程可分為三個步驟:
1)計算每一個Query 和各個Key 矩陣,將計算的相關性權重和對應的Value 進行加權求和,常用的相似度計算函數有點積法、余弦相似度。
式中:K(Key)為關鍵字;Q(Query)為查詢;Sim()表示計算的相似性函數。
2)采用Softmax 函數對計算出的權重歸一化處理,如下所示:
3)將計算的權重ai和對應的鍵值Value 加權求和,生成輸出注意力值,如下所示:
式中:a為權重系數。
以上為整個注意力機制的計算過程。
在本文中,具有注意力機制的BiLSTM 被用于深度特征學習,以提高分類器的識別性能。在LSTM 網絡中,輸入數據是以時間序列的方式處理的,它經常拋棄未來的上下文信息。與LSTM 相比,BiLSTM 結構在正向和反向的基礎上,考慮到未來和過去的背景信息,可以更好地提取語音片段。在BiLSTM 網絡中,每個訓練序列由后向和前向的LSTM 神經網絡層組成,這是BiLSTM模型的基礎。圖7是本文基于注意力機制的BiLSTM 語種識別方法的框架。
圖7 基于注意力機制的BiLSTM 語種識別方法的框架
本文實驗所使用的訓練數據集由東方語種識別競賽(Oriental Language Recognition Challenge,OLR)提供[23]。測試數據集使用了AP19?OLR 和AP20?OLR 提供的跨信道數據集,因此本次實驗使用兩個數據集來驗證所提方法的性能。此數據集都是從不同信道獲取的語音數據,AP19?OLR 中包括藏語(Tibet)、維吾爾語(Uyghur)、日語(jp?jp)、越南語(vi?vn)、俄語(ru?ru)、漢語普通話(zh?cn)。AP20?OLR 數據集包括朝鮮語(ko?kr)、粵語(ct?cn)、日語(jp?jp)、越南語(vi?vn)、俄語(ru?ru)、印尼語(id?id)。每種語言語音數據各不相同,驗證集每種語言設置為500 條,測試集設置為1 800 條,兩個數據集結構如表1、表2所示。
表1 AP19?OLR 數據集結構
表2 AP20?OLR 數據集結構
本文利用TensorFlow 框架,NVIDIAGeForceGTX 1080 GPU 上搭建語種識別模型進行實驗。將語音數據經過預處理和特征提取后輸入到語種識別模型,訓練和驗證網絡模型時,其輸入為40 維的FBANK 特征,采用的是Adam 優(yōu)化器,學習率為0.002,損失函數采用交叉熵函數。
本文采用NISTLRE 標準化評價指標,分別是等錯誤率(EER)、平均集檢測代價(Cavg),EER 定義為通過調整閾值,EER 值越小,就表示方法的識別性能越好。當錯誤接受率(FAR)和錯誤拒絕率(FRR)相等時,共同值稱之為等錯誤率(EER)。Cavg是通過計算得到模型的平均檢測損失代價,公式為:
式中:NL表示測試數據集中的語言種類;LT指的是目標語種;LN指的是非目標語種;CMiss表示漏判決一個和錯判決一個的檢測代價;PTarget和PNon?Target表示目標語種和非目標語種的先驗概率。
本文實驗分為四部分:第一部分是本文模型基于注意力機制的BiLSTM 方法對不同的語音特征進行實驗對比;第二部分是采用不同的深度學習模型進行實驗對比;第三部分是與傳統(tǒng)機器學習方法Stacking 融合模型進行對比;第四部分是通過與語種識別基線系統(tǒng)以及現有的語種識別方法進行對比。
2.3.1 實驗1
選取LPCC 特征、FBANK 特征、MFCC 特征等方式來進行特征提取,使用本文研究的模型對跨信道語種進行實驗,分析模型基于注意力機制的BiLSTM 在不同特征下的效果。實驗結果如表3所示。
從表3可以看出,在LPCC 特征、FBANK 特征、MFCC 特征三種特征之中,使用FBANK 特征進行實驗的效果最好,這是由于在特征的區(qū)分度方面,FBANK 的特征相關度較高,而MFCC 特征由于各個維度相關性更低。所以使用FBANK 特征使得網絡提取和學習特征更容易,識別效果更好。
表3 不同特征對照實驗結果
2.3.2 實驗2
設置CNN、LSTM、GRU、BiLSTM+Attention、CNN+BiLSTM 等5 種模型,對所選取的特征進行實驗,分析不同模型在FBANK 特征下的性能,實驗結果如表4所示。
表4 不同模型對照實驗結果
從表4可看出,LSTM 模型和CNN 模型的Cavg和EER均比較高。對比幾種不同的循環(huán)神經網絡模型可以看出,GRU 模型作為LSTM 模型的優(yōu)化,兩者的性能非常接近,但是GRU 模型的性能比LSTM 模型略好。CNN?BiLSTM 的EER 相對CNN、LSTM 也有提升,本文提出的BiLSTM+Attention 模型性能最優(yōu),說明融合后的網絡能夠更好地利用FBANK 特征,從而提升跨信道環(huán)境下語種識別的性能。
2.3.3 實驗3
本文使用傳統(tǒng)機器學習方法進行實驗,通過前面特征的選取和深度學習模型的選擇以后,分析傳統(tǒng)機器學習方法Stacking 融合模型和本文方法的性能,實驗結果如表5所示。
表5 傳統(tǒng)方法與本文方法對比結果
實驗證明,使用本文構建的基于注意力機制的BiLSTM 模型對于語種識別這項工作來說,相比于現在的機器學習方法,EER 分別在兩個數據集降低了3.61%和3.79%,在跨信道環(huán)境下有更好的識別性能。
2.3.4 實驗4
選取本文模型(基于注意力機制的BiLSTM 模型)與語種識別基線系統(tǒng)X?VECTOR 以及其他現有語種識別方法進行對比,實驗結果如表6所示。
表6 不同語種識別方法對照實驗結果
從表6可看出,通過對比本文模型實現的識別結果與AP19?OLR 和AP20?OLR 兩個基線系統(tǒng)中的識別結果可知,本文采用的基于注意力機制的BiLSTM 方法要優(yōu)于I?VECTOR,X?VECTOR 基線系統(tǒng)提供方法的識別結果;EER 分別降低了3.44%和5.66%,說明本文基于注意力機制的BiLSTM 可以很好地提升跨信道環(huán)境下的語種識別性能。
本文構建了一種基于注意力機制的BiLSTM 跨信道語種識別方法,與傳統(tǒng)機器學習方法和基線系統(tǒng)進行對比,在兩個數據集上進行實驗。實驗結果表明,跨信道環(huán)境下最有效的語音特征是FBANK,表現最好的模型是本文基于注意力機制的BiLSTM 方法。實驗提取跨信道語音數據的有效特征,將其送入模型訓練學習,最終分類輸出語言類別。實驗結果表明,本文提出的方法在跨信道環(huán)境下的語種識別上取得了較好的結果。但是本文涉及的語種場景較少,語料數據也比較少,在接下來的工作中,將會繼續(xù)在較大語料以及更有負載的信道上進行語種識別的探索,進一步開展相關研究。
注:本文通訊作者為米吉提·阿不里米提。