APP下载

情感音乐生成方法研究

2019-04-23

微型电脑应用 2019年2期
关键词:遗传算法向量神经网络

, ,

(同济大学 电子与信息工程学院,上海 201804)

0 引言

随着计算机技术的迅猛发展,借助计算机技术对情感音乐进行分析和生成逐渐成为可能。情感作为音乐的内在特征始终与音乐保持密切的关系。情感音乐生成已经被广泛研究,并在日常生活中有所体现。GhostWriter软件中使用的HERMAN实时音乐生成器,用于生成具有恐怖感情色彩的音乐,其生成的音乐恐怖指数可以调节,用于辅助学生写作恐怖故事。Chih-fang Huang等人通过将音乐情感和季节特征相关联,建立能够与人的情绪发生共鸣的音乐生成器,可以用于调节老人和孩子的情绪[1]。SentiMozart使用面部表情识别人的情感,并分类为愤怒、厌恶、恐惧、快乐、悲伤、惊奇和中立之一,从而为用户生成符合其情感的音乐。文献[2]提出了一种实时音乐生成器,通过调节音乐的情感取向和情感强度控制生成不同的音乐,可以应用于尝试治疗目前难以有效治愈的精神类疾病如。情感音乐的生成具有广泛的应用前景,并逐渐受到重视。

1 音乐情感模型

音乐情感模型中最具代表性的是离散形式的Hevner模型和连续形式的Thayer模型,它们都是通用的音乐情感模型,被广泛用于多种不同目的。除此之外,因为情感音乐生成的一大目的是为了特定的场景生成音乐,这类音乐生成方法通常会使用自定义的专用音乐情感模型,用来满足特定的需求。用于生成带有恐怖色彩音乐的HERMAN中,根据所需的恐怖等级建立模型,用户可以在0到99之间调整输出音乐的恐怖程度。

1.1 离散音乐情感模型

离散音乐情感模型的代表是Hevner音乐情感模型。Hevner模型从音乐带给人的情感体验出发,通过形容词对情感进行较为精确的描述。它是由8个情感类别构成的情感环,如图1所示。

每个扇形部分代表一种情感分类,情感在相邻的类别之间存在着递进的转换关系。

因为该模型使用丰富的形容词贴切的描述了人的情感体验,因此成为被广泛使用的音乐情感模型。同时由于其建立在对音乐具体形式的分析之上,使用时需要根据实际情况调整形容词,以获得最高的心理认同度。

1.2 连续音乐情感模型

连续音乐情感模型的代表是Thayer音乐情感模型,它采用能量与压力两个维度描述情感,如图2所示。

图1 Hevner音乐情感模型

图2 Thayer音乐情感模型

能量指的是从“充满活力”到“疲劳”的不同水平的反应,与个体的生理活性及认知活动的许多方面相联系。压力是指从主观的内部紧张到放松连续体上不同水平的情感反应。在该模型中,音乐被划分为生机勃勃的、令人满足的、焦虑的以及沮丧的四种类型。

Thayer模型采用维度坐标的思想,因而具有比较强的连续性,所体现的情感过渡也就更加自然、平滑,很容易与音乐声学特征中的能量/幅值等关联起来。但是Thayer模型也存在着较大的局限性,人的情感复杂多变,仅仅从能量和压力这两个维度进行描述,并不能完全反映出人们丰富的情感。

2 基本研究方法

情感音乐的主要生成方法可以归纳为音乐元素划分和音乐片段生成两个部分。音乐元素划分将整首音乐、音乐片段或其他可以表达音乐情感的基本单元如和弦映射到音乐情感模型之上。在对音乐元素进行划分之前,通常需要提取音乐元素的特征向量,使用特征向量代替音乐元素本身进行划分。音乐片段生成则是根据所需要的情感,提取音乐情感模型上对应的音乐元素作为素材,生成音乐。

2.1 音乐特征提取方法

从音乐中提取特征的方法是从语音处理中演变过来的。通常将音乐切成一个个连续的小片段,成为音乐帧,然后提取每个片段上的特征,组合在一起形成特征向量序列。也可以将整个音乐作为一个帧,提取特征向量。但由于音乐是典型的随时间变化的序列,一个特征向量往往不能很好的表达整个音乐的情感内涵。

将音乐视为音频是通常会从3个方面提取特征:时域特征、频域特征和倒谱特征。

时域特征是指从每一帧音频信号中得到的时域参数,比较典型的有:能量、平均幅度、平均过零率。

频域特征是指通过短时傅里叶变换将音频帧转换成频域信号后提取的频域参数,比较典型的有:频谱质心、频谱滚降和频谱通量。频谱质心和音频的频率成正比,也与音乐的情感有密切关系。一般拥有积极正面情感的音乐的频谱质心要大于由于负面情感的音乐。

倒谱特性与人耳的听觉特性有关,用来度量人耳对不同声音参数的感知灵敏度,比较典型的是梅尔倒谱系数和感知线性预测倒谱系数。梅尔倒谱系数表明人耳的感知能力与1kHz以下的声音呈线性关系而与1kHz以上的声音成对数关系。感知线性预测倒谱系数则是从物理心理学出发,考虑了耳蜗的分频特性,在语音识别中应用广泛。

