?

基于語音音素后驗概率圖關鍵特征提取的中文方言識別模型

2024-01-05 12:49罡,
關鍵詞:音素特征提取方言

馮 罡, 陳 寧

(華東理工大學信息科學與工程學院, 上海 200237)

語種識別(Language Identification, LID)是對語音片段所屬的語言種類進行辨識[1],方言識別(Dialect Identification, DID)是其中一個特殊任務,旨在識別同一語種的不同方言,通常應用于語音識別系統的前端[2]。但由于方言的類間距離差異較大,部分相似的方言在聲學特征分布上非常相近,導致DID 相比LID 任務更加困難[3]。

傳統的DID 模型大多基于機器學習方法,如高斯混合模型(Gaussian Mixture Model, GMM)[4-5]、支持向量機(Support Vector Machine, SVM)[6]以及i-vector[7-8]等。由于深度學習模型能夠提取語音信號的深層非線性特征,從而更好表征方言的深層語義特征,因此基于深度學習的DID 模型可達到更高的識別準確率[9-10]。X-vector[11]在過去幾年中是方言識別和說話人識別的主流模型。之后文獻[3]將Transformer 模型引入DID 任務,采用多頭自注意力機制捕捉包含長時特征序列依賴關系的方言嵌入,提升了分類性能。另外,為了加深網絡深度以提升模型性能,殘差網絡(ResNet)[12]被應用于DID 任務。在AP20-OLR挑戰賽中,IBG_AI 團隊[13]提出了基于5 種不同深度ResNet-SE[14]模 型 融 合 的LID 模 型。然 而,以上DID 模型在特征提取與優化、標簽預測階段仍存在可改進的方面:首先,在特征提取階段,現有模型大多采用聲學特征,如Filter Banks (Fbanks)或Mel-Frequency Ceptral Coefficient (MFCC),而忽略了音素分布特性對方言特性表征的重要作用;其次,在特征優化階段,以上模型在引入注意力機制時,對特征的分析維度相對單一,如Transformer 模型僅考慮了時間維度的差異性,而ResNet-SE 模型僅考慮特征維度的差異性,無法對特征進行全面的注意力分析,并且忽略了模型中間層信息的重要作用;最后,在標簽預測階段,以上模型僅采用單一的交叉熵損失函數作為訓練目標,無法最大化類間距離,難以保證模型的分類準確性。

針對以上問題,本文分別在特征提取階段、特征優化階段、以及標簽預測階段進行了如下改進,以提升方言識別的準確性。第一,在特征提取階段,考慮到不同方言對相同字的發音有所不同,導致不同方言語音所包含音素的概率分布存在較大差異,本文采用表示音素分布特性的音素后驗圖特征(Phonetic Posteriorgram,PPG)[15]作為模型的輸入特征。本文經過實驗證明,相比于Fbanks 和MFCC,PPG 具有更優的方言區分性能。第二,在特征優化階段,本文構建了結合Convolutional Block Attention Module[16](CBAM)和 Emphasized Channel Attention-Propagation and Aggregation in TDNN(ECAPA-TDNN)[17]的特征優化模型。其中,CBAM 模塊可對輸入特征依次進行通道維度、特征維度和時間維度的注意力分析;以SERes2Block為基本單元的ECAPA-TDNN 模型利用多尺度空洞卷積和Res2net[18]結構有效擴大了特征提取的感受野,所包含的剩余連接和多層特征聚合(Multi-layer Feature Aggregation, MFA)可有效保證中間層信息的提取,所采用的注意力統計池化(Attentive Statistical Pooling, ASP)可在一定程度上消除部分噪聲片段的干擾。第三,在標簽預測階段,在交叉熵損失函數的基礎上引入Additive Angular Margin (AAM)[19-20]損失,以決策區域替代決策邊界,從而進一步提升分類準確率。公開數據集的實驗結果表明,本文方法實現了比傳統方言識別方法更高的分類準確率。

1 算法模型

本文提出的基于語音音素后驗概率圖關鍵特征提取的中文方言識別模型如圖1 所示,它分為特征提取、特征優化和標簽預測3 個階段。

1.1 特征提取

