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