APP下载

基于梅尔倒谱系数、深层卷积和Bagging的环境音分类方法

2019-01-06王天锐鲍骞月秦品乐

计算机应用 2019年12期
关键词:特征提取深度学习

王天锐 鲍骞月 秦品乐

摘 要:针对传统环境音分类模型对环境音特征提取不充分,以及卷积神经网络用于环境音分类时全连接层易造成过拟合现象的问题,提出了梅尔倒谱系数(MFCC)、深层卷积和Bagging算法相结合的环境音分类方法。首先,针对原始音频文件,利用预加重、加窗、离散傅里叶变换、梅尔滤波器转换、离散余弦映射等方法建立梅尔倒谱系数特征模型;然后,将特征模型输入卷积深度网络进行第二次特征提取;最后,借鉴强化学习思想,用Bagging集成算法集成线性判别分析器、支持向量机(SVM)、Softmax回归、XGBoost四个模型,以投票预测的形式对网络输出结果进行预测。实验结果表明,所提方法能够有效提高对环境音的特征提取能力和深层网络在环境音分类上的抗过拟合能力。

关键词:环境音分类;梅尔频率倒谱系数;Bagging集成算法;特征提取;深度学习

中图分类号:TP183文献标志码:A

Environmental sound classification method based on

Mel-frequency cepstral coefficient, deep convolution and Bagging

WANG Tianrui, BAO Qianyue, QIN Pinle*

(School of Data Science and Technology, North University of China, Taiyuan Shanxi 030051, China)

Abstract: The traditional environmental sound classification model does not fully extract the features of environmental sound, and the full connection layer of conventional neural network is easy to cause over-fitting when the network is used for environmental sound classification. In order to solve the problems, an environmental sound classification method combining with Mel-Frequency Cepstral Coefficient (MFCC), deep convolution and Bagging algorithm was proposed. Firstly, for the original audio file, the MFCC model was established by using pre-emphasis, windowing, discrete Fourier transform, Mel filter transformation, discrete cosine mapping. Secondly, the feature model was input into the convolutional depth network for the second feature extraction. Finally, based on reinforcement learning, the Bagging algorithm was adopted to integrate the linear discriminant analyzer, Support Vector Machine (SVM), softmax regression and eXtreme Gradient Boost (XGBoost) models to predict the network output results by voting prediction. The experimental results show that, the proposed method can effectively improve the feature extraction ability of environmental sound and the anti-over-fitting ability of deep network in environmental sound classification.

Key words: environmental sound classification; Mel-Frequency Cepstral Coefficient (MFCC); Bagging integration algorithm; feature extraction; deep learning

0 引言

在物联网与人工智能技术的快速发展下,随着安全防控、自动化机器人和医疗康复应用的增加,环境音分类技术变得越来越重要。环境音分类是机器感知外界的重要一步,相较于视觉信息,声音特征更具实时性和连续性,并且音频数据占用的存储空间也远小于图像数据。如果能将环境声音的信息与视觉信息有效地结合起来,无疑能提高机器感知外界的能力。

目前音频分类和识别的研究方向大都集中在语音识别和语音的情感分析上,但近年来也逐渐出现了对环境声音进行分类和识别的研究: 文献[1]针对移动平台加入了轻量级的声音特征进行分类;文献[2]通过对鸟叫声分类从而识别物种,为生态学研究提供了更为有效的数据。这些研究表明环境声音识别技术拥有广泛的应用价值。