本文利用預訓練模型提取語音信號的PPG 特征。首先對音頻信號進行幀長為25 ms、幀移為10 ms的分幀處理,得到幀級MFCC 特征,記為X={xt|t=1,···,T} ,其中T為幀數。然后根據第t幀的特征利用公式(1)計算屬于每種音素的后驗概率,得到相應的PPG 特征,記為Pt。

其中,xt是第t幀的輸入特征,d表示音素單元的類別,D是音素單元的類別總數,P(d|xt) 是xt屬于第d種音素的后驗概率。

為了比較Fbanks、MFCC 以及PPG 特征在區分方言中的有效性,實驗采用普通話和10 種方言各2 500個樣本,以幀長為25 ms、幀移為10 ms 對樣本進行分幀處理,分別提取每幀的Fbanks、MFCC 和PPG 特征,并對每個樣本的Fbanks、MFCC、PPG 特征按幀進行均值化處理。圖2(a)、(b)和(c)分別示出了均值化處理后的Fbanks、MFCC 和PPG 特征的t-SNE可視化分布??梢钥闯?,相比于Fbanks 和MFCC,PPG具有更優的方言區分性能。

圖2 普通話和方言語音樣本經均值化處理的t-SNE 可視化分布對比Fig.2 Comparison of t-SNE visual distribution for Mandarin and dialect speech samples after averaging

1.2 特征優化

本文在特征優化階段分別引入基于CBAM 注意力機制和基于ECAPA-TDNN 的深層嵌入提取模塊。前者對PPG 特征進行基于通道、特征和時間維度的注意力分析,后者則通過剩余連接和MFA 保留中間層信息以提升特征的表征能力,同時借助注意力統計池化分析獲得句子級嵌入。

1.2.1 基于CBAM 的注意力分析 語音中存在的靜音和含噪時隙對方言識別的性能有一定影響。傳統的方言識別模型尚未考慮這一重要影響因素。為此,本文引入基于CBAM 的注意力機制對PPG 特征依次進行通道和空間(特征-時間維度)注意力分析。注意力的引入還可在一定程度上減少訓練參數,從而提升模型的訓練效率。

如圖2 所示,對于輸入的PPG 特征Pt∈RD×T,分別進行Unsqueeze 和二維卷積將其通道從一維擴充為C維,所得通道擴充后的特征記為Ft∈RC×D×T。進行通道擴充的主要目的是增強PPG 特征的分辨率,以便更好地提取方言相關特征。后續將依次進行通道注意力分析和空間注意力分析。

(1)通道注意力分析

對特征Ft的特征維度D和時間維度T分別進行全局最大池化和全局平均池化,將池化結果分別通過共享的多層感知器(Multilayer Perceptron, MLP)并相加,經過Sigmoid 激活得到通道注意力的權重向量,記為Mt(c)∈RC×1×1,其計算公式如公式(2)所示:

其中, C onv 和 C at 分別表示卷積和拼接操作。

經空間注意力優化的特征記為Ft(cs)∈RC×D×T,可由公式(5)得到:

1.2.2 基于ECAPA-TDNN 的句子級嵌入提取 為了從幀級特征獲取句子特征的過程中更好地提取句子所包含的時序特性,避免中間層信息的丟失對句子級特征的影響,同時盡可能消除句中的靜音和含噪時隙對特征提取的影響,本文引入ECAPA-TDNN模型進行句子級嵌入的提取。

ECAPA-TDNN 模型框圖及SE-Res2Block 結構如圖3 所示。首先,ECAPA-TDNN 模型以SE-Res2Block模塊為基礎,SE-Res2Block 模塊將輸入特征分成更小的片段,用小的卷積器組代替單個大的卷積器,并對各卷積器的輸出進行類殘差的層次化方式連接,這種結構在不增加模型參數的基礎上擴大網絡層的感受野,同時獲得更細粒度的多尺度特征信息,因此可有效提升特征的表征能力。設第n個輸入特征片段為zn(n=0, 1 ,···,7) ,則對應的片段的輸出qn可用公式(6)計算:

圖3 ECAPA-TDNN 模型框圖(a)以及SE-Res2Block 結構(b)[17]Fig.3 Architecture of ECAPA-TDNN model (a) and SE-Res2Block structure (b)[17]

其中, C onv 表示 3× 3 卷積操作, R eLU 和 BN 分別表示激活函數和批歸一化。

