一种利用歌词识别音乐情感的方法转让专利

申请号 : CN201310460411.4

文献号 : CN103488782B

文献日 :

基本信息:

PDF:

法律信息:

相似专利:

发明人 : 何慧

申请人 : 华北电力大学

摘要 :

本发明公开了音乐资源管理和音乐资源检索技术领域中的一种利用歌词识别音乐情感的方法。包括将已经标注音乐情感的歌曲的歌词放入歌词训练集中;预处理歌词训练集中每首歌曲的歌词得到歌词的特征集合;确定歌词训练集的优化特征集合;计算歌词训练集中每首歌曲的歌词的特征权值向量并形成歌词训练集的特征权值矩阵;建立歌词训练集的优化特征集合中的特征与音乐情感之间的特征指示函数;建立歌词训练集中每首歌曲的歌词与音乐情感的最大熵模型;计算所述最大熵模型,得到条件概率的最优解和最优拉格朗日乘子向量;最后计算待识别的歌词的音乐情感。本发明克服了通过音频文件确定音乐情感存在的训练和识别花费时间长、占用内存大等问题。

权利要求 :

1.一种利用歌词识别音乐情感的方法,其特征是所述方法包括:步骤1:将已经标注音乐情感的n首歌曲的歌词放入歌词训练集L中;

步骤2:预处理歌词训练集L中每首歌曲的歌词得到歌词的特征集合Fi;其中,Fi是第i首歌曲的歌词的特征集合,i=1,2,...,n,n为歌词训练集L中的歌曲数;

所述预处理歌词训练集L中每首歌曲的歌词得到歌词的特征集合Fi具体包括如下子步骤:子步骤201:对歌词训练集L中每首歌曲的歌词进行中文分词,得到初始分词词条;

子步骤202:对初始分词词条进行词性标注,并保留词性为形容词、动词、名词和副词的词条,从而得到预处理词条序列;

子步骤203-206将利用N-gram语言模型获取预处理词条序列的特征集合;

子步骤203:设定N值并令r=1,N即N-gram语言模型中的设定值;

子步骤204:将预处理词条序列中每r个相邻的词条结合起来,并将结合后的词条作为特征放入特征集合Fir中;

子步骤205:判断r≥N是否成立,如果r≥N,则执行子步骤206;否则,令r=r+1,返回子步骤204;

子步骤206:将 作为歌词训练集L中每首歌曲的歌词的特征集合Fi;

步骤3:根据公式 确定歌词训练集的特征集合FL;

步骤4:在歌词训练集的特征集合FL中,将出现次数小于设定阈值的特征删除,得到歌词训练集的优化特征集合Fopt={t1,t2,...,tk,...,tm};其中,tk为歌词训练集的优化特征集合中的特征,k=1,2,...,m,m为歌词训练集的优化特征集合中的特征数量;

步骤5:计算歌词训练集中每首歌曲的歌词的特征权值向量li并形成歌词训练集的特征权值矩阵N;

其中,li是第i首歌曲的歌词的特征权值向量;将歌词训练集的优化特征集合Fopt中的特征依次与歌词训练集中第i首歌曲的歌词的特征集合Fi中的特征进行比较,如果歌词训练集的优化特征集合Fopt中的特征出现在第i首歌曲的歌词的特征集合Fi中,则将第i首歌曲的歌词的特征权值向量li的相应分量设置为1;如果歌词训练集的优化特征集合Fopt中的特征未出现在第i首歌曲的歌词的特征集合Fi中,则将第i首歌曲的歌词的特征权值向量li的相应分量设置为0;其中,i=1,2,...,n,n为歌词训练集L中的歌曲数;

步骤6:建立歌词训练集的优化特征集合Fopt中的特征与音乐情感之间的特征指示函数fk(li,c);

其中,当歌词训练集的优化特征集合Fopt中的特征tk是第i首歌曲的歌词的特征集合Fi中的特征,并且第i首歌曲的歌词的音乐情感为c时,fk(li,c)=1;当歌词训练集的优化特征集合Fopt中的特征tk不是第i首歌曲的歌词的特征集合Fi中的特征或者第i首歌曲的歌词的音乐情感不为c时,fk(li,c)=0;

