蘭朝鳳 劉 巖 趙宏運 劉春東
(哈爾濱理工大學測控技術與通信工程學院 哈爾濱 150080)
語音信號分離問題最早起源于雞尾酒會問題,該問題致力于解決在嘈雜環境中分離出重點關注的語音信號。經過學者不斷努力,解決該問題的方法不斷被創新,語音信號分離速度和分離質量都有所提高[1]。隨著社會進步和智能家居的發展,語音信號處理知識被廣泛應用于日常生活之中,對信號處理速度和質量提出了更高要求[2,3]。語音分離問題的解決方法主要可以歸結為兩個大類,分別為基于信號變換的傳統方式和近年來流行的深度學習方式,傳統分離方法主要是通過數字信號處理方式,對混合語音信號矩陣進行數學變化,使分離后語音信號彼此之間達到最大獨立性來完成信號分離[4]。該方法為語音信號分離領域做出了一定貢獻,但是其往往需要對混合語音信號施加限制條件,如ICA施加的是弱正交約束,最終得到一個具有分布式的信號表征從而實現數據降維目的,矢量量化模型對觀測信號施加一種強約束,將數據擬合成兩種彼此相互排斥模型,最終達到語音數據聚類目的[5,6]。但是在實際生活中,這些限制條件并不容易滿足,因而在實際應用過程中,使用該方法的分離效果還有待提高。
隨著計算機技術的不斷發展,計算機運算速度逐漸提高,運算成本逐漸下降,基于深度學習的語音信號處理方式被眾多學者提出并加以研究,在語音信號處理領域取得了一定成果[7–10]。深度學習網絡(Deep Neural Network, DNN)結構是較早用于語音分離的網絡,并且取得了一定進展[11]。Wang等人[12]最先提出將DNN應用于語音分離領域,并結合理想軟模板和理想二值模板完成了語音分離任務,并對兩種模板的分離結果做出了具體闡述分析。DNN具有多層次結構,可以從訓練數據中抽取出更加抽象的特征并具有非常強大的非線性數據處理能力,但是其訓練過程中存在大量參數計算,從而導致其模型收斂所需要時間更長的問題。隨后,有學者利用卷積神經網絡(Convolution Neural Network,CNN)模型探究了語音信號分離問題。Huang等人[13]將DNN和RNN模型結合起來應用于該問題,并在模型中加入了模板計算方法,該方法在模型中被稱為確定層,通過確定層實現了對誤差函數最小化操作,通過對誤差函數優化和網絡模型優化得到比DNN更好的語音分離結果。Hui等人[14]提出一種基于CMNN的結構,該結構結合理想幅值掩蔽(Ideal Ratio Mask, IRM)和maxout激活函數,實現對語音分離問題的建模,實驗結果表明,相對于傳統的CNN語音分離效果具有較大提升。Chandna等人[15]通過構建一種深度卷積網絡模型,成功分離單通道低延遲的混合語音信號,其分離語音信號中包含鼓聲、貝斯和隨歌曲變化的其他種類樂器,在實驗中研究人員還對該提出模型和多層感知器模型進行了對比實驗,實驗結果表明該模型無論從信號分離效果還是分離速度上都優于多層感知器。2014年,有學者提出了深度堆疊網絡(Deep Stacking Network,DSN)用于語音信號分離任務,該網絡是由多個神經網絡堆疊而成的,并且后一層網絡輸入包含上一層網絡輸出和原始輸入。Nie等人[16]給出了一種層級堆疊神經網絡,并通過該網絡對語音短時動態信息進行分析,此類網絡提高了原始信號的估計精確度,但是其對于語音信號每一個頻帶估計過程中相互間是獨立操作,沒有考慮到頻帶相關性。其后有學者將循環神經網絡(Recurrent Neural Network,RNN)應用于語音分離實踐中,相較于卷積神經網絡只關心數據局部信息特征,而忽略了語音信號前后聯系的情況,RNN是一種時序模型,其在某一時刻的輸出可以在下一個時刻作用其自身,因其結構具有循環鏈接特性,所以常用于時序信號的短時動態信息建模,并且其更加適用于語音信號這種與數據出現次序有關的信息處理,在語音分離領域取得了巨大成功。單層RNN因只有單個隱層,層級結構的缺乏令其在學習語音信號深層結構信息時具有缺陷性。隨后有學者針對該問題提出了基于深層循環神經網絡(Deep Recurrent Neural Network,DRNN)的語音信號分離方法,但是DRNN中還存在梯度消失問題有待解決[17]。
綜上所述,深度學習方式解決語音分離問題主要依靠頻域特征,沒有對語音信號空間特征進行有效利用。針對深度學習中RNN梯度消失問題,本文提出一種基于長短時記憶網絡(Long Short-Term Memory networks, LSTM)的語音分離方法,該方法既考慮到了語音信號時序相關性,又克服了傳統RNN算法梯度消失問題。當前深度學習模型都是對語音信號進行頻域特征提取,之后對該特征進行訓練得到輸入特征和關注語音信號頻譜特征間非線性映射關系,從而解決語音分離問題,但是該方法的不足之處在于其分離依據是目標語音于干擾語音間頻譜結構差異,若二者結構相似則其分離結果較差。針對該問題,本文結合波束形成算法和LSTM網絡,提出了改進算法,充分利用了語音信號的空間特征和頻譜特征并在具體實驗中對分離結果進行驗證。
利用深度學習方式更好對輸入和輸出特征進行非線性擬合,相對于淺層網絡,其更加具有優勢。一般來說,監督性語音分離系統流程如圖1所示。
圖1給出了監督性學習實現步驟,主要分為5個子模塊,首先通過時頻分解模塊將語音時域信號轉換成2維時頻信號;而后對語音信號進行特征提取操作,常用方法包括短時傅里葉變換譜、梅爾頻率倒譜系數等;第3個模塊是確定分離目標,后續分離過程中將利用此分離目標并結合觀測信號分離出多路原始信號。分離目標選擇和深度學習最終任務有關,常用分離目標有目標語音幅度譜估計和時頻掩蔽目標等;第4個部分為模型訓練過程,通過大量觀測信號和純凈語音數據之間進行非線性映射,訓練過程中動態調整神經網絡參數,使其達到更好擬合效果;分離系統最后一個階段是語音信號波形合成階段,該階段利用訓練得到的分離模型對觀測信號進行處理,而后通過傅里葉逆變換得到目標語音波形信號[18]。

