曹 偲,吳修坤,劉華平
(網(wǎng)易云音樂 杭州網(wǎng)易云音樂科技有限公司技術(shù)中心,浙江 杭州 310052)
Cherry 最先提出“雞尾酒會效應(yīng)”,即在嘈雜的環(huán)境中,人類可以輕易地將注意力集中于某一個說話者[1]。后來Bregman 試圖研究人腦如何分析復(fù)雜的聽覺信號,并提出了聽覺場景分析框架。有別于“雞尾酒會效應(yīng)”的源分離,音樂分離的分離目標(biāo)是組成歌曲的多個獨立的信號源,如干聲、伴奏成分。特別地,在SISEC 2018 音樂分離任務(wù)比賽中,獨立的信號成分被細化為多個分軌信號,包括干聲、鼓點、貝斯以及其他成分等[2]。近幾十年來,由于很難對背景伴奏和干聲進行有效建模,音樂分離一直是一個難題。直到近期,基于深度學(xué)習(xí)的方法在音樂分離中取得了較好進展。按照網(wǎng)絡(luò)結(jié)構(gòu),這些優(yōu)秀的音樂分離方法大致可以分為3 類,即基于CNN 網(wǎng)絡(luò)的分離方法[3-6]、基于LSTM 的分離方法[7-8]以及RNN 和CNN 結(jié)合的分離方法[9-10]。LSTM 網(wǎng)絡(luò)考慮了語音信號的時序相關(guān)性,但是由于時間依賴性無法進行并行運算,使得網(wǎng)絡(luò)計算耗時較長。CNN 通過感受野獲取信號局部特征,為了獲取更大的感受野,需要更深層的CNN 網(wǎng)絡(luò),但深層網(wǎng)絡(luò)意味著網(wǎng)絡(luò)變大,且更加難訓(xùn)練。
此外,按照輸入方式,這些方法可以分為兩類:一類是輸入時域波形特征(如Wav-U-Net[3]和Demucs[10]等),然后輸出時域波形;另一類是輸入時頻域譜特征(如Spleeter[11]、MMDense-LSTM[9]和Open-Unmix[2]),然后輸出時頻域掩碼,最后將時頻掩碼和時頻點的點積求逆短時傅里葉變換獲得時域波形信號。因此,通過時域或者時頻域的信號特征,均可以取得較好的分離性能。然而,音樂分離問題依然存在很多問題,如分離的伴奏會丟失一些配器成分,導(dǎo)致聽感上大打折扣。同時,分離引入的失真也是一個重要問題,如以時域波形作為輸入特征的方法更容易引入新的頻率分量,進而引入人工噪聲。
本文試圖提出一種稀疏自編碼框架,在時頻域特征上預(yù)先進行高維特征提取,然后結(jié)合CNN 網(wǎng)絡(luò)用于音樂源分離。具體地,通過一個稀疏自編碼器提取頻域信號的高維特征,將自編碼器的輸出作為CNN 網(wǎng)絡(luò)的輸入,將CNN 網(wǎng)絡(luò)的輸出結(jié)果送入解碼器,最后通過解碼器將時頻掩碼恢復(fù)到和時頻譜圖相同的尺度。該方法很好地利用了頻點之間的相關(guān)性來提高網(wǎng)絡(luò)的擬合能力,增大了CNN網(wǎng)絡(luò)的感受野。特別地,借鑒文獻[5]采用兩層疊加沙漏網(wǎng)絡(luò)作為音樂分離網(wǎng)絡(luò)。本文想法基于最初的創(chuàng)新想法,即將頻域進行梅爾子帶變換,并將子帶域特征送入網(wǎng)絡(luò)進行訓(xùn)練,最后輸出時頻域(Time-Frequency,TF)掩碼。將梅爾頻譜特征作為輸入特征極大地提高了網(wǎng)絡(luò)的擬合能力,并取得了較好的分離結(jié)果。因此,本文采用自編碼器代替梅爾變換進行網(wǎng)絡(luò)優(yōu)化,并進一步驗證了該方法的有效性。實驗結(jié)果表明,基于稀疏數(shù)自編碼的CNN網(wǎng)絡(luò)獲得了最優(yōu)分離結(jié)果。
本文將在第2 節(jié)介紹相關(guān)分離工作,在第3 節(jié)分析稀疏編碼網(wǎng)絡(luò),在第4 節(jié)詳細描述基于稀疏編碼的參數(shù)和網(wǎng)絡(luò)訓(xùn)練環(huán)境,同時分析本文方法和其他先進分離算法的結(jié)果,最后總結(jié)全文。
作為信息檢索領(lǐng)域中一個重要的信號處理任務(wù),音樂分離通常是將混合的歌曲信號分離為多個單獨的源信號。目前,音樂源分離需要滿足線性混合的假設(shè),即一個混合信號xt∈RT是多個獨立的信號源的線性組合:
經(jīng)過短時傅里葉變換,式(1)中時域波形信號對應(yīng)關(guān)系可以轉(zhuǎn)換成時頻域?qū)?yīng)關(guān)系:
基于維納濾波,估計的獨立聲源信號可以表示為:
其中,φ(x(f,t)) 表示混合信號源的相位,表示理想概率掩蔽(Ideal Ratio Mask,IRM)系數(shù):
為了實現(xiàn)快速穩(wěn)定的收斂結(jié)果,本文的目標(biāo)代價函數(shù)為真實信號和估計信號幅度譜差值的L1范數(shù):
本節(jié)描述稀疏編碼網(wǎng)絡(luò)結(jié)構(gòu),如圖1 所示。稀疏編碼網(wǎng)絡(luò)主要是對頻域信號進行編碼壓縮,用于CNN 網(wǎng)絡(luò)進行音樂分離,并詳細分析了編碼網(wǎng)絡(luò)對音樂分離的貢獻。
稀疏自編碼網(wǎng)絡(luò)的思想是通過網(wǎng)絡(luò)和傳統(tǒng)方法預(yù)先提取一些高維特征,然后將高維特征融合并作為深度分離網(wǎng)絡(luò)的輸入。本文定義了稀疏矩陣編碼模塊,通過稀疏編碼將頻譜進行頻譜維度的壓縮,預(yù)先提取一些高維特征。具體地,先對STFT 幅度譜進行一維卷積,然后將卷積結(jié)果分別進行梅爾譜變換和稀疏編碼處理。本文將梅爾譜和稀疏編碼特征進行融合,獲得稀疏編碼的輸出結(jié)果。由于頻點特征存在信息冗余,會使深度CNN 網(wǎng)絡(luò)難于訓(xùn)練,且加大了網(wǎng)絡(luò)的計算復(fù)雜度。稀疏編碼等效公式如下:
其中,Mel(b,f)表示Mel濾波系數(shù),A(b,f)是稀疏編碼權(quán)重矩陣,Bi(b)表示偏置向量,b表示編碼變換維度(本文中傅里葉系數(shù)長度F為2 049,編碼維度B為256,即將F維頻域信號映射為B維特征)。獲取的B維特征可以作為CNN 分離網(wǎng)絡(luò)的輸入特征,同時可通過解碼矩陣將CNN 網(wǎng)絡(luò)輸出的B維結(jié)果進行解碼獲取F維Mask。
通過分析選擇2層堆疊沙漏網(wǎng)絡(luò)作為分離網(wǎng)絡(luò)。SH-4stack 方法[5]已經(jīng)將堆疊沙漏網(wǎng)絡(luò)用于音樂分離,并取得了良好效果,但只是簡單將堆疊沙漏網(wǎng)絡(luò)搬移到音樂分離任務(wù)中,沒有將音樂信號中的物理意義和網(wǎng)絡(luò)進行有機融合。此外,原始堆疊沙漏網(wǎng)絡(luò)的網(wǎng)絡(luò)結(jié)構(gòu)龐大,計算復(fù)雜度高,因此SH-4stack 方法只實現(xiàn)了8 kHz 的音樂分離任務(wù)。本文將稀疏自編碼網(wǎng)絡(luò)應(yīng)用于堆疊沙漏網(wǎng)絡(luò),極大地降低了沙漏網(wǎng)絡(luò)的計算復(fù)雜度,提高了網(wǎng)絡(luò)的擬合能力,實現(xiàn)了44.1 kHz 采樣的音樂分離任務(wù)。特別地,對堆疊沙漏網(wǎng)絡(luò)進行優(yōu)化(如加入BN 層和Drop 層、調(diào)整下采樣方式等)用來適應(yīng)音樂分離任務(wù),具體網(wǎng)絡(luò)結(jié)構(gòu)如圖2 所示。
經(jīng)過稀疏自編碼模塊和CNN 網(wǎng)絡(luò)模塊后,輸出結(jié)果為b×t維的編碼矩陣SASH(b,t)。本文采用解碼矩陣得到TF 掩碼:
其中,V(f,b)表示解碼矩陣,為偏置向量。本文通過編碼矩陣和解碼矩陣實現(xiàn)了高維特征的提取和融合,提高了網(wǎng)絡(luò)的擬合能力和計算時效性。特別地,本文采用稀疏編碼模塊將頻點特征映射到一個高維空間,很好地利用了頻點之間的相關(guān)性,同時擴大了CNN 網(wǎng)絡(luò)的感受野。
為了更加公平地驗證本文方法的有效性,本文采用MUSDB18 數(shù)據(jù)集作為訓(xùn)練集合測試集。MUSDB18 數(shù)據(jù)集由SISEC2018 比賽提供,包含100首訓(xùn)練集和50 首測試集(總時長約10 h,采樣率為44.1 kHz),且每首歌曲包含了混合信號和干聲、伴奏成份。本文將100 首訓(xùn)練集中的94 首用于訓(xùn)練集,剩余6 首歌曲作為驗證集,參數(shù)設(shè)置如表1 所示。
表1 基于稀疏自編碼網(wǎng)絡(luò)的訓(xùn)練參數(shù)設(shè)置
此外,本文采用tensorflow 框架建立和訓(xùn)練模型,訓(xùn)練工具為1 塊NVIDIA 1080Ti GPU。網(wǎng)絡(luò)的代價函數(shù)為誤差的絕對均值,優(yōu)化器為Adam。評價方式采用museval 包和BSSE-valv4 工具箱,評分標(biāo)準(zhǔn)為SDR。
為了更好地驗證和評價所提方法的效果,將所提方法與Demucs、Spleeter 等優(yōu)秀分離方法進行對比。Spleeter 是優(yōu)秀的分離方法,采用經(jīng)典的U-Net網(wǎng)絡(luò)作為分離網(wǎng)絡(luò),并加入空洞卷積提升網(wǎng)絡(luò)的分離性能。Demucs 則是近期出現(xiàn)的先進的分離方法,采用Tas-net 對波形進行編碼和解碼,并采用LSTM網(wǎng)絡(luò)作為分離網(wǎng)絡(luò)。此外,采用SDR 指標(biāo)進行評價。SDR 指標(biāo)是目前主流的客觀評價方式,值越高,說明音樂分離的性能越好。如表2 所示,本文方法在MUSDB18 數(shù)據(jù)集上獲得了最優(yōu)結(jié)果。
表2 本文方法和其他分離模型的SDR 分數(shù)結(jié)果(MUSDB18 數(shù)據(jù)集上)
其中,Demucs 給出了分軌模型,即分為干聲、貝斯、鼓點以及其他。為了對比結(jié)果,本文將其中的貝斯、鼓點和其他成份合并為伴奏。與多個分離方法比較,基于本文獲取的干聲、伴奏均獲得了最高分數(shù)。特別地,通過和SH-4stack 方法的對比結(jié)果可以得出,提出的稀疏編碼網(wǎng)絡(luò)結(jié)構(gòu)提升了沙漏網(wǎng)絡(luò)的分離能力。本文將梅爾頻譜作為網(wǎng)絡(luò)輸入的特征之一,因為梅爾頻譜模擬人耳聽覺對實際頻率的敏感程度,更好地突出了音高特性,使得網(wǎng)絡(luò)提高了干聲等分離成分的保真度,一定程度上解決了分離引入的失真問題。
此外,本文只用了MUSDB18 的100 首訓(xùn)練集作為訓(xùn)練集和驗證集,而Spleeter 方法用了額外數(shù)據(jù)集(沒有公開),Demucs 方法則用了額外的150首訓(xùn)練集,也從側(cè)面說明了基于稀疏編碼網(wǎng)絡(luò)具有更強的擬合能力。
本文提出了一種基于頻域稀疏自編碼網(wǎng)絡(luò)的音樂分離神經(jīng)網(wǎng)絡(luò),通過預(yù)提取一些高維維度來提高音樂分離的性能。特別地,本文很好地考慮了頻點之間的相關(guān)性,并通過稀疏自編碼網(wǎng)絡(luò)將頻點信息映射到高維空間,提高了網(wǎng)絡(luò)的擬合能力和運行效率。實驗結(jié)果表明,與現(xiàn)有的多個優(yōu)秀分離算法相比,本文提出的稀疏自編碼網(wǎng)絡(luò)獲得了最高的SDR 分數(shù)。本文目前只考慮了混合信號的頻譜幅度譜,未來的工作是將相位特征進行建模,并應(yīng)用于音樂分離任務(wù)。