朱東輝,陳 寧
(華東理工大學(xué) 信息科學(xué)與工程學(xué)院, 上海 200237)
由于在音樂(lè)檢索、音樂(lè)版權(quán)管理和授權(quán)、音樂(lè)創(chuàng)作輔助等方面的潛在應(yīng)用,識(shí)別特定曲目的不同版本、表演或再現(xiàn)的翻唱歌曲識(shí)別(cover song identification,CSI)技術(shù)已經(jīng)成為音樂(lè)信息檢索(music information retrieval,MIR)領(lǐng)域的一個(gè)熱門話題[1-2]。與原唱相比,翻唱歌曲可能涉及一些復(fù)雜的變化,如音調(diào)的轉(zhuǎn)換、音樂(lè)整體結(jié)構(gòu)的變化和節(jié)奏的變化等。這些變化使CSI成為一項(xiàng)具有挑戰(zhàn)性的任務(wù)。
目前翻唱歌曲識(shí)別的過(guò)程涉及2個(gè)環(huán)節(jié):特征提取和相似度度量。特征提取方法主要分為提取基于傳統(tǒng)音頻信號(hào)處理的手工特征[2-3]和提取基于深度神經(jīng)網(wǎng)絡(luò)的高階特征[4-6]。在相似度度量方面則主要是通過(guò)融合來(lái)提升性能。根據(jù)融合對(duì)象的不同,融合方法可以分為對(duì)特征的融合和對(duì)特征間相似度的融合。例如,Doras等[3]利用一個(gè)雙分支網(wǎng)絡(luò)將2個(gè)不同特征經(jīng)過(guò)不同的預(yù)訓(xùn)練模型進(jìn)行處理后進(jìn)行拼接構(gòu)成一個(gè)更好的特征;Fan等[7]對(duì)基于聲音級(jí)輪廓(harmonic pitch class profile,HPCP)[8]特征和基于主旋律(MeLoDy,MLD)[9]特征的相似度矩陣通過(guò)相似度網(wǎng)絡(luò)融合(similarity network fusion,SNF)[10]算法進(jìn)行融合;Jiang等[11]則是利用網(wǎng)絡(luò)層不同階段的特征向量計(jì)算互相似度矩陣,通過(guò)卷積層對(duì)相似度矩陣進(jìn)行處理和拼接達(dá)到融合的效果。盡管基于深度學(xué)習(xí)的融合方法表現(xiàn)出了不錯(cuò)的性能,但是隨著網(wǎng)絡(luò)的規(guī)模和數(shù)據(jù)量的增大,訓(xùn)練的時(shí)間和算力成本也會(huì)成倍增加。且在翻唱識(shí)別的實(shí)際應(yīng)用場(chǎng)景中由于版權(quán)原因往往無(wú)法獲取足夠的數(shù)據(jù)。因此,類似文獻(xiàn)[7]的方法以其較低的計(jì)算復(fù)雜度仍具有一定的競(jìng)爭(zhēng)力。
然而,文獻(xiàn)[7]基于SNF的算法有以下局限性:第一,由于SNF只能融合方陣,而2個(gè)不同長(zhǎng)度的歌曲構(gòu)造的互相似度矩陣為非方陣,于是必須通過(guò)引入額外的自相似度矩陣來(lái)構(gòu)造方陣以實(shí)現(xiàn)融合,增大了算法的時(shí)間復(fù)雜度。同時(shí)拼接引入的無(wú)關(guān)矩陣會(huì)影響融合矩陣的性能。第二,在傳統(tǒng)的SNF中,由表征性能差的音頻特征構(gòu)造的核矩陣的負(fù)面影響會(huì)在多次迭代過(guò)程中逐步放大,從而影響融合效果。
為了解決上述問(wèn)題,提出改進(jìn)相似度網(wǎng)絡(luò)融合(modified similarity network fusion,MSNF)算法。針對(duì)問(wèn)題一,利用自相似度矩陣自建核矩陣從而實(shí)現(xiàn)對(duì)非方陣的融合,突破了SNF只能融合方陣的限制,避免了由于矩陣拼接和拆分造成的額外計(jì)算開(kāi)銷,同時(shí)也消除了拼接時(shí)所引入的無(wú)關(guān)矩陣的負(fù)面影響;針對(duì)問(wèn)題二,利用SNF對(duì)基于不同特征的核矩陣進(jìn)行融合,避免性能差的核矩陣的負(fù)面影響的延伸。本文的主要貢獻(xiàn)為:第一,提出了泛化能力更強(qiáng)的MSNF算法,支持對(duì)任意尺寸矩陣的融合;第二,MSNF增加了融合的魯棒性。利用融合核矩陣代替核矩陣,即使性能較差的核矩陣也不會(huì)對(duì)融合結(jié)果造成直接影響。為了驗(yàn)證MSNF的有效性,將MSNF替換文獻(xiàn)[7]中所提出的CRP-SNF-MKI中的SNF融合算法。實(shí)驗(yàn)結(jié)果表明,基于MSNF的改進(jìn)方法可在提升翻唱識(shí)別準(zhǔn)確率的同時(shí)大幅降低算法時(shí)間復(fù)雜度。
SNF算法[10]被用于對(duì)基于不同特征的相似度方陣P進(jìn)行融合。而S是由P通過(guò)K近鄰技術(shù)得到的稀疏矩陣,僅包含每個(gè)節(jié)點(diǎn)與K個(gè)鄰近節(jié)點(diǎn)的相似度。在融合過(guò)程中,該算法總是以P為初始相似度矩陣,以S為核矩陣,這既是為了捕捉圖的局部結(jié)構(gòu)信息,也是為了提高計(jì)算效率。

