宋 揚(yáng),王海龍,柳 林,裴冬梅
(內(nèi)蒙古師范大學(xué) 計(jì)算機(jī)科學(xué)技術(shù)學(xué)院,內(nèi)蒙古 呼和浩特 010022)
近年來,隨著信息技術(shù)的成熟及互聯(lián)網(wǎng)的發(fā)展,海量數(shù)字音樂信息迅速涌現(xiàn)并呈現(xiàn)爆發(fā)式增長[1],如何高效地從浩瀚媒體資源中快速檢索到用戶喜愛的音樂,對(duì)檢索數(shù)字音樂資源具有重要意義。面對(duì)大規(guī)模的網(wǎng)絡(luò)音樂數(shù)據(jù),數(shù)字音樂的檢索與分類成為當(dāng)前的研究熱點(diǎn),尤其是針對(duì)音樂流派/曲風(fēng)(Music genre/style)的分類成為其中的重要分支[2]。在眾多不同曲風(fēng)的音樂中,有關(guān)民族音樂的研究受到了研究者的廣泛關(guān)注。2008年,蒙古族民歌被列入國家第二批非物質(zhì)文化遺產(chǎn),但由于蒙古族音樂傳承方式較為落后,其生存空間日益減小。如何依托音樂分類技術(shù),對(duì)蒙古族音樂進(jìn)行有效、數(shù)字化的分類研究成為傳承保護(hù)蒙古族文化的迫切需要[3]。
在音樂分類領(lǐng)域中,音樂的種類和形式繁多,并存在差異性[4],因此,音樂分類是一項(xiàng)極其復(fù)雜的任務(wù),往往存在分類準(zhǔn)確率較低、周期性長、噪聲影響較大、魯棒性較差等問題[5-6]。音樂流派/曲風(fēng)分類方法主要采用支持向量機(jī)(Support Vector Machine,SVM)、K近鄰(K-Nearest Neighbors,KNN)、隱馬爾可夫模型(Hidden Markov Model,HMM)、人工神經(jīng)網(wǎng)絡(luò)(Artificial Neural Network,ANN)等模型進(jìn)行分類,其中KNN在音樂分類中的應(yīng)用較為廣泛。目前特征提取在音樂分類研究中占據(jù)重要地位,特征數(shù)量的增加并不一定會(huì)提高模型的性能,通常反而會(huì)顯著增加模型訓(xùn)練所需的樣本量,而足夠的樣本量往往很難獲取。為了避免特征過多造成分類性能差的問題,有必要對(duì)特征進(jìn)行篩選,選擇重要特征并消除無關(guān)和冗余特征?,F(xiàn)有的KNN分類方法對(duì)過濾掉冗余、無關(guān)特征并不適用,所以如何有效進(jìn)行特征選擇,提升音樂分類準(zhǔn)確率是進(jìn)一步需要解決的問題。針對(duì)此問題,本文在分析現(xiàn)有的音樂分類研究成果的基礎(chǔ)上,提出一種適用于蒙古族音樂資源的分類方法,著重對(duì)蒙古族音樂進(jìn)行分類與整理。
音樂特征提取是分類任務(wù)中至關(guān)重要的一部分,對(duì)最終的音樂分類效果起到了關(guān)鍵作用。Trabelsi等[7]在對(duì)音樂分類的過程中提取了Mel頻率倒譜系數(shù)(Mel Frequency Cepstrum Coefficient,MFCC),證實(shí)了MFCC是區(qū)分音樂類型的重要特征參數(shù)。Baniya等[8]提取了MFCC和節(jié)拍直方圖兩類特征參數(shù)作為音樂的相關(guān)特征對(duì)音樂進(jìn)行分類。楊曉宇等[9]通過提取短時(shí)能量、短時(shí)平均過零率和短時(shí)平均幅度作為特征值,對(duì)音樂進(jìn)行了較為準(zhǔn)確的分類。但文獻(xiàn)[7-9]均存在所采用的特征參數(shù)較少、提取特征較單一等問題。為了解決上述問題,雷文康[10]抽取音樂信號(hào)的特征(音色特征、節(jié)奏特征、音高特征)與聲譜圖特征(短時(shí)傅里葉變換得到的時(shí)頻圖、Mel譜、常數(shù)Q聲譜)輸入到循環(huán)神經(jīng)網(wǎng)絡(luò)中對(duì)音樂曲風(fēng)進(jìn)行分類。劉雨亭[11]通過基于內(nèi)容的音樂特征(音色特征、聽感特征和節(jié)拍特征)對(duì)音樂進(jìn)行分類。但文獻(xiàn)[10-11]所用方法的特征向量維數(shù)過多,導(dǎo)致分類所需的時(shí)間較長?;谏鲜鎏卣魈崛〈嬖凇熬S數(shù)災(zāi)難”的問題,本文引入了對(duì)提取的特征采取降維和進(jìn)行特征選擇的方法。
在分類模型的構(gòu)建上,為了解決音樂分類過程中存在分類準(zhǔn)確率較低等問題,邵曦等[12]對(duì)傳統(tǒng)的SVM進(jìn)行改進(jìn),利用改進(jìn)后的SVM對(duì)音樂進(jìn)行分類,驗(yàn)證了SVM主動(dòng)學(xué)習(xí)方法的有效性。但SVM模型對(duì)參數(shù)的依賴較為嚴(yán)重,參數(shù)往往會(huì)影響音樂分類的結(jié)果。除此之外,肖曉紅等[13]將提取的特征輸入到HMM中,從中找到最佳HMM參數(shù)。HMM作為一種線性分類技術(shù),它認(rèn)為音樂類型與特征之間存在線性關(guān)系,但大多數(shù)情況下,音樂類型與特征之間存在著非線性關(guān)系。因此,HMM的局限性很明顯,得到的音樂分類結(jié)果也并不穩(wěn)定。除上述模型外,神經(jīng)網(wǎng)絡(luò)也是音樂分類中常用的模型之一。它可以使音樂類型與特征之間進(jìn)行有效的擬合,但仍存在一些明顯的缺陷,例如需要大規(guī)模的音樂訓(xùn)練樣本,如果訓(xùn)練樣本較少,會(huì)影響音樂分類的準(zhǔn)確率;神經(jīng)網(wǎng)絡(luò)的結(jié)構(gòu)也較為復(fù)雜,使得音樂分類模型的收斂效率較低且分類時(shí)間較長[14-15]。因此,應(yīng)用上述傳統(tǒng)分類方法去解決音樂分類問題時(shí)會(huì)存在不足,大多數(shù)情況下采用混合或者改進(jìn)的方法來提升分類準(zhǔn)確率。KNN作為經(jīng)典的分類方法之一,與其他分類算法相比,優(yōu)勢(shì)在于它可以充分利用訓(xùn)練樣本的鄰域信息,在一定程度上提高算法的分類準(zhǔn)確率。雖然KNN方法具有易實(shí)現(xiàn)、魯棒性高等優(yōu)點(diǎn),但在具體應(yīng)用中也存在不足: 一方面計(jì)算開銷大,分類效率低;另一方面,在進(jìn)行相似性度量和類別判斷時(shí),等同對(duì)待各個(gè)特征項(xiàng)和近鄰樣本,從而影響分類準(zhǔn)確率[16]。因此,辛欣等[17]提出結(jié)合KNN算法與潛在概率語義分析(Probabilistic Latent Semantic Analysis,PLSA)模型進(jìn)行音樂分類,與單一的傳統(tǒng)KNN分類算法相比,分類效果上得到了明顯的提高。蒙古族音樂由于其本身的“長、短調(diào)”具有鮮明的民族風(fēng)格和自身的獨(dú)特性,對(duì)蒙古族音樂的分類研究相對(duì)于其他音樂的分類研究較少,因此,蒙古族音樂的自動(dòng)分類是一項(xiàng)非常具有挑戰(zhàn)性的任務(wù)。本文主要將KNN算法應(yīng)用到蒙古族音樂分類中,并針對(duì)目前音樂分類工作中存在的特征易出現(xiàn)冗余導(dǎo)致分類準(zhǔn)確率較低等問題,提出一種核主成分分析(Kernel Principal Components Analysis,KPCA)與改進(jìn)的KNN算法進(jìn)行融合的分類方法,即KPCA-FSKNN(Kernel Principal Components Analysis-Feature Selection K-Nearest Neighbor)分類方法,通過該方法篩選出最佳特征子集,并進(jìn)行更有效的蒙古族音樂分類。
經(jīng)典的子空間學(xué)習(xí)方法例如主成分分析(Principal Component Analysis,PCA)、線性判別分析(Linear Discriminant Analysis,LDA)等通過尋找投影矩陣從而得到低維魯棒特征,在降低維度的同時(shí),沒有進(jìn)行有效的特征選擇,在一定程度上影響了特征表示的準(zhǔn)確性[18]。因此,不同于傳統(tǒng)的子空間學(xué)習(xí)方法,本文引入核的主成分分析降維方法并將核主成分分析與改進(jìn)的基于特征選擇的KNN算法進(jìn)行融合。利用核主成分分析對(duì)輸入的時(shí)域特征、頻域特征和倒譜域特征進(jìn)行篩選,在此基礎(chǔ)上,將篩選過后的新的特征集輸入到改進(jìn)后的KNN分類模型中,從中尋找最佳特征子集,通過應(yīng)用最佳特征子集,提高KNN算法的分類準(zhǔn)確率。
核主成分分析是解決維數(shù)災(zāi)難的一種有效方式,它的優(yōu)勢(shì)在于利用兩個(gè)向量之間的點(diǎn)積——核函數(shù),通過核函數(shù)的方法直接實(shí)現(xiàn)非線性變換[19]。核主成分分析是主成分分析的非線性擴(kuò)充,可以發(fā)現(xiàn)數(shù)據(jù)集中隱匿的非線性信息。實(shí)質(zhì)上,核主成分分析利用非線性函數(shù)φ將原始輸入空間的數(shù)據(jù)映射到高維特征空間中,隨后在該空間中進(jìn)行主成分分析變換。
首先,將樣本映射到高維特征空間中,設(shè)變量X為音樂樣本訓(xùn)練集,X={x1,x2,…,x i,…,x n}是所有樣本點(diǎn)的集合,x i∈X為樣本點(diǎn)。X中共有n個(gè)樣本。
非線性映射的定義如下所示:
將樣本通過非線性映射φ映射到高維空間RF中,其中: 樣本數(shù)據(jù)矩陣為Xφ=(φ(x1),φ(x2),…,φ(x n))。
將訓(xùn)練樣本映射到高維空間后,采取數(shù)據(jù)中心化,即映射后的協(xié)方差矩陣
式(2)的特征值為λ,則Cφw=λw,其中w是特征向量。對(duì)于所有滿足λ≠0的特征向量w,它位于所在的空間中。存在系數(shù)a i(i=1,2,…,n)滿足
代入式(2)中,得
定義n×n的核矩陣K,且
代入式(5)得出:
即nλa=Ka。λ1,λ2,…,λn是式(7)的特征值,a1,a2,…,a n是對(duì)應(yīng)的特征向量。這時(shí)只需簡單地計(jì)算核函數(shù)K(x i,x j)就可以進(jìn)行核主成分分析,而不需要具體了解非線性映射φ的形式。
核主成分分析常用的核函數(shù)有線性核函數(shù)、多項(xiàng)式核函數(shù)、Sigmoid核函數(shù)和高斯核函數(shù)[19]。高斯核函數(shù)可以將樣本映射到一個(gè)更高維的空間,對(duì)于多項(xiàng)式核函數(shù)來說,高斯核函數(shù)需要確定的參數(shù)較少;線性核函數(shù)只能用于線性可分的情況;Sigmoid核函數(shù)的表現(xiàn)與高斯核函數(shù)類似[20]。因此,本文選取的核函數(shù)為高斯核函數(shù),高斯核函數(shù)如下所示:
式中:x i、x j為樣本點(diǎn);σ是高斯核函數(shù)半徑。
傳統(tǒng)的KNN算法計(jì)算開銷大,等同對(duì)待各個(gè)特征項(xiàng)和近鄰樣本,因此導(dǎo)致分類準(zhǔn)確率低[16]。本文通過引入特征選擇的思想對(duì)傳統(tǒng)KNN算法進(jìn)行改進(jìn),并將改進(jìn)的KNN算法應(yīng)用到蒙古族音樂分類中。
該算法的改進(jìn)思路為: 當(dāng)提取的特征輸入到KNN分類模型中,對(duì)于KNN來說,由于其同等對(duì)待各個(gè)特征項(xiàng)和近鄰樣本,導(dǎo)致每一維度的特征對(duì)其距離的貢獻(xiàn)都相同。若存在某n維特征對(duì)音樂分類無影響,那么它們的存在則會(huì)降低音樂分類的準(zhǔn)確率?;谝陨霞僭O(shè),設(shè)原始輸入的特征集合為I,是否存在一個(gè)I的子集I′,利用I′里的特征在KNN分類算法上能夠達(dá)到更好的分類效果,從而提高KNN算法的分類準(zhǔn)確率。因此,本文通過引入特征選擇對(duì)KNN算法進(jìn)行改進(jìn)。改進(jìn)KNN使得KNN可以選擇出對(duì)分類算法更有價(jià)值的特征屬性。同時(shí),也可以選擇真正相關(guān)的特征來簡化模型,使得數(shù)據(jù)生成過程更容易理解。
首先,從完整的特征集中隨機(jī)生成一個(gè)特征子集,然后使用評(píng)價(jià)函數(shù)對(duì)特征子集進(jìn)行評(píng)價(jià),比較評(píng)價(jià)結(jié)果與停止準(zhǔn)則,如果評(píng)價(jià)結(jié)果優(yōu)于停止準(zhǔn)則,則停止;否則,繼續(xù)生成下一組特征子集。繼續(xù)保持特征選擇,所選出來的特征子集需要去驗(yàn)證它的有效性。
本文的改進(jìn)KNN基于特征選擇的過程包括4個(gè)部分: 生成子集、采用評(píng)價(jià)函數(shù)、停止準(zhǔn)則和驗(yàn)證結(jié)果。
1) 生成子集是指搜索特征子集,然后為評(píng)價(jià)函數(shù)提供生成好的特征子集。
2) 評(píng)價(jià)函數(shù)是用來評(píng)價(jià)特征子集質(zhì)量的標(biāo)準(zhǔn),本文中采用準(zhǔn)確率來評(píng)價(jià)該生成子集的質(zhì)量。
3) 停止準(zhǔn)則,其決定什么時(shí)候停止搜索,即結(jié)束算法的執(zhí)行。本文的改進(jìn)算法設(shè)定的停止準(zhǔn)則為評(píng)價(jià)次數(shù),設(shè)置算法需要運(yùn)算多少次,用于規(guī)定隨機(jī)搜索的次數(shù),尤其當(dāng)算法運(yùn)行的結(jié)果不穩(wěn)定的情況下,通過若干次的運(yùn)行結(jié)果找出其中穩(wěn)定的因素。當(dāng)達(dá)到設(shè)定的搜索次數(shù)后,停止搜索。
4) 驗(yàn)證結(jié)果,驗(yàn)證所選特征子集在驗(yàn)證數(shù)據(jù)集中是否有效。
改進(jìn)KNN的算法步驟如下:
1) 設(shè)訓(xùn)練集為X={x i|i=1,2,…,n},對(duì)訓(xùn)練集進(jìn)行歸一化處理。
2) 初始化Best_Score=0,Local_Score=0。
3) 設(shè)原始的定義特征屬性集合為I={I1,I2,I3,…,I M}。
4) 設(shè)最佳的特征屬性集合為Best_I={I1,I2,I3,…,I N},N≤M。
5) 將訓(xùn)練集X={x i|i=1,2,…,n}進(jìn)一步劃分,用于尋找最佳特征集合。
6) 隨機(jī)創(chuàng)建一個(gè)子集Local_I={I1,I2,I3,…,I L}。
7) 生成步驟6)中隨機(jī)從特征集合選取N個(gè)特征屬性的特征子集。
8) 并對(duì)各個(gè)特征子集Local_I={I1,I2,I3,…,I L}運(yùn)行分類算法。
9) 使用部分?jǐn)?shù)據(jù)集X′={x i|i=1,2,…,m}進(jìn)行測(cè)試,其中m<n。
10) 從中選取分類準(zhǔn)確率最高的特征子集作為最佳特征子集的集合,計(jì)算樣本點(diǎn)之間的距離公式如下:
式中:p為可變參數(shù);x k和y k分別是x和y的第k個(gè)屬性值(分量)。當(dāng)p=1時(shí),式(9)被稱之為曼哈頓距離(Manhattan distance);當(dāng)p=2時(shí),式(9)被稱之為歐式距離(Euclidean distance);當(dāng)p→∞時(shí),式(9)被稱之為切比雪夫距離(Chebyshev distance)。
11) 更新Best_I=Local_IifBest_Score=Local_Score。
12) 利用步驟7)選取的特征子集對(duì)所有數(shù)據(jù)集進(jìn)行訓(xùn)練和測(cè)試。
13) 得到一個(gè)最優(yōu)的特征子集Best_I,最終完成分類預(yù)測(cè)工作。
傳統(tǒng)的線性降維方法在提取特征時(shí),存在樣本間非線性相關(guān)性有可能會(huì)丟失的問題。而核主成分分析利用核化的思想,一方面可以將特征映射到高維空間,便于捕捉特征與類別的非線性關(guān)系;另一方面,最終的特征之間為正交關(guān)系,距離計(jì)算可以更加有效。針對(duì)之前所描述KNN分類算法受某些特征影響導(dǎo)致分類準(zhǔn)確率降低的問題,結(jié)合核主成分分析的優(yōu)勢(shì),本文對(duì)KNN算法進(jìn)行了改進(jìn),可以有效尋找到最佳特征子集,從而提高分類準(zhǔn)確率。綜上所述,本文構(gòu)造了一種融合核主成分分析與改進(jìn)的KNN算法的分類方法,即KPCA-FSKNN分類方法,并將其應(yīng)用到蒙古族音樂分類中。
KPCA-FSKNN分類方法主要分為兩個(gè)階段: 核主成分分析特征轉(zhuǎn)換階段和改進(jìn)KNN算法分類階段。兩階段的過程具體描述如下:
1) 核主成分分析篩選特征。首先通過核主成分分析可以將特征映射到高維空間然后降維的原理,將提取到的共26維特征的組合用來描述一首音樂的特征信息,隨后將其升為30維,最終顯示的特征為正交關(guān)系,從而更有效地進(jìn)行KNN距離計(jì)算。
2) 特征選擇?;谔卣鬟x擇的KNN通過設(shè)定子集范圍,可以更好地搜索特征子集。由于搜索全部子集的開銷很大,而且子集太大,接近全集,那么計(jì)算量則偏大,導(dǎo)致運(yùn)行速度變慢,達(dá)不到搜索的效果;反之,若子集大小太接近0則會(huì)丟失過多信息,則找不到好的子集。因此,實(shí)驗(yàn)設(shè)置迭代次數(shù)為2 000次的效果最佳,測(cè)試2 000個(gè)隨機(jī)集合。最后驗(yàn)證特征子集,為了進(jìn)一步評(píng)估子集的合理性,通過多次計(jì)算交叉驗(yàn)證是否為最優(yōu)特征子集。先將訓(xùn)練集劃分,在訓(xùn)練集上搜索達(dá)到最優(yōu)的子集,再到測(cè)試集上測(cè)試,最后2 000次搜索后結(jié)束。上述過程重復(fù)10次,取這10次運(yùn)行結(jié)果的平均值,得出最終的特征子集分類結(jié)果。
KPCA-FSKNN分類方法具體實(shí)現(xiàn)的流程如圖1所示,實(shí)現(xiàn)的偽代碼如下所示:
圖1 KPCA-FSKNN方法流程圖Fig.1 Flow chart of KPCA-FSKNN method
實(shí)驗(yàn)中使用的數(shù)據(jù)集是公開數(shù)據(jù)集GTZAN與蒙古族音樂資源數(shù)據(jù)庫[3]中的蒙古族音樂的組合,實(shí)驗(yàn)數(shù)據(jù)集主要包括11類不同曲風(fēng)音樂,每類包含100首,共1 100首音樂。由于公開數(shù)據(jù)集GTZAN中每段音頻都為30 s時(shí)長,為了確保實(shí)驗(yàn)的有效性,蒙古族音樂同樣從音樂中間的人聲部分截取30 s的音頻,實(shí)驗(yàn)中所有音頻均采用統(tǒng)一格式(.wav)。
特征集通過特征提取實(shí)驗(yàn)預(yù)處理輸入每段長30 s的音頻信號(hào),分析提取出的3類特征主要包括譜質(zhì)心、RMS(Root Mean Square)能量包絡(luò)、帶寬、譜滾降、色度特征、過零率、前20個(gè)MFCC,總共26個(gè)特征的組合來描述一首音樂的特征信息,對(duì)訓(xùn)練數(shù)據(jù)的每一列進(jìn)行歸一化預(yù)處理。
為了評(píng)價(jià)本文提出的KPCA-FSKNN分類方法的有效性,與以下幾種方法進(jìn)行了對(duì)比實(shí)驗(yàn)。
1) 傳統(tǒng)分類方法: 在本文中的音樂數(shù)據(jù)集下訓(xùn)練得到的傳統(tǒng)KNN、隨機(jī)森林(Random Forest,RF)和SVM分類模型用于蒙古族音樂分類(Our group 1)。
2) 基于PCA與SVM、KNN分類模型融合的方法用于蒙古族音樂分類(Our group 2、Our group 3)。
3) 基于核主成分分析與SVM、KNN分類模型融合的方法用于蒙古族音樂分類(Our group 4、Our group 5)。
4) 本文提出的KPCA-FSKNN方法用于蒙古族音樂分類(Our group 6)。
圖2給出了針對(duì)傳統(tǒng)分類模型的蒙古族音樂分類結(jié)果。本文首先驗(yàn)證了KNN、RF和SVM的分類效果對(duì)比,數(shù)據(jù)顯示KNN具有更高的分類效果,其平均準(zhǔn)確率達(dá)到了69.83%,其余兩個(gè)分類模型的平均準(zhǔn)確率分別為53.87%、62.21%。由圖2可以看出,KNN在蒙古族音樂數(shù)據(jù)上的分類性能較SVM與RF模型表現(xiàn)得更好,但分類效果仍不理想,因此,本文主要針對(duì)KNN分類模型存在的問題,從特征的角度出發(fā),對(duì)KNN分類模型進(jìn)行改進(jìn),通過驗(yàn)證蒙古族音樂分類的準(zhǔn)確率得出改進(jìn)后模型的好壞。
圖2 傳統(tǒng)分類模型的蒙古族音樂分類準(zhǔn)確率Fig.2 Accuracy of Mongolian music classification based on traditional classification model
表1給出了在上述不同分類方法下的音樂分類結(jié)果。由表1可以看出: 相對(duì)于傳統(tǒng)方法,1) 核主成分分析降維相對(duì)于主成分分析降維更適用于蒙古族音樂分類;2) 降維與KNN分類器融合的效果和SVM分類器融合效果相比,融合KNN分類器的分類效果更好;3) 本文提出的核主成分分析降維與基于特征選擇改進(jìn)的KNN分類器融合的方法可以獲得更好的分類效果,這說明了融入特征選擇的必要性,在對(duì)蒙古族音樂進(jìn)行分類時(shí),將特征選擇考慮進(jìn)去可以顯著提升蒙古族音樂分類的準(zhǔn)確率。
表1 不同分類算法準(zhǔn)確率的比較Tab.1 Comparison of accuracy of different classification algorithms
表2展示了實(shí)驗(yàn)在搜尋子集時(shí)特征選擇的結(jié)果。為達(dá)到搜索子集的效果,子集范圍為1/2開始搜索并逐漸遞減,當(dāng)子集維度選取為10~15維度時(shí),分類準(zhǔn)確率逐漸遞減;當(dāng)子集維度選取為7~10維度時(shí),分類準(zhǔn)確率逐漸遞增。實(shí)驗(yàn)結(jié)果表明,當(dāng)子集范圍為1/3時(shí),蒙古族音樂分類的準(zhǔn)確率相對(duì)較好。
表2 特征選擇結(jié)果Tab.2 The results of feature selection
為了進(jìn)一步驗(yàn)證融合后KNN算法的有效性,表3給出了在不同鄰居數(shù)量K下,傳統(tǒng)KNN、PCAKNN、KPCA-KNN和本文提出的KPCA-FSKNN方法對(duì)蒙古族音樂分類的準(zhǔn)確率。本文提出的KPCAFSKNN方法由于要尋找最佳特征子集,從而能達(dá)到較好的分類準(zhǔn)確率,因此,實(shí)驗(yàn)中將本文所提方法的分類結(jié)果隨機(jī)運(yùn)行10次,交叉驗(yàn)證計(jì)算平均值得出其分類準(zhǔn)確率。
對(duì)表3進(jìn)行分析可知:
表3 不同K下,4種方法對(duì)蒙古族音樂分類的準(zhǔn)確率Tab.3 Accuracy of four methods for Mongolian music classification under different K
1) 特征降維前,不同K下,使用傳統(tǒng)KNN分類方法對(duì)蒙古族音樂分類的準(zhǔn)確率較低。
2) 相對(duì)于PCA-KNN,KPCA-KNN對(duì)蒙古族音樂分類的準(zhǔn)確率得到了提高,該組實(shí)驗(yàn)結(jié)果驗(yàn)證了利用KPCA提取的特征可以更加準(zhǔn)確地反映蒙古族音樂的曲風(fēng)類型。
3)PCA-KNN、KPCA-KNN整體上的準(zhǔn)確率高于傳統(tǒng)KNN算法,說明引入降維方法可以提高對(duì)蒙古族音樂分類的準(zhǔn)確率。相對(duì)于KPCA-KNN,KPCA-FSKNN方法考慮了特征選擇,因此,對(duì)蒙古族音樂分類的準(zhǔn)確率得到了進(jìn)一步的提升,該組實(shí)驗(yàn)方法集成了核主成分分析與改進(jìn)的基于特征選擇的KNN分類方法的優(yōu)點(diǎn),能夠更準(zhǔn)確地劃分蒙古族音樂的曲風(fēng)類型。
此外,為了更進(jìn)一步說明本文所提方法的有效性,在該數(shù)據(jù)集中測(cè)試了其他音樂曲風(fēng)類別的實(shí)驗(yàn)結(jié)果,如表4所示。從表4中可以看出,采用KPCA-FSKNN方法對(duì)其他非蒙古族音樂分類的準(zhǔn)確率也得到了有效的提升。
表4 對(duì)其他類別音樂分類的準(zhǔn)確率Tab.4 Accuracy of classification of other categories of music
本文對(duì)蒙古族音樂數(shù)據(jù)分別選取了代表時(shí)域特征、頻域特征和倒譜域特征的主要特征,上述3個(gè)領(lǐng)域特征包括頻譜質(zhì)心、帶寬、RMS能量包絡(luò)、譜滾降、過零率、色度特征以及MFCC作為衡量蒙古族音樂的特征參數(shù)。通過核主成分分析將特征映射到更高維空間,隨后降維;利用本文改進(jìn)后的基于特征選擇的KNN算法從中進(jìn)行特征選取,尋找到最佳特征子集;最后,將核主成分分析與改進(jìn)的KNN進(jìn)行融合,提出了KPCA-FSKNN分類方法。最終實(shí)驗(yàn)表明,本文提出的KPCA-FSKNN分類方法,對(duì)蒙古族音樂進(jìn)行分類時(shí)可以得到一個(gè)較高的準(zhǔn)確率。通過與文中列出的其他分類方法的對(duì)比可以得出結(jié)論,本文提出的KPCAFSKNN方法優(yōu)于傳統(tǒng)KNN、SVM和其他分類算法,使蒙古族音樂分類的準(zhǔn)確率得到了大幅度的提升,同時(shí)也驗(yàn)證了該方法對(duì)其他音樂分類的有效性。本文提出的KPCA-FSKNN方法能夠在一定程度上將蒙古族音樂從海量的音樂中篩選、分類和整理出來,是蒙古族音樂分類的一種可行方法。