2.2 音乐情感划分方法

在得到了音乐特征向量后,就可以进行音乐情感划分。这一阶段的主要工作分为两步,训练音乐情感划分模型和使用音乐情感划分模型。传统的方法主要包括k-近邻法、支持向量机法、混合高斯模型发等。

2.2.1 K-近邻法

k-近邻法是一种直接利用训练集的分类方法。它首先计算待分类样本和训练集样本之间的距离,选出最小的k个样本,然后通过这k个样本进行多数表决,确定其最终类别。K-近邻法是一种非常直观的分类算法。然而其受到训练集样本的分布和k的取值影响较大,结果容易受到干扰。文献[3]提出了一种将k-近邻法与模糊机制相结合的分类方法,区别于在传统k-近邻法中一个样本分配给一个类别后就不再属于其他类别,模糊k-近邻法使用隶属度向量描述样本与所有类别之间的相似性。因为其考虑到了情感感知的主观模糊性,所以有比传统方法更好的效果。

2.2.2 支持向量机(SVM)法

利用支持向量机对音乐情感进行分类,就是在训练阶段找出特征向量高维空间中的最优分类超平面,使得不同类别的样本能够获得最大的间隔。支持向量机可以处理线形或非线性分类问题。对于非线性情况通过核函数将其转化为线性情况。支持向量机使用简单,可有效避免过拟合,在音乐情感分类中取得较好的效果。文献[4]中使用了两个支持向量机,将音乐分类到Thayer情感模型六个子类中,前一个支持向量机用于在唤醒值这一维度分类,后一个用于在情感取向这一维度分类。由于情感描述形容词的主观性,价值取向维度取得的精度要低于唤醒值维度。

2.2.3 支持向量回归(SVM)法

支持向量回归是与支持向量机十分类似的一个方法,它寻找一个平面,使得所有样本距离它最近。文献[5]中同时使用了支持向量机和支持向量回归方法,并对他们的结果进行了对比,支持向量回归取得了更好的结果。值得注意的是,该文中同时对比了支持向量回归在笛卡尔坐标系和极坐标系中的表现,结果表面极坐标系的准确度远高于笛卡尔坐标系。

2.2.4 高斯混合模型(GMM)

高斯混合模型是一种表示样本总体分布包含k个单高斯概率分布的概率模型。文献[5]同时在笛卡尔坐标系和极坐标系中使用了高斯混合模型,极坐标系中的准确率略高。

2.2.5 卷积神经网络(CNN)

卷积神经网络适合处理空间数据,在图像处理中得到广泛应用。他一般由j卷积层和池化层组成,卷积层用来提取局部特征,保持连续性,池化层用来降低维度,提供旋转不变性。通常层数越多学到的越接近图像的整体特征。

音乐一般都被作为一个时序序列识别并处理,但是也可以通过迁移学习的方法将主要用于图像处理的卷积神经网络(CNN)用来识别音乐情感。文献[6]提出了通过卷积神经网络识别梅尔声谱图,实现情感分类。因为梅尔声谱图应用广泛,提取容易,几乎适用于所有声音信号,这种方法很有潜力。

2.3 音乐生成方法

专门针对情感音乐的生成方法比较罕见,本节中介绍的是在音乐生成领域广泛使用的方法。这些方法经过改良也可以用于情感音乐的生成。特别是随着深度学习技术的发展,要使用某种音乐生成算法生成情感音乐,往往只需要建立情感音乐数据集即可,算法本身需要变动的地方很少。

在计算机作曲的发展过程早期,出现过一些作曲算法,如马尔可夫模型法、随机过程法和音乐规则法等,这些方法都有较为严重的缺陷,随着技术的发展人们已经很少使用,在情感音乐生成方面使用的更是非常稀少,故不对它们进行详细介绍。

2.3.1 遗传算法

遗传算法是通过模拟自然界中生物的进化机制而形成的优化算法。将可调整的参数编码成染色体,通过模拟自然界中染色体的交换与变异过程,设计一系列的遗传算子进行进化操作。然后通过适应度函数对种群进行评价,筛选出更加符合特定情感要求的个体,不断重复以上操作直到得出满意的结果。遗传算法是一种全局优化算法,大大减小了寻找情感音乐过程中陷入局部最小情况的可能。

使用遗传算法最重要的是设计适应度函数,因为它直接影响了进化的方向。遗传算法的问题在于,使用固定的规则衡量音乐本身就有一定的难度,正确衡量情感音乐中人的主观感情就更加困难,往往会由于适应度函数的设计不合理造成算法结果不理想。

2.3.2 循环神经网络(RNN)法

循环神经网络是将传统的神经网络在时间维度上进行扩展而得到的一种全新的网络结构,传统神经网络中后层网络仅接受前面一层网络的输入,而在循环神经网络中,当前层还有接受上一时刻当前层的输出。循环神经网络这一特殊的网络结构使得神经网络能够学习到整个序列的特征,故而在处理文本或音乐等具有明显相关性的序列时具有明显优势。