圖1 監督性語音分離系統流程圖
RNN模型可以利用所有時刻的輸入信息,并將其映射到不同輸入單元中,對于語音信號等具有上下文關系的信息處理具有積極意義。但是RNN神經網絡存在梯度消失問題,即某一時刻輸出無法長時間對下一時刻造成影響,隨著網絡傳播,作用效果越來越小,導致網絡中單元只受到其附近單元影響,因而其并不適合處理具有長期依賴性的問題。
為解決RNN梯度消失問題,有學者提出了一種LSTM網絡,該網絡和RNN具有相同組織形式,但是相較于RNN,其神經元內部結構有所不同。LSTM的一個標準神經元包括了輸出門、遺忘門和輸入門。3個門相互配合使得信息可以長時間保存在網絡中并進行上下文信息傳遞。當網絡中輸入門關閉時,就不會有新網絡輸入影響LSTM狀態,那么可以將較為靠前的序列信息傳遞到序列后端,從而解決了梯度消失和梯度爆炸問題[19–22]。一個標準的LSTM網絡梯度信息保存如圖2所示。

圖2 LSTM梯度信息保存示意圖
如圖2所示,在圖2中每一個神經元左側代表遺忘門狀態,下方代表輸入門狀態,上方代表輸出門狀態,在圖2中○代表開關打開, -代表開關關閉。在時刻1,網絡輸入門打開,新數據信息被輸入到網絡中,而后在時刻2, 3, 4輸入門保持關閉,遺忘門保持打開,前一個時刻信息被傳遞到后一個時刻中,并且因為輸入門關閉,當前LSTM神經網絡狀態不會被新網絡輸入所覆蓋,所以位置較靠前的上下文信息被傳遞到了網絡后端,解決了RNN梯度消失問題,在時刻3和時刻4,輸出門保持打開狀態,當前網絡信息反映到輸出層中。
2.1小節中給出了對神經網絡進行語音分離的具體流程,并介紹了常用于語音分離的神經網絡,說明了LSTM網絡相對于RNN具有的優勢,本節將針對LSTM網絡內部結構給出具體說明,并給出一種基于理想二值掩碼的LSTM神經網絡。典型LSTM網絡記憶塊如圖3所示。
如圖3所示,一個標準LSTM網絡記憶塊具有1個記憶單元和3個門控單元,網絡利用圖3中3個門控單元來控制記憶單元狀態。門控單元分別表示輸入門。輸出門和遺忘門。某一時刻t,LSTM記憶塊利用門狀態的改變來對記憶塊狀態進行更新。更新過程由遺忘門狀態更新、記憶單元狀態更新和輸出更新組成。
如圖3中①所示,遺忘門在t時刻輸出mt由前一

