羅 宇 胡維平 吳華楠
(廣西師范大學(xué)電子工程學(xué)院 桂林 541000)
語聲分離任務(wù)源于雞尾酒會問題[1]。傳統(tǒng)學(xué)習(xí)方法存在計算復(fù)雜度高和區(qū)分性訓(xùn)練困難的問題。與上述相比,深度學(xué)習(xí)為語聲分離任務(wù)提供了快速準確的方法,其高效的建模能力將掩碼推斷視為一個分類問題。在以往的頻域語聲分離中,需要考慮分離語聲的說話人排列問題[2]。因為頻域中將語聲分幀,再進行語聲分離,可能會將一個說話人的語聲幀分離到另一個說話人上,造成網(wǎng)絡(luò)分離的語聲信息混亂。深度聚類是最早基于深度學(xué)習(xí)的語聲分離體系結(jié)構(gòu),使用經(jīng)過區(qū)別訓(xùn)練的嵌入,在高維嵌入的特征空間中進行聚類來解決語聲分離輸出排列問題。
說話人聚類的語聲分離可以看作是一種矩陣分解任務(wù),輸入的混合語聲作為輸入矩陣,是若干個輸出矩陣之和,基于此理論來利用掩碼方法。深度聚類訓(xùn)練目標是理想二值掩碼(Ideal binary mask,IBM),每個時頻單元對應(yīng)一個源信號,由此可將掩碼估計等同于時頻單元聚類分類的問題。陸續(xù)有很多研究人員采取聚類方法來進行說話人分離。Hershey等[3]提出了深度聚類(Deep clustering,DPCL),訓(xùn)練了一個深層網(wǎng)絡(luò),將對比嵌入向量分配給頻譜圖的每個時頻區(qū)域,輸出標簽的匹配轉(zhuǎn)換為親和力矩陣的匹配,最小化同一人的時頻單元嵌入向量之間的距離,最大化不同人之間的距離,其高度依賴于嵌入形成的低秩成對親和力矩陣。Chen等[4]提出了深度吸引子網(wǎng)絡(luò)(Deep attractor network,DANet),通過在混合信號的高維嵌入空間中創(chuàng)建吸引子點,吸引子是由嵌入向量動態(tài)計算得到,將每個聲源對應(yīng)的時頻單元聚集在一起,通過學(xué)習(xí)聚類中心來對不同的說話人生成不同的掩碼,這樣就可以得到一種可學(xué)習(xí)的聚類中心,與DPCL 相比更加靈活,得到的結(jié)果也更加理想。Luo等[5]提出了獨立說話人的吸引子網(wǎng)絡(luò)(Speaker-independent speech separation with deep attractor network,ADANet),利用嵌入空間的一組輔助點(錨定點),使用嵌入和每個吸引子之間的相似性來估計混合物中每個源的掩碼。ADANet 解決了DANet中兩種創(chuàng)建吸引子方法的問題,但是網(wǎng)絡(luò)引入一個期望最大化(Expectation maximization,EM)迭代過程,需要對于每一種取法計算錨框和吸引子,因此計算開銷增大。Wang等[6]提出了嵌合體網(wǎng)絡(luò)(Chimera),該結(jié)構(gòu)將深度聚類與掩碼推理網(wǎng)絡(luò)結(jié)合在多目標訓(xùn)練方案中,提出了多個備選損失函數(shù)來訓(xùn)練深度聚類網(wǎng)絡(luò),在訓(xùn)練掩碼推理網(wǎng)絡(luò)以實現(xiàn)最佳分離時,深度聚類損失可作為正則化項,防止訓(xùn)練過擬合。
時域卷積網(wǎng)絡(luò)(ConvTasNet)是一種全卷積聲頻分離網(wǎng)絡(luò),在序列建模和聲頻處理任務(wù)中展現(xiàn)了優(yōu)越的性能[8]。本文利用ConvTasNet 的時域卷積網(wǎng)絡(luò)(Temporal convolutional networks,TCN)結(jié)構(gòu),設(shè)計了基于聚類的門控卷積網(wǎng)絡(luò)(Gate-conv cluster)框架,編解碼器分別是一維卷積和一維轉(zhuǎn)置卷積,在分離網(wǎng)絡(luò)中,用堆疊的門控卷積(Gateconv)來提取語聲信號的深層次特征;同時在特征空間中搭建聚類模塊,對長時語聲特征進行映射分離。聚類定義的損失函數(shù)是負尺度不變信源噪聲比(-SISNR),對目標語聲信號進行端到端訓(xùn)練。該框架很好地解決了傳統(tǒng)聚類方法無法做到端到端訓(xùn)練和時域卷積網(wǎng)絡(luò)語聲建模中短時依賴的問題。
語聲分離是指從給定的混合語聲信號中提取所有重疊的信號源[9]。對于給定的線性混合單通道信號y[t],單通道語聲分離提取所有C個說話人的源信號為Xc[t],c為說話人索引。
Gate-conv cluster 是 在convtasnet 的tcn 結(jié)構(gòu)[7-8,10]上提出的編碼器-解碼器框架,編碼器是一維卷積,并行編碼計算混合語聲的時域特征;然后將其送入一維非線性Gate-conv堆疊的嵌入網(wǎng)絡(luò)中,在高維度的特征空間中進行聚類,估計出目標語聲的掩蔽值;后利用編碼后的混合語聲與估計出來的掩蔽值做點乘,最后通過一維轉(zhuǎn)置卷積重構(gòu)得到純凈的語聲信號。圖1 顯示了搭建的Gate-conv cluster框架以及gate-conv結(jié)構(gòu)。
其中,Yconv是混合信號y[t]的時域特征表示,ReLU(·) 是用于確保非負輸出的元素整流線性單元;Conv1D(·)是由可學(xué)習(xí)權(quán)重參數(shù)的1*1卷積核。
分離網(wǎng)絡(luò)由門控卷積網(wǎng)絡(luò)和嵌入空間中的聚類組成。受Chimera 聚類集群框架[6]啟發(fā),語聲經(jīng)過深度神經(jīng)網(wǎng)絡(luò),結(jié)合門控支路提取的非線性信息對于在聚類空間中時頻單元生成掩碼具有更好的性能。Gate-conv在ConvTasNet中一維卷積塊1-D-conv中增加了非線性門控卷積支路[8,11],每個一維卷積模塊增加兩個Sigmoid 門,一個對應(yīng)于一維卷積模塊中的第一個1*1 卷積層即1*1_conv,另一個對應(yīng)于從深度可分離卷積depthwise_conv到輸出1*1_conv 的所有層,depthwise_conv 中的卷積層是大小為K的卷積核。
Gate-conv 結(jié)構(gòu)塊中,門控卷積塊的不同顏色表示不同的膨脹因子,特征映射首先通過一個通道數(shù)為256 的1*1_conv 塊,然后是8 個剩余的通道數(shù)為512 的Gate-conv塊,膨脹率為1,2,···,128,重復(fù)4 次;其中Gate-conv 中卷積核大小為3,步長stride為1。其中在每兩個卷積操作之間添加激活函數(shù)和歸一化,經(jīng)過depthwise_conv 后的1*1_conv的Output 作為下一個門控卷積塊的輸入;剩下的1*1_conv 塊的跳躍連接總和作為Gate-conv 結(jié)構(gòu)塊的輸出[8]。
在門控卷積網(wǎng)絡(luò)后端搭建了聚類框架,經(jīng)過門控卷積網(wǎng)絡(luò)的混合聲音的特征單元,被投射到一個高維空間[12]。特征單元在和不同源分配生成的吸引子距離計算上,任意兩點的距離都可能極為相近,導(dǎo)致難以將其區(qū)分出來;同時高維數(shù)據(jù)集的簇可能存在于不同的維度集合里。所以確定一定維數(shù)的特征空間很有必要,特征空間使用嵌入尺寸參數(shù)embed_size為σ的深度神經(jīng)網(wǎng)絡(luò)實現(xiàn)。為了將每個嵌入的特征單元分配給混合特征矩陣中的不同說話人,沿著時間追蹤嵌入空間中說話人的質(zhì)心,其中來自不同聲源的質(zhì)心被稱為吸引子點At(i,σ,τ),i是說話人的源分配,σ是特征空間維度,τ是時間步長,該吸引子點用于確定當(dāng)前說話人的特征向量分配。
與去年的調(diào)查相比,其他變化僅有CPA報道的AB Smithers北方木制品公司倒閉。這家工廠在我們?nèi)ツ甑拿麊沃袃H顯示9.7萬m3的年產(chǎn)能。
吸引子的位置在每個時間步都會更新。首先,吸引子的先前位置用于確定當(dāng)前特征單元的說話人分配。然后通過聚類操作,基于先前吸引子的加權(quán)平均值和說話人分配定義的當(dāng)前特征向量中心更新吸引子[13]。
其中分離模型U(·),在特征空間中,屬于同一源的所有嵌入的特征單元表示會互相吸引[14]。嵌入特征空間中的特征單元和每個吸引子之間的距離(通常表示為點積)決定了該特征單元的源分配,然后使用該分配為每個說話人定義一個掩碼,該掩碼乘以經(jīng)過一維卷積編碼器后的混合源語聲的時域特征表示來恢復(fù)該源。圖2 顯示了嵌入空間中聚類來恢復(fù)源信號的操作。
圖2 嵌入空間中聚類分離源信號示意圖Fig.2 Schematic diagram of clustering separated source signals in the embedding space
其中,U(·)是由分離網(wǎng)絡(luò)參數(shù)σ定義的掩碼估計模型。
在基于掩蔽Mask 的解決方案中[15-16],根據(jù)式(4)推導(dǎo)出恢復(fù)源信號Xc的特征向量由估計掩碼與混合信號經(jīng)過編碼器后的Yconv點乘得到。
其中,t和k分別是時間步長和特征向量索引,而Yconv通過混合信號y[t]經(jīng)過一維卷積編碼的潛在特征表示;是為說話人c通過聚類生成的掩碼;⊙是元素乘法運算。
本文以尺度不變信噪比為訓(xùn)練目標[8]。網(wǎng)絡(luò)訓(xùn)練目標函數(shù)是標準信號重建誤差,這使得在訓(xùn)練和測試階段都可以進行端到端操作。
實驗采用的原始語聲數(shù)據(jù)集來自WSJ0 語料庫[8]。利用該語料庫創(chuàng)建雙說話人混合數(shù)據(jù)集WSJ0-2mix:首先從WSJ0 語料庫中si_tr_s 文件夾中隨機選擇兩個說話者的語聲,并以-5~5 dB之間隨機選擇的信噪比(Signal to noise ratio,SNR)進行混合,建成包括49 名男性和51 名女性說話人、總量為30 h的訓(xùn)練集。此外,10 h驗證集和5 h測試集來自WSJ0 的si_dt_05 文件夾和si_et_05 文件夾的16 個說話人的言語(與訓(xùn)練集不同)。最后,經(jīng)過8 kHz降采樣,得到精度為16 bit的20000條語聲訓(xùn)練集、5000 條語聲驗證集、3000 條語聲數(shù)據(jù)測試集[3]。
該網(wǎng)絡(luò)的編碼器與解碼器即一維卷積,卷積核大小均為20,網(wǎng)絡(luò)在4 s長的片段上進行訓(xùn)練。初始學(xué)習(xí)速率設(shè)置為1×10-3,如果在連續(xù)3 個時期內(nèi)驗證集的準確性沒有提高,學(xué)習(xí)率將減半,優(yōu)化器使用Adam進行訓(xùn)練[17]。
通過信號失真比改善(Signal distortion ratio improvement,SDRi)[18]和尺度不變信噪比改善(Scale invariant SNR improvement,SI-SNRi)[8]來評價該方法,其中指標數(shù)值越大表明語聲分離性能越好。
為了驗證雙支路非線性門控卷積對于TCN 結(jié)構(gòu)的改進作用,在后端均不添加聚類操作的情況下,Gate-conv 和ConvTasNet,在WSJ0-2mix 數(shù)據(jù)集下,使用相同實驗設(shè)置,分別使用Gate-conv和使用ConvTasNet 的1-D-conv 再進行聚類后端分離,運行50個epoch,實驗結(jié)果如表1所示。
表1 使用非線性雙支路門控卷積與一維卷積的分離結(jié)果對比Table 1 Comparison of separation results using nonlinear bipartite gated convolution with one-dimensional convolution
從表1 可以看出,在基線原有ConvTasNet 中1-D-conv 上增加雙支路非線性門控激活后的Gateconv,分離結(jié)果均有不同程度的提升,其中SDRi 提升了0.35 dB,SI-SNRi 提升0.32 dB。由此可得出,非線性雙支路門控卷積提高了卷積網(wǎng)絡(luò)的非線性表達能力,在序列建模工作控制更多的信息流,能夠有效地提取語聲信號的深層次特征,對于語聲分離效果有著一定的改善。
基于Gate-conv,在WSJ0-2mix數(shù)據(jù)集下,使用相同實驗設(shè)置,分別進行高維空間聚類(Gate-conv cluster)和不做聚類(Gate-conv)直接估計mask 分離,運行50個epoch,實驗結(jié)果如表2所示。
表2 高維空間聚類和不做聚類方法的分離結(jié)果對比Table 2 Comparison of separation results between high-dimensional spatial clustering and no clustering methods
從表2 可以看出,在Gate-conv 后端進行聚類(Gate-conv cluster),其中SDRi提升了1.03 dB,SISNRi 提升1.01 dB。經(jīng)過實驗研究發(fā)現(xiàn),Gate-conv cluster 在高維空間中聚類,通過說話人分配和吸引子進一步使網(wǎng)絡(luò)訓(xùn)練每個說話人更長時間序列的特征向量表示,克服了ConvTasNet 語聲建模的短時依賴性問題,進一步提高了語聲分離的性能。
在門控卷積網(wǎng)絡(luò)后端使用嵌入尺寸參數(shù)embed_size為σ的深度神經(jīng)網(wǎng)絡(luò)生成高維度的特征空間,在WSJ0-2mix數(shù)據(jù)集下,使用相同實驗設(shè)置,運行50 個epoch 進行分離,進行最優(yōu)嵌入空間維數(shù)的研究,實驗結(jié)果如表3所示。
表3 不同嵌入空間維數(shù)的分離結(jié)果對比Table 3 Comparison of separation results for different embedding space dimensions
從表3 可以看出,在進行驗證不同嵌入空間維數(shù)時,隨著嵌入空間維數(shù)的增加有助于提高網(wǎng)絡(luò)分離性能,但當(dāng)維數(shù)增加到一定值時,網(wǎng)絡(luò)分離效果顯著下降;當(dāng)σ為20時,SDRi和SI-SNRi達到最佳,分別為16.30 dB和15.89 dB。實驗研究表明了在不同維度嵌入空間的接近度會影響不同源信號特征單元聚類的性能[19],同時也證明了在最優(yōu)維度特征空間中Gate-conv cluster框架能夠在語聲分離任務(wù)中表現(xiàn)得更好。
通過以上實驗驗證分析研究,Gate-conv cluster 在運行100 個epoch 后,與不同聚類方法和基線ConvTasNet 在同一數(shù)據(jù)集wsj0-2mix 下進行說話人分離的研究比較,實驗結(jié)果如表4所示。
表4 與不同聚類方法和基線ConvTasNet 的分離結(jié)果對比Table 4 Comparison of separation results of different clustering methods and baseline ConvTasNet
從表4 所示,在時域上,Gate-conv cluster 與ConvTasNet 的TCN 結(jié)構(gòu)的基線[8]相比,在因果任務(wù)中實現(xiàn)了端到端訓(xùn)練,SDRi和SI-SNRi分別能提高1.12 dB 和1.03 dB;與之前聚類操作的網(wǎng)絡(luò)架構(gòu)相比,性能明顯優(yōu)之前無語聲建模的聚類框架,其中SDRi 和SI-SNRi 分別達到16.72 dB 和16.33 dB的效果。實驗證明了本文提出Gate-conv cluster,通過堆疊的門控卷積對語聲進行深層次的建模,然后在最優(yōu)維度的空間中,聚類對映射的特征單元進行表示和劃分,為恢復(fù)不同信號源提供了一個長期的說話者表示信息,能夠進一步提高語聲分離性能。
本文介紹了在時域上用于單通道語聲分離任務(wù)的Gate-conv cluster,首先將使用改進的堆疊雙支路非線性門控卷積對編碼后的語聲進行建模,然后通過實驗研究了最優(yōu)嵌入空間的維數(shù),在高維特征空間中進行聚類,追蹤不同源信號的長時特征表示;同時網(wǎng)絡(luò)訓(xùn)練使用了基于目標語聲的尺度不變信噪比作為損失函數(shù),實現(xiàn)端到端信號分離。實驗結(jié)果表明,與基線ConvTasNet 和以往傳統(tǒng)聚類分離的方法相比,Gate-conv cluster 框架具有更好的分離性能。
由于時域卷積更關(guān)注語聲的局部信息,因此,下一階段工作將使網(wǎng)絡(luò)能夠?qū)W習(xí)全局說話人信息,提高語聲分離模型的魯棒性。