(1)
(2)

(3)
由于S是P的K近鄰圖,因此S和P是同樣大小的方陣,于是如式(1)(2)所示,S可以通過(guò)直接轉(zhuǎn)置的方式在迭代時(shí)分別在P左右進(jìn)行矩陣相乘的運(yùn)算。這也是SNF算法要求融合的矩陣必須為方陣的原因。而當(dāng)該算法應(yīng)用于非方陣的融合時(shí),一個(gè)通常的做法是:引入多個(gè)無(wú)關(guān)矩陣對(duì)融合的相似度矩陣進(jìn)行拼接從而構(gòu)成大的方陣。這也導(dǎo)致了以下問(wèn)題:一方面,由于P的拼接導(dǎo)致S也隨之?dāng)U大,因此在進(jìn)行矩陣乘法時(shí)運(yùn)算量呈指數(shù)倍上升;另一方面,S的質(zhì)量完全由P決定,因此在迭代時(shí)當(dāng)相似度矩陣P質(zhì)量不高時(shí),整體算法的性能是較差的。針對(duì)以上2個(gè)問(wèn)題,對(duì)SNF算法進(jìn)行改進(jìn),并應(yīng)用于翻唱識(shí)別任務(wù)中。
翻唱歌曲識(shí)別流程如圖1所示,虛線框內(nèi)的部分是所提出的算法。
首先,分別從每個(gè)歌曲提取HPCP和MLD特征;其次,根據(jù)每個(gè)特征構(gòu)造每個(gè)歌曲的遞歸圖(recurrence plot,RP)和任意2個(gè)歌曲的交叉遞歸圖(cross recurrence plot,CRP)分別作為自相似度矩陣和互相似度矩陣;然后,利用MSNF對(duì)每?jī)墒赘枨?種不同特征進(jìn)行融合,得到融合的CRP;最后,基于融合后的CRP計(jì)算相似度,并利用多核整合(multiple kernel integration,MKI)進(jìn)一步修改相似度得分,依據(jù)最終得分判斷是否為翻唱。


(4)
式中:D表示嵌入的維度,τ表示時(shí)間延遲。



(5)

相較于SNF算法,MSNF的改進(jìn)主要體現(xiàn)在2個(gè)方面:基于融合對(duì)象不同,分別構(gòu)造自相似度矩陣作為核矩陣完成非方陣的融合;對(duì)基于不同特征的自相似度矩陣進(jìn)行融合以提高算法魯棒性。

(6)
為了獲得局部相似性來(lái)代替全局相似性,利用式(7),通過(guò)K近鄰技術(shù)來(lái)得到歌曲X對(duì)應(yīng)的核矩陣,記為QXX={QXX(i,j)|i,j=1,…,NX}。

