何 麗 劉 浩
(北方工業大學信息學院 北京 100144)
音樂信息檢索技術(Music Information Research,MIR)是用計算機技術對數字音樂進行處理的一系列技術方法,其中的研究方向之一是對音樂旋律提取。音樂旋律提取技術可以應用在音樂分析[1]、音準分析[2]和模式分析[3]等場景中。
隨著技術的發展,深度學習技術在自然語言處理、視頻及圖像處理領域都取得了十分顯著的成果。Lu等[4]結合了文獻[5-6]的方法,將圖像語義分割模型引入到音樂旋律提取問題中。結果表明此方法可有效降低虛警率,在一些數據集上接近最佳性能。
目前,很多研究將傳統的聲學特征與深度學習結合使用。色度特征是一種表示音級的特征,在音樂的和弦檢測中有十分重要的作用。梅爾倒譜系數是一種表示人聲的特征,廣泛應用在自動語音識別中。以上兩種特征可以有效地表示音樂主旋律的音級和流行歌曲中的人聲旋律。
本文以文獻[4]為基線,使用Segmentation模型,將梅爾倒譜系數和色度特征以多通道的方式融入原始數據中,使輸入數據包含音級和人聲信息。實驗表明,加入特征后模型訓練的收斂速度加快。此外,本文使用元數據集70%的數據就可以接近基線的效果。為了學習不同特征的權重,本文將壓縮激勵模型加入到Segmentation模型中。實驗表明,加入SEBlock的多特征融合模型相比基線有1.1%的整體準確率提升。同時相比無SEBlock的多特征融合帶來1.5%的虛警率下降。
目前,深度學習的方法在音樂信息檢索研究中的比重逐漸增加,很多研究采用了傳統聲學特征和深度學習技術結合的研究方法。
傳統旋律提取的算法通常是基于信號對音頻信號進行分析,通過挖掘不同的特征以提升音樂旋律提取的效果,例如音高顯著度計算[1]是通過音高顯著度函數追蹤并定位主旋律。一些研究從數據處理入手[8-9],包括加強旋律的分量[8]、減少伴奏分量[9]等。另外,文獻[10-13]提出計算旋律泛音振幅的加權和,文獻[14]通過檢測泛音的顯著度計算主基頻。
用于該領域的深度學習技術主要為深度神經網絡(DNN)和卷積神經網絡(CNN)。Choi等[2]利用深度神經網絡學習到半音級別的特征,在此基礎上對頻譜圖進行針對音高的波峰識別。該文獻中搜集了大量易于獲取的MIDI文件進行數據轉換作為訓練數據的擴充,希望解決訓練數據不足的問題。文獻[6]中,利用了目標跟蹤檢測的方法,搭建了patch-based CNN結構,解決了CNN模型中細粒度較大的問題。Lu等[4]用大量MIDI文件訓練漸進神經網絡(PNN),再對segmentation模型做遷移學習。該方法可有效降低虛警率、提升召回率(VR),但準確率提升較小,并且需要額外的數據處理及模型融合操作,效率略低。本文以Segmentation模型為基線,提出了融合了Chroma Feature和MFCC的主旋律提取算法,并在模型中加入SEBlock提升訓練效果。
2.1 多特征融合
2.1.1原始數據表示
原始數據使用GC特征,GC是一種基于時間序列的音高檢測數據特征[14-18],GCOS特征改變了頻率在GC中的比重[19]。GC和GCOS是兩種互補的特征:GC關注基礎頻率和復調頻率;GCOS表示的是基礎頻率和自頻率。GC和GCOS可通過傅里葉變換和非線性激活函數計算得到。計算過程如下:
(1)
(2)
(3)
(4)
式中:n代表時間;k、q代表時刻n的音頻頻率;X表示經過STFT計算的音頻信號;F表示DFT矩陣;Wf和Wt表示兩個高通濾波器;ReLU()是一個線性修正單元,本文設置參數(γ0,γ1,γ2)=(0.24,0.6,1)。
GC與GCOS相乘作為本文的原始數據,過程如式(5)所示。
(5)
(6)
ftri=4(flog-21)
(7)
為了便于計算,本文將頻率轉化為對數頻率(式(7)),再通過352維的三角濾波器(Triangular Filters)(式(6))將頻率控制在27.5 Hz到4 487 Hz之間。
2.1.2色度特征
文獻[21-22]中詳細地闡述了音頻的色度特征的計算過程。Chroma Feature主要表示為色度向量(Chroma Vector)和色度圖(Chroma Gram)。色度向量表示的是在一個時刻對應的音級;而色度圖是將色度向量按時間排列,組成的二維圖像。
Chroma Feature的求解過程如圖1所示,首先將原始數據轉化至頻域,再進行數據預處理,之后進行曲調計算和音高顯著度計算,再對數據進行歸一化,最后對數據進行平滑處理得到色度圖。本文使用librosa工具生成色度圖。通常色度向量的維度設置為12,本文為將色度特征數據與GC和GCOS進行數據對齊,將Chroma Vector的維度定為352維,即提升了色度圖對音級表示的密度。
圖1 Chroma Feature的求解流程
2.1.3梅爾倒譜系數
梅爾倒譜系數是一種廣泛應用在自動語音識別和說話人識別中的特征。文獻[23]詳細描述了MFCC的計算過程。加入MFCC可以更好地提取包含人聲的旋律,對于流行音樂的音樂特征提取有積極作用。本文針對訓練需要,進行了數據對齊操作,將MFCC調整至352維。MFCC將按照如下過程計算。
1) 預加重。預加重的作用是補償高頻分量、提高音頻的高頻分辨率,本質是用高通濾波器對信號進行濾波。函數如下:
(8)
x′=x(n)-?x(n-1)
(9)
式中:Z{x(n)}表示原始音頻信號變換到Z域的信號;Z{x′(n)}為預加重后音頻信號x′(n)變換到Z域的信號;n代表時間點;?表示預加重因數。
2) 分幀。將信號按固定長度劃分,每段信號長度約為20 ms至30 ms。
3) 加窗。為提高每幀音頻信號左右連續性,對分幀后的信號進行加窗操作,本文使用的是漢明窗(Hamming Window)。
(10)
4) 快速傅里葉變換。對時間窗內的信號做快速傅里葉變換(FFT)將時域信息轉換為頻域信息,得到的信號如下:
對于高校的籃球運動的體育教師來說,他們本身是教師,因此常規上課內容是不能被忽視的,在這樣的情況下如何協調好運動訓練和文化教育的關系尤為關鍵,既不能一直教學籃球,也不能過于拖泥帶水。高校應該從實際的角度出發,探討運動訓練和文化教育融合的良好途徑,切實根據不同學生的情況來進行針對性的文化教育。
(11)
式中:m=0,1,…,N-1。
之后計算能量譜e(m):
(12)
5) 計算對數能量。經過以上步驟,梅爾濾波器組會計算各通道能量。
(13)
式中:M是Mel窗口數量;Wi(j)為第i個通道的三角帶通濾波器。
(14)
6) 對數和余弦變換(DCT):
(15)
式中:k=1,2…,D,D是特征向量的維度。
上述Chroma Feature和MFCC的提取過程均需要進行短時傅里葉變換以及音頻采樣,本文的詳細參數如表1所示。
表1 采樣參數
2.2 融合壓縮激勵模型的卷積神經網絡
2.2.1DeepLabV3
Segmentation模型[4]是基于DeepLabV3[24-25]實現的,該模型目前在語義分割任務中取得了顯著的效果。模型采用了基于卷積神經網絡的編碼器-解碼器(Encoder-Decoder)結構,如圖2所示。圖2中Encoder部分使用了殘差模塊(ResNet)。DeepLabV3的特點是使用了空洞卷積(Dilated Convolution,Dilated Conv)和金字塔池化(Atrous Spatial Pyramid Pooling,ASPP)。空洞卷積如式(16)所示,相比最大池化(Max Pooling)可以擴大感受野,并且不會損失信息。
(16)
圖2 DeepLabV3
圖3 金字塔池化層
金字塔池化結構如圖3所示,該結構可以解決空洞卷積在高采樣率下有效權重變小的問題。殘差模塊如圖4所示。
圖4 殘差模塊
2.2.2壓縮-激勵模型
壓縮-激勵網絡(Squeeze-Excitation Network,SENet)[26]是將注意力機制作用在圖像的通道(Channel)上,即學習到不同特征的權重。整體結構如圖5所示,SENet核心是壓縮-激勵模塊(Squeeze-and-Excitation Block,SEBlock),過程分為壓縮(Squeeze)和激勵(Excitation)兩步。輸入如式(17)、式(18)所示。
Ftri:X→U,X∈RWt×Ht×Ct,U∈RWt×Ht×Ct
(17)
式中:Ftri代表原網絡,在本文中對應殘差模塊。
(18)
圖5 壓縮-激勵機制
(1) 壓縮模塊。在經過SEBlock轉換之后,各個數據單元不能利用單元以外的紋理信息。壓縮全局空間信息,得到一個通道描述器可有效避免該類問題。在本文中此步驟對應全局池化操作。
(19)
(2) 激勵模塊。本文的Excitation對應兩個全連接層。式(19)代表全連接操作,W1維度是C/r×C,r為特征縮放參數,該步驟的目的是減少通道數量降低計算量,本文將r設為16。式(20)代表對W1使用ReLU函數。式(21)代表全連接層,W2的維度是C×C/r,將特征圖還原成原始維度。
經以上計算得到權重張量。輸出數據經過Sigmoid函數進行歸一化。最終將權重作用在原數據上需要矩陣相乘。
zc=Fex(z,W)=σ(g(z,W))=σ(W2δ(W1z))
(20)
式中:g表示W2δ(W1z)計算過的中間函數,δ表示ReLU函數。
Xc=Fscale(uc,sc)=scuc
(21)
本文在模型encoder部分的殘差模塊中都加入了SEBlock,結構如圖6所示。實驗表明該機制可以提升模型準確率,并降低虛警率(VFA)。
圖6 SEBlock
3.1 數據集
本文選擇MIR1K作為訓練數據集,該數據集包含了1 000個中文流行歌曲的片段。在特征提取時,本文對音頻進行了采樣操作,因此標簽也需要與采樣后的音頻對齊。本文將訓練數據的70%作為訓練集,剩余的30%作為測試集。
測試數據方面,本文選擇了ADC2004和MIREX05數據集。MIREX05數據集包含了13個音樂片段,風格包括流行音樂和純音樂。ADC2004包含了15個音樂片段,風格包括純音樂、歌劇等。
3.2 評價標準
旋律提取的任務主要有兩個:
1) 估計旋律的音高。當預測值和參考值的差值在0.5個半音之內,則認為旋律音高估計正確,反之則認為旋律音高估計錯誤。
2) 旋律活動檢測,判斷當前幀是否為旋律幀。
旋律檢測任務的評價指標如表2所示,其中:GU表示參考結果的非旋律幀;GV表示參考結果的旋律幀;DU表示檢測結果中的無旋律幀;DV表示檢測結果中的旋律幀;TF表示非旋律幀被正確檢測的數量;FN表示有旋律幀錯誤檢測的數量;TP表示旋律幀正確檢測的數量;FP表示無旋律幀錯誤檢測的數量;TPC表示旋律幀音高正確檢測的數量;FPC表示無旋律幀音高錯誤檢測的數量;TPCch表示旋律幀音級正確檢測的數量;FPCch表示無旋律幀音級錯誤檢測的數量。
表2 評價指標
3.3 實驗設計
為驗證本文方法對音樂旋律提取的效果有積極作用,并且可以減少訓練數據、縮短訓練時間,實驗設計如下:
1) 使用Segmentation模型,在特征提取的步驟中分別加入Chroma Feature、MFCC,再將二者同時加入,使用Segmentation模型分別進行訓練。
2) 在Segmentation模型中的每個殘差模塊加入SEBlock。之后在特征提取的步驟中分別加入Chroma特征、MFCC再將二者同時加入,使用加入SEBlock的Segmentation模型分別進行訓練。
3) 使用70%的數據訓練,對比多特征融合模型、Segmentation模型的性能。
本文采用的對比算法為:MCDNN算法[27]、Patch-CNN[19]、DSM[28]、MD&MR[29]算法。其中,Segmentation算法[3]為本文的基線研究,將作為本文添加Chroma和MFCC特征以及引入SEBlock的有效性的基準對比。本文使用的平臺是1080Ti,32 GB的RAM,Centos7操作系統,Python 3.6,MATLAB 2019。深度學習框架為Keras,以TensorFlow 1.6作為后臺。音頻數據處理使用librosa工具,實驗結果評估使用mir_eval工具。
3.4 實驗結果分析
1) 特征融合對訓練數據量及訓練速度的影響。本文在加入MFCC和Chroma Feature后,用原訓練集的70%進行訓練。實驗結果如表3所示,在MIREX05數據集上,各項指標接近使用全部訓練集訓練的Segmentation模型。OA和RPA下降在1百分點以內,而VR下降了1.4百分點,VFA上升了3.8百分點,RCA相比基線模型反而上升了0.2百分點。在ADC2004數據集上,RCA下降了0.8百分點,其他指標降幅均在1.5百分點以內,OA降幅達到2.2百分點,VFA上升4.2百分點。由此可見,加入MFCC和Chroma Feature后,在準確率方面可以用較少的數據達到接近基線準確率的效果。
表3 加入多特征后用70%的訓練數據與基線模型
特征融合還有利于提升訓練速度。如圖7、圖8所示,加入MFCC和Chroma Feature后收斂速度明顯提升。
圖7 準確率收斂曲線
圖8 損失函數收斂曲線
2) 特征對各評價指標的影響。根據表4、表5中的結果,本文方法對MIREX05數據集提升較大。加入MFCC對OA和RCA提升效果較弱,與Segmentation的結果基本一致,RPA提升了0.9百分點。RPA用于判定音高準確度,而MFCC作為一種人工設計的聲學特征,主要用于人聲的語音識別,所以對于帶有人聲的音頻更為敏感,對流行音樂的音高識別也會更準確。
表4 ADC2004
表5 MIREX05
加入Chroma Feature對RPA和RCA有一定的提升。其中RCA相比基線提升了1.1百分點。因為Chroma Feature本身就是關于音度的特征,RCA同樣是用于評判音度準確率的標準。此外,Chroma Feature常用于和弦檢測,對音高的識別也有一定幫助。Chroma Feature有一個潛在的風險,該特征可能對伴奏旋律同樣敏感,從而影響對主旋律的提取。
同時加入MFCC和Chroma對OA僅有0.3百分點的提升,RCA增幅達到1百分點。
3) 與其他方法的對比。本文使用了實驗效果較好方案:同時加入MFCC、Chroma和SEBlock的方案與其他方法進行對比。
本文對比的幾種方法為:MCDNN算法[27]、Patch-CNN[19]、DSM[28]、MD&MR[29]算法。上述四種方法皆為近五年較為先進的方法。從表6中可以看出,本文方法在VFA、OA上有一定的競爭力,其中OA和結果最優的方法相差2百分點以內。相對于發表時間相對較早的Patch-CNN、DSM、MCDNN在ADC2004數據集獲得了0.6百分點至2.9百分點的優勢。而VFA的效果較好,除MD&MR以外,在和其他方法的比對中展現出了較為明顯的優勢。然而這種優勢得益于本文繼承了基線研究Segmentation算法的部分思路,該算法的一大優勢就是大幅度降低VFA。
表6 方法對比ADC2004
其余的指標中,RCA、RPA、VR指標與其他方法的差距在于Chroma特征和MFCC特征結合的方式。本文將處理好的Chroma和MFCC特征直接與網絡得到的特征圖進行疊加并輸入到SEBlock模塊中,三者在特征描述方面并未做到對齊,從而影響了實際效果。
MD&MR(Multi-Dilation and Multi-Resolution)為最新的一種音樂主旋律提取算法,模擬了人耳識別主旋律的過程,將提取過程最終轉換為低層特征與高層特征提取并結合的方式。如表7所示,在MIREX05數據集上OA、RPA、RCA、VFA均取得最高分。其中特征融合的方式也是值得本文學習的一點。
表7 方法對比MIREX05
以上實驗證明多特征融合對提升模型效果有積極作用,在某些指標上可以接近一些先進方法,但相比于目前最新的方法仍然存在明顯差距。
4) SEBlock的影響。如表4、表5所示,最終本文在多特征融合后的模型中加入SEBlock,效果有所下降,這是因為加入SEBlock的模型需要更長的訓練時間。因此本文將訓練時間延長至5個周期。效果優于無SEBlock的多特征融合模型。在MIREX05上的測試結果比基線的OA提升1.1百分點。此外,在同時擁有MFCC、Chroma的情況下加入SEBlock后比無SEBlock的VFA下降1.8百分點左右。
綜上所述,在MIREX05數據集上,加入MFCC和Chroma Feature可以提升Segmentation模型的OA、RPA、RCA。加入SEBlock后可以進一步提升上述三個指標,并且可以降低VFA,但VFA仍略高于基線。在ADC2004數據集上本文方法可以達到與基線接近的效果,因為該數據集中有大量的歌劇類的音頻,而本文的訓練集全部為流行音樂。
本文主要研究多特征融合與SEBlock在音樂旋律提取任務中的作用。為提升音樂旋律提取效果,本文使用Segmentation模型,在原始數據中加入了MFCC和Chroma Feature,又在此基礎上加入了SEBlock進行訓練。實驗結果表明,在MIREX05數據集的測試中,加入MFCC和Chroma Feature對結果都有一定的提升,并且可以只用70%的數據達到接近基線準確率。此外,加入SEBlock可以更好地進行多特征數據的模型訓練,對OA、RPA、RCA有所提升,并且可以緩解特征融合后VFA升高的問題。然而,本文研究針對各項指標的提升幅度較小,并且本文的研究在ADC2004數據集上表現欠佳,與最高水平仍存在一定差距,說明本文研究對不同風格的音樂普適性不強。在未來的工作中,計劃豐富訓練數據的類型,設計一些其他的聲學特征加入輸入數據中。
猜你喜歡音高基線音頻適用于MAUV的變基線定位系統高技術通訊(2021年3期)2021-06-09里蓋蒂《小提琴協奏曲》中的“雙律制音高組織”研究樂府新聲(2021年1期)2021-05-21航天技術與甚長基線陣的結合探索科學(2020年5期)2020-11-26必須了解的音頻基礎知識 家庭影院入門攻略:音頻認證與推薦標準篇家庭影院技術(2018年11期)2019-01-21基于Daubechies(dbN)的飛行器音頻特征提取電子制作(2018年19期)2018-11-14改進音高輪廓創建和選擇的旋律提取算法計算機應用(2018年8期)2018-10-16序列的蛻變——皮埃爾·布列茲室內樂作品《無主之槌》音高組織初探樂府新聲(2017年1期)2017-05-17音頻分析儀中低失真音頻信號的發生方法電子制作(2017年9期)2017-04-17音樂是一種特殊的語言——聊聊音高的魅力學與玩(2017年5期)2017-02-16一種改進的干涉儀測向基線設計方法艦船電子對抗(2016年5期)2016-12-13