APP下载

音乐自动标注分类方法研究综述

2023-06-07张如琳王海龙裴冬梅

计算机与生活 2023年6期
关键词:音频标签自动

张如琳,王海龙,柳 林,裴冬梅

内蒙古师范大学 计算机科学技术学院,呼和浩特010022

迄今,我国同时在线音乐活跃用户数已超7.7亿,网络用户大量增长,音乐作品与日俱增,音乐类别日益多元化,人们对音乐信息检索(music information retrieval,MIR)的需求达到前所未有的高度。然而,海量的音乐作品缺乏不同类别的语义标签,导致用户无法便捷、精准、高效地检索音乐作品。音乐标注作为音乐信息检索领域的重要分支,可丰富音乐信息,有效管理音乐资源,并推动音乐分类、音乐推荐以及乐器识别等其他音乐信息检索任务的深入研究。

音乐标注是利用手工或自动的方式为音乐赋予不同类别的语义标签,进而对音乐进行合理化分类[1]。手工标注又可分为专家型和社会型。专家型是由专业音乐人完成标注,其具有权威性且标签质量专业性强等优势,但存在效率低、时间及人力成本消耗量大等问题。社会型是由普通听众完成标注,其具备时间成本小、数据量大等优势,但由于带有很强的个人主观性且音乐专业性偏低,标注易产生模糊性和随意性,标签质量低。音乐自动标注方式(automatic music annotation,music auto-tagging)是利用先进的计算机技术分析音乐的旋律、音色、语义并预测音乐描述性的关键词或标签[2]。该方式结合手工标注中两种类型的优点,不仅减少了时间成本,还提高了标注准确率。通过音乐自动标注技术,人们可高效地进行相似性搜索、音乐流派分类、音乐情感分类和音乐推荐等,它是目前的主流标注方法。表1对音乐标注类型进行了总结。

表1 音乐标注类型总结Table 1 Summary of music annotation types

音乐自动标注最早可以追溯到2007年,Eck等人[3]使用传统方法基于AdaBoost分类器对音频特征进行标注,完成多标签音乐自动标注,取得开创性成果,然而在标注过程中依旧面临许多挑战。当前业界普遍聚焦于以下两个研究问题:(1)特征选择与提取问题。音频信号的特征有许多种,每个特征描述音频信号的能力有限,因此针对特定模型需要选择合适的特征以及合适的提取方法,以保证音频信息的完整提取,更好地进行标注预测。(2)模型选择问题。在传统方法中,选择的特征越好就意味着对模型的选择越简单,然而随着人工智能的不断进步,出现了不同的模型与方法,人们意识到更有针对性地选择模型可影响标注性能的进一步提升。

面对音乐自动标注,Fu等人[4]围绕任务研究进展对当时不同方法进行归纳,为后续相关工作提供帮助。然而该综述侧重于对机器学习方法进行梳理,缺乏对深度学习方法的归类分析,并且由于同时整理了音乐流派分类、情感分类与乐器分类等不同研究方向,并未对机器学习下的音乐自动标注进行着重分析。与上述综述不同,本文既对机器学习方法进行详细总结与归纳,又对近年来面向深度学习的模型选择与特征提取方法进行分析与总结。本文贡献总结如下:首先,详细介绍音乐自动标注的相关知识。其次,根据当前存在的研究问题,从音频提取、机器学习模型与深度学习模型三方面进行综述,分析对比优缺点并比较不同方法的性能。其中,对特征提取方法研究通过不同特征输入的角度进行论述,对面向机器学习的音乐自动标注研究通过不同模型的角度进行论述,对面向深度学习的音乐自动标注研究通过不同模态的角度进行论述。然后,列举音乐自动标注领域常用的数据集与评价指标。最后,分析目前音乐自动标注所面临的挑战与机遇,并指出未来的发展方向。

1 音乐自动标注相关知识

音乐自动标注为音乐预测多类别音乐标签,被视为多标签分类问题。与其他单标签分类任务不同,一首音乐可同时与多个音乐标签关联,而其他分类任务局限于特定语义的类别标签。例如,在图1(a)中,音乐情感分类任务只能为音乐分配情感表述标签;然而,图1(b)中音乐自动标注可为音乐预测情感、流派、乐器等多个不同类别语义标签,丰富了音乐信息。因此,当在输入集合上定义k个二元标签时,单标签分类任务的输出集合标签仅k个,而音乐自动标注的输出集合标签则达到2k个。

图1 音乐信息检索领域中单标签分类与多标签分类Fig. 1 Single-label classification and multi-label classification in music information retrieval

由上可知,对音乐进行标注需通过音乐标签定义对音乐的理解与感受,因此音乐标签是音乐自动标注的重要组成部分。音乐标签属于社会标签,它能够表达音乐特性的高层次描述性词语。例如,描述情感的“快乐”“悲伤”等标签,描述流派的“嘻哈”“摇滚”等标签,描述乐器的“钢琴”“小提琴”等标签。音乐标签是区分不同音乐类型最科学的表示,它具有以下特点:

(1)无界限性。听众受不同文化、政治和宗教等复杂因素的影响,对相同音乐有着不同评判标准,为音乐附上何种标签并没有严格的定义与界限。

(2)共享性。听众间共享音乐标签资源,允许查看、添加、使用其他听众所标注的标签,在主体听众用户同意的情况下,可修改标签。

(3)动态更新性。听众可以利用音乐平台上传原创歌曲或翻唱歌曲,进而使音乐数量进一步增加,平台实时对增加的音乐进行标注并更新音乐标签[5]。

图2为音乐自动标注通用框架。首先,将音乐进行预处理操作,预处理是使用预加重、加窗、分帧等操作最大化呈现原始音频的相关特征,并使后续操作更加精准。其次,通过不同方法提取音频特征,并找到合适的数据集音乐文本标签,将音频特征向量与音乐标签作为模型输入。对于机器学习模型来说,只需将提取好的音频特征输入到分类器模型进行标注预测即可。对于深度学习模型来说,则分为两种方法,一是将预处理得到的原始波形直接输入到深度学习模型,二是将特征向量送入深度模型中自动学习音频特征,以此来预测对应的音乐标签。特征提取为学习模型提供大量的音频特征数据,但会存在冗余特征,使模型无法学习到重要特征,因此对其进行降维处理。例如Nam 等人[6]使用主成分分析(principal component analysis,PCA)来消除二阶依赖性并降低维度。再次,设计音乐自动标注模型算法,即学习模型,通过学习模型将音乐标签与音频特征建立联系,使模型发现两者的相关性。然后,将待测音乐输入到训练好的标注模型中。最后,对模型是否符合当前任务进行最终评价[7]。

图2 音乐自动标注通用框架Fig. 2 Generic framework for automatic music annotation

音乐自动标注问题是多标签分类问题,形式化定义可描述为:将音乐自动标注样本的音频特征集合设为X={xi:i=1,2,…,m},标签集合为Y={γj:j=1,2,…,k},给定多标签训练集合,设为S={(xi,Lj),i=1,2,…,q},其中xi∈X,Lj∈Y,xi与Lj为一对多的映射关系,音乐自动标注任务从训练集S中学习到函数C:X→2Lj,设计多标签学习模型C(·),对无标签样本音频测试集合T={(xq+i,?),i=1,2,…,p}进行标注,即预测C(x)∈Y作为音频样本特征的标签集合。

面对多标签音乐自动标注问题,机器学习的核心思想是将多标签分类任务转换成多个单标签分类任务。(1)二元相关性(binary relevance,BR)[8],多标签分类任务转换成多个单独的二元分类学习任务。针对每个标签均训练分类器,使所有分类器对音频样本进行预测,样本的预测标签就是所有分类器预测标签的集合,但该方法忽略了标签的相关性。(2)分类器链(classifier chains,CC)[9]将多标签分类任务转换成二分类器链。在二元相关性的基础上加入标签排序,在预测当前标签时,需考虑当前标签的前个标签。然而当音乐标签与音频样本数量过于庞大时,会使计算效率与性能下降。在深度学习中,研究人员使用深度神经网络模型作为多标签分类算法,将每个输出节点使用sigmoid 激活函数,对每个输出节点和对应的标签计算二值交叉熵损失函数[10]。