(7)


(8)
(9)
式中:×為矩陣的向量積。利用式(10)對(duì)二者進(jìn)一步融合,從而得到PXY={PXY(i,j)|i=1,…,NX,j=1,…,NY}。
(10)


(11)
式中:ε為相似度閾值。然后假設(shè)累積矩陣表示為C={C(i,j)|i=1,…,NX,j=1,…,NY}。當(dāng)i=1,…,NX和j=1,…,NY時(shí)初始化矩陣C(i,1)=C(i,2)=C(1,j)=C(2,j)=0,那么累積矩陣C可以由式(12)計(jì)算得到。

(12)
式中:i=3,…,NX;j=3,…,NY;γ(·)為懲罰函數(shù),可利用式(13)計(jì)算。

(13)
式中:γo為起始的懲罰系數(shù),設(shè)置為5;γe為延伸的懲罰系數(shù),設(shè)置為0.5。
將歌曲X和歌曲Y之間的相似度定義為累積矩陣C中所有元素的最大值,即Cmax=max(C(i,j))。最后,利用式(14)對(duì)歌曲X,Y之間的相似度進(jìn)行標(biāo)準(zhǔn)化處理,得到d(x,y):

(14)
式中:x和y表示兩首不同的歌曲;L2為兩首歌曲中較長(zhǎng)音頻的幀數(shù);d數(shù)值越小,表示兩首歌曲越相似。為了進(jìn)一步提高性能,采用SIMLR[13]中的MKI進(jìn)一步優(yōu)化得到的相似度得分。
設(shè)整個(gè)數(shù)據(jù)集所有歌曲間的互相似度矩陣為S={S(x,y)|x,y=1,…,NSong},其中NSong表示數(shù)據(jù)集中的歌曲數(shù)。S(x,y)由式(15)優(yōu)化得到。

(15)
式中:Kl為高斯核函數(shù),由式(16)計(jì)算得到,wl為l個(gè)高斯核函數(shù)的權(quán)重。

(16)
式中:KNN(x)表示歌曲X前n個(gè)近鄰的集合,σ和n以及整體的優(yōu)化目標(biāo)函數(shù)同文獻(xiàn)[13]一致。
最終,將得到的相似度矩陣S用于翻唱識(shí)別任務(wù)。
為了驗(yàn)證所提出模型的優(yōu)越性,本文中采用了3個(gè)翻唱數(shù)據(jù)集,分別為Covers80[14]、 Covers40[1]和Covers273,其中Covers80包含80組翻唱歌曲,每組包含一首原唱和一首翻唱歌曲;Covers40包含40組翻唱歌曲,每組包含一首原唱和九首翻唱歌曲;Covers273是翻唱歌曲公開(kāi)庫(kù)Second Hand Song (SHS)的一部分,包含273組翻唱歌曲,每組內(nèi)包含的翻唱版本數(shù)量不定,平均每組3首歌。
為了驗(yàn)證所提出的MSNF算法相比于傳統(tǒng)SNF算法的優(yōu)越性,以及相對(duì)于基于單一相似度函數(shù)或相似度融合[7]的最新CSI方法的性能提升,采用3個(gè)評(píng)價(jià)指標(biāo),即平均準(zhǔn)確率均值(mean average precision,MAP)、前10條最相似的音樂(lè)信息TOP10和受試者工作特征曲線(receiver operating characteristic curve,ROC)下面積(area under curve,AUC)。這3個(gè)評(píng)價(jià)指標(biāo)值越大表示算法性能越好。
表1列出了在3個(gè)數(shù)據(jù)集上,本文算法(記為CRP-MSNF-MKI)與其他基于機(jī)器學(xué)習(xí)的翻唱識(shí)別算法的準(zhǔn)確率。這里,CRP-MSNF-MKI是將文獻(xiàn)[7]方法中的SNF模塊替換為MSNF得到的??梢钥闯觯疚乃惴黠@優(yōu)于CRP-SNF-MKI,證明了MSNF改進(jìn)的有效性。此外,除了在Covers80 數(shù)據(jù)集上,本文方法的MAP值略低于Early-Late[18]方法外,在3個(gè)數(shù)據(jù)集上,無(wú)論采用哪種衡量標(biāo)準(zhǔn),本文的方法均優(yōu)于其他方法。而Early-Late方法唯獨(dú)能夠在Covers80 上取得很高的MAP值的主要原因?yàn)樵撃P退诤系奶卣骶鶠楣?jié)拍同步特征,而Covers80 數(shù)據(jù)集中的多數(shù)樣本均具有鮮明的節(jié)拍特征。