其次,如圖3(a)所示,初始卷積層的輸出與SERes2Block 層的輸出進行求和后輸入到下一個SERes2Block 層,因此可有效減少中間層信息的丟失;同時,中間三層SE-Res2Block 的輸出將通過MFA 層進行聚合,從而進一步避免了中間層信息的丟失。

最后,ASP 層的引入可對不同時間維度的特征進行不同權重的加權,從而在一定程度上消除靜音時隙和噪聲時隙對句子級嵌入提取的影響。

1.3 標簽預測

本文使用多層全連接層作為分類器,通過設置最后一層全連接層的輸出節點數N=11 來控制分類任務的類別數,輸出向量Oi的元素則表示對各類方言的預測概率。

在分類過程中,一方面采用常被用于分類問題的交叉熵損失作為訓練目標,記為lCE。另一方面為了防止單個損失造成的決策單一問題,同時更好地最大化分類的類間距離,本文引入AAM,記為lAAM,進一步約束模型訓練。其計算公式為:

其中:B表示batch-size,N表示類別數,yi代表第i條音頻的標簽one-hot 向量, θyi,Oi表示yi、Oi之間的角度,m和 β 分別代表損失函數中margin 和scale 兩個超參數。

AAM 損失是以角度為分類標準,類間增設固定邊際m,以決策區域替代決策邊界進行分類,達到縮小類內距離、擴大類間距離的目標,有效提高方言分類的準確性。

模型整體損失,記為ltotal,由以上兩種損失加權求和得到,見公式(8):

其中 α ∈[0,1] 是控制兩種損失比例的超參數,本文設定 α =0.5 。

2 實驗結果

為了驗證本文提出的方言識別模型的性能,實驗以包括普通話在內的11 種中文方言的分類為目標,對本文的模型進行了性能測試。同時將基于Transformer 的方言識別模型[3]、基于ResNet34-SE 的語種識別模型[13],以及相關模型(X-vector[11]和ECAPA-TDNN[17])作為基線系統進行性能對比。

2.1 數據集及具體劃分

2.1.1 普通話數據 來自Aishell2 數據集中1 991 位說話人的40 188 條語音,共計30 h。

2.1.2 方言數據 來自數據堂公司Datatang-Dialect方言數據集中包括上海話、福建話、粵語、四川話、長沙話、杭州話、河南話、昆明話、蘇州話以及武漢話10 種方言各30 h 的數據。具體信息如表1 所示。

表1 方言數據集的構成Table 1 Composition of dialect dataset

訓練集和測試集的具體劃分如表2 所示。為了保證訓練集和測試集之間不存在說話人重疊,對以上的10 種語言按說話人數量進行9∶1 的劃分,其中9 份歸入訓練集,1 份歸入測試集。需要說明的是,本文的模型僅采用每個樣本的前3 s 作為輸入。

表2 訓練集和測試集的具體劃分Table 2 Division of training and testing sets

2.2 實驗設置

實驗的硬件設備為具有24 GB 內存的NVIDIA 3090Ti GPU,并采用PyTorch 進行編程。語音樣本的采樣率和量化精度分別為16 kHz 和16 bit。實驗采用40 維PPG 特征作為輸入。模型訓練時采用triangular2 策略[18],對ECAPA-TDNN 模型的學習率進行設置,并采用Adam 優化器[19]。AAM 損失的margin 和scale 分別設定為0.2 和12。模型所有權重的衰減因子設為2×10-4,batch size 設為128。

2.3 實驗結果和分析

本文實驗包括與基線系統的性能對比實驗和本文模型的消融實驗。實驗采用分類準確率作為衡量指標,即分類正確的語音樣本數占總體語音樣本數的比例。

2.3.1 與基線系統的性能對比 實驗采用基于Transformer[3]和X-vector[11]的方言識別模型,基于ResNet34-SE 的語種識別模型[13],以及基于ECAPATDNN[17]的方言識別模型作為基線系統,在本文構造的訓練集和測試集上進行了對比實驗。包括本文模型在內的5 種模型在測試集上的方言分類準確率對比結果如表3 所示,可以看出,本文提出的模型取得了比所有基線系統更高的分類準確率。

表3 方言分類準確率對比Table 3 Comparison of dialect identification accuracy