2 音乐自动标注音频特征提取方法

音频特征是区分音乐的重要依据,科学有效的音频特征可充分表达出不同特性的音乐。因此,需合理提取不同类型的音频特征,将它作为模型输入进而对音乐进行准确标注。

2.1 基于领域知识输入的特征提取方法

原始音频是不定长的时序信号,不适合直接作为模型输入,需转换成专业音频知识的特征表示。

2.1.1 基于统计特征的提取方法

统计特征是精通音乐信号的专业人士根据不同特定任务对音乐的原始波形进行傅里叶变换、倒谱分析等操作转换成时频表示的音频特征。常用的音频特征包括音色特征(梅尔频率倒谱系数(mel-frequency cepstrum coefficients,MFCC)、频谱质心、频谱衰减、频谱带宽)、节奏特征(节拍直方图、节拍速度)、音高特征(音高直方图、音高等级)、和声特征等。

单个特征无法对音乐自动标注清晰表达,研究人员将多种统计特征融合。首先将单个统计特征进行描述性分析操作,其次计算各个特征对应的统计值并将统计值拼接得到最终特征向量,最后将其输入至分类器[11]。Wang等人[12]融合音色特征中的频谱质心、频谱通量、频谱衰减以及MFCC等特征来实现音乐自动标注,同时将融合特征与单一特征MFCC进行比较,证明融合特征的性能优于单一特征,为捕捉更多特征信息进一步添加节奏特征[13]。Sordo[14]将音色特征(MFCC、频谱质心等)、节奏特征(节拍速度、起始点等)、和弦特征进行融合,并将特征的均值、方差以及导数拼接作为整体音乐的特征向量。Ness等人[15]将MFCC、频谱质心、频谱通量、频谱衰减进行融合,计算这些特征的均值和标准偏差,以此来获取帧级音频特征的整体表示。

基于统计特征融合的方法可有效提高音乐自动标注性能,但该方法存在一定局限性:(1)需要根据不同问题选取不同特征进行融合,消耗大量人力及时间成本。(2)对原始音乐特征做一系列融合会存在冗余信息。(3)很难全面描述音乐特点。(4)模型效果与使用不同特征进行融合的关系很大。

2.1.2 基于图像特征的提取方法

由于统计特征融合的方法耗时耗力,需要花费大量时间在特征选择上,研究人员尝试自动找寻与任务相关的特征向量形式,将预处理后的波形信号通过傅里叶变换转换成与图像相似的时间-频率二维声谱图并作为模型的输入[16]。

梅尔频谱图符合大多数人非线性听觉特征,因此梅尔频谱图是目前主要的输入类型[17-18]。使用梅尔刻度滤波器组对信号进行处理可获得梅尔频谱图,研究人员将其应用于实验中进行测试[19]。Choi等人[20]使用梅尔频谱图与MFCC、STFT(short-time Fourier transform)特征在同一架构下进行测试,结果表明,在MTAT 数据集(MagnaTagATune Dataset)下使用梅尔频谱图输入的性能值达到0.894,使用MFCC与STFT的性能值为0.862、0.846。Ferraro 等人[21]对比了不同尺寸的梅尔频谱图对模型的影响,证明了当减少尺寸时既可保持良好性能,又可降低训练时间成本。Choi 等人[22]继续对梅尔频谱图进行不同的对数幅度缩放、频率加权等操作,实验证明对数幅度压缩可提高准确性。以上均是将梅尔频谱图与不同特征进行对比测试,并未有效捕捉更多音频信息。Won等人[23]在梅尔频谱图前加入了谐波滤波器,使模型提取到更多音频信息,实验表明,加入谐波滤波器的标注模型在MTAT数据集下性能值达到0.914 1。

声音的许多高层次特征与不同频段的能量有关,梅尔频谱图更能表现音频中时频的效用,且效果对比其他音频特征向量效果是最好的,然而梅尔频谱图也会存在周期相位变换的问题。

目前,基于图像特征有以下三种提取方法:

(1)受限玻尔兹曼机

受限玻尔兹曼机(restricted Boltzmann machine,RBM)是一个由可视层和隐藏层组成的二分无定向图形模型,可视层表示输入音频数据,隐藏层表示通过RBM 学习音频特征。Nam 等人[24]使用了RBM 算法,将预处理后的音频数据利用稀疏RBM 获取音乐中丰富的局部音色特征,并且用二元评价来判断模型优劣,当在CAL500 数据集(computer audition lab 500 dataset)下使用RBM+频谱图方法时,精确率为0.479,召回率为0.257,F1 值为0.289,是所有对比方法中效果最佳的。

RBM 注重训练音频特征本身特性,表示能力强且易于推理。虽然使用RBM的效果较好,但RBM训练速度慢,算法很难调整,灵活性不够强。

(2)K-均值

K-均值(K-means)算法是基于欧式距离的聚类算法,两个音频目标的距离越近,相似度越大。算法步骤为:首先随机选取k个音频特征样本{x1,x2,…,xm},x(i)∈Rn,初始聚类质心点为u=u1,u2,…,uk∈Rn;其次计算音频特征xi到k个聚类中心的距离,并将其分配到距离最近聚类中心所对应的标签类中,重新计算该标签类uj的质心;最后重复上一过程直至模型收敛。Dieleman 等人[25]与Oord 等人[26]均使用球形K-means算法学习特征,并使用多层感知器(multilayer perceptron,MLP)来标注预测。不同的是,前者将梅尔频谱图划分为不同帧级大小的窗口,然后进行PCA处理,并提取K-means特征进行不同时间尺度学习,实验证明多时间尺度比单时间尺度性能更好;而后者则使用迁移学习方法,先在MSD 数据集(million song dataset)上训练模型并提取特征,转移事先预训练的MLP 权重并在其他数据集上预测标签,实现音乐自动标注。

K-means 算法为浅层结构,相对于RBM 算法收敛速度快,聚类效果较好,然而采用迭代的方法只能得到局部最优解,且该算法需选择最近的聚类,因此对噪音点较敏感。

以上两种提取方法均是将音频的局部频谱图映射到高维度稀疏空间中,并对特征进行统计得到音频单层特征向量,将其输入到模型中标注预测。它们可以处理不同长度的音频,进一步提高模型性能,但音乐是时序变化的,在提取音频特征时很难控制对不同变化的音频进行标注,不能对音乐有层次化的特征向量进行学习。

(3)深度神经网络

深度神经网络的架构受大脑的分层结构启发,将前几层神经网络充当特征提取器,无需明确的特征选择或相关特征的计算,即特征学习。目前,研究人员利用深度神经网络的隐藏层来表示音频数据底层结构特征与标签之间的映射关系。例如,Ju等人[27]使用梅尔频谱图作为卷积神经网络(convolutional neural networks,CNN)输入进行音乐自动标注学习,该方法在MTAT 数据集下的性能值达到0.918 7。深度学习音频特征提取方法在音乐自动标注中占主导地位,仅需要将音频信号转化成二维输入表示,使模型从中学习重要特征即可。该方法一定程度上避免了寻找与任务相关的音频特征问题,提取更深层次的特征。然而这种方法的音频数据需要具有一定的专业音乐知识,成本过高。该方法是使用深度神经网络将特征提取与标注预测结合在同一架构下进行的。

基于知识领域的输入是目前常用的输入类型,它可更有效地进行表示学习,并且系统性能也随着改进逐步提升,但领域知识输入会消耗大量先验知识,当为模型后端增加大量算法提升性能时,会使整体计算量急剧加大。表2 总结了基于领域知识的特征提取方法对比。

表2 基于领域知识的特征提取方法对比Table 2 Comparison of feature extraction methods based on domain knowledge

2.2 基于非领域知识特征输入的提取方法

为进一步减少所需要的先验知识,研究人员将原始波形信号直接输入模型中。2014 年,Dieleman等人[28]首次使用原始波形输入端到端对音频进行标注预测,实验结果显示,原始波形的效果还有待提高,但它可避免梅尔频谱图存在周期相位变化问题,这也为提高原始波形的输入性能奠定了基础。