在环境声音分类任务中,声音信号的数字化表达、信号特征的提取和训练分类器是非常关键的三个部分。wav格式是最接近无损的音乐格式,该格式使用三种参数来表示声音:量化位数、取样频率和采样点的振幅,其中采样点的振幅是本文操作的基础。但是声音的特征仅靠随着时间变化的采样点振幅是无法合理地进行描述的。梅尔频率倒谱系数(Mel-Frequency Cepstral Coefficient, MFCC) [3]是比较常用且高效的音频特征。文献[4]结合隐马尔可夫模型(Hidden Markov Model, HMM)和MFCC对浴室声音进行识别;文献[5]提取MFCC特征并结合支持向量机(Support Vector Machine, SVM)分类模型对环境音进行分类。但MFCC特征提取后的系数帧矩阵在特征纯度上还有所欠缺。虽然经该方法转换后声音的描述更符合人类听觉系统,但是一段环境音频中对于分类目标来说其他杂音太多,直接将提取后的特征放入分类器不易取得较好的分类效果。针对此类特征提取问题,文献[6]利用小波域特征与MFCC特征,把频域与小波域特征相结合,能较好地提取出语音的内容信息,但在环境音分类方面的效果有所欠缺;文献[7]利用神经网络来对MFCC特征进行提取,但准确率并不算高,推测是全连接层的强组合能力易使特征过度提取,导致过拟合现象发生。另一方面,在环境音分类器的选择上,目前已有文献[8]所使用的SVM、文献[9]所使用的线性判别分析器(Linear Discriminant Analysis, LDA)以及文献[10]中直接沿用的传统卷积神经网络(Convolutional Neural Network, CNN)[11]全连接层等。经过实验发现,传统的机器学习模型的分类能力有限,而使用CNN中的全连接层极易出现过拟合的現象,导致模型的泛化能力较低。文献[12]利用迁移学习方法训练去掉全连接层的卷积神经网络用于声音分类,虽能提高了模型泛化能力,但训练过程需要大量额外数据,并且去掉全连接层后的网络分类能力有限,效果不够理想。

为了解决MFCC对特征提取不充分的问题,本文将卷积神经网络的全连接层去除,保留卷积池化层用来二次特征提取,以此来提取数据抽象隐藏的特征,并筛选掉不必要的因素。

为了解决全连接层易过拟合、直接去掉又分类能力不足的问题,本文应用Bagging算法[13]思想,将SVM、LDA、Softmax Regression[14]、XGBoost(eXtreme Gradient Boost)[15]四个模型进行集成用于分类。 实验结果对比表明,本文算法能够较好地解决环境音特征提取纯度不足以及深层模型在环境音分类上易过拟合的问题。

1 相关工作

1.1 梅尔频率倒谱系数

梅尔倒谱系数特征的提取包括音频预加重、分帧、加窗、离散傅里叶变化、Mel带通滤波、离散余弦变换等步骤。物理频率和Mel频率的关系为:

Mel(f)=2595×lg(1 + f/700)(1)

计算步骤为:首先对声音信号进行预加重、分帧、加窗等预处理操作,然后对每帧信号作离散傅里叶变换。变换公式为:

X(k)=∑N-1n=0x(t)exp(-j2πnk/N);0≤k≤N(2)

其次,用m个滤波器进行滤波,滤波器的响应函数为:

Hm(k)=

0, k

2(k-f(m-1))(f(m+1)-f(m-1))(f(m)-f(m-1)),

f(m-1)≤k

2(f(m+1)-k)(f(m+1)-f(m-1))(f(m)-f(m-1)),

f(m)≤k≤f(m+1)

0, k>f(m+1) (3)

其中:∑Hm(k)=1; f(m)是滤波器的中心频率。再计算其对数能量,计算式为:

S(m)=ln(∑N-1k=0|X(k)|2Hm(k)); 0≤m

最后代入离散余弦变换来得到梅尔倒谱系数:

C(n)=∑M-1m=0S(m)cos(πn(m+0.5)/M);

0≤n≤M(5)

1.2 卷积与池化

卷积层是通过使用卷积核按步长遍历数据矩阵,对核上对应的数值进行加权求和得到新的特征值。每层卷积层通常使用多个卷积核,通过使用不同的核来让原始数据矩阵在不同的空间维度上得到表达。

卷积层卷积核对数据矩阵的处理公式如下:

xlj=f(∑i∈Mjxl-1jklij+blj)(6)

其中:M为中间层映射图;l代表层数;k代表卷积核;b代表偏置值;f则是激活函数。

池化层也常被称作下采样层,它是对特征的一种筛选,能保留主要特征(最大池化),或者将特征均匀化(平均池化)等。特征的降维一定程度上能防止过拟合现象的发生,其计算方法和卷积相似,即使用池化核按步长遍历数据矩阵。处理公式为:

xlj=f(xl-1j)(7)

其中f代表池化时选择的方法。

1.3 Bagging算法

Bagging算法是将多个不同的元学习器集成。首先,通过对原数据集进行可重复抽样,得到多个不同的数据子集;然后,分别使用各个子集来训练不同的元模型,以此来提高各个元模型的泛化能力和模型之间的差异性。在预测时则采取投票方式,根据每个元模型的预测结果,选取出现次数最多的结果作为最后的类标。

1.4 Softmax Regression

Softmax Regression是讓Logistic Regression适用于多分类问题的一种改进方法。Softmax Regression的函数形式如下:

i=p(yi=1|xi;ω)

p(yi=2|xi;ω)

p(yi=k|xi;ω)=

1∑kj=1exp(ωjTxi)exp(ω1Txi)

exp(ω2Txi)

exp(ωkTxi)(8)

其中:ω是模型的参数;k为类别的数量。其损失函数为:

J(ω)=

-1m∑mi=1∑kj=11{yi=j}lnexp(ωjTxi)∑kl=1exp(ωlTxi)(9)

其中m为样本的个数。Softmax Regression中将样本x分类为j的概率为:

p(yi=j|xi;ω)=exp(ωlTxi)∑kl=1exp(ωlTxi)(10)

1.5 SVM

SVM是一种对数据进行分类的广义线性分类器。该分类器通过寻找最优的超平面来进行学习。假设超平面表示为:

ωTx+b=0(11)

则空间各点到超平面的距离可写为:

d=|ωTx+b|‖ω‖(12)

若超平面能将类别正确分类,且令类别为±1。则有:

yi(ωTxi+b)≥1; i=1,2,…,m(13)

利用拉格朗日乘子法即可从式(14)求解出ω和b。

minω,b12‖ω‖2(14)

s.t. yi(ωTxi+b)≥1,i=1,2,…,m

1.6 LDA

LDA是一种模式识别算法。该算法通过将数据映射到另一空间,使样本在新空间里有最小的类内距离和最大的类间距离,以达到最佳的可分离性。令μi与Σi分别表示第i类样本集合的均值向量和协方差矩阵。投影后样本中心为ωTμi,协方差为ωTΣiω。要使同类映射点之间尽可能接近,即让所有类协方差之和尽可能小;要使异类样本投影之后尽可能远离,即让各类样本的中心样本距离尽可能大。同时考虑则可得到优化目标函数

2.4 集成分类模型

该模块在Bagging算法中采用Softmax Regression、SVM、LDA、XGBoost这4个分类器作为集成模型的元模型。

2.4.1 元模型一——Softmax Regression

使用数据集T1训练Softmax Regression模型,利用梯度下降的思想来训练模型。每次训练从T1数据集中随机取出35个样本组成一个批次,并将35个样本放回,以便下次也能抽到。将35个样本代入模型计算误差。用35个样本误差之和与提前设置的误差阈值进行对比来控制训练的停止。

其损失函数对参数的偏导为:

ωjJ(ω)=-1m∑mi=1[xi(1{yi=j}-

p(yi=j|xi;ω))](22)

为使损失值尽可能小,最终让分类器达到最好效果。对于每个参数,其学习式为:

ωnew=ω-rate×ωjJ(ω)(23)

如果误差之和大于阈值,则求出35个偏导的平均值乘以学习率来优化模型参数; 反之,则停止训练。

2.4.2 元模型二——SVM

使用数据集T2训练SVM模型。由于T2已经是经过深层提取后的特征,所以本文没有引入核函数,对SVM的目标函数使用拉格朗日乘子法可得到其“对偶问题”即:

max α{∑mi=1αi-12∑mi=1∑mj=1αiαjyiyjxiTxj}(24)

s.t. ∑mi=1αiyi=0, αi≥0, i=1,2,…,m

根据式(24)得到α并计算:

b=yj-∑mi=1αiyixiTxj(25)

最终确认模型。

2.4.3 元模型三——LDA

