徐秀芳徐森徐靜安晶
摘 要:提出一種新穎的基于譜聚類的音頻聚類算法,首先對音頻數(shù)據(jù)進(jìn)行預(yù)處理,得到三維音頻向量,然后根據(jù)向量之間的距離計(jì)算音頻相似度,最后設(shè)計(jì)譜聚類算法獲得音頻數(shù)據(jù)聚類結(jié)果。在網(wǎng)易云音樂數(shù)據(jù)上的對比實(shí)驗(yàn)表明,與Kmeans算法和快速查找密度峰值聚類算法相比,該算法獲得的聚類結(jié)果更加優(yōu)越。
關(guān)鍵詞關(guān)鍵詞:音頻聚類;音頻特征;譜聚類;Kmeans;聚類分析
DOIDOI:10.11907/rjdk.162088
中圖分類號(hào):TP312
文獻(xiàn)標(biāo)識(shí)碼:A 文章編號(hào)文章編號(hào):16727800(2016)011003603
基金項(xiàng)目基金項(xiàng)目:國家自然科學(xué)基金項(xiàng)目(61105057);江蘇省自然科學(xué)基金項(xiàng)目(BK20151299);江蘇省科技支撐計(jì)劃(社會(huì)發(fā)展)項(xiàng)目(BE2014679);江蘇省政策引導(dǎo)類計(jì)劃(產(chǎn)學(xué)研合作)—前瞻性聯(lián)合研究項(xiàng)目(BY2015057-33, BY2016065-01)
作者簡介作者簡介:徐秀芳(1973-),女,江蘇鹽城人,碩士,鹽城工學(xué)院信息工程學(xué)院高級(jí)實(shí)驗(yàn)師,研究方向?yàn)闄C(jī)器學(xué)習(xí)和數(shù)據(jù)挖掘;徐森(1983-),男,江蘇鹽城人,博士,鹽城工學(xué)院信息工程學(xué)院副教授,研究方向?yàn)閿?shù)據(jù)挖掘、智能信息處理和深度學(xué)習(xí);徐靜(1981-),女,江蘇鹽城人,鹽城工學(xué)院信息工程學(xué)院副教授,研究方向?yàn)榫W(wǎng)絡(luò)安全和智能信息處理;安晶(1982-),女,江蘇鹽城人,博士,鹽城工學(xué)院機(jī)械優(yōu)集學(xué)院副教授,研究方向?yàn)閿?shù)據(jù)挖掘、聚類分析。
0 引言
隨著互聯(lián)網(wǎng)的快速發(fā)展,音樂創(chuàng)作速度也隨之迅速提高,如何將眾多音頻進(jìn)行分類并推薦給用戶成為一個(gè)關(guān)鍵問題[13]。早期的音頻分類方法通常是唱片公司工作人員為其添加類型標(biāo)簽供買家選擇,或者是由專門收錄音樂的網(wǎng)站添加標(biāo)簽供用戶瀏覽檢索。然而由于不同人對同一首歌曲的感覺可能有差異,因此可能給同一首歌添加了不同標(biāo)簽。顯然對用戶而言,這種分類方式不夠合理。如果通過機(jī)器學(xué)習(xí)的方式自動(dòng)將音頻分類并根據(jù)用戶的喜好推薦音樂,必然會(huì)在很大程度上提升音樂推薦軟件的用戶體驗(yàn)。
聚類分析是機(jī)器學(xué)習(xí)中常用的一種數(shù)據(jù)挖掘工具,可以自動(dòng)將數(shù)據(jù)進(jìn)行歸類,使相似數(shù)據(jù)歸為同一類型,而不同部分歸為不同類型,并根據(jù)類型不同找出類型間的隱含關(guān)系[4]。在諸多聚類算法中,譜聚類算法建立在圖論中的譜理論基礎(chǔ)上,具有能在任意形狀的樣本空間上聚類且收斂于全局最優(yōu)解的特點(diǎn)[5]。
考慮到譜聚類算法的諸多優(yōu)點(diǎn),本文首次引入譜聚類對音頻數(shù)據(jù)進(jìn)行聚類分析,并將聚類結(jié)果與其它聚類方法進(jìn)行比較。結(jié)果顯示,利用譜聚類算法對音頻數(shù)據(jù)進(jìn)行聚類分析是行之有效的,較之于其它算法,譜聚類的聚類效果更為理想。
1 音頻數(shù)據(jù)預(yù)處理
如果想要得到一個(gè)比較理想的聚類結(jié)果,預(yù)處理方法尤為重要。不僅需要大量先驗(yàn)知識(shí),還需要根據(jù)聚類的對象特征選擇不同算法。本文的音頻聚類主要是根據(jù)音頻的情緒特征進(jìn)行分類,因此預(yù)處理主要提取了能表示音頻情緒的特征。
關(guān)于音頻的情緒特征,Thayer[6]提出了一種AV模型,即建立一個(gè)平面直角坐標(biāo)系,以V(Valence)為橫軸,以A(Arousal)為縱軸。橫軸的坐標(biāo)值反映了積極性大小,縱軸的值反映了音頻的安靜程度。該模型直接將音頻清晰地劃分為4個(gè)區(qū)域,分別對應(yīng)了快樂、緊張、悲傷以及平靜4大情緒類別。AV模型的坐標(biāo)系如圖1所示。
根據(jù)Thayer的模型,本文將縱軸的影響因素歸為每幀功率和序列方差的對數(shù)值,橫軸的影響因素歸為幀頻譜圖峰值最大處的頻率序列方差,即:A=log(var(w)),V=var(fd),其中w為每幀的功率和序列,fd為兩幀頻譜差序列中最大值對應(yīng)的頻率序列,var為方差函數(shù)。此處fd取頻率的差值作為主要特征,主要是考慮到人對變化的頻率比不變的頻率更敏感。例如,在聽歌時(shí),往往會(huì)忽略背景音樂中的鼓點(diǎn)部分,而專注于歌曲中變化的部分。
另外,本文增加一個(gè)Z軸,Z=log(mean(w)),即功率和的平均值作為影響音頻的第3個(gè)特征。對于每首音樂,有向量(a,v,z),據(jù)此畫出496首音樂的3維分布圖像,如圖2所示。
可以看出,左上部分頻率變化很小,而功率變化很大,此類音頻可以歸為搖滾、慢搖等類別;而左下部分頻率變化與功率變化都很小,此類音頻可以歸為輕音樂、純音樂等類別;而右上部分則屬于頻率變化與功率變化都很大的音頻,這類音頻屬于DJ、電音等類別。
2 聚類分析
音頻預(yù)處理后每個(gè)音頻特征點(diǎn)處于一個(gè)三維空間中,在音頻相似度的計(jì)算上取數(shù)據(jù)點(diǎn)間的歐式距離,距離越近相似度越高,反之則越低。
聚類算法有很多種,通常根據(jù)數(shù)據(jù)集的特征進(jìn)行選取,本文采用以下聚類算法進(jìn)行研究。
2.1 K均值聚類
K均值算法由于實(shí)現(xiàn)簡單,時(shí)間和空間復(fù)雜度較低,而且對很多簡單的聚類問題可以得到令人滿意的結(jié)果,因此成為了最常用的聚類算法。算法首先假設(shè)每個(gè)聚類的均值是固定已知的,問題變?yōu)槿绾螢槊總€(gè)樣本選擇加入一個(gè)聚類,使類內(nèi)距離準(zhǔn)則最小。該算法的困難在于如何求出每個(gè)聚類的均值,因?yàn)樵谥烂總€(gè)聚類包含哪些樣本之前無法求得樣本均值,聚類均值也只能根據(jù)該聚類中所有的樣本求得。通常,先隨機(jī)選擇k個(gè)初始值,然后將每個(gè)數(shù)據(jù)點(diǎn)放入最近的類中,求得每個(gè)聚類的均值,根據(jù)這些均值再次對數(shù)據(jù)點(diǎn)進(jìn)行劃分。多次迭代之后,使得聚類中心不再改變,此時(shí)的聚類結(jié)果為類內(nèi)距離準(zhǔn)則最小的一個(gè)較優(yōu)解。
盡管K均值聚類算法已被證明可以通過有限步驟收斂,但是最終獲得的是局部最優(yōu)解,不能保證類內(nèi)距離為最小值。另外,根據(jù)初始值選擇不同,K均值聚類也會(huì)收斂于較差的局部極小解,加上k的設(shè)定如果與實(shí)際問題有偏差,通常很難得到較好的聚類結(jié)果。
針對這些問題,也可以選擇事先對Kmeans算法進(jìn)行優(yōu)化。例如,根據(jù)先驗(yàn)知識(shí)選取較好的k值,初始值選取k個(gè)彼此距離最大的點(diǎn),選擇適當(dāng)?shù)木嚯x函數(shù)等。
2.2 快速查找密度峰值的聚類算法
根據(jù)聚類的目標(biāo),類間不相似、類內(nèi)相似的特點(diǎn),Rodriguez[4]假設(shè)每個(gè)類的中心點(diǎn)周圍都是密度比其低的點(diǎn),同時(shí)這些點(diǎn)又距離該聚類中心最近,據(jù)此提出了一種新型算法——快速查找密度峰值的聚類算法,并發(fā)表在著名的Science雜志上。
算法的基本思想是:首先計(jì)算每個(gè)點(diǎn)所處的密度值,這里的密度值指所有與該點(diǎn)距離小于dc的點(diǎn)個(gè)數(shù)。其中dc是預(yù)先設(shè)定的閾值,文中使用的是所有點(diǎn)距離中第2%個(gè)點(diǎn)的距離大小;再根據(jù)每個(gè)點(diǎn)的局部密度算出每個(gè)點(diǎn)的距離,即比該點(diǎn)密度大的所有點(diǎn)中與該點(diǎn)距離的最小值;關(guān)于噪點(diǎn)的剔除,對一個(gè)類中的每個(gè)點(diǎn),與其它類中的點(diǎn)計(jì)算距離,找出所有滿足距離大于dc的距離的最小值,即在該類中找出一個(gè)與其它類距離最近的點(diǎn)。接下來視該類中所有小于該點(diǎn)密度的點(diǎn)為噪點(diǎn),并將其剔除,最后得到的即為聚類結(jié)果。
2.3 譜聚類算法
與大部分聚類算法不同,譜聚類算法將聚類分析問題轉(zhuǎn)化為圖分割問題,將數(shù)據(jù)元素構(gòu)成的無向加權(quán)圖劃分為幾個(gè)子圖,使得分割代價(jià)最小,以此達(dá)到聚類的目的[5]。
譜聚類的基本步驟為:① 輸入數(shù)據(jù)生成圖的鄰接矩陣;②歸一化拉普拉斯矩陣;③計(jì)算最小的k個(gè)特征值和對應(yīng)的特征向量;④用K均值對前k個(gè)特征向量進(jìn)行聚類。
譜聚類的優(yōu)點(diǎn)在于,如果直接使用K均值算法對無向圖進(jìn)行聚類分析,特征向量的選取并沒有理論基礎(chǔ)。而譜聚類引入拉普拉斯矩陣,則為圖的分割增加了物理上的意義,即對高維空間降維,求拉普拉斯矩陣的特征向量即等價(jià)于對高維空間的降維處理。
3 聚類結(jié)果比較
本文將第2節(jié)介紹的3種聚類方法獲得的結(jié)果和原始音樂數(shù)據(jù)的類型分布圖進(jìn)行對比,原音頻類型為網(wǎng)易云音樂的歌單類型。例如,某歌單被命名為輕音樂,則將該歌單的所有音樂都設(shè)置為輕音樂類型;如果歌單類型為搖滾,則將該歌單的所有歌曲均設(shè)為搖滾。最后將每個(gè)點(diǎn)著色,畫在二維平面上,即為類型分布圖。圖3是469首音樂的類型分布圖。其中正三角為搖滾、rap等興奮型音樂;倒三角為電音、DJ類的音頻;圈表示輕音樂和舒緩類型的音樂。因?yàn)閾u滾和電音本身的特性,將其歸為一類,這樣原始音頻數(shù)據(jù)可以看成是包含2個(gè)簇(k=2)。3種聚類算法獲得的結(jié)果分別如圖4~圖6所示。由圖可見,與其它聚類方法相比,譜聚類算法獲得的聚類結(jié)果與音頻數(shù)據(jù)的實(shí)際分布情況更為接近。
具體而言,3種聚類算法的聚類結(jié)果與真實(shí)結(jié)果的對比情況如表1所示。從表1可以看出,快速查找峰值密度算法的類別區(qū)分較為準(zhǔn)確,但是排除噪點(diǎn)過多;Kmeans算法不剔除噪點(diǎn),但是聚類效果不太理想;譜聚類的聚類效果在3者中最為理想。
4 結(jié)語
本文提出了一種基于譜聚類的音頻聚類算法,首先對音頻數(shù)據(jù)進(jìn)行預(yù)處理,得到三維音頻向量,然后根據(jù)向量之間的距離計(jì)算音頻相似度,最后根據(jù)譜聚類算法獲得聚類結(jié)果。對比實(shí)驗(yàn)驗(yàn)證了基于譜聚類算法的音頻聚類的有效性。根據(jù)本文的研究,可以將音頻聚類算法應(yīng)用到音樂推薦中,將用戶喜歡的某一類型音樂中相似度較高的音樂推薦給用戶,能很大程度上提升音樂播放軟件的用戶體驗(yàn)。
參考文獻(xiàn):
[1] 楊莘,舒鵬.一種音樂速度與節(jié)拍類型的自動(dòng)檢測算法[J].數(shù)字技術(shù)與應(yīng)用, 2009(8):3941.
[2] 李志軍,尹霞.基于ACF和AMDF的基音檢測改進(jìn)算法[J].電聲技術(shù), 2011(1):5052.
[3] 廖松博, 何震瀛.HDCH:MapReduce平臺(tái)上的音頻數(shù)據(jù)聚類系統(tǒng)[J].計(jì)算機(jī)研究與發(fā)展, 2011, 48(S3):472475.
[4] RODRIGUEZ,ALEX,ALESSANDRO LAIO.Clustering by fast search and find of density peaks[J].Science, 2014(6191):14921496.
[5] ULRIKE VON LUXBURG.A tutorial on spectral clustering[J].Statistics and Computing, 2007(4):395416.
[6] THAYER R E.The biopsychology of mood and arousal[M].New York:Oxford,1989.
(責(zé)任編輯:黃 ?。?