基于非领域知识输入更少依赖于专业音频知识,在音乐自动标注领域上取得了显著成果。然而与梅尔频谱图输入方法相比性能略差,原因有:(1)梅尔频谱图需要通过振幅压缩方式进行提取,而人们无法在原始波形中找到合适的非线性函数代替。(2)虽然原始波形减少了先验知识,但后续操作并未找到合适的模型继续学习复杂的音频结构。Lee等人[29]提出样本级卷积神经网络模型,将卷积神经网络中第一层滤波器的长度和步幅减小至两个样本并增加深度进行标注,卷积核尺寸为1×3,通过此方法,标注性能有所提升。同时,他们更深入地研究分层学习滤波器,进行多层次、多尺度的特征聚合,对多个任务进行迁移学习与可视化[30],结合不同级别的特征进而提高性能。Pons 等人[31]根据不同数据量对原始波形输入与梅尔频谱图进行比较,结果表明,当数据量有限时,梅尔频谱图将水平[32]与垂直[33]滤波器组合的效果更好,原始波形的效果不尽如人意;使用大量数据时,原始波形输入可胜过梅尔频谱图。

研究人员对非领域知识的输入做进一步探索,使用领域知识专注提取某种音频特征可能会丢失部分音频信息,使模型无法对丢失信息进行标注,进而导致标注结果不准确。Song等人[34]将原始波形转换成散射系数,将散射变换作为循环神经网络模型的输入,散射变换输入具有稳定性,可以平衡音频信息的完整获取与音频特征的有效提取。他们进一步将散射变换输入与梅尔频谱图和MFCC 进行比较,实验结果表明,散射变换效果最好。该方法使用两阶散射变换。一阶散射变换系数如式(1)所示:

其中,x表示信号中的一帧数据;φ(v)表示低通滤波器;表示小波模数变换,其目的是将丢失的信息从此变换中恢复;λ为小波的尺度。通过式(1)可得到长度为Λ1的向量,Λ是λ的最大值。

二阶散射变换系数如式(2)所示:

通过式(2)得到长度为Λ2·Λ1的向量。零阶散射变换为S0=x(v)*φ(v),该变换系数为标量,长度为1。将零阶散射、一阶散射与二阶散射系数堆叠,得到长度为1+Λ1+Λ2·Λ1的向量,通过堆叠每帧的散射系数向量并沿对数频率映射,构建CNN 的输入维度Nf×(1+Λ1+Λ2·Λ1),其中Nf表示从音乐信号提取的总帧数。

非领域知识输入将原始波形直接送入模型中,利用小滤波器的深度堆栈,分层组合上下文信息学习音频特征,一定程度上避免了繁琐的特征提取与梅尔频谱图周期波形相位变化产生的变性问题,减少了对先验知识的需求,将所提取的音频特征工程量降到最低,只需根据专业知识调整学习模型的超参数即可。然而当考虑更长音频的输入时,增加学习模型深度的方法会使计算成本变大,且更长的输入意味着在每层都有更大的特征图,因此GPU 内存消耗更多。表3 总结了基于非领域知识的特征提取方法对比。

表3 基于非领域知识的特征提取方法对比Table 3 Comparison of feature extraction methods based on non-domain knowledge

3 基于机器学习的音乐自动标注方法

基于机器学习的音乐自动标注是将特征提取与分类分为两部分,分类作为音乐自动标注的主要步骤之一,选择合适的分类器是决定性能优劣的重要因素。在机器学习中通常将分类器模型分为判别式与生成式。

3.1 判别式模型

判别式模型不需要明确学习每个样本如何生成,仅学习不同类别之间的最优边界即可。由于判别模型可直接判断不同类别之间的差异,进一步提高效率,研究人员将不同判别模型应用于音乐自动标注中。首先将音频特征与音乐标签作为模型的输入,其次训练分类器模型学习音频特征与标签之间的映射关系,最后对待测试的音乐进行标注预测。

3.1.1 支持向量机

支持向量机(support vector machine,SVM)分类器的基本训练原理为:首先使用SVM 核函数将音频特征映射到高维特征空间,并找到音乐数据点的超平面以及最优线性超平面函数的参数,即确定SVM分类器。其次将测试的音频特征输入SVM 分类器,通过计算得到的数值来判断音频特征位于超平面的某一侧,从而预测标签。SVM 分类器用于解决二分类学习问题[35],而音乐自动标注为多标签分类问题,需训练多个SVM分类器并使用不同策略来结合其结果,以此完成音乐自动标注。常见策略为“one-againstone”与“one-against-all”。若将每个标签看作一个类别,“one-against-one”则是选取任意两个标签来训练一个SVM,构造C=k(k-1)/2 个SVM 分类器,其中k为标签数量,然后对待测试音频的所有预测结果做投票法组合,投票最多的标签为最终预测标签;“oneagainst-all”是对K个标签训练K个SVM,每个SVM定义一个分类函数fi用于区分该音频片段属于标签i或其他标签,待测试音频的所属标签即为最大输出的分类函数fi对应的标签类别。最常用的分类函数公式如式(3)所示:

其中,x表示音频特征;wi表示第i个标签所对应的SVM的权重;bi表示第i个标签所对应的SVM的偏置。

待测试音频片段的标注如式(4)所示:

其中,K表示标签个数。

为了寻找标签之间的相关性,Ness等人[15]将堆叠泛化的方法应用到SVM分类器中并进行扩展。设词汇表V由|W|个单词组成,音频片段为S=s1,s2,…,sR,音乐S中的特征向量表示为X=x1,x2,…,xT,每个向量xt代表从音频片段中提取到的音频特征。每首音乐的标注向量设为y=(y1,y2,…,y|V|),若wi与音频片段相关联,则yi>0 ;若无关联,则yi=0,即语义权重。将语义权重映射到{0,1}范围中,设数据集为音频片段与标签的集合D=(X1,Y1),(X2,Y2),…,(X|D|,Y|D|),并对待测试的数据进行标注预测。由于每个音乐片段由多个标签标注,特征向量被多次送到多类SVM中,然后训练SVM 并计算标签概率输出,将第一层SVM 的概率输出作为第二层SVM 输入,以此类推完成标注。相较于单独的SVM,堆叠的SVM 性能更好。

Mandel 等人[36]结合多实例学习方法,使用实例嵌入式选择方法(multiple-instance learning via embedded instance selection,MILES),将音频片段作为分类的实例,标签类别为袋。其中,Bi表示第i个袋,大小为li,袋中第j个实例为xij,j∈1…li,Bi的标签为Yi∈{1,-1},实例xij的标签为yij,设正袋指数集合为I+={i:Yi=1},负袋指数集合为I-={i:Yi=-1}。使所有音频实例对袋进行映射,其次使用1-norm SVM来进行音频特征选择与分类,从而完成标注。

SVM 分类器是机器学习最常见的模型,其计算复杂度取决于特征向量的数目并非音频样本的维数,这也避免了维数灾难问题。然而SVM 是二分类模型,面对音乐自动标注任务时,标签类别存在交叉重叠部分且需对每个标签进行二元决策,使计算效率变低,时间变慢。

3.1.2 k-近邻

k-近邻(knearest neighbor,kNN)模型的核心思想是:只依据最邻近的一个或者几个音频样本的标签来决定待测试音频特征所属的标签。其步骤为:预测音频样本特征x,首先给出距离度量方法在训练集T中找出与音频样本特征x最相近的K个音频样本点,记为NK(x),其次根据多数投票原则,K个音频样本大多数对应类别y,则确定音频特征x对应标签y。投票如式(5)所示:

其中,i=1,2,…,N,j=1,2,…,K,I表示指数函数。

由此可见,kNN有两个关键点:选取k值,计算点距离。