為了進一步研究各種模型在不同方言區分能力上的差異,圖4 示出了由各種模型在測試集上提取的句子級嵌入的t-SNE 可視化分布的對比結果??梢钥闯觯海?)各種模型均具有一定的方言分類能力;(2)就類間距離來看,ECAPA-TDNN[17]和本文模型更具優勢,可能是因為ECAPA-TDNN 具有較好保持中間層特征能力,并能更好地提取語音的長時時序特性;(3)與原始的ECAPA-TDNN 相比,本文的模型具有更強的方言分類能力。

圖4 各模型提取的語音嵌入的t-SNE 可視化分布對比Fig.4 Comparison of the t-SNE visual distribution of embeddings extracted by each model

圖5 顯示了5 種模型在不同方言上分類準確率對比結果??梢钥闯觯海?)在長沙話、河南話、昆明話、武漢話、閩南話以及上海話的分類中,本文的模型取得了比4 種基線系統更高的準確率;(2)在閩南語、杭州話、普通話的分類中,本文模型取得了與各基線模型相當的性能;(3)在粵語和蘇州話的分類中,本文模型略低于基線模型,但差距很??;(4)在四川話的分類中,本文模型的準確率低于ResNet34-SE[13]模型,但高于其他3 種基線系統;(5)總體而言,與基線系統相比,本文模型在不同類方言的識別中具有更好的穩定性。

圖5 各模型中不同方言的分類準確率Fig.5 Accuracy of different dialects in each model

2.3.2 消融實驗 為了驗證本文模型在輸入特征的選擇、特征的優化以及損失函數的構造方面的改進對整個模型性能提升的不可替代作用,本研究進行了消融實驗,結果如表4 所示。

表4 消融實驗結果Table 4 Results of ablation experiments

(1)特征選擇的有效性

表4 中示出的Our-Fbanks 和Our-MFCC 分別表示當把本文的模型輸入替換為Fbanks 特征或MFCC 特征時的模型,可以看出本文模型取得了比Our-Fbanks 和Our-MFCC 更高的識別準確率。這表明PPG 具有比Fbanks 或MFCC 更好的方言特性表征能力。

(2)特征優化的有效性

為了驗證特征優化階段中CBAM 以及ECAPATDNN 的作用,表4 中列出了模型分別缺少了以上模塊時模型的性能。其中No ECAPA-TDNN 是在將CBAM 模塊的輸出直接進行平均池化后通過FC 和BN 層得到的模型??梢钥闯?,以上任一模塊的缺失均會導致模型性能的下降,這表明以上在特征優化階段的改進均對模型性能的提升有貢獻。同時如表5所示的實驗結果表明CBAM 的引入對降低整個模型的訓練時長有突出的貢獻。

(3)損失函數的有效性

為了驗證AAM 損失的引入對模型性能提升的作用,表4 列出了模型在缺少AAM 損失條件下的分類準確率。從No AAm 與Ours 的實驗對比可以看出,AAM 損失的引入能有效提升模型的分類準確率。

3 結 論

考慮到語音音素的分布特性可有效區分不同的中文方言,本文提出了一種基于語音音素后驗概率圖關鍵特征提取的中文方言識別模型。該模型以語音音素后驗概率圖作為模型的輸入,通過引入基于CBAM 的注意力機制對幀級特征進行優化,利用ECAPA-TDNN 模型提取幀級特征序列的長時特性,并加強對中間層信息的提取和聚合,并引入ASP 降低噪聲和靜音幀對句子級特征的影響;最后,引入AAM 損失提升分類準確率。在公開數據集上的實驗結果表明,本文的模型取得了比傳統方法更高的分類準確率,并且以上改進均對模型識別準確率的提升有貢獻。

猜你喜歡
音素特征提取方言
新目標英語七年級(上)Starter Units 1-3 STEP BY STEP 隨堂通
方嚴的方言
方言
依托繪本課程,培養學生英語音素意識
說說方言
留住方言
小學英語課堂中音素意識與自然拼讀整合訓練的探索
基于Daubechies(dbN)的飛行器音頻特征提取
?不定冠詞a與an
Bagging RCSP腦電特征提取算法
91香蕉高清国产线观看免费-97夜夜澡人人爽人人喊a-99久久久无码国产精品9-国产亚洲日韩欧美综合