基于神经网络的流行音乐分析.docx
《基于神经网络的流行音乐分析.docx》由会员分享,可在线阅读,更多相关《基于神经网络的流行音乐分析.docx(22页珍藏版)》请在冰豆网上搜索。
![基于神经网络的流行音乐分析.docx](https://file1.bdocx.com/fileroot1/2023-1/4/c746451a-a02f-4ca4-8d5c-42006034bc94/c746451a-a02f-4ca4-8d5c-42006034bc941.gif)
基于神经网络的流行音乐分析
第六届“认证杯”数学中国
数学建模网络挑战赛
承诺书
我们仔细阅读了第六届“认证杯”数学中国数学建模网络挑战赛的竞赛规则。
我们完全明白,在竞赛开始后参赛队员不能以任何方式(包括电话、电子邮件、网上咨询等)与队外的任何人(包括指导教师)研究、讨论与赛题有关的问题。
我们知道,抄袭别人的成果是违反竞赛规则的,如果引用别人的成果或其他公开的资料(包括网上查到的资料),必须按照规定的参考文献的表述方式在正文引用处和参考文献中明确列出。
我们郑重承诺,严格遵守竞赛规则,以保证竞赛的公正、公平性。
如有违反竞赛规则的行为,我们将受到严肃处理。
我们允许数学中国网站()公布论文,以供网友之间学习交流,数学中国网站以非商业目的的论文交流不需要提前取得我们的同意。
我们的参赛队号为:
2419
参赛队员(签名):
队员1:
队员2:
队员3:
参赛队教练员(签名):
参赛队伍组别:
本科组
第六届“认证杯”数学中国
数学建模网络挑战赛
编号专用页
参赛队伍的参赛队号:
(请各个参赛队提前填写好):
2419
竞赛统一编号(由竞赛组委会送至评委团前编号):
竞赛评阅编号(由竞赛评委团评阅前进行编号):
2013年“认证杯”数学中国数学建模网络挑战赛赛题
题目B题:
流行音乐发展简史
关键词音乐分类特征提取流行音乐BP神经网络
摘要:
随着e时代的深入,信息技术蓬勃发展,人们对计算机的要求也在逐步提升,其中对于音乐的智能化分类也显得愈加迫切。
新型,快捷,易懂的音乐分类方式受到了广泛的关注。
本篇论文以流行音乐的分类为主题,针对流行音乐的多样性和不确定性,利用合适方法有效地提高音乐分类的正确率和分类精度。
鉴于传统分类方法在大规模的音乐分类应用中速度慢、正确率低的现实,本文提出一种基于BP神经网络的音乐分类方法:
首先作预处理,选取若干首音乐建立音乐数据库,提取音乐特征,以帧的能量(FE)和帧的能量比(FER)作为特征向量,转化为空间向量;然后以此作为基础参数库,利用BP神经网络模型对特征信号进行训练,建立分类器模型;最后,用训练出来的数据对随机选取的库外音乐进行分类。
其中,分类时利用多维向量,将所得到的数据分帧后用其表示,将测试音乐的数据与参数库中的各类乐曲参数相减的绝对值求和,所得到的数值越小,则其相似度越高。
本次实验中,对Pop(流行)、Country(乡村)、Jazz(爵士)、Rock(摇滚)、R&B(节奏布鲁斯)、NewAge(新世纪)等流六种流行音乐进行实验,实现音频的归类和推荐。
网络训练结束以后,本文另外选取100组数据对模型其进行仿真测试,结果识别正确率为85.42%,这说明系统达到了预期的要求,得到了一个比较高的精准度。
参赛队号2419
所选题目B
Abstract
Withthedeepeningofe-era,informationtechnologybooming,peoplealsograduallyimprovecomputerrequirements,whichanintelligentclassificationofthemusicisevenmoreurgent.Thenew,fast,easy-to-understandmusicclassificationhasreceivedextensiveattention.
Inthisthesis,theclassificationofapopmusicthemeofdiversityanduncertaintyforpopularmusic,asuitablemethodiseffectivetoimprovethecorrectclassificationrateandclassificationaccuracyofthemusic.Inviewofthetraditionalclassificationmethodsinlarge-scalemusicclassificationapplicationsslow,lowcorrectreality,thispaperproposesaBPneuralnetworkbasedmusicclassification:
Firstofpretreatment,selectthenumberofpiecesofmusictocreateamusicdatabase,extractmusicfeatures,lastframeenergy(FE)andframeenergyratio(FER)asafeaturevectorintoavectorspace;andthenusedasabasisparameterlibrary,BPneuralnetworkmodelfortraining,thecharacteristicsignalclassifiermodel;randomlyselectedfromoutsidethelibrarymusictrainingdataforclassification.Wherein,whenclassifiedusingamultidimensionalvector,showingthedataobtainedinsub-frame,theabsolutevalueofthesummationofthevarioussongparametersinthetestdataofthemusicwiththeparameterlibrarysubtractionvalueobtainedissmaller,itssimilarityishigher.
Inthisexperiment,theNewAgePop(pop),Country(rural),Jazz(Jazz),Rock(Rock),R&B(rhythmblues)(NewCentury)andotherflowsixpopularmusicexperiment,realizetheaudioofclassifiedandrecommended.Networkaftertheendofthetraining,thepaperselectanother100setsofdataonthemodelofthesimulationtestresultstoidentifythecorrectrateof85.42%,indicatingthatthesystemtoachievetheexpectedrequirementstoobtainarelativelyhighaccuracy.
Keywords:
MusicCategory,Featureextraction,popmusic,BPneuralnetwork
目录
1.问题重述1
2.问题分析1
2.1问题背景1
2.2问题一2
2.3问题二2
3.数据预处理2
3.1音乐数据2
3.2音频特征提取和表示3
3.2.1音频信息的选择3
3.2.2特征片段的提取3
4.模型假设5
5.符号说明6
6.神经网络建模6
6.1BP算法原理6
6.1.1BP网络结构6
6.2模型建立8
6.3MATTAB实现8
6.4模型的检验9
7.模型评价11
7.1模型的优点:
11
7.2模型的缺点:
11
7.3模型的推广:
11
8.流行音乐的大众审美11
9.流行音乐市场的分析12
10.参考文献12
10.附录13
1.问题重述
随着互联网的发展,流行音乐的主要传播媒介从传统的电台和唱片逐渐过渡到网络下载和网络电台等。
网络电台需要根据收听者的已知喜好,自动推荐并播放其它音乐。
由于每个人喜好的音乐可能横跨若干种风格,区别甚大,需要分别对待。
这就需要探讨如何区分音乐风格的问题。
在流行音乐中,传统的风格概念包括Pop(流行)、Country(乡村)、Jazz(爵士)、Rock(摇滚)、R&B(节奏布鲁斯)、NewAge(新世纪)等若干大类,它们分别可以细分成许多小类,有些小类,甚至可以做更进一步的细分。
而每首歌曲只能靠人工赋予风格标签。
这样的做法有许多不足:
有的类别之间关系不清楚,造成混乱;有的类别过度粗略或精细;有的类别标签没有得到公认;有的音乐归属则存在争议或者难以划归。
建立一个合理的数学模型,对流行音乐的风格给出一个自然、合理的分类方法,以便给网络电台的推荐功能和其它可能的用途提供支持。
包括对流行音乐市场的分析、基于流行音乐的大众审美研究等。
第一阶段问题
问题一:
建立数学模型,接收音乐文件,将其转化为数据类型。
问题二:
现有五大类音乐类型Pop(流行)、Country(乡村)、Jazz(爵士)、Rock(摇滚)、R&B(节奏布鲁斯)、NewAge(新世纪),给出任意一首歌曲将其归入六类之一,优化程序,提高其分类的准确性,给出合理方案。
2.问题分析
2.1问题背景
基于用户网页查阅历史或网页自身的内容。
获取User的个性化需求,并依此推荐给相关信息,实现为主动导航,帮助User筛选信息,分类歌曲,即这种推荐系统使得用户从Internet海量信息中获取所需音乐更为方便,节约了大量的时间。
基于内容的音乐推荐系统是各类娱乐性质网站大力发展的新主题,但是与文本内容不同的是音乐具有更大的数据量和难以描述的推荐特征;1.时间的耗费,数据量的浩大将导致算法的时间复杂度难以达到在线处理的要求;2.复杂的搜索,推荐特征太多使搜索具有很大的模糊性:
用户喜欢某首歌可能是因为歌手、节奏、旋律等多种因素,甚至自己也不能清楚描述其原因所在,这使推荐系统的音乐特征难以确定。
问题针对以上问题,我们考虑到音乐推荐系统中基于内容的音乐特征(以下简称音乐推荐特征)并不完全等同于音频检索、分割中的音乐特征,后者需要对某一音乐信息的完整表达,而音乐推荐系统需要获取其整体性特征为个性化推荐提供依据。
因此,为解决以上问题,音乐推荐特征实际可以看作个体音乐相对于整个音乐库的个性描述;此外,还要求特征维数不能太大,以保证在线处理的能力。
设置多维向量,利用相似度进行归类。
首先通过设定音乐的内容特征,构建音乐库的特征记录集;之后采用分形理论对记录集进行属性约简,得到力维矢量构成音乐推荐特征向量,最后定义向量之间的距离度量获得不同音乐之间的相似度,实现音频的归类和推荐。
根据以上背景,对问题进行如下分析。
2.2问题一
问题一对于音频文件可直接使用matlab将其转化数据类型,但是其中又包含了过滤信息(如噪声及不重要的信息),进行音乐分帧以及预加重等处理工作。
2.3问题二
问题二包含两个部分:
第一部分为问题一的扩展,选取若干首已知分类的著名音乐(如著名的摇滚乐“Numb”“Wewillrockyou”,著名的R&B音乐“Loveiscolorblind”“Dilemma”等)构成音乐分类中的乐库,并提取他们的特征作为分类参数,从而得到专门用于音乐分类的问题的分类器。
第二部分——测试,当出现新的音乐时,使用已得到的分类器将被测试音乐分类到上述预设定的六大类之中的一个,在最后统计音乐分类系统的总体分类的精确率。
3.数据预处理
3.1音乐数据
原始音频的来源可能多种多样,格式,采样率的参数也可能不同,所以直接对大段的音频段落进行处理也是很不现实的。
所以,我们提取出来很多特征用于描述音乐,包括频域能量、子带能量、频域中心、基音频率、MFCC系数(Mel—FrequencyCepstralCoeffficient)等,其主要思想是对音乐音高(频率)、音长(节奏)、响度(重音)的刻画等。
这些特征需要将音频分割成等时间的帧、加窗,有时为了保证帧特征的平滑,还需要设置帧交叠,经过傅里叶变换得到帧频谱F(w)后,可以计算以下音乐特征:
频域能量:
子带能量:
(将频谱分为若干个子带
,以统计频域能量的分布特征)
频率中心:
该特征是度量音频亮度的指标。
带宽:
BW=
(一般用于衡量音乐的频域范围)
基音频率:
FO,第—个谐波频率,用于衡量音调高低。
MFCC系数:
主要表达声道或乐器的音色特征。
基于上述特征还可以推导出音乐帧的其他特征,如静音比例、子带能量均值、带宽均值、基音频率标准方差、谐成份比例、相邻帧MFCC差值等。
之后还提出了一些新音乐特征描述方法,如以声谱图来概略地描述一段音乐,该方法选取每一帧中最大的K个频率值构建“特征识别矩阵”,依据矩阵的相似性进行音乐检索。
此外还有使用模糊粗糙集模型的音乐数据约简算法”,以及MDCT频谱熵压缩域音频指纹算法等”。
这些方法都在音乐检索中得到了验证。
3.2音频特征提取和表示
由于音频特征分析与提取是音频分类的基础,所选取的特征应该能够充分表示音频频域和时域的重要分类特性,对环境的改变具有鲁棒性和一般性这一模块主要涉及帧的特征的计算,在此基础上计算基于音频短的特性,最后选取合适的特征构造特征集。
3.2.1音频信息的选择
由于要考虑在DSP上实现实时的分类,所以算法的计算不能太复杂,特征向量也不宜过多。
而且要求在不完整载入音乐的条件下就能进行分类。
综合考虑,选用相对容易的时域进行特征的选取,采用了以下两个特征量:
1.帧的能量(FE)
2.帧的能量比(FER)
并取短窗长20ms其中FE描述的是一个帧的能量值,该特征描述了一个帧强度的大小,第i帧的FE计算公式如:
其中是第n个样本,FLen是每一帧的长度FER定义了相邻两个帧之间的能量比,也是特征之一,
其计算公式如:
3.2.2特征片段的提取
音乐分为平缓部分、高潮等部分,决定音乐风格的基本是高潮部分,如高潮出现的时间、次数,以及强度等。
特征的提取的工作就实际上就可以是一个分类的过程:
将每一个帧分类,将高潮部分和相对激烈的帧提取出来作为特征向量。
用matlab将Pop(流行)、Country(乡村)、Jazz(爵士)、Rock(摇滚)、R&B(节奏布鲁斯)、New Age(新世纪)的音乐特征提取如下图:
4.模型假设
1.假设测试期间,所有歌曲都有同等机会被选中并归类。
2.假设把首先选定的100首(每一类有20首)经典曲目的测试结果作为参数库。
3.假设得到的歌曲类型有且仅有六中:
POP(流行)、R&B(节奏布鲁斯)、ROCK(摇滚)、Jazz(爵士)、Country(乡村)和NewAge(新世纪)。
4.假设选取的音乐曲目被等长分段。
5.符号说明
频域能量
E
子带能量
SE
频率中心
FC
带宽
BW
帧的能量
FE
帧的能量比
FER
基音频率
FO
6.神经网络建模
6.1BP算法原理
BP(BackPropagation)神经网络是1986年由Rumelhart和McCelland为首的科学家小组提出的一种神经网络学习算法,全称是基于误差反向传播算法的人工神经网络。
单层的神经网络只能求解线性可分的问题,求解非线性问题必须用含有隐层的多层神经网络,而BP神经网络提出隐层的连接权值调整问题的有效算法,成功地解决了求解非线性连续函数的多层前馈神经网络权重调整问题。
6.1.1BP网络结构
BP网络是一种单向传播的多层前向网络,其拓扑结构如图所示:
…
…
…
由图可见,BP网络是一种具有三层或三层以上的神经网络,包括输入层、中间层(隐层)和输出层。
上下层之间实现全连接,而每层神经元之间无连接。
当一对学习样本提供给网络后,神经元的激活从输入层经各中间层向输出层传播,在输出层的各神经元获得网络的输入响应。
接下来,按照减少目标输出与实际误差的方向,从输出层经过各中间层逐层修正各连接权值,最后回到输入层,这种算法称为“误差逆传播算法”,即BP算法。
随着这种误差逆的传播修正不断进行,网络对输入模式响应的正确率也不断上升。
与感知器不同的是,BP网络的传递函数要求必须是可微的,所以不能使用感知网络中的二值函数,常用的有Sigmoid型的对数、正切函数或线性函数。
由于传递函数是处处可微的,所以对于BP网络来说,一方面,所划分的区域不再是一个线性划分,而是由一个非线性超平面组成的区域,它是比较平滑的曲面,因而它的分类比线性划分更加精确,容错性也比线性划分更好;另一方面,网络可以严格采用梯度下降法进行学习,权值修正的解析十分明确。
在BP神经网络预测前,首先要训练网络,通过训练使网络肯有联想记忆和预测能力。
BP神经网络的训练过程包括如下几个步聚:
1)网络初始化。
根据系统输入输出序列(X,y)确定网络输入层节点数,t、隐含层节点数z,输出层节点数m,初始化输入层、隐含层和输出层神经元y1,y2,⋯ym之间的连接权值‰,埘。
,初始化隐含层阈值口,输出层阈值b,给定学习速度和神经元激励函数。
2)隐含层输出计算。
根据输入向量x,输入层和隐含层间连接权值埘。
以及隐含层阈值a,计算隐含层输出H。
式中,
为隐含层节点数,为隐含层激励函数,该函数有多种形式,本文选择的函数为:
3)输出层计算。
根据隐含层输出日,连接权值1/3。
和阈值6,计算BP神经网络预测输出D。
4)误差计算。
根据网络预测输出O和期望输出Y,计算网络预测误差e。
5)权值更新。
根据网络预测误差e更新网络连接权值埘wij,wjk
式中η为学习速度。
6)阈值更新。
根据网络预测误差e更新节点阈值a,b。
7)判断算法迭代是否结束。
若没有结束,返回步聚2)。
6.2模型建立
根据系统输入输出数据特点确定BP神经网络的结构,由于语音特征输入信号有24维,待分类的语音信号共有5类,所以BP神经网络的结构为24—25—5,即输入层有24个节点,隐含层有25个节点,输出层有4个节点。
BP神经网络训练用训练数据训练BP神经网络。
共有2000组语音特征信号,从中随机选择1500组数据作为训练数据用来训练网络,500组数据作为测试数据用来测试网络的分类能力。
基于BP神经网络的语音特征信号分类算法建模包括BP神经网络构建、BP神经网络训练和BP神经网络分类三步
算法的流程如图所示:
6.3MATTAB实现
根据BP神经网络理论,在MATLAB平台下编程实现基于BP神经网络的语音特征信号分类算法。
1)数据归一化
为了取消各维数数据间数量级差别,避免因为输入输出数据数量级差别较大而造成网络预测误差较大,同时加快网络训练速度,对数据进行归一化处理,将所有数据归化到[0,1]区间。
本文采用下式对数据进行归一化。
式中xminx为数据序列的最小值,xmax为数据序列中的最大值。
2)数据选择
首先根据倒谱系数法提取四类音乐特征信号,同时语音信号分别用l、2、3、4、5、6标识,提取出的信号分别存储于data1.mat,data2.mat,data3.mat,data4.mat,data5.mat,data6.mat数据库文件中,每组数据为25维,第1维为类别标识,后24维为语音特征信号。
把六类语音特征信号合为一组,从中随机选取1500组数据作为训练数据,600组数据作为测试数据,并对训练数据进行归一化处理,根据语音类别标识设定每组语音信号的期望输出值,如标识为l时,期望输出向量为[1,0,0,0,0,0]。
经检验数据的正确率如下图:
3)BP神经网络结构初始化
根据语音特征信号特点确定BP神经网络的结构为24—25—6,随机初始化神经网络的权值和阈值。
4)BP神经网络训练
用训练集训练BP神经网络,在训练过程中根据网络的预测误差调整网络的权值和阈值。
5)BP神经网络分类
用训练好的BP神经网络分类语音特征信号,根据分类结果分析BP神经网络分类能力。
6.4模型的检验
为避免神经网络的过拟合,过拟合现象就是指为了得到一致假设而使假设变得过度复杂。
想像某种学习算法产生了一个过拟合的分类器,这个分类器能够百分之百的正确分类样本数据(即再拿样本中的文档来给它,它绝对不会出错),但也就为了能够对样本完全正确的分类,使得它的构造如此精细复杂,规则如此严格,以至于任何与样本数据稍有不同的文档它全都认为不属于这个类别!
本文决定使用交叉验证方法,即将训练集分成两部分,每次留出一个样本作监督,不参与网络的训练,其余样本用来训练,不断交换样本,使训练集中每一个样本监督一次。
用全体训练集的交叉验证误差均方根RMSECV作为网络训练的评估标准,用预测误差均方根RMSEP反映模型对未知样本的预测效果。
两者的计算公式见式
(1)和
(2),其中e是真值,6e是预测值,一是训练集样品数,P是使用的主成分数,m是预测集样品数。
采用式(3)计算RSECV和RSEP以考察
模型校正和预测的相对偏差。
在MATLAB平台上使用BP神经网络工具箱,设计网络结构,输入训练样本进行训练,训练结果证明该网络能够收敛。
在MATLAB中该BP网络的具体训练过程如下图
网络训练结束以后,本文另外选取100组数据对模型其进行仿真测试,结果识别正确率为85.42%,这说明系统达到了预期的要求,得到了一个比较高的精准度。
7.模型评价
7.1模型的优点:
在各种音乐区分系统中,神经网络因其结构简单、算法成熟并能精确寻优而被广泛地应用于音频分类识别领域。
模型抽象:
神经网络实质上就是一个特殊的映射——实现输入到输出的过程,且可证“三层的神经网络能够以任意精度逼近任何非线性连续函数”。
这使得其特别适合于求解内部机制复杂的问题。
现时性:
神经网络在测试时,能够通过学习自动提取输入、输出数据间的“合理规则”,并自主的将学习内容记忆于网络的权值中。
所以神经网络具有高度自主学习和自主适应的能力。
泛化性:
所谓泛化性是指在设计模式分类器时,即要考虑分类器在保证对所需分类对象进行正确分类的同时,还要关心分类器在经过训练后,能否对未见过的音频文件或有噪声污染的音频文件,进行正确的分类。
也即神经网络具有将学习成果应用于“陌生”同类型文件的能力。
健壮性:
神经网络的部分结构出现了问题,并不想影响其正常的工作。
即神经网络具有一定的容错能力。
7.2模型的缺点:
但是,由于BP法是一种基于梯度下降的算法,因而不可避免地存在收敛速度慢,易陷入局部极小点等缺点。
7.3模型的推广:
此方法也可以用于语言、电影、视频、图片等的分类。
8.流行音乐的大众审美
像其它艺术一样,音乐艺术成为公众文化生活的一部分。
商品经济时代的到来,流行歌曲同其它领域的商品一样,大众可以随时随地拿来消费。
在市场经济的驱动下