圖3 LSTM網絡記憶塊


利用二值掩碼結合LSTM網絡來進行語音信號分離訓練有望達到比RNN更好的分離效果。IBMLSTM網絡結果如圖4所示。
圖4中,在訓練階段,網絡輸入是混合語音信號時頻譜,通過與純凈語音信號時頻譜進行非線性映射,形成一個通過LSTM網絡訓練得到的二值掩碼模型;在分離階段通過該模型估計出對應語音信號的二值掩碼,而后通過短時傅里葉逆變換得到原始語音信號,完成語音分離任務。

圖4 波束形成頻域求和結構示意圖
隨著當前深度學習領域和人工智能快速發展,通過語音信號實現智能交互過程已經成為現實,其對語音拾音系統也提出了新要求,利用單個麥克風進行信號采集已經無法適應當前環境,通過麥克風陣列進行語音信號采集變成了一種必然趨勢。相對于單個麥克風語音采集情況,麥克風陣列可以有效采集到發聲場原始語音信號空間信息,通過特定波束形成算法可以實現盲通道辨識、語音信號增強、盲源信號分離等多種目標[23,24]。
波束形成算法是針對麥克風陣列提出的一種信號處理算法,其可以實現聲源信號定位和定向、語音信號增強和分離等操作[25–27]。其最基本原理是利用麥克風陣列得到的語音信號空間信息,建立一個增益隨方位角和距離變化的空域濾波器。常用的波束形成方法有延遲求和波束形成算法、差分波束形成、超指向波束形成算法等[28–31]。本文就波束形成基本原理進行敘述,進而引出本文中使用的超指向波束形成算法,該算法相對于其他波束形成算法,對來自非導向方向語音信號抑制作用更強,更適用于本文所提出的語音分離模型。
波束形成過程如圖5所示,其中包含兩個過程,分別代表濾波和信號疊加。波束形成器由不同通道所對應的濾波器共同組成,其大多數是在頻域進行設計,通過短時傅里葉變換方式實現。

圖5 波束形成頻域求和結構示意圖

為實現對非導向方向語音信號最大抑制效果,需要使波束形成器指向性越高越好。實現該目標最簡單的方式是極大化指向性因子,通過這種方式設計出來的波束形成器稱為超指向波束形成器,超指向波束形成算法在期望聲源方向無失真約束條件下,可以將問題簡化為

超指向波束形成實質是在保證期望聲源信號不失真的前提下,盡量對來自其他方向的語音信號進行抑制的過程,因此將其和上文中提到過的LSTM神經網絡相結合,可以在神經網絡基礎上引入語音信號方向信息,有望進一步提高神經網絡模型語音信號分離效果。
傳統深度學習模型僅僅利用觀測信號頻譜信息和原始信號頻譜信息進行非線性映射操作,而忽略了語音信號空間信息。針對該問題,本文利用麥克風陣列,提出一種超指向波束形成算法和LSTM網絡結合模型,通過波束形成算法得到3個不同方向語音波束信號,而后該算法提取的特征是每一個波束中的頻譜幅度特征,通過本文構建的LSTM網絡預測掩蔽值,通過掩蔽值得到待分離語音信號頻譜并重構出時域信號,實現語音分離。分離算法流程圖如圖6所示。

