音乐流派分类特征算法
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
音乐流派分类中特征选择算法研究
甄超郑涛许洁萍
中国人民大学 信息学院计算机系,北京100872
摘 要:在音乐流派的自动分类中引入特征选择环节,不但可以降低特征向量的维数,还可以减少特征向量中的无关和冗余特征,从而提高分类器的工作效率。本文中我们实现了两种全新的特征选择算法,他们的核心思想是在特征选择的过程中考虑特征间的相互影响以及每个特征对于分类准确率的贡献度。第一个算法称为基于特征贡献度的特征选择算法(CBFS),该算法通过增减特征的方式计算每个特征对于分类准确率的贡献度,最后选择贡献度比较大的特征作为分类特征子集。第二个算法称为基于特征间相互影响的前向特征选择算法(IBFFS),它是对原始前向特征选择算法的改进。
IBFFS扩大了前向特征选择的搜索空间,尝试了更多的特征组合,而且没有增加时间复杂度。最后,我们使用流派数据集George 2002[1]进行实验,两种算法分别得到了81.66%和80.63%的准确率,要明显高于使用其他特征选择算法所得到的分类准确率,由此验证了这两种新特征选择算法的有效性。
关键词:特征选择;CBFS;IBFFS;
1.引言
随着互联网上音乐资源的迅速增长,使得用来处理音乐数据库的各种多媒体应用系统受到了越来越多的关注,对于音乐数据库进行自动分析是音乐信息检索系统的一个重要组成部分。目前绝大多数的音乐数据库除了可以根据音乐的名称或者艺术家的名字来建立索引以外,还可以利用音乐的流派信息来建立索引以便于高效的组织海量的音乐数据[2],因为流派是对音乐最为常见的描述信息之一,同时也被人们最为广泛的使用。音乐流派可以被定义为用于识别音乐风格的类别标签。对于互联网上的音乐资源来说,流派信息就显得更为重要了,因为音乐流派往往是用户为进行音乐检索而输入的关键词,为此音乐网站就可以根据流派信息来组织存储各种音乐资源。此外,绝大多数的音乐网站还可以根据用户对特定音乐流派的偏好程度进行相似歌曲的推荐。
目前,绝大多数的音乐网站都是人工地对音乐进行流派分类。其中,最为成功的就是潘多拉网站聘请音乐专家所进行的“音乐染色体工程(Music Genome Project)”[3]。虽然人工地对音乐进行流派分类取得了一定的成功,但是这样做既消耗了大量的人力成本,同时也消耗了大量的时间和金钱成本。而且不同的音乐流派之间并没有严格的边界进行划分,从而导致不同的音乐专家对于音乐流派的理解也是各不相同的,所以当他们对同一段音乐进行标注时很有可能会得到不同的结果。而更为严重的问题是,如今互联网上音乐资源规
资助项目:国家自然科学基金(60873098)
联系作者:许洁萍,E-mail:xjieping@
多媒体学术会议
模的增长是十分迅速的,如果对音乐流派还是仅仅依靠人工标注的话,显然已经不能满足现实的需求。因此,我们需要一种全新的对音乐进行流派分类的方法。
这就是所谓的自动的音乐流派分类方法。这种方法借助于计算机的计算能力,从符号化的音频文件 (也就是midi[4]、wav或者mp3[5]格式的文件) 中提取相应的声学特征然后根据这些特征对音乐进行流派分类。在研究的初期,自动的音乐流派分类方法通常包括以下两个步骤:(1) 基于短时音频帧的特征提取过程,在这个过程中一些描述音乐音色、节奏和音高的底层特征将被计算出来 (2) 使用各种模式识别及分类算法对特征向量进行处理,从而对音乐进行自动的流派分类。
但是随着研究的不断深入,研究学者就发现为了更全面的反映音乐的各种属性,导致从音频文件中提取出的声学特征往往可以达到上百维,如果将这些特征全部引入模式分类的话,很有可能会引起维数灾难,从而影响分类的准确率。而且在这上百维特征中,既包含相关特征,又存在大量的无关和冗余特征,它们的存在严重地影响了分类器的性能。因此,我们在对音乐进行特征提取之后引入特征选择环节。特征选择就是从输入的特征集合中选择使某种评估标准最优的特征子集。经过特征选择之后,不仅可以降低特征向量的维数还可以去除一些无关和冗余特征,从而提高分类器的工作效率。因此,特征选择环节对于音乐流派的自动分类有着极其重要的作用,文章[6]通过大量的实验数据有效地验证了这一结论。
2.实验数据
2.1 数据集
为了将我们的实验结果与前人的研究成果进行比较,我们选取George Tzanetakis等人所使用的数据集George 2002[1]。在其中我们选取8个音乐流派,分别是Blues(Bl)、Classical(Cl)、Country(Co)、Jazz(Ja)、Metal(Me)、Pop(Po)、Reggae(Re)和Rock(Ro),其中每个流派由100个音乐片段组成,每个片段的长度为30s。
2.2 特征提取
根据George Tzanetakis等人的研究结果,对于特征提取过程来讲最常用的声学特征包含三大类,分别用来表示音乐的音色、节奏和音高内容[1]。在本实验中我们根据开源软件jAudio[7]对上述三类声学特征的数学定义,自己开发特征提取系统对音乐片段进行特征提取以提高特征提取的速度与精度。实验中我们所用到的声学特征主要包括频谱中心值、衰减截止频率、Mel 倒谱系数、线性预测系数、最强节拍力度等共78维特征。
3.特征选择
我们将提出两种全新的特征选择算法,这两种算法分别是基于特征贡献度的特征选择算法(CBFS)和基于特征间相互影响的前向特征选择算法(IBFFS)。这两个特征选择算法分别
第五届和谐人机环境联合学术会议 中国西安
考虑了每个特征对于分类准确率的贡献度以及特征之间的相互影响,它们都是利用后续分类算法的错误概率作为自己的评估标准,因此都属于封装器式的特征选择算法。在本文中,我们选用的分类器是支持向量机(Support Vector Machine)。
3.1 基于特征贡献度的特征选择算法(CBFS: Contribution Based Feature Selection)
基于特征贡献度的特征选择算法就是通过增减特征的方法来计算每一个特征的贡献度。这里的贡献度是某个特征相对于分类准确率而言的。在本文中,特征f i 的贡献度C(i)可以根据下面的公式(1)计算得到:
()[(,)(1,)][(,)(,1)]j i j i
C i R i j R i j R j i R j i ≥<=−++−−∑∑ (1)
在公式(1)中,R(i,j)表示以第i 维到第j 维特征作为分类特征集合时所得到的分类准确率。由此,我们可以说某个特征的贡献度就是用包含此特征的集合进行分类所得到的准确率减去用该集合去除该特征再进行分类所得到的准确率。例如,以第1维特征F1至第3特征F3为分类特征集合的准确率R(1,3)减去以F1至F2为分类特征集合的准确率R(1,2),就可以得到在以F1至F2为分类特征集合时第3维特征F3对分类的贡献。将所有可能顺序组合的F3的贡献求和,就得到本文中定义的第3维特征F3的贡献度。
根据公式(1),我们对前面所提出的78维声学特征分别计算其贡献度如图1所示:
图1 78维特征贡献度分布图
从图中我们可以清楚地看到特征的贡献度有正负之分,还可以为零。当一个特征的贡献度大于0时,意味着将该特征加入到分类特征集合后,往往会对分类准确率有促进作用,在绝大多数情况下会使分类准确率提高。特征的贡献度越大就说明加入该特征后分类准确率提高的就越多。反之,如果一个特征的贡献度为负值,则说明加入该特征后会使分类的准确率有所下降。
当计算出所有特征的贡献度之后,我们就按照贡献度的取值对特征进行降序排列。然后按照公式(2)选择特征子集用于分类。