在使用循环神经网络生成音乐时,通常会先进行采样或音符分割,一般的音乐是以四分音符的持续时间为一拍,时间最短的音符一般可以选取八分音符或十六分音符。

3 改进研究方法

本文在2.3中总结了常用的情感音乐生成算法,但这些算法都有各自的缺陷。随着音乐生成算法和人工智能技术的发展,许多改进方法被提出。

3.1 交互式遗传算法

对于传统遗传算法不能很好的衡量人主观情感的问题,可使用交互式遗传算法来解决。交互式遗传算法通过将计算机交互技术与遗传算法相结合,使用人的主观情感感受全部或部分替代遗传算法中的适应度函数,弥补了传统遗传算法的不足[7]。文献[8]设计了基于交互式遗传算法和KTH规则系统创建的情感音乐生成器,专家系统提供可供调整的权重值,交互式遗传算法通过获取用户的主观情感感受不断对权重值进行调整,最终生成出带有快乐和悲伤情感的音乐。

3.2 长短期记忆网络(LSTM)

由于循环神经网络存在梯度爆炸和梯度消失的问题,导致了它无法有效学习到序列长距离较远的依赖关系。为了解决该问题,长短期记忆网络被提出。它是在循环神经网络的基础上,通过引入输入门、输出门和遗忘门,控制长期记忆不被遗忘,有效缓解梯度爆炸和梯度消失的问题,从而学习序列的长期特征。长短期记忆网络能够有效的学习音乐的特征,用于音乐生成取得了良好的效果。

与长短期记忆网络类似的是门控循环单元(GRU),它们的工作原理十分类似,但门控循环单元的结构更简单,只有更新门和重置门用来控制信息的遗忘。因为它使用了更少的连接和参数,所以更容易计算。

3.3 WaveNet

WaveNet提出了一种深度神经网络模型,可以用来生成原始的声音信号。因为没用使用类似循环神经网络中的递归连接,所以可以获得更快的速度。WaveNet中,通过使用扩大卷积来增大感受野。扩大卷积通过不断跳过部分输入来成倍扩大感受野,这使得模型层数不用很多就可以获得非常大的感受野。

WaveNet的独特之处是其使用的是原始的声音波形而不是音符序列,这对于情感音乐生成是十分有好处的。一方面,音符序列不具备的声音原始特征如音色,对于表达情感是有帮助的。另一方面,使用原始声音波形扩大了应用范围,因为不是所有音乐都有符号表示,但一般都有原始波形表示。

3.4 栈式自编码器

自编码器是一种输入层与输出层具有相同维度的神经网络。自编码器的训练目标是使输出的数据与输入的数据尽量相似。栈式自编码器是一个具有多个隐层的自编码器网络。该网络从输入层到输出层的过程中,每层的神经元数目先是逐渐减少,然后再逐渐增多。该结构在神经元减少的过程中不断压缩原始特征,然后在神经元增多的过程中重构原始特征,最终达到提取重要特征的目的。文献[9]{苗北辰, 2019 124}使用栈式自编码器对每一时间步的音符状态进行处理,以提取旋律与和弦的高维度特征,有效改良了生成的效果。

4 总结

综上所述,本文将目前用于情感音乐生成的方法进行了梳理。从简单的朴素贝叶斯分类法到复杂的深度学习网络,可以看到,随着人工智能技术的不断发展,越来越多的研究焦点投入到了其中,人们的关注点也从简单的、效果一般的方法逐渐转移到复杂的、效果更好的算法上。

从总体上看,情感音乐生成有两条不同的发展途径,一条是以处理音符符号序列为核心思想的生成路线,这条路线上的方法以循环神经网络为代表。这种处理方式是将音乐视为一种语言,将音符视为字符,通过自然语言处理中使用的算法,来生成情感音乐。另一条是以处理原始声音信号为核心思想的生成路线,这条路线以WaveNet为代表。这种处理方式是将音乐视为一种波形信息,通过学习波形的特征,来生成情感音乐。由于这种处理方式的计算量较大,故其出现的较晚,应用也受到一定限制。但其能够学习音色等符号难以表示的特征,故也具有较大研究价值。

音乐情感分类算法主要应用的还是机器学习的方法,对深度学习技术的应用相对较少。由于其处理的数据形式与情感音乐生成算法完全相同,可以将情感音乐生成中使用的深度学习方法迁移到音乐情感分类中,以改良其实际效果,以改良其实际效果。

猜你喜欢

遗传算法向量神经网络
基于递归模糊神经网络的风电平滑控制策略
向量的分解
聚焦“向量与三角”创新题
基于遗传算法的高精度事故重建与损伤分析
神经网络抑制无线通信干扰探究
基于遗传算法的模糊控制在过热汽温控制系统优化中的应用
基于神经网络的中小学生情感分析
基于遗传算法的智能交通灯控制研究
基于Q-Learning算法和神经网络的飞艇控制
向量垂直在解析几何中的应用