圖6 分離算法流程圖
由圖6可見,利用合適的麥克風陣列對3路語音信號進行采集,通過超指向波束形成算法,得到3個不同方向的指向性波束。對3個波束信號進行頻譜幅度特征提取進而得到聯合特征,根據數據每個維度上特征值的平均值和標準差對聯合特征進行標準化操作。當前聯合特征作為LSTM網絡輸入,根據目標語音信號頻譜幅度特征,通過網絡訓練得到掩蔽值,根據掩蔽值得到目標語音頻譜,進行語音信號重構得到原始時域目標語音信號,完成語音信號分離工作。
實驗過程中,通過TIMIT語音庫隨機選擇3名說話人語音信號,并且說話人年齡和性別均保持隨機抽取,在進行語音錄制前將3段語音信號裁剪成相同時間長度并進行幅度歸一化操作,陣列布放及聲源位置如圖7所示,本文通過圖7的布放方式進行語音信號錄制。

圖7 陣列布放及聲源位置

本文所用神經網絡結構如圖8所示,神經網絡結構由1層掩蔽層、3層LSTM層和1層全連接層構成。其中全連接層中包含600個節點,訓練中用到的損失函數為mean_squared_error函數,即最小均方誤差(Mean Squared Error, MSE)函數,在訓練過程中,損失函數值越小,說明神經網絡和訓練集擬合性越好,匹配度越高。

圖8 LSTM神經網絡結構
實驗中語音信號采樣頻率統一為16 kHz,幀長設置為512點,采用3層LSTM網絡結構,每層由600個神經元組成。在 60°, 1 20°, 2 40°方向進行超指向波束形成,得到不同方向的語音波束信號,進而得到不同波束頻譜幅度特征,將特征拼接起來得到聯合特征,將聯合特征作為網絡輸入,結合純凈語音信號頻譜幅度特征,得到一個二值掩蔽訓練模型。分離階段通過模型得到混合語音信號對應的二值掩蔽,將其作用于混合語音信號幅度譜得到待分離語音信號幅度譜,重構原始語音信號,達到語音信號分離的目的。由上文理論分析可知,相對于傳統LSTM網絡,該方法不僅利用了觀測信號頻譜信息,還通過波束形成算法利用了觀測信號空間信息,有望得到較好的分離結果。
為量化實驗結果,本文通過客觀語音質量評估(Perceptual Evaluation of Speech Quality,PESQ)、短時客觀可懂(Short-Time Objective Intelligibility, STOI)、信噪比(Signal to Noise Ratio, SNR)指標對分離結果進行評價,對提出的波束形成LSTM網絡分離效果進行測試,并將實驗結果同IBM-LSTM方法進行對比,并將本文結果同RNN分離結果對比,本文以60°, 120°及240°方向語音信號的分離結果為例,不同網絡分離結果如表1所示。
由表1可知,結合波束形成算法的LSTM網絡,綜合利用了語音信號的頻譜信息和空間信息,相較于僅僅應用頻譜信息的神經網絡在語音分離效果上有所提高,在60°方向時,波束形成LSTM網絡與IBM-LSTM網絡相比,PESQ提高了0.59 dB,STOI指標提高了0.06,SNR提高了1.13。與RNN相比,PESQ提高了0.76,STOI指標提高了0.09,SNR提高了2.16 dB。在120°方向時,波束形成LSTM網絡與IBM-LSTM網絡相比,PESQ提高了0.56,STOI指標提高了0.05,SNR提高了1.13 dB。與RNN相比,PESQ提高了0.76,STOI指標提高了0.09,SDR提高了2.18 dB。在240°方向時,由表1可得到與上述兩種角度相同的結論,即波束形成LSTM網絡相較于另外兩種算法在語音分離評價指標上均有所提高。實驗結果表明,結合超指向波束形成的LSTM網絡相較于IBM-LSTM, RNN在語音分離領域取得了更好的分離效果,證明了本文所提算法的有效性。

表1 不同網絡結構分離人聲信號結果