使用数据集T3训练LDA模型。本文依照LDA的思想,将T3中的样本映射到ω空间上,预使50个不同种类的样本在该空间上同类之间尽可能近,异类之间尽可能远。根据其目标函数,先分别计算出每个类的均值向量μi,再由拉格朗日乘子法可将目标函数变为:

Sbω=λSωω(26)

其中λ是拉格朗日乘子。令:

Sbω=λ∑49i=0∑49j=i(μi-μj)(27)

从而解出ω:

ω=Sω-1∑49i=0∑49j=i(μi-μj)(28)

解出ω后即可得到映射空间函数。在预测时将点代入映射空间函数,再按近邻算法进行分类。

2.4.4 元模型四——XGBoost

使用数据集T4训练XGBoost模型。XGBoost的参数众多,其中学习率、树的深度、树随机采样的比例、L2正则化项等参数的作用较大。本文模型的参数为:学习率为0.3,树分裂最小Loss为0,树最大深度为6,最小叶子节点样本权重和为1,随机采样比为1,L2正则化项为1。

设定好模型参数后,针对其目标函数,不断重复初始化决策树、代入样本计算一阶导数和二阶导数、更新决策树参数,直到目标函数低于阈值,停止训练。

2.5 投票决策

使用模型预测时,采用简单投票法。令4个分类器所得到的结果分别为y1、y2、y3、y4。首先分别对每个结果进行ONE HOT编码,编码过程为:

初始化一个长度为50的全0向量:

Hi=[0,0,0,…,0,0,0]len=50(29)

置第yi位為1:

Hi[yi]=1(30)

也就是将分类的标签索引的位置置1,其余位置补0。然后将4个分类器的ONE HOT编码矩阵相加:

Hresult=∑4i=0Hi(31)

最大值对应的索引位就是最终的预测结果:

result=arg max (Hresult)(32)

如果出现多个类票数相同,则对比响应模型的准确率,将准确率最高的模型投票的预测值作为最终结果。整个过程示意图如图5所示。

3 实验与结果分析

本文使用环境音数据集ESC-50(Dataset for Environmental Sound Classification)[18]进行实验。ESC-50数据集是一个包含2000个环境音频的集合。数据集标签分为50个不同的场景,每个样本时长5s,音频格式为wav。采样率有44100Hz和16000Hz两种。本文使用44100Hz的样本,并将2000个样本分为1600与400两份,其中:1600个样本用于模型的训练,400个样本用于模型的测试。使用Tensorflow框架搭建卷积池化模型,模型细节见表1。

训练过程中,每训练50次代入训练集和测试集计算一次误差值和准确值,并记录下来。一共训练了100000次,整个过程的误差值和测试准确率如图6(b)所示。图6(a)是加入带有128神经元、256神经元的两层全连接层后网络的准确率、误差曲线图。误差曲线图中居于上方的为测试集误差,居于下方的为训练集误差。

由图6可以看到,去掉全连接层的网络在测试集上准确率能达到0.85,而含全连接层的准确率只有0.53。由此可以得出:去掉全连接层的卷积神经网络用于环境音分类,不但可以提升特征的表达性,还能减少过拟合现象的发生。

针对Bagging随机取样的样本数量进行了实验,结果如图7所示。

经过测试发现:对于元分类器来讲,提升样本的数量与各元模型的准确率成正比。但是当样本数量m超过910时,由于过拟合现象的发生,各个元模型的准确率虽然在上升,但是集成模型的准确率开始降低。所以本文采用910为最终的样本抽取数,以此来提升模型的抗过拟合能力。

4个分类模型训练完成后,用单个分类器和集成模型在测试集V上分别进行测试,结果如表2所示。

由单个模型测试的实验结果可以看出,在MFCC帧特征经过深层卷积池化提取后通过不同的空间映射能达到一个较好的线性相关性,所以前三者线性类模型(LDA、Softmax Regression、SVM)效果较好,树状模型(XGBoost)效果相对差一些。本文投票方法将四种模型集成后的准确率达到最高。

在测试集上测试了本文模型在ESC-50上各类的召回率。50类的平均分类错误数为0.88,平均召回率为89.0%,其中召回率最低的10个类别结果如表3所示。