步骤7:建立歌词训练集中每首歌曲的歌词与音乐情感的最大熵模型,包括目标函数和约束条件;

所述目标函数为:

其中,H(P)为P(c|li)的熵,且

P(c|li)为歌词训练集中第i首歌曲的歌词的音乐情感为c的条件概率;

C为由歌词训练集L中每首歌曲的歌词的音乐情感组成的集合;

#(li)为歌词训练集中第i首歌曲的歌词在歌词训练集中出现的频数,|L|为歌词训练集中歌曲的总数;

所述约束条件包括:

P(c|li)≥0,i=1,2,...n且

其中, #(li,c)为歌词训练集中第i首歌曲的歌词的音乐情感为c的统计频数;

步骤8:采用拉格朗日乘子法计算所述最大熵模型,得到条件概率P(c|li)的最优解和最优拉格朗日乘子向量Λ=(λ1,λ2,...,λk,...,λm);

其中,ZΛ(li)为归一化因子且

步骤9:预处理待识别的歌词得到待识别的歌词的特征集合Fnew;具体包括如下子步骤:子步骤901:对待识别的歌词进行中文分词,得到初始分词词条;

子步骤902:对初始分词词条进行词性标注,并保留词性为形容词、动词、名词和副词的词条,从而得到预处理词条序列;

子步骤903-906将利用N-gram语言模型获取预处理词条序列的特征集合;

子步骤903:设定N值并令r=1,N即N-gram语言模型中的设定值;

子步骤904:将预处理词条序列中每r个相邻的词条结合起来,并将结合后的词条作为特征放入特征集合 中;

子步骤905:判断r≥N是否成立,如果r≥N,则执行子步骤906;否则,令r=r+1,返回子步骤904;

子步骤906:将 作为待识别的歌词的特征集合Fnew;

步骤10:计算待识别的歌词的特征权值向量lnew;将歌词训练集的优化特征集合Fopt中的特征依次与待识别的歌词的特征集合Fnew中的特征进行比较,如果歌词训练集的优化特征集合Fopt中的特征出现在待识别的歌词的特征集合Fnew中,则将待识别的歌词的特征权值向量lnew的相应分量设置为1;如果歌词训练集的优化特征集合Fopt中的特征未出现在待识别的歌词的特征集合Fnew中,则将待识别的歌词的特征权值向量lnew的相应分量设置为0;

步骤11:根据公式 计算待识别的歌词的音乐情

感c*;

其中,

vk为待识别的歌词的特征权值向量lnew的第k个分量。

2.根据权利要求1所述的方法,其特征是所述歌词训练集的特征权值矩阵N由歌词训练集中每首歌曲的歌词的特征权值向量li组成,特征权值矩阵N的第i行为第i首歌曲的歌词的特征权值向量li;其中,i=1,2,...,n,n为歌词训练集L中的歌曲数。

说明书 :

一种利用歌词识别音乐情感的方法

技术领域

[0001] 本发明属于音乐资源管理和音乐资源检索技术领域,尤其涉及一种利用歌词识别音乐情感的方法。

背景技术