对于k值的选取:当k值较小时,预测结果对近邻音频样本敏感,若近邻音频样本点为噪音点,则预测错误,因此k值过小会导致模型过拟合;当k值较大时,虽模型相对具有鲁棒性,但近邻误差偏大,距离较远且与预测音频样本不相似的点同样影响预测结果,使其偏差较大,导致模型欠拟合。因此,需通过交叉验证的方式,选取较小的k值同时不断增加k值并计算验证集的方差,最终找到合适的k值。

对于距离的计算:音频样本空间内两点之间的距离量度表示两个音频样本点之间的相似度,距离越短,相似度越高,反之,相似度越低。目前常用欧氏距离作为距离量度方式。

Sordo[14]使用了kNN 模型,首先为待测音频检索一组近邻音频样本,通过加权投票方式选择音频所对应的标签。对于样本的投票权重如式(6)所示:

其中,t表示标签,n表示标签排名。该函数为最远的音频样本点提供边际权重,因此最近的样本点对排名较高的标签影响较大。

kNN 为监督学习模型,音乐的标签类别是已知的,其通过对已分类的音频数据进行训练学习,找到不同标签的特征后,再对待测试的音频数据进行分类。对比SVM 模型,kNN 模型效率更高,复杂度更低,避免每个标签均进行训练,更适合多标签音乐自动标注任务,但音乐片段由成百上千个帧组成且不同标签的帧级特征可能会彼此相似,这会限制kNN鉴别的能力且预测结果存在不均衡性。

3.1.3 条件随机场

条件随机场(conditional random field,CRF)模型是无向概率图模型,为了获取更多音频片段信息且考虑相邻音频的标签信息,将CRF 模型引入音乐自动标注任务中以更准确地表达标签与音频片段之间的关系。普通分类模型是将(x,y)看作一个样本,其中x为音频特征,y为标签;CRF 模型为序列分类问题,将(x1,x2,…,xt,y1,y2,…,yt)整体看作一个样本,x为音频特征序列,y为与之对应的不同时刻或位置标签序列。条件随机场如式(7)所示:

其中,λK、ul表示对应权值;tk表示转移特征函数,依赖于当前与前一个位置;sl表示状态特征函数,依赖于当前位置;Z(x)表示归一化因子。

局部音频片段预测的标签不能代表整首音乐的标签,Wang 等人[37]将CRF 模型应用于音乐自动标注中,首先优化CRF 能量函数来计算每个片段所对应的互斥标签集合,并不断更新标签直至标签不再变化,将最后一次迭代出现次数最多的标签作为最终标注结果。能量函数如式(8)所示:

其中,wl表示从训练音频数据中学习到的标签l的回归参数。

其中,xpwi与xqwi表示加权数;Dist()表示欧式距离;σ表示计算距离的尺度超参数;N=NS⋃N0,NS表示相同音乐分割的相接片段,N0表示相邻分割的时间重叠片段。

其中,c表示控制音乐级标注与音乐片段级标注的一致性强度的权重参数;η(·)表示指示函数,满足条件时值为1,反之为0。

CRF 模型相较其他判别模型可以通过序列化的形式对音乐进行标注,且CRF模型为无向图,更充分地提取音乐上下时刻信息作为特征,然而该模型复杂度高,训练时收敛速度较慢。

对于音乐自动标注任务来看,判别模型实际上是将多标签问题转化成二分类问题,即对N个标签进行N次分类,其最大优势是可以直接学习音频之间的差异进行标注预测,相较于生成模型,灵活性较高。但也存在缺点:(1)音乐自动标注标签类别多,在各学习模型上存在不均等表示,有时会产生数据不平衡的问题,导致模型性能下降。(2)音乐自动标注需采用一对多的方法对每首音乐进行多种标签类别标注,然而对每个标签进行二元决策会使效率下降,并且导致标签之间相互独立并不能互相关联。

3.2 生成式模型

生成模型的特点是学习数据本身特性从而做出分类。在音乐自动标注中,生成模型将音频特征作为特定概率下的样本,学习音频特征与标签的联合概率分布。

3.2.1 高斯混合模型

高斯混合模型(Gaussian mixture model,GMM)是一种聚类算法,由K个子高斯模型混合而成,高斯模型使用高斯概率密度函数(正态分布曲线)精确地量化事物,将一个事物分解为若干高斯概率密度函数形成的模型。音乐可被多种类别标签定义,其音频数据的分布并非单一椭圆形状,单个高斯模型无法很好地描述多标签分布,因此将高斯混合模型应用于音乐自动标注中,以此量化该分布。GMM模型核心思想是将音频特征数据看作从各子高斯概率密度函数中生成,首先计算所有音频特征对各个子模型的高斯概率密度函数;其次根据各子模型的高斯概率密度函数计算各子模型参数并不断迭代更新直至最优;最后将音频特征xi按照GMM模型聚类划分到子模型概率最大的簇中。GMM 的概率分布如式(13)所示:

其中,γik表示第i个音频特征为第k个子模型的概率。

Turnbull等人[38]采用数据集标签在音频特征空间上训练GMM 模型,采用学习好的模型直接预测标注,并将EM算法作为参数估计。音频特征的标签中每个标签的后验概率如式(15)所示:

其中,X={x1,x2,…,xT}表示音频片段s中的特征向量袋;P(i)=1/|V|,i=1,2,…,|V|,表示词汇wi被标注的先验概率,每个词汇wi看作一个标签,wi∈V;P(X)表示音频的先验概率;P(X|i)表示音频特征空间中每个标签wi的概率分布。

然而该方法并没有考虑词语之间的潜在关系,Chen等人[39]使用类似方法并针对每个词语的反义词也学习了GMM,从而更进一步找到每个标签之间的相关性。反义词集如式(16)所示:

其中,Y表示标注权重矩阵,根据标注权重Y对GMM 进行建模;Y(i)与Y(j)是在wi与wj的相关音频片段中收集到的标注权重构成的标注向量;corr(·)表示相关系数函数,若1-Y(i)与Y(j)之间相似度大于θ1,则wj属于wi的反义词集。定义维数为|V|×|V|的词-反义权重矩阵,以此构建反义词级GMM。词-反义权重矩阵如式(17)所示:

相较于第2.1.2 小节中K-means 算法,二者均为聚类算法且均需迭代执行,然而二者需计算的参数不同,K-means 需计算质心,即直接给出音频特征属于哪个标签;而GMM则是计算各子模型的高斯分布参数,即给出每一个音频特征由哪个子模型生成的概率。音乐自动标注的标签分布不平衡,对于GMM模型来说,可生成不同大小的形状簇,且少量参数就能较好地描述音频特性。然而GMM 模型每一步迭代的计算量较大,收敛较慢且子模型标签数量难以预先选择。

3.2.2 狄利克雷混合模型

狄利克雷混合模型(Dirichlet mixture model,DMM)也是一种聚类算法,即狄利克雷分布混合模型。文献[39]全面考虑了缺失反义词标签的问题,但没有对每个标签整体性进行关联。Miotto 等人[40]提出使用DMM 模型标注音乐的新方法,基于不同的模型(GMM、SVM 等)生成标签权重,即语义多项分布(semantic multinomial distribution,SMN),再使用DMM 对每个标签的SMN 进行建模。DMM 模型可以进一步根据SMN中共同出现标签的可能性调整每个标签的SMN 权重,从而提高模型性能,结果表明DMM与GMM相结合效果最好。SMN的DMM概率分布如式(18)所示:

其中,Γ(·)表示伽马函数。

DMM模型是建模过程中的第二个附加阶段,通过对标签之间的上下文关系进行建模来提升音乐自动标注性能。对比GMM,在标注过程中,GMM模型仅仅是在对单独标签进行独立建模,而DMM可以通过利用上下文相关信息来更加细化第一阶段的标注,并且DMM模型将在给定由其他共现标签提供上下文信息的情况下调整(减少或提高)每个标签的权重,进一步增强后验概率估计,提高标注准确率。