实验结果表明,在测试集的400个测试样例(50种不同类型环境音)中,本文模型一共分类错误44个样例。由表3可见,Airplane、crying_baby、Fireworks、Sheep类型音频分类的召回率最低为0.625,分析其原因可能是:这几类音频的本身特征不够明显,声音特征过少,对其特征的提取也不够充分,导致最终召回率较低。

在同样的数据集上,将本文分类方法与复现的其他方法作对比, 具体结果如表4所示。

由表4可以看出,ConvRBM、EnvNet-v2、CNN等沿用全连接层作为分类器的模型都会有一定程度的过拟合问题,而本文模型相对拥有较好的抗过拟合能力。

4 结语

本文在MFCC特征提取的基础上使用深层卷积池化二次提取,利用卷积池化对特征空间映射和选取的强大能力,解决了传统模型特征提取不到位、泛化能力较差的问题;将常规卷积神经网络的全连接层用全局池化与Bagging集成模型代替,解决了全连接层参数量大、易造成过拟合的问题;在Bagging随机抽样时采用鲁棒性最强的数量进行样本的抽取,解决了各个元模型泛化能力不足的问题;使用投票机制解决了单个分类器泛化性不足、准确率不够高的问题。从测试结果来看,与其他环境音分类方法相比,本文方法相对性能较好,但仍有可提升空间。不管是卷积池化层的搭建还是Bagging方法的元模型的选取和训练都还可以进一步优化,以获得更好的效果。

参考文献 (References)

[1]PILLOS A, ALGHAMIDI K, ALZAMEL N, et al. A real-time environmental sound recognition system for the Android OS [EB/OL]. [2019-02-20]. http://www.cs.tut.fi/sgn/arg/dcase2016/documents/workshop/Pillos-DCASE2016workshop.pdf.

[2]BRIGGS F, RAICH R, FERN X Z. Audio classification of bird species: a statistical manifold approach [C]// Proceedings of the 9th IEEE International Conference on Data Mining. Piscataway: IEEE, 2009: 51-60.

[3]LOGAN B. Mel-frequency cepstral coefficients for music modeling [EB/OL]. [2019-02-20]. https://www.researchgate.net/publication/2552483_Mel_Frequency_Cepstral_Coefficients_for_Music_Modeling.

[4]CHEN J, KAM A H, ZHANG J, et al. Bathroom activity monitoring based on sound [C]// Proceedings of the 2005 International Conference on Pervasive Computing, LNCS 3468. Berlin: Springer, 2009: 47-61.

[5]李玲俐.基于MFCC-SVM 和交叉驗证方法的环境音分类[J].计算机与现代化,2016(8):36-39.(LI L L. Environmental sound classification based on MFCC-SVM and cross validation method [J]. Computer and Modernization, 2016(8): 36-39.)

[6]郑继明,魏国华,吴渝.有效的基于内容的音频特征提取方法[J].计算机工程与应用,2009,45(12):131-133,137.(ZHENG J M, WEI G H, WU Y. New effective method on content based audio feature extraction [J]. Computer Engineering and Applications, 2009, 45(12): 131-133, 137.)

[7]付炜,杨洋.基于卷积神经网络和随机森林的音频分类方法[J].计算机应用,2018,38(S2):58-62.(FU W, YANG Y. Audio classification method based on convolutional neural network and random forest [J]. Journal of Computer Applications, 2018, 38(S2): 58-62.)

[8]余清清.噪音环境下基于时频特征的生态环境声音的分类[J].计算机与数字工程,2017,45(1):8-14,106.(YU Q Q. Eco-environmental sounds classification with time-frequency features under noise conditions [J]. Computer and Digital Engineering, 2017, 45(1): 8-14, 106.)

[9]芮瑞,鲍长春.噪声环境下的窄带音频信号快速分类方法[J].计算机工程与应用,2011,47(16):22-25.(RUI R, BAO C C. Fast classification method of narrow-band audio signals under noisy environment [J]. Computer Engineering and Applications, 2011, 47(16): 22-25.)

[10]PICZAK K J. Environmental sound classification with convolutional neural networks [C]// Proceedings of the IEEE 25th International Workshop on Machine Learning for Signal Processing. Piscataway: IEEE, 2015: 1-6.