[0002] 随着计算机网络的不断发展和日益普及,人们可以方便快捷的获取日益丰富的音乐资源,因此人们迫切需要新的技术对音乐资源进行管理,实现对海量音乐资源的有效的检索和访问。传统的音乐检索仅限于对音乐歌曲名称、歌手姓名、作词人、作曲人等音乐的参照信息的检索,而这样的检索远远无法满足人们从音乐内容上对音乐的检索和管理。
[0003] 音乐情感是刻画音乐作品的一种很重要的信息,对音乐所表达的情感进行准确识别可以帮助人们更快捷的检索和访问适合自己的音乐。申请号为200910063035.9、名称为“一种数字音乐情感的识别方法”的中国发明专利(公开号:CN101599271A),申请号为200910110671.2、名称为“音乐情感距离的度量方法”的中国发明专利(公开号:
CN101697278A),以及申请号为201310060278.3,名称为“一种基于云基因表达式编程的音乐情感识别方法”的中国发明专利(公开号:CN103116646A)分别给出了一种音乐情感的识别方法。这些现有技术提供的对音乐情感的识别手段,大多是通过对音乐的音频信号进行分析来识别音乐的情感色彩。这类方法首先提取音乐的声学特征参数和音乐乐理特征参数,然后通过对分类器训练进行数字音乐的情感识别。由于音频文件本身比较庞大,即使是被压缩成MP3格式,通常一首歌曲也要占据4M的空间,如果利用计算机对成百上千首歌曲进行情感色彩的训练和识别,需要花费大量的内存空间和时间。况且,大多数用户都是在手机、MP3等移动设备上对音乐进行检索和访问,因此在内存较小、计算速度不够高的移动设备上利用音频信号分析和识别音乐的情感色彩是非常困难的,现有这些方法无法很好的满足用户的需要。

发明内容

[0004] 本发明的目的在于,提供一种利用歌词识别音乐情感的方法,用于解决现有技术在进行音乐情感识别时存在的缺陷。
[0005] 为了实现上述目的,本发明提出的技术方案是,一种利用歌词识别音乐情感的方法,其特征是所述方法包括:
[0006] 步骤1:将已经标注音乐情感的n首歌曲的歌词放入歌词训练集L中;
[0007] 步骤2:预处理歌词训练集L中每首歌曲的歌词得到歌词的特征集合Fi;其中,Fi是第i首歌曲的歌词的特征集合,i=1,2,...,n;
[0008] 步骤3:根据公式 确定歌词训练集的特征集合FL;
[0009] 步骤4:在歌词训练集的特征集合FL中,将出现次数小于设定阈值的特征删除,得到歌词训练集的优化特征集合Fopt={t1,t2,...,tm};其中,tk为歌词训练集的优化特征集合中的特征,k=1,2,...,m,m为歌词训练集的优化特征集合中的特征数量;
[0010] 步骤5:计算歌词训练集中每首歌曲的歌词的特征权值向量li并形成歌词训练集的特征权值矩阵N;
[0011] 其中,li是第i首歌曲的歌词的特征权值向量;
[0012] 步骤6:建立歌词训练集的优化特征集合Fopt中的特征与音乐情感之间的特征指示函数fk(li,c);
[0013] 其中,当歌词训练集的优化特征集合Fopt中的特征tk是第i首歌曲的歌词的特征集合Fi中的特征,并且第i首歌曲的歌词的音乐情感为c时,fk(li,c)=1;当歌词训练集的优化特征集合Fopt中的特征tk不是第i首歌曲的歌词的特征集合Fi中的特征或者第i首歌曲的歌词的音乐情感不为c时,fk(li,c)=0;
[0014] 步骤7:建立歌词训练集中每首歌曲的歌词与音乐情感的最大熵模型,包括目标函数和约束条件;
[0015] 所述目标函数为:
[0016] 其中,H(P)为P(c|li)的熵,且
[0017] P(c|li)为歌词训练集中第i首歌曲的歌词的音乐情感为c的条件概率;
[0018] C为由歌词训练集L中每首歌曲的歌词的音乐情感组成的集合;
[0019] #(li)为歌词训练集中第i首歌曲的歌词在歌词训练集中出现的频数,|L|为歌词训练集中歌曲的总数;
[0020] 所述约束条件包括:
[0021] P(c|li)≥0,i=1,2,...n且
[0022]
[0023]
[0024] 其中, #(li,c)为歌词训练集中第i首歌曲的歌词的音乐情感为c的统计频数;
[0025] 步骤8:采用拉格朗日乘子法计算所述最大熵模型,得到条件概率P(c|li)的最优解 和最优拉格朗日乘子向量Λ=(λ1,λ2,...,λk,...,λm);
[0026] 其中,ZΛ(li)为归一化因子且
[0027] 步骤9:预处理待识别的歌词得到待识别的歌词的特征集合Fnew;
[0028] 步骤10:计算待识别的歌词的特征权值向量lnew;
[0029] 步骤11:根据公式 计算待识别的歌词的音乐情感c*;
[0030] 其中,
[0031]
[0032] vk为待识别的歌词的特征权值向量lnew的第k个分量。
[0033] 所述预处理歌词训练集L中每首歌曲的歌词得到歌词的特征集合Fi/预处理待识别的歌词得到待识别的歌词的特征集合Fnew具体包括如下子步骤:
[0034] 子步骤101:对歌词训练集L中每首歌曲的歌词/待识别的歌词进行中文分词,得到初始分词词条;
[0035] 子步骤102:对初始分词词条进行词性标注,并保留词性为形容词、动词、名次和副词的词条,从而得到预处理词条序列;
[0036] 子步骤103:设定N值并令r=1;
[0037] 子步骤104:将预处理词条序列中r个相邻的词条作为特征放入特征集合Fir/特征集合 中;i=1,2,...,n,n为歌词训练集L中的歌曲数;
[0038] 子步骤105:判断r≥N是否成立,如果r≥N,则执行子步骤106;否则,令r=r+1,返回子步骤104;
[0039] 子步骤106:将 作为歌词训练集L中每首歌曲的歌词的特征集合Fi/待识别的歌词的特征集合Fnew。
[0040] 所述计算歌词训练集中每首歌曲的歌词的特征权值向量li/待识别的歌词的特征权值向量lnew具体为:
[0041] 将歌词训练集的优化特征集合Fopt中的特征依次与歌词训练集中第i首歌曲的歌词的特征集合Fi中的特征/待识别的歌词的特征集合Fnew中的特征进行比较,如果歌词训练集的优化特征集合Fopt中的特征出现在第i首歌曲的歌词的特征集合Fi/待识别的歌词的特征集合Fnew中,则将第i首歌曲的歌词的特征权值向量li/待识别的歌词的特征权值向量lnew的相应分量设置为1;如果歌词训练集的优化特征集合Fopt中的特征未出现在第i首歌曲的歌词的特征集合Fi/待识别的歌词的特征集合Fnew中,则将第i首歌曲的歌词的特征权值向量li/待识别的歌词的特征权值向量lnew的相应分量设置为0;其中,i=1,2,...,n,n为歌词训练集L中的歌曲数。
[0042] 所述歌词训练集的特征权值矩阵N由歌词训练集中每首歌曲的歌词的特征权值向量li组成,特征权值矩阵N的第i行为第i首歌曲的歌词的特征权值向量li;其中,i=1,2,...,n,n为歌词训练集L中的歌曲数。
[0043] 本发明通过歌词确定音乐情感,克服了通过音频文件确定音乐情感存在的训练和识别花费时间长、占用内存大等问题,有效解决了用户对音乐情感的快速识别需求,并实现了移动设备上对音乐进行检索和访问的目标。