表1 識(shí)別準(zhǔn)確率
圖2顯示了在Covers40數(shù)據(jù)集上,融合前后翻唱歌曲的聚類效果,其中(c)為將(a)(b)所用特征用本文算法進(jìn)行融合后的聚類效果??梢钥闯?,相比于基于單一特征的相似度模型,CRP-MSNF-MKI模型可以有效提升聚類的效果,集中表現(xiàn)在對(duì)(a)中錯(cuò)誤分類樣本的糾正以及對(duì)(b)中某些簇聚合效果的提升。

圖2 在Covers40上聚類效果
表2列出了本文的方法和基于深度學(xué)習(xí)的翻唱識(shí)別方法性能參數(shù)??梢钥闯霰疚牡姆椒▋?yōu)于文獻(xiàn)[19]和文獻(xiàn)[20]提出的深度學(xué)習(xí)的方法,但低于文獻(xiàn)[6]的方法。然而,由于基于深度學(xué)習(xí)的方法需要大量的訓(xùn)練數(shù)據(jù)作為基礎(chǔ)。因此,本文的方法仍然具有一定的優(yōu)勢(shì)。

表2 本文方法與深度學(xué)習(xí)網(wǎng)絡(luò)在Covers80上的性能參數(shù)
MSNF采用嵌套融合的方式預(yù)先融合了核矩陣,之后再對(duì)互相似度矩陣進(jìn)行融合。為了探究融合超參數(shù)對(duì)識(shí)別準(zhǔn)確率的影響,在Covers80上對(duì)不同超參數(shù)作用下的MAP值進(jìn)行了對(duì)比。如圖3所示,其中每個(gè)子圖的橫軸表示核矩陣進(jìn)行預(yù)先SNF的迭代次數(shù)t′,縱軸表示鄰近幀數(shù)k′。整體的橫軸表示MSNF迭代次數(shù)t,縱軸表示鄰近幀數(shù)k。

圖3 Covers80數(shù)據(jù)集上MSNF超參數(shù)對(duì)MAP的影響
通過(guò)展示部分參數(shù)的數(shù)據(jù)可以看出:第一,隨著MSNF迭代次數(shù)的增加,MAP呈現(xiàn)增大的趨勢(shì),證明了融合的有效性。第二,對(duì)于核矩陣的融合來(lái)說(shuō),往往只需迭代一次就能達(dá)到最好的效果,而多次的迭代反而會(huì)使性能有所下降。
由于本文的MSNF解決了傳統(tǒng)SNF只能融合方陣的局限性,使得對(duì)于非方陣的融合過(guò)程大大簡(jiǎn)化。而CRP-SNF-MKI[7]為了滿足方陣的需求進(jìn)行了多個(gè)矩陣的拼接,對(duì)得到的大矩陣進(jìn)行融合后又進(jìn)行拆分,所消耗的時(shí)間較多。表3對(duì)比了在相同實(shí)驗(yàn)環(huán)境和實(shí)驗(yàn)參數(shù)下Covers80數(shù)據(jù)庫(kù)上基于SNF和基于MSNF融合所消耗的時(shí)間??梢钥闯霰疚乃惴ǖ臅r(shí)間復(fù)雜度為SNF的1/9。

表3 算法時(shí)間
針對(duì)SNF的缺陷提出改進(jìn)模型,并將其應(yīng)用于翻唱歌曲識(shí)別任務(wù)。實(shí)驗(yàn)結(jié)果表明,本文方法在識(shí)別性能和時(shí)間復(fù)雜度方面均優(yōu)于SNF。需要說(shuō)明的是該融合方法由于解決了只能融合方陣的限制,極大增強(qiáng)了算法的泛化性,因此也適用于其他基于多視圖融合的分類任務(wù)和檢索任務(wù),例如圖像分類、癌癥亞類識(shí)別以及藥物分類等。