[11]KRIZHEVSKY A, SUTSKEVER I, HINTON G E. ImageNet classification with deep convolutional neural networks [C]// Proceedings of the 25th International Conference on Neural Information Processing Systems. Red Hook: Curran Associates Inc., 2012: 1097-1105.

[12]KUMAR A, KHADKEVICH M, FUGEN C. Knowledge transfer from weakly labeled audio using convolutional neural network for sound events and scenes [EB/OL]. [2019-03-05]. https://arxiv.org/pdf/1711.01369.pdf.

[13]BREIMAN L. Bagging predictors [J]. Machine Learning, 1996, 24(2): 123-40.

[14]刘亚冲,唐智灵.基于 Softmax 回归的通信辐射源特征分类识别方法[J].计算机工程,2018,44(2):98-102.(LIU Y C, TANG Z L. Classification and identification method of communication radiation source feature based on softmax regression [J]. Computer Engineering, 2018, 44(2): 98-102.)

[15]CHEN T, GUESTRIN C. XGBoost: a scalable tree boosting system [C]// Proceedings of the 22nd ACM SIGKDD International Conference on Knowledge Discovery and Data Mining. New York: ACM, 2016: 785-794.

[16]SIMONYAN K, ZISSERMAN A. Very deep convolutional networks for large-scale image recognition [EB/OL]. [2019-03-05]. https://arxiv.org/pdf/1409.1556.pdf.

[17]IOFFE S, SZEGEDY C. Batch normalization: accelerating deep network training by reducing internal covariate shift [EB/OL]. [2019-03-05]. https://arxiv.org/pdf/1502.03167.pdf.

[18]PICZAK K J. ESC: dataset for environmental sound classification [C]// Proceedings of the 23rd ACM International Conference on Multimedia. New York: ACM, 2015: 1015-1018.

[19]SAILOR H B, PATIL H A. Filterbank learning using convolutional restricted Boltzmann machine for speech recognition [C]// Proceedings of the 2016 IEEE International Conference on Acoustics, Speech and Signal Processing. Piscataway: IEEE, 2016: 5895-5899.

[20]TOKOZUME Y, USHIKU Y, HARADA T. Learning from between-class examples for deep sound recognition [EB/OL]. [2019-03-05]. https://arxiv.org/pdf/1711.10282.pdf.

[21]TAK R N, AGRAWAL D M, PATIL H A. Novel phase encoded mel filterbank energies for environmental sound classification [C]// Proceedings of the 2017 International Conference on Pattern Recognition and Machine Intelligence, LNCS 10597. Cham: Springer, 2017: 317-325.

WANG Tianrui, born in 1997. His research interests include deep learning, machine intelligence.

BAO Qianyue, born in 1998. His research interests include deep learning, computer vision.

QIN Pinle, born in 1978, Ph. D., associate professor. His research interests include big data, computer vision, three-dimensional reconstruction.

收稿日期:2019-04-22;修回日期:2019-07-07;錄用日期:2019-07-23。

作者简介:王天锐(1997—),男,四川成都人,主要研究方向:深度学习、机器智能; 鲍骞月(1998—),男,山西朔州人,主要研究方向:深度学习、机器视觉; 秦品乐(1978—),男,山西长治人,副教授,博士,CCF会员,主要研究方向:大数据、机器视觉、三维重建。

文章编号:1001-9081(2019)12-3515-07DOI:10.11772/j.issn.1001-9081.2019040678

猜你喜欢

特征提取深度学习
基于MED—MOMEDA的风电齿轮箱复合故障特征提取研究
基于曲率局部二值模式的深度图像手势特征提取
一种针对特定无线电信号的识别方法
基于模糊K近邻的语音情感识别
有体验的学习才是有意义的学习
电子商务中基于深度学习的虚假交易识别研究
MOOC与翻转课堂融合的深度学习场域建构
大数据技术在反恐怖主义中的应用展望
深度学习算法应用于岩石图像处理的可行性研究
基于深度卷积网络的人脸年龄分析算法与实现