生成模型下的音乐自动标注可以更好地学习每个标签与音频之间的相关性,与判别模型相比,生成模型只训练与语义标签相关的正样本使模型直接对音频分类,进而标注预测,而判别模型还需训练负样本来区分音频类别,增加了时间成本。然而生成模型也存在缺点:(1)每个标签都需转化成独立的语义模型进行训练,当标签存在多种类别时会使训练过程复杂,灵活性较差。(2)不同标签之间有关联时,可能会丢失上下文音频信息。(3)数据集较大时,生成模型的标注性能劣于判别模型。Wang等人[41]结合生成模型和判别模型的优点,将生成RBM与判别RBM相结合组成混合判别玻尔兹曼机(hybrid discriminative restricted Boltzmann machines,HDRBM)进行训练,从原始音频中提取音色与旋律特征,加入Dropout正则化方法防止过拟合,对比SVM与MLP,正则化的HDRBM在MTAT数据集上的性能分别提高了2.9%、3.3%。

虽然机器学习方法目前取得了成功,但仍有一定的局限性:(1)音乐具有连续的非线性特点且音乐语义信息也极为复杂、抽象,而分类器是浅层结构,并没有丰富的非线性变换,同时浅层结构很难提取到复杂的语义信息,因此通过分类器来提高模型性能有一定阻碍。(2)对于分类器的滤波器选取、参数调整等问题,有时需要人工调整,这会消耗大量的时间成本且性能不稳定。(3)音乐以分钟来计算,而短时信号的时间间隔过短不能包含整首音乐。同时,单独音频片段的标签不能代表整首音乐,需长时间训练才能发现深层次信息。表4 总结了基于机器学习的不同模型方法对比。表5 给出了基于机器学习模型的不同方法性能对比。

表4 基于机器学习的不同模型方法对比Table 4 Comparison of different model methods based on machine learning

表5 基于机器学习模型的不同方法性能对比Table 5 Performance comparison of different methods based on machine learning models

4 基于深度学习的音乐自动标注方法

随着深度学习的逐步发展,如今不同的神经网络已成功应用于自然语言处理[42]与计算机视觉[43]等领域,研究人员使用卷积神经网络、循环神经网络等不同网络提高相关任务性能,并逐渐将其应用于音乐自动标注任务。

音乐数据信息通常以多种模态存在,下面对不同模态下的音乐自动标注研究成果与特点进行梳理和分析。音频信号是音乐主要组成部分,目前大部分工作是在音频模态下进行,文章重点围绕面向音频模态的音乐自动标注进行深入探讨。

4.1 面向音频模态的音乐自动标注

4.1.1 卷积神经网络方法

卷积神经网络(CNN)模型可以分层学习特征且在时间和空间上具有平移不变性,在音乐自动标注中,可利用CNN 不变性来克服音频信号本身的多样性。大多数音乐自动标注使用CNN或其变体对音乐进行标注预测。CNN 主要由输入层、卷积层、池化层、全连接层和输出层所构成,其中卷积层、池化层与全连接层统称为隐藏层。通常将音频信号的原始特征(梅尔频谱图、原始波形等)作为CNN输入,通过CNN隐藏层表示音频原始特征与标签之间的映射关系。其中,卷积层与池化层可学习到深层次且合适的特征向量,全连接层用于预测音频所标注的置信度,采用ReLU作为除输出层之外每层卷积的激活函数,并使用sigmoid函数将输入压缩在[0,1]之间,在每次卷积之后与激活之前添加批归一化,并在每个池化层之后添加Dropout。

使用CNN模型一定程度上避免寻找与任务相关的音频特征问题。Dieleman 等人[28]将经典1D-CNN模型应用于音乐自动标注。为了使特征与相关任务更好地关联,Choi等人[20]提出了一种基于深度全卷积网络模型(fully convolutional networks,FCN)。FCN模型仅由卷积层与子采样组成,卷积核大小尺寸为3×3,没有任何全连接层,通过共享权值来减少参数数量,更大程度发挥CNN的优势,该方法的性能值超过1D-CNN模型的0.012。FCN不仅最大化卷积网络优势且系统不易过拟合,虽可以减少参数数量,但它将全连接网络变成卷积层的操作使音频空间缺乏一致性,进而导致模型不能精细地对音乐进行标注预测。Tang[44]为了保留音乐中的空间特征,将胶囊网络应用于音乐自动标注,相较CNN方法,胶囊网络可以通过协议路由机制提取空间特征来进行更全面化预测。

目前,基于CNN 模型的音乐自动标注主要对以下方面进行研究与探索:

(1)提高模型性能与计算效率。音乐自动标注任务最根本的目标是提高模型性能,而一些模型会存在效率低、计算量大等问题,高效率地提高系统性能也是目前所攻克的问题。Kim等人[45]在文献[29]的基础上对样本级CNN 模型堆叠ResNet 和SENet,以此来进行多级特征聚合,对比原始样本级CNN模型,该方法在MTAT 数据集上标注性能提高到0.911 3。堆叠多层的样本级CNN 模型可提高系统性能,但模型的层数太深使计算量过大。Yu等人[46]将WaveNet[47]块与SENet块的分层卷积层相结合,改进后的模型不仅可以扩大感受野,还可以提高计算效率,训练时间更少,模型也获得更多层次的特征向量。

(2)获取更多特征信息。音乐自动标注需要对整首音乐预测标签,仅通过对几秒钟的音乐片段附上标签显然不具有整体性。针对此问题,Lee等人[48]使用不同大小的CNN 捕获局部音频特征,并从每一层卷积层中提取音频特征,将它们聚合为长音频,实验证明这种方法在多层级、多尺度的音乐自动标注上是有效的。Liu等人[49]使用FCN模型架构,在输出层前添加累积层,累积层是通过添加高斯滤波器实现的,其作用是随着时间的推移总结前一层所做的预测,更有效地捕获整体音乐的上下文信息。

(3)解决标签噪音问题。音乐标签在音乐自动标注中的作用越来越重要,而在多标签音乐数据集中存在噪音问题。Choi 等人[50]对噪音的产生做深入研究,在MSD数据集上对标签噪音进行分析。首先,通过标签共现方法发现,只有39%的“独立摇滚”标签被同时标注为“摇滚”标签,其余标签则会因缺少标注信息被标注为“非摇滚”标签,因此缺少标签是造成噪声的原因之一;其次,对该数据集中子集(正确标注)的标签进行噪声统计与精确率、召回率计算,实验表明标签噪声主要分布在负标签上,且不同标签的噪声差异与标注能力有关,标注能力越低的标签在数据集中存在更多错误的负标注;最后,使用不同网络结构对不同类别的不同标签测试,证明了标签噪声会对网络训练产生不良影响。由上可知,标签分类体系异构、不同主观性标注使信息不足等情况会导致标签缺失、标注较差等问题,进而使标签产生噪声。并且由用户标注的部分数据集标签会出现标签标错、某类别标签过度使用、样本标签不平衡等问题,使其产生弱标注,同样会导致标签产生噪音。Wang等人[51]提出标签深度分析法,通过卷积操作与表示学习方法来降低噪声数据,以此挖掘标签和音乐之间更深层的关系。Lu 等人[52]提出了双教师-学生模型,第一个教师模型过滤掉明显标签噪声,第二个教师模型防止学生模型在其余数据上过度拟合标签噪声。该方法提高了标签准确性与泛化能力,并且两个教师模型监督一个学生模型的方法最大程度上保护学生模型不受标签噪声的影响。损失函数如式(20)所示:

其中,Lmask表示平衡掩蔽方法,其目的是防止模型被负样本主导,缓解数据平衡的问题;Lcon表示教师模型所提供的一致监督性;β(T)表示随迭代次数T变化以平衡噪声数据和一致性约束之间的权重。Lmask、Lcon、β(T)分别如式(22)、(23)、(24)所示:

其中,βmax是β(T)的上限;T0表示加速迭代次数;γ表示控制加速曲线斜率。

以上方法均是对网络模型进行改进,在解决噪音的同时提高音乐自动标注系统的性能,然而这些方法的系统性能均取决于训练数据的质量,且在测试时也仅将“用户最常使用的”前50 个标签作为参考,这会使一些冷门标签得不到使用,导致标签出现长尾形状。为了使每首音乐与更多潜在相关的标签关联起来,提高标签利用率,Lin 等人[53]在样本级CNN 模型上构建标签传播方法,标签传播可为音频生成相关标签并移除不正确标签,继而减少噪声标签的影响。首先利用播放列表这一音乐背景在相邻歌曲之间共享标签,并通过多任务目标函数优化自动标注模型,该方法将之前经常使用的前50 个标签扩展到1 000个标签。给定输入音乐s和被选择的播放列表,被选择音乐s′的概率如式(25)所示:

