预览加载中,请您耐心等待几秒...
1/9
2/9
3/9
4/9
5/9
6/9
7/9
8/9
9/9

在线预览结束,喜欢就下载吧,查找使用更方便

如果您无法下载资料,请参考说明:

1、部分资料下载需要金币,请确保您的账户上有足够的金币

2、已购买过的文档,再次下载不重复扣费

3、资料包下载后请先用软件解压,在使用对应软件打开

(19)中华人民共和国国家知识产权局(12)发明专利申请(10)申请公布号CN109599126A(43)申请公布日2019.04.09(21)申请号201811642820.5G10L25/15(2013.01)(22)申请日2018.12.29(71)申请人广州丰石科技有限公司地址510650广东省广州市天河区元岗横路37号天河慧通产业广场B区B4栋1楼(72)发明人陈曦蓝志坚陈卓李学辉喻春霞容伯杰(74)专利代理机构广州粤高专利商标代理有限公司44102代理人林丽明(51)Int.Cl.G10L25/51(2013.01)G10L25/30(2013.01)G10L25/21(2013.01)G10L25/18(2013.01)权利要求书2页说明书6页(54)发明名称一种基于mel能量谱和卷积神经网络的声音故障识别方法(57)摘要本发明公开了一种基于mel能量谱和卷积神经网络的声音故障识别方法,首先将初始输入的音频数据进行预加重,之后需要对数据进行分帧、加窗处理,然后要对分帧、加窗后的音频信号进行快速傅里叶变换,提取频域上的能量特征之后,将能量谱通过一组Mel尺度的三角形滤波器组,之后对每一帧对应不同频域的能量作为Y轴,时域上不同帧作为X轴,将数据转换为梅尔能量谱图。此后,需要进一步对能量谱图进行分帧,以适应CNN(卷积神经网络)的输入,每一帧为一个样本,每个样本对应的标签的独热编码作为CNN网络的输出,对CNN网络模型进行训练,直到网络训练误差达到最低。在预测时,输出每一类标签的概率值,取概率值最大的标签作为最终的判别结果。CN109599126ACN109599126A权利要求书1/2页1.一种基于mel能量谱和卷积神经网络的声音故障识别方法,其特征在于,包括以下步骤:S1:对语音信号进行预加重,增加声音的高频分辨率;S2:对语音信号进行分帧处理,通过将N个语音信号上的采样点组合为一个观测单位即为帧,两相邻帧之间有一段重叠区域,此重叠区域包含了M个取样点,M的值为N的1/2或1/3;S3:对语音信号进行加窗处理,通过采用汉明窗进行加窗使原本没有周期性的语音信号呈现出周期函数的特征,其中窗函数为:n=0,1…,N-1,N为帧的大小,a为窗函数大小系数;S4:乘上汉明窗后的各帧信号进行快速傅里叶变换,得到各帧的频谱,并对语音信号的频谱取模平方得到语音信号的功率谱,设语音信号的DFT为:式中x(n)为输入的语音信号,N表示傅里叶变换的点数;S5:将能量谱通过一组Mel尺度的三角形滤波器组,定义一个有M个滤波器的滤波器组,采用的滤波器为三角滤波器,中心频率为f(m),m=1,2,...,M;M取22-26,各f(m)之间的间隔随着m值的减小而缩小,随着m值的增大而增宽;三角滤波器的频率响应定义为:式中:f(m)为中心频率,k为频率;S6:计算每个滤波器组输出的对数能量:m=0,1…,M,M为滤波器个数,Hm(k)为滤波器的频率响应;S7:转换为梅尔能量谱图;步骤S2的分帧是在采样点上进行的,对N个采样点作为一帧进行之后步骤的一系列操作后,最终每一帧提取M个频段的梅尔能量谱作为Y轴的M个值,而X轴以帧数作为单位,由此得到一张梅尔能量谱图;S8:以梅尔能量谱图的X轴的N个坐标单位长度为一帧的长度,以Y轴所有数据作为一帧2CN109599126A权利要求书2/2页的宽度,对梅尔能量谱图进行分帧,等同于将一个梅尔能量谱他按照X轴切为多个分段,其中每一段作为一个样本,作为下一阶段卷积神经网络的输入。此步骤的分帧步长,和分帧长度相等,即相邻两帧没有重叠的部分;S9:搭建CNN网络;其中包含了5个2维卷积层,3个全连接层,2个最大池化层,此外为了缓解过拟合,设置了3层dropout;而在第一层卷积层后,增加了一层batch_normalization以加快收敛速度;CNN网络最后一层使用softmax激活函数:其中,j=1,…,K,K为分类的最大类别,z为网络最后一层输出;S10:把进一步分帧的梅尔能量谱图,一帧作为一个样本,以16个样本为一个包(batch),放入CNN网络的输入进行训练,以样本对应的标签的独热编码为输出,采用BP算法进行迭代优化,不断更新CNN网络的参数,使得输出的预测误差达到最小;当继续训练不能使得验证集的数据误差降低的时候,停止算法优化;S11:将前向传播的结果和真实输出值计算交叉熵误差(Cross-entropy),具体计算公式为:其中N为类别数量,为模型预测输出值,y为真实值,L为损失函数;S12:根据链式求导法则,计算各层神经元的梯度项,使得误差减小;S13:根据计算出的梯度项,采用Momentum优化方法更新各层神经元参数;S14:重复步骤S10到步骤S13,直到误差达到指定最小值,或者超出循环次数epoc