附图说明

[0044] 图1是利用歌词识别音乐情感的方法流程图。

具体实施方式

[0045] 下面结合附图,对优选实施例作详细说明。应该强调的是,下述说明仅仅是示例性的,而不是为了限制本发明的范围及其应用。
[0046] 图1是利用歌词识别音乐情感的方法流程图,如图1所示,本发明提供的方法包括:
[0047] 步骤1:将已经标注音乐情感的n首歌曲的歌词放入歌词训练集L中。
[0048] 本发明使用已经标注音乐情感的歌曲的歌词作为歌词训练集,通过训练该歌词训练集,得到相关信息,用来评价待识别的歌词。歌词训练集中的歌词,都是已经标注音乐情感的歌词,将歌词训练集中每首歌曲的歌词的音乐情感组成的集合,作为音乐情感集合C。
[0049] 步骤2:预处理歌词训练集L中每首歌曲的歌词得到歌词的特征集合Fi。
[0050] 对于歌词训练集L中每首歌曲的歌词,先要进行预处理,从而得到每首歌曲的歌词的特征集合。本实施例以歌词“我要给你我的追求还有我的自由”为例,说明预处理的过程。该过程包括如下子步骤:
[0051] 子步骤101:对歌词训练集L中每首歌曲的歌词进行中文分词,得到初始分词词条。
[0052] 对歌词“我要给你我的追求还有我的自由”进行中文分词,得到初始分词词条为:我、要、给、你、我的、追求、还有、我的、自由。
[0053] 子步骤102:对初始分词词条进行词性标注,并保留词性为形容词、动词、名次和副词的词条,从而得到预处理词条序列。
[0054] 对上述词条进行词性标注,保留词性为形容词、动词、名次和副词的词条后,得到的预处理词条序列为:{要,给,追求,自由}。
[0055] 接下来,子步骤103-106将利用N-gram语言模型获取预处理词条序列的特征集合。
[0056] 子步骤103:设定N值并令r=1。N即N-gram语言模型中的设定值,本实施例取N=3。
[0057] 子步骤104:将预处理词条序列中r个相邻的词条作为特征放入特征集合Fir中。
[0058] 当r=1时,预处理词条序列中1个相邻的词条作为特征放入特征集合Fi1中,则Fi1={要,给,追求,自由}。
[0059] 当r=2时,预处理词条序列中2个相邻的词条作为特征放入特征集合Fi2中,则Fi2={要给,给追求,追求自由}。
[0060] 当r=3时,预处理词条序列中3个相邻的词条作为特征放入特征集合Fi3中,则Fi3={要给追求,给追求自由}。
[0061] 子步骤105:判断r≥N是否成立,如果r≥N,则执行子步骤106;否则,令r=r+1,返回子步骤104。
[0062] 当r=3时,满足条件r≥N,执行子步骤106。
[0063] 子步骤106:将 作为歌词训练集L中每首歌曲的歌词的特征集合Fi。即将Fi=Fi1∪Fi2∪Fi3作为歌词训练集L中第i首歌曲的歌词的特征集合,从而有Fi={要,给,追求,自由,要给,给追求,追求自由,要给追求,给追求自由}。子步骤101-106中,i=1,2,...,n,n为歌词训练集L中的歌曲数量。
[0064] 步骤3:根据公式 确定歌词训练集的特征集合FL。
[0065] 由于上一步骤中,已经得到了每首歌曲的歌词的特征集合Fi,因此将他们的并集作为整个歌词训练集的特征集合,即有 比如,在本实施例中,如果歌词训练集中有两首歌曲的歌词,第一首歌曲的歌词的特征集合为:
[0066] F1={要,给,追求,自由,要给,给追求,追求自由,要给追求,给追求自由}第二首歌曲的歌词的特征集合为:
[0067] F2={到底,爱,不爱,到底爱,爱不爱,到底爱不爱}
[0068] 则FL={到底,爱,不爱,到底爱,爱不爱,到底爱不爱,要,给,追求,自由,要给,给追求,追求自由,要给追求,给追求自由}。
[0069] 步骤4:在歌词训练集的特征集合FL中,将出现次数小于设定阈值的特征删除,得到歌词训练集的优化特征集合Fopt={t1,t2,...,tm}。
[0070] 设定阈值的目的是减少特征向量的维数。当整个歌词训练集中的特征出现的次数小于这个阈值时,将该特征从特征集合中删除。本实施例中,如果特征“到底爱不爱”、“给追求”、“要给追求”,“给追求自由”出现的次数小于设定的阈值,则将它们从特征集合FL中删除,那么歌词训练集的优化特征集合Fopt={到底,爱,不爱,到底爱,爱不爱,要,给,追求,自由,要给,追求自由},歌词训练集的优化特征集合Fopt中的特征数量为11个。
[0071] 步骤5:计算歌词训练集中每首歌曲的歌词的特征权值向量li并形成歌词训练集的特征权值矩阵N。
[0072] 计算歌词训练集中每首歌曲的歌词的特征权值向量li具体为:将歌词训练集的优化特征集合Fopt中的特征依次与歌词训练集中第i首歌曲的歌词的特征集合Fi中的特征进行比较,如果歌词训练集的优化特征集合Fopt中的特征出现在第i首歌曲的歌词的特征集合Fi中,则将第i首歌曲的歌词的特征权值向量li的相应分量设置为1。如果歌词训练集的优化特征集合Fopt中的特征未出现在第i首歌曲的歌词的特征集合Fi中,则将第i首歌曲的歌词的特征权值向量li的相应分量设置为0。
[0073] 以上述优化特征集合Fopt和第一首歌曲的歌词特征集合F1为例,优化特征集合Fopt的前5个特征{到底,爱,不爱,到底爱,爱不爱}都没有出现在第一首歌曲的歌词特征集合F1中,因此第一首歌曲的歌词的特征权值向量l1的前5个分量都为0。而优化特征集合Fopt的后6个特征{要,给,追求,自由,要给,追求自由}都出现在第一首歌曲的歌词特征集合F1中,因此第一首歌曲的歌词的特征权值向量l1的后6个分量都为1。由此,l1=(0,0,0,0,0,1,1,1,1,
1,1)。同理可得,l2=(1,1,1,1,1,0,0,0,0,0,0)。
[0074] 进一步,歌词训练集的特征权值矩阵N由歌词训练集中每首歌曲的歌词的特征权值向量li组成,特征权值矩阵N的第i行为第i首歌曲的歌词的特征权值向量li。由此,本实施例中的特征权值矩阵
[0075] 步骤6:建立歌词训练集的优化特征集合Fopt中的特征与音乐情感之间的特征指示函数fk(li,c)。
[0076] 其中,特征指示函数
[0077] 第一条件为:当歌词训练集的优化特征集合Fopt中的特征tk是第i首歌曲的歌词的特征集合Fi中的特征,并且第i首歌曲的歌词的音乐情感为c。
[0078] 第二条件为:当歌词训练集的优化特征集合Fopt中的特征tk不是第i首歌曲的歌词的特征集合Fi中的特征或者第i首歌曲的歌词的音乐情感不为。
[0079] 假设本实施例中的第一首歌曲的歌词情感为c1,第一首歌曲的歌词情感为c2,则由于优化特征集合Fopt中的第1个特征不是第1首歌曲的歌词的特征集合F1中的特征,因此有f1(l1,c1)=0。以此类推,可以计算出所有fk(l1,c1)和fk(l2,c2)的值,比如f6(l1,c1)=1,f1(l2,c2)=1,f6(l2,c2)=0。其中,k=1,2,...,m,m为优化特征集合Fopt中的特征数。
[0080] 当然,fk(li,c)的值还可以根据下述方式计算,即当第i首歌曲的歌词的特征权值向量li的第k个分量为1且第i首歌曲的歌词的音乐情感为c时,fk(li,c)=1。否则,fk(li,c)=0。这是由歌曲的歌词的特征权值向量的定义决定的,因为如果第i首歌曲的歌词的特征权值向量的第k个分量为1,恰好表明优化特征集合Fopt中的第k个特征tk出现在第i首歌曲的歌词的特征集合Fi中。
[0081] 步骤7:建立歌词训练集中每首歌曲的歌词与音乐情感的最大熵模型,包括目标函数和约束条件。
[0082] 其中,目标函数为:
[0083] H(P)为P(c|li)的熵,且 P(c|li)为歌词训练集中第i首歌曲的歌词的音乐情感为c的条件概率。C为由歌词训练集L中每首歌曲的歌词的音乐情感组成的集合。 #(li)为歌词训练集中第i首歌曲的歌词在歌词训练集
中出现的频数,|L|为歌词训练集中歌曲的总数。P为P(c|li)的缩写。
[0084] 约束条件包括:
[0085] (1)P(c|li)≥0,i=1,2,...n且
[0086] (2)
[0087] (3)
[0088] 其中, #(li,c)为歌词训练集中第i首歌曲的歌词的音乐情感为c统计频数。
[0089] 上述公式中,歌词训练集中第i首歌曲的歌词在歌词训练集中出现的频数#(li),可以通过特征权值矩阵N来进行计算。第i首歌曲的歌词的特征权值向量li位于特征权值矩阵N的第i行,因此只需考察与特征权值矩阵N的第i行的元素完全相同的行的行数,即可得到第i首歌曲的歌词在歌词训练集中出现的频数#(li)。这是因为,在特征权值矩阵N中,元素完全相同的两行代表两首歌曲的歌词的特征权值完全相同,也就意味着两首歌曲的歌词相同。
[0090] 另外,在本发明中,|L|为歌词训练集中歌曲的总数,实际就是n。当然,|L|也可以通过特征权值矩阵N计算。因为特征权值矩阵N的每一行代表一个歌词向量,因此特征权值矩阵N的行数即歌词向量数,也即歌曲总数。
[0091] 步骤8:采用拉格朗日乘子法计算所述最大熵模型,得到条件概率P(c|li)的最优解 和最优拉格朗日乘子向量Λ=(λ1,λ2,...,λk,...,λm)。
[0092] 上述带约束条件的目标函数的求解问题,实际上是一个最优化问题,通过常用的最优化求解方法即可计算出结果。本发明采用拉格朗日乘子法,即对每个特征函数fk(li,c)都引入一个拉格朗日乘子λk,整个参数向量记为Λ=(λ1,...,λk,...),则拉格朗日最优化目标为:
[0093]
[0094] 按照最优化理论推导,可以得到P的最优解的参数形式:
[0095]
[0096] 由于PΛ(c|li)是条件概率,因此满足概率和为1的性质,即 经过推导即可得到:
[0097]
[0098] 其中,ZΛ(li)为归一化因子且 使得PΛ(c|li)满足条件概率的性质。从上式中不难发现,参数向量Λ=(λk)中,每个λk是其对应的特征fk的权重参数,表明特征fk在模型中的重要性,λk值越大,指示对应的特征fk越重要。
[0099] 最大熵模型的最优求解有GIS、IIS等算法和工具包实现,求解出最优参数向量Λ=(λk),进而形成歌词情感识别模型。
[0100] 步骤9:预处理待识别的歌词得到待识别的歌词的特征集合Fnew。
[0101] 预处理待识别的歌词得到待识别的歌词的特征集合Fnew与预处理歌词训练集L中每首歌曲的歌词得到歌词的特征集合相同,具体过程可参见子步骤101-子步骤106,此处不再赘述。
[0102] 步骤10:计算待识别的歌词的特征权值向量lnew。
[0103] 计算待识别的歌词的特征权值向量lnew的方法与步骤5中计算歌词训练集中每首歌曲的歌词的特征权值向量li的方法一样。
[0104] 步骤11:根据公式 计算待识别的歌词的音乐情感c*。
[0105] 当获得特征权值向量lnew后,通过由歌词训练集得到的最优拉格朗日乘子向量Λ=*(λ1,λ2,...,λk,...,λm),可以计算出待识别的歌词的音乐情感c,其计算公式为:
[0106]
[0107] 其中, 为归一化因子。
[0108] 即对于某一个特征tk和音乐情感c,如果歌词训练集中任意一首歌曲的歌词的特征权值向量li存在fk(li,c)=1,则hk(li,c)=1;如果歌词训练集中所有歌曲的歌词的特征权值向量li都有fk(li,c)=0,则hk(li,c)=0。vk为待识别的歌词lnew的特征权值向量v的第k个分量。
[0109] 通过上述方法计算出来的音乐情感c*为后验概率最大的类别,被模型判定为待识别歌词的音乐情感。
[0110] 本发明通过歌词确定音乐情感,解决了常用技术通过音频文件确定音乐情感存在的训练和识别花费时间长、占用内存大等问题,达到了用户对音乐情感快速识别和移动设备上对音乐进行检索和访问的目的。
[0111] 以上所述,仅为本发明较佳的具体实施方式,但本发明的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本发明揭露的技术范围内,可轻易想到的变化或替换,都应涵盖在本发明的保护范围之内。因此,本发明的保护范围应该以权利要求的保护范围为准。