其中,d(s′,s)代表输入音乐s与被选择音乐s′之间的距离;r表示概率搜索范围,即控制播放列表p~ 中下一个相邻音乐被访问的概率,r=0 即传播更多附近音乐标签,反之亦然。

损失函数如式(26)所示:

其中,第一个求和项表示原始二值交叉熵;第二个求和项表示支持二值交叉熵;P(s′|s)表示支持目标函数,如式(27)所示:

然而该方法会部分存在错误标注标签,导致音频与标签之间存在弱连接问题,同义词标签分配给不同对象,进而使标签在数据集中链接到不同音频,导致相关标签与音频之前的链接丢失问题,这些问题均会使标签产生噪声。Lin等人[54]在样本级CNN、FCN与CRNN三种模型上利用所有的音乐背景来确定相似歌曲,进一步扩大标签传播范围,并将成本敏感值γ与速率α纳入损失函数中,使损失函数归于无关(负)链接并通过调整相关(正)链接对无关(负)链接的权重来增强鲁棒性,继而减少标签缺失。损失函数如式(28)所示:

其中,ys∈{0,1}|T|,若对应标签与音乐s相关则为1,反之为0,ys[t]=1(0),则音乐s与标签t相关联的y~s[t]相关性增加(减少);α∈[0,1]表示传播速率;γ∈[0,2]表示正链接的敏感值,2-γ表示负链接的敏感值;P(s′|s)表示给出音乐s,其他音乐选为s~ 的概率,如式(29)所示:

其中,U为上下文信息元素集合;Us是U的子集,只包含与s连接的元素;Su是链接到u的一组音乐;Us~是链接到s~ 的一组上下文元素。

为验证在不同影响下的标注性能,研究人员对不同模型进行对比实验。Won 等人[55]针对音乐自动标注中不同模型的软件版本与数据集不同的问题,进行了有关时间拉伸、音调偏移等泛化能力的实验,实验表明谐波CNN[56]在所有方面都表现出了最好的性能与泛化能力。通过以上讨论与分析可知CNN可以解决不同问题,面对提高模型性能与获取更多特征信息问题,需通过堆叠滤波器深度或增加不同滤波器来扩大感受野,进而可提取更多复杂特征,然而这些方式虽在一定程度上提升性能,但会使层级太深,需要的硬件设施需更强大,并且提升效果并不明显。面对噪音问题,则主要有两种解决思路:(1)调整模型架构,该方法需调整模型参数或增加功能性模块来提高模型的鲁棒性,然而该方法仅是通过网络模型过滤掉噪音标签,对于标签的弱标注问题并未得到根本性解决。(2)改善标签弱标注问题,该方法在原有模型架构的基础上对标签的标错、标少等问题进行处理或增加标签的使用率来进一步提高标注正确性,进而解决由弱标注产生的噪音问题,然而当所有标签均与上下文进行关联时会导致标注性能下降,因此还需进一步改进。CNN 通过最大池化增加整体感受野的大小,以此来捕获局部和全局特征,它需要学习的参数比其他网络架构要少很多,且可降低模型复杂度,增强音乐自动标注泛化能力,避免手工提取特征带来的误差,提升系统的标注性能。但CNN 在特征提取过程中会损失结构信息且CNN实际感受野远小于理论感受野。另外音乐是序列数据的形式,一些声学特性标签局部出现就可感受到(例如乐器类别标签),而一些其他特性则需长序列感受(例如情绪、流派类别标签),CNN更善于挖掘语义中的深层次特征,在捕获长距离特征方面性能较弱,并且CNN 模型设计成本较高。表6 总结了基于CNN模型的不同方法。

表6 基于CNN模型的不同方法对比Table 6 Comparison of different methods under CNN-based model

4.1.2 序列建模方法

音乐具有关联性与连续性等特点,需对音频数据进行序列化处理,循环神经网络(recurrent neuralnetwork,RNN)将隐藏层之间的节点连接,保证前一时刻的信息可以传递到下一时刻,避免信息丢失[57-58],从而更好地处理时间序列数据。Choi等人[59]将RNN应用于音乐自动标注,使FCN 与RNN 相结合,得到CRNN。为了获取全局特征,将RNN 替换最后一层CNN卷积层进行特征聚合,剩余的CNN提取局部特征,对比FCN,该模型系统性能值提升至0.862。虽然CRNN的性能有所提升,但对于长时间的序列建模问题,需要CNN堆叠较深的卷积层,这使时间分辨率下降,且长序列RNN存在计算量大、梯度消失或爆炸等问题。RNN 的许多衍生模型,例如长短期记忆网络(long short-term memory,LSTM)、门控循环单元(gated recurrent unit,GRU)可以避免这些问题。Song等人[60]使用五层GRU,并将自注意力机制添加到最后一层CNN 中提高音乐自动标注性能。GRU 作为RNN 的变体,解决了RNN 中梯度消失及爆炸的问题并减少参数,更好地处理时间序列。Wang 等人[61-62]将GRU与CNN 融合,首先将原始波形与梅尔频谱图作为模型的输入,以此对音乐进行表示学习,其次使用Bi-LSTM提取两种输入之间的时序相关性,最后使用注意力机制聚合音乐片段特征向量来预测音乐标签。上述模型均将注意力机制与RNN及衍生模型结合来捕获更多特征信息,注意力机制参数少,复杂度低,可以捕获长时间特征且关注长特征中的特定部分[63],将二者结合可进一步提高标注性能,但RNN 及衍生模型存在序列依赖的问题,训练速度受到限制,并行计算能力不强。为此,Won等人[64]提出了Transformer模型架构,利用半监督方法通过训练学生模型来提高标注性能,当增加知识扩展与知识蒸馏方法时可进一步增强模型性能,使用知识蒸馏的性能值在MSD数据集上高达0.921 7,优于之前模型。Zhao等人[65]使用Transformer 的衍生模型Swin-Transformer,利用自监督方法进行预测标注,Swin-Transformer 可在分层分割的频谱图中提取多分辨率的时频特征,提取更多有意义特征。Transformer 模型架构对比RNN及衍生模型,训练时间更少,可以在整体上处理音频片段而非依赖之前音频信息,不存在丢失音频特征信息的问题;对比CNN模型方法,Transformer模型能够利用自注意力捕获长距离依赖关系,长距离特性使模型捕获全局信息的能力更强,此外Transformer 模型中的多头注意力和位置嵌入等功能均可提供不同音频之间的信息。然而Transformer模型虽然能够捕获更加丰富的全局上下文信息,但是不能有效应对音乐的实时变化,且训练需要大量的时间成本,不能满足实时性需求。

使用序列建模方法从更符合音频知识的角度学习音乐序列特性,对音乐自动标注进行改进。但由于音乐具有时序性,音乐会随着时间的变换而变化,细粒度的标注很难获取。表7 总结了基于序列建模的不同方法对比。

表7 基于序列建模的不同方法对比Table 7 Comparison of different methods under sequence-based modeling

面向音频模态的音乐自动标注是目前人们解决问题最常使用的方法,但音乐的多样性仅通过音频提取数据信息仍不够全面。表8 给出了基于深度学习的不同方法性能对比。

表8 基于深度学习的不同方法性能对比Table 8 Performance comparison of different methods based on deep learning

4.2 面向多模态的音乐自动标注

音频模态下的音乐自动标注只能提取声音的信息特征,而对于音乐来说,歌词的文本信息与音乐视频的图像信息也是关键特征之一,为了提取更全面的特征,研究人员使用音频与文本结合的方式对音乐进行多模态标注。Yang[68]在音频模态下使用CNN模型完成流派与乐器类别的标注并提出不同的卷积方式,其中卷积方式K4是将局部横向卷积核滑动,其覆盖区域包含一个频率和多个时间帧,实验证明K4卷积方式的性能最佳。在歌词文本处理方面使用了ALBERT 得到歌词向量表示,再通过注意力机制和TextCNN 获得全局信息,通过标签词典获得局部特征,进而对情感进行标签标注。该方法在文本与音频模态均进行了标注,但并没有将两种模态做到真正的融合。Han[69]在音频模态中将CNN 与LSTM 相结合形成混合网络结构,在文本方面使用CBOW(continuous bag of words)模型对语料库进行无监督训练,构建词嵌入字典,查找对应词向量,并按照歌词内容对词向量进行顺序拼接作为神经网络的输入,最后为防止两种模态在融合时出现冗余相差较大等问题,对输入音频特征加入规范化操作。结果表明,多模态音乐自动标注的性能值达到0.815 6,比音频模态的性能提升了0.022,比文本模态提升了0.102 8。Wang 等人[70]在音频模态下使用CRNN 模型,文本模态使用卷积循环注意分层注意循环神经网络(convolutional recurrent attention hierarchical attention recurrent neural network,CRAHARNN),利用早期融合与晚期融合两种方法将歌词特征与音频提取特征相融合。早期融合是将不同的数据特征组合输入到同一个模型,晚期融合是用不同来源的数据训练各自的预测模型,再利用融合函数对预测值进行融合,最后采取多任务学习方法来学习标签之间的相关性。实验证明,该方法比仅使用音频数据的单任务学习性能更好,且早期融合方法性能略优于晚期融合。

以上方法表明,音频与文本模态相结合的多模态是通过文本模态对标签进行处理或者对情感语义词进行挖掘,音频模态主要对音乐标注流派、乐器等类别标签,且需通过整段音频进行标注确认。多模态获取到的特征比单模态更全面,但当两种模态相结合时,音频信息的冗余度、数据量与浅层特征向量维度比文本信息大,学习模型会着重学习音频特征导致文本信息丢失,进而使模型成本较大,仍有很大的提升空间。而在电影或音频视频中可以通过视觉场景来描绘潜在的音乐情感,因此Avramidis等人[71]将音频与图像模态结合,提出VCMR(video-conditioned music representations)模型,使用自我监督的多模态框架在音乐音频上进行训练,并以官方视频发布中的伴随视觉背景为条件,利用音乐视频的上下文信息来增强音频音乐表征。表9 总结了多模态下不同方法对比,表10给出了多模态中不同方法性能对比。

表10 多模态下不同方法性能对比Table 10 Performance comparison of different methods under multimodal

深度学习下的音乐自动标注方法与之前的模型相比,具有非线性的特点,且基于深度学习模型提取到的音频特征泛化能力很强,目前大多数研究均基于深度学习模型展开。然而,深度学习模型也存在局限性:(1)模型对硬件设施的依赖性较大,硬件成本较高。(2)无法跳出传统的深度神经网络模型,很难设计性能高、泛化能力高的模型框架。(3)对模型结构的调参以及如何使模型收敛缺乏理论指导依据。基于此,大部分研究集中于对模型结构的改进。

根据上述音乐自动标注性能可以看出,最好的系统AUC 值为0.92 左右,且每一次的上升幅度并不明显,对比音乐流派分类的分类准确率目前已高达0.967[72],其主观原因有:(1)评价指标不同。准确率是音乐流派分类的主要评价指标,而AUC 值是目前音乐自动标注的主要评价指标。不同评价指标对模型的评判标准不一样,且准确率虽可作为音乐自动标注的评价标准,但音乐自动标注的数据集样本存在不平衡问题,当某一类样本数量明显过大时,其类别会成为影响准确率的最主要因素。(2)数据集不同。大多数音乐流派分类使用GTZAN 数据集[73],而音乐自动标注大多在MTAT数据集下进行。GTZAN数据集标签均衡且仅有10 个流派类别标签,每类流派标签均有100首音乐作品,MTAT数据集有上万条音频数据且标签分配不均匀,因此当数据量不同时,计算量与效率也不同。

其宏观原因可能有:(1)起步晚。音乐自动标注的第一次出现是2007 年,而流派分类早在2002 年就已出现,音乐自动标注的前期研究较少。(2)类别多。音乐自动标注是多标签分类任务,会出现计算量大、类别标签互相依赖等问题,导致系统性能提升不够明显。(3)针对性弱。由于音乐自动标注需要为多种类别进行分类,会出现效率低、输出空间爆炸增长等问题,因此当完成自动标注任务时,不会仅针对性能方面进行改进,需更全面地考虑可能发生的情况。虽然音乐自动标注系统性能提升效果不够明显,但发展前景与实际应用价值高,并且逐步提升的系统性能也为此带来了很大动力。

5 音乐自动标注常用公开数据集与评价指标

5.1 音乐自动标注常用公开数据集

音乐自动标注数据集包含大量音频片段与多种类别标签,是进行音乐自动标注的数据基础。

(1)MTAT数据集

MTAT 数据集是音乐自动标注领域最常使用的公开数据集[74]。该数据集共有25 863条音频数据,每条数据大约29.1 s,均以MP3 格式发布,比特率为32 Kbit/s,采样率为16 kHz,音乐标签共188个,其中包括流派、情感、乐器、年代等标签。数据集被分为16 个文件夹,前12 个文件夹为训练集,第13 个文件夹为验证集,剩余3 个文件夹为测试集[75]。它通过Tag A Tune闯关游戏向玩家收集音乐标签,只有两名玩家同时给出相同的音乐标签,游戏才能通关。游戏设计者通过该游戏收集到大量音乐标签并整理成MTAT数据集,该方法收集到的标签也提高了标注准确性。

(2)MSD数据集

MSD 数据集是目前世界上最大的音乐数据集,也是目前音乐自动标注常用数据集之一[76]。该数据集是世界各个音乐社区音乐数据集的集合体,包括SecondHandSongs 数据集、musiXmatch 数据集、Last.fm 数据集、tagtraum 流派标注数据集等,它提供了免费的音频和元数据。该数据集共有100万条数据,共占用了280 GB 的存储空间,其中每条数据约1 MB,均以MP3 格式发布,比特率约64~128 Kbit/s,采样率约22 kHz或44 kHz。音乐标签包括流派、年代、艺术家、专辑封面、歌曲名称、歌词、用户听歌历史等标签。

(3)CAL500数据集

CAL500数据集由Turnbull等人于2008年创建[77]。由于其他数据集是听众用户标注,用户的音乐专业性不强,出现了标注错误、很少情况考虑为音乐标注负相关标签等问题,这些问题使数据集产生“弱标注”,导致数据集中标签-音频矩阵的0值代表“未知”而非“不适用”,而学习模型会将“未知”标签认为是“不适用”的负相关标签从而产生噪音。而CAL500数据集收录了由500 名西方艺术家创作的500 首西方流行音乐,是“强标注”数据集。该数据集共有1 700 条音频数据,包含174 个音乐标签,分别为流派、情感、乐器、场景用途、人声特点等标签,且对音乐正相关与负相关的属性标签均有描述。CAL500数据集提供了两种标注规则:

①二元标注。根据基本事实标注标签,若标签已标注该音乐,则标签标注值为1,反之,值为0。

②软标注。每个音乐片段均有3 人以上依照标注规则标注。首先,标注人员认为某标签符合音乐片段(正相关)则将标注值附为1,反之(负相关),值为-1,若不确定,值为0。其次,将所有的标注值取平均,得到音乐对应标签的最终权重,若权值为负,则取值0。

(4)MTG数据集

MTG 数据集是最新用于音乐自动标注的数据集[78],由Jamendo平台在2019年构建。该数据集包含55 701条数据,每个片段数据最少在30 s以上且均以比特率为320 Kbit/s的MP3格式发布,较大的比特率使编码质量更高,音质更好。音乐标签共195 个,包含流派、情感、乐器等,所有标签均由被收录音乐的艺术家所提供,提高了标签准确性与专业性。由于数据集是最新发布,仅有少数研究人员使用该数据集验证模型性能。

由于多标签音乐自动标注的输出集合标签高达2k个,如此庞大的数据量使计算成本急剧加大,需限制标签数量来缓解该问题。因此,在音乐自动标注数据集中通常使用“前N个用户最常使用”的前K个标签作为标注依据[79]。表11归纳了常用公开音乐自动标注数据集。

表11 公开音乐自动标注数据集总结Table 11 Summary of open music automatic annotation datasets

5.2 音乐自动标注评价指标

音乐自动标注评价指标是预测模型优劣最直观的表达,目前有两种类型评价指标。

(1)二元评价

二元评价是将每个标签均看作一个二分类问题,即判断标签是正确或错误,从而预测正确的概率。二元评价通常采用准确率(Accuracy)、精确率(Precision)、召回率(Recall)、F1-measure 值作为模型的评价指标。

准确率定义如式(30)所示:

其中,TP(true positive)表示音频样本属于正例且预测为正例,TN(true negative)表示音频样本属于负例且预测为负例,FP(false positive)表示音频样本属于负例但预测为正例,FN(false negative)表示音频样本属于正例但预测为负例,TP+TN+FP+FN为音频样本总数。准确率是衡量测试集所有音频预测为正例的比例。虽然准确率可以判断总体的正确率,但在样本不平衡的情况下,不能作为准确的衡量标准。

精确率定义如式(31)所示:

精确率是衡量学习模型预测为正例的音频中真正正例的比例。精确率可使预测结果准确性进一步提升。

召回率定义如式(32)所示:

召回率是衡量真正正例中被学习模型预测为正例的比例。

F1值定义如式(33)所示:

其中,P为精确率,R为召回率。F1 值与精确率和召回率密切相关,二者值越高,F1 值越高,但从上述公式可知,两者是相互制约的关系。因此,F1 值是精确率与召回率的调和均值,且F1值越高,模型越有效。

二元评价是判断预测音频样本正例的概率,根据需求为学习模型设置阀值,若概率大于阀值则为正例,反之为负例。然而,当阀值较小时,预测为正例的概率则会增大,使数据产生不平衡性,仅用二元评价指标不能准确地评估音乐自动标注任务的性能。

(2)多元评价

为了排除阀值对标注预测的影响,通常将多元评价作为音乐自动标注模型性能的评价指标[80]。

ROC 曲线又称接受者操作特征曲线,既可体现阀值不同时的分类效果,也可衡量模型类别分布的性能。它是以假正率(false positive ratio,FPR)为横轴、真正率(true positive ratio,TPR)为竖轴构成的坐标系,将得到的(FPR,TPR)坐标点连接起来形成ROC 曲线。ROC-AUC 是ROC 曲线的下方面积,仅观察不同ROC 曲线的凸起程度很难判定模型性能,需使用ROC-AUC值来量化ROC曲线,ROC-AUC的值越大,音乐自动标注性能越好。当正负样本分布变化时,ROC曲线有很强的鲁棒性,可避免样本不平衡问题,但正因为不会由样本的改变而影响判定,导致数据偏差较大,所以引入PR-AUC 作为ROC-AUC的辅助评价。

假正率定义如式(34)所示:

假正率是音频样本属于负例但预测为正例与负例实际数量的比例。

真正率定义如式(35)所示:

真正率是音频样本属于正例且预测为正例与正例实际数量的比例。

PR-AUC 则是P-R 曲线的下方面积。PR 曲线是以召回率为横轴,精确率为纵轴的坐标点的连接线。曲线越接近右上角,模型性能越好。PR 曲线对正样本较敏感,当数据样本不平衡且主要关心正例时,PR-AUC的性能准确值优于ROC-AUC,然而当评价指标没有明确细分的情况下,通常将AUC 看作ROC-AUC。

MAP(mean average percision)是均值平均精度,是所有音频中所有类别的AP 的平均值。AP 为平均精度,是所有音频中具体某类的PR曲线下的面积。

对于音乐自动标注任务来说,单个音乐标签标注所有音频片段的概率很低,这会使负样本数量大于正样本数量,当样本预测错误时会更敏感地影响模型性能。而AUC有较强的鲁棒性且可用一维数字直观明了地表示模型性能,因此,ROC-AUC 与PRAUC是音乐自动标注的常用评价指标。

6 挑战与展望

通过上述对音乐自动标注的深入分析可知,音乐自动标注是丰富语义标签的有效解决方案之一,也是MIR 领域内的研究热点与实用技术,但目前还处在前瞻性阶段且面临一些挑战:

(1)音乐标签利用率低。根据历年实验发现,所使用的标签往往只有数据集的前50 个常用标签,而超过80%的标签与不到5%的音乐相关联,导致标签出现长尾分布形状。如何使数据集中的所有标签都能被音乐相关联,提高标签利用率值得进一步研究。在之前方法中,研究人员通过有监督的标签传播方法提高标签利用率,为此,可使用半监督与无监督方法对标签进行传播,并利用每个标签之间的相似度获得上下文信息使标签进一步关联,最后调试模型的学习率、动量或批量大小确定影响因素。

(2)对文本标签操作实施太少。通过梳理目前音乐自动标注研究进展可知,研究人员主要对音频特征进行改进,对数据集文本标签改进甚少,如何处理文本标签使其对模型性能进一步优化还有待研究。Chen 等人[66-67]则对标签进行改进,利用LDA 模型将音乐标签聚类来获取主题类别,运用生成对抗网络中的衍生模型infoGAN 进行训练,以此找到音频特征和标签之间的映射关系,从而实现对歌曲标签的标注。未来,可以使用标签推理等方法进一步使标签学习相关信息,更好地提高标注准确性。

(3)模态提取特征单一。通过分析看出目前大多数研究人员在单一模态下提取特征信息,虽然这些方法在该模态下标注效果较好,但应用范围有所限制。仅有少数研究人员使用多模态音乐自动标注,虽可提取到更加全面的特征,但标注性能不尽如人意,进行特征融合时也出现冗余度大等问题。在未来研究中,可同时增加文本、图像与视频模态信息,例如音乐发布时间、作者所处地理位置或音乐MV 等信息,挖掘更深层次的语义信息,并且可以在不同维度上进行多特征融合,如何在多模态下既能全面提取特征,又能更好地融合各个模态特征,提高标注性能值得深入探索。

(4)数据集单体化。目前大多数数据集都基于单一类别或单一模态进行创建,通用的数据集已经不能对不同国家地区的文化和语言进行正确标注。例如,蒙古族音乐在曲风、演唱方式等方面都具有较强的民族性与地域性,与主流音乐有很大区别。Song[81]对蒙古族音乐创建数据集,在标注的过程中请专业蒙古族音乐人对音乐进行半结构化标注,提高了标注准确率。基于不同地区的差异与文化,构建多元化数据集还需要进一步研究。

7 结束语

通过音乐自动标注,音乐数据信息可与多种类别语义标签相对应,它在MIR 领域中的作用至关重要。即使针对音乐自动标注的研究仍处于探索阶段,但它为后续任务奠定了基础,具有重要的发展潜力,有很大的发展空间。论文对目前音乐自动标注领域的研究进展进行了系统梳理。首先,介绍了音乐自动标注的相关知识;其次,对该领域的音频特征类型及提取方法进行深入探讨,并进一步分析机器学习与深度学习不同模型方法的音乐自动标注分类特点;然后整理了该领域常用的数据集及评价指标并总结其特点;最后指出音乐自动标注所面临的挑战以及对未来的展望。在数字音乐快速发展的时代,音乐自动标注具有广阔的发展前景与应用价值,未来会取得一定的成功。

猜你喜欢

音频标签自动
自动捕盗机
必须了解的音频基础知识 家庭影院入门攻略:音频认证与推荐标准篇
基于Daubechies(dbN)的飞行器音频特征提取
无惧标签 Alfa Romeo Giulia 200HP
基于STM32的自动喂养机控制系统
不害怕撕掉标签的人,都活出了真正的漂亮
音频分析仪中低失真音频信号的发生方法
关于自动驾驶
标签化伤害了谁
Pro Tools音频剪辑及修正