ARTICLE DETAIL

资讯详情

深耕网站视觉设计与运营推广的一线实战洞察。

【情感识别】基于matlab BP神经网络语音情感识别【含Matlab源码 349期】

【情感识别】基于matlab BP神经网络语音情感识别【含Matlab源码 349期】 欢迎来到海神之光博客之家✅博主简介热爱科研的Matlab仿真开发者修心和技术同步精进个人主页海神之光代码获取方式海神之光Matlab王者学习之路—代码获取方式⛳️座右铭行百里者半于九十。更多Matlab语音处理仿真内容点击①Matlab语音处理 进阶版②付费专栏Matlab语音处理初级版⛳️关注微信公众号Matlab王者助手或Matlab海神之光更多资源等你来⛄一、BP神经网络语音情感识别简介0 引言随着科技的迅速发展, 人机交互显得尤为重要。语音是语言的载体, 是人与人之间交流的重要媒介。相较于其它交流方式而言, 语音交流更加直接、便捷。近年来, 随着人机交互研究的不断深入, 语音情感识别更成为了学术界研究的热点, 其涉及到信号处理、模式识别、人工智能等相关领域。语音中除了能够传达语义信息外, 还包含了一些情感信息, 然而这些情感信息往往被人们所忽略。语音情感识别实际上是利用计算机所提取的语音信号特征来判断其属于哪一类情感。利用模式识别方法研究语音情感识别的文献较多, 朱菊霞等使用SVM算法对语音情感进行识别, 并取得了86% 的识别率。余华等使用粒子群算法优化神经网络来进行语音情感识别, 识别率较高。BP神经网络是神经网络的一种, 属于多层前馈神经网络, 与其它神经网络算法所不同的是采用了反向传播的学习算法, 不断地计算输出端的误差向回传递来进行权值调整, 从而达到误差最小的效果。1 BP神经网络BP神经网络算法由Rumelhart等于1988年提出, 它是一种用于前向神经网络学习训练的误差反向传播算法, 简称BP算法。它是前向神经网络的核心和精华部分, 因其网络结构容易构造, 对输入的数据没有特别要求, 同时相关理论的研究也已经成熟, 因而已经被广泛地应用于模式识别中。目前, 人工神经网络中研究最多的就是BP神经网络及其改进算法。该网络同样由输入层、隐含层、输出层组成, 典型的BP神经网络如图1所示。图1 典型的BP神经网络结构该算法主要由两个阶段组成, 分别是正向传播过程和误差的反向传播过程。正向传播过程是指输入特征向量, 经过输入层、隐含层和输出层逐层计算权值。误差的反向传播过程是指输出层计算出误差之后, 再由输出层传到输入层来进行权值调整。一个标准的BP神经网络流程如图2所示。图2 BP神经网络流程(1) 正向传播过程。从样本数据集中选择一个样本X, 将其输入到神经网络, 并计算其实际输出Y。该过程就是数据样本从输入层输入, 然后经过隐含层和输出层的逐层计算, 得到的输出结果。(2) 误差的反向传播过程。计算实际输出Y与理想的输出结果A之间的误差, 根据相应的规则不断地调整权值, 并对BP神经网络进行不断训练使得误差能够满足要求。2 语音情感特征如何选择有效的语音情感特征, 直接影响到语音情感识别结果的好坏。首先要明确研究哪几类情感, 从心理学的角度来看, 总共包括以下7类情感, 即高兴、生气、悲伤、害怕、惊讶、厌恶、中性。本文主要研究生气、高兴、悲伤和惊讶这四类情感。目前, 很多研究中都是把语音情感识别问题转化为模式识别问题进行研究。其本质就是先对语音信号特征进行预处理, 再提取相关特征, 从而进行分类。选取语音持续时间、短时能量、基音频率、共振峰和MFCC等语音信号特征进行相关研究。2.1 语音持续时间语音持续时间实际上就是说话过程中所持续的时间, 其往往与所表达的情感有着直接的关联。一般来说, 人生气时说话速度较快, 语音持续时间较短;而处于悲伤或者害怕时说话的语速就会较慢, 语音持续时间较长。因此, 选择带有情感的语音持续时间与正常状态下的语音持续时间的比值作为一个特征参数。2.2 短时能量短时能量直接反映了声音音量的大小。一般来说, 清音的能量较小, 浊音的能量较高。当一个人的情感为生气或者是惊讶的时候, 其说话的音量就会变大, 短时能量往往也比较高。当一个人的情感为害怕或者悲伤的时候, 说话的音量就会变低, 短时能量往往也比较低。因此, 本文选择短时能量的均值、最大值、最小值、变化范围这4个特征参数。2.3 基音频率基音频率简称基频, 它直接反映了声道的特征, 已经在多个领域被广泛应用, 如语音识别、语音合成等。一般来说, 男性的基频较低, 女性的基频较高。不同情感状态下基频的大小不同。相关研究表明, 生气、高兴和惊讶时的基频变化范围和均值较高, 相反悲伤时基频的均值和变化范围较小。因此, 本文选取了基频的均值、最大值、最小值和变化范围这4个特征参数。2.4 共振峰共振峰指发声的气流经过声道时, 与声道发生共振的频率。其与情感有着很大的关联, 情感状态不同, 共振峰频率也随之发生变化。目前, 大多数的研究都是利用线性预测法来提取语音信号中的共振峰频率。共振峰参数的选择对语音情感识别有着重要意义。因此, 本文选取第一共振峰频率的均值、第二共振峰频率的均值、第三共振峰频率的均值和第四共振峰频率的均值作为特征参数。2.5 MFCC即便是同一句话, 同一个人在不同的情感状态下说出来也是不一样的, 让听者听起来感觉更是不一样。MFCC是梅尔频率倒谱系数的简称, 它是模拟人耳听觉特性所提取的特征参数, 已经被广泛应用于语音识别和语音合成的研究中。因而选取12维MFCC均值作为特征参数。⛄二、部分源代码%实验要求基于神经网络的语音情感识别clcclose allclear allload A_fear fearVec;load F_happiness hapVec;load N_neutral neutralVec;load T_sadness sadnessVec;load W_anger angerVec;trainsample(1:30,1:140)angerVec(:,1:30)‘;trainsample(31:60,1:140)hapVec(:,1:30)’;trainsample(61:90,1:140)neutralVec(:,1:30)‘;trainsample(91:120,1:140)sadnessVec(:,1:30)’;trainsample(121:150,1:140)fearVec(:,1:30)‘;trainsample(1:30,141)1;trainsample(31:60,141)2;trainsample(61:90,141)3;trainsample(91:120,141)4;trainsample(121:150,141)5;testsample(1:20,1:140)angerVec(:,31:50)’;testsample(21:40,1:140)hapVec(:,31:50)‘;testsample(41:60,1:140)neutralVec(:,31:50)’;testsample(61:80,1:140)sadnessVec(:,31:50)‘;testsample(81:100,1:140)fearVec(:,31:50)’;testsample(1:20,141)1;testsample(21:40,141)2;testsample(41:60,141)3;testsample(61:80,141)4;testsample(81:100,141)5;classtrainsample(:,141);sumbpnn(trainsample,testsample,class);figure(1)bar(sum,0.5);set(gca,‘XTickLabel’,{‘生气’,‘高兴’,‘中性’,‘悲伤’,‘害怕’});ylabel(‘识别率’);xlabel(‘五种基本情感’);p_traintrainsample(:,1:140)‘;t_traintrainsample(:,141)’;p_testtestsample(:,1:140)‘;t_testtestsample(:,141)’;sumpnnpnn(p_train,t_train,p_test,t_test);figure(2)bar(sumpnn,0.5);set(gca,‘XTickLabel’,{‘生气’,‘高兴’,‘中性’,‘悲伤’,‘害怕’});ylabel(‘识别率’);xlabel(‘五种基本情感’);sumlvqlvq(trainsample,testsample,class);function sumbpnn(trainsample,testsample,class)%输入参数trainsample是训练样本,testsample是测试样本,class表示训练样本的类别与trainsample中数据对应%sum五种基本情感的识别率for i1:140feature(:,i) trainsample(:,i);end%特征值归一化[input,minI,maxI] premnmx( feature’) ;%构造输出矩阵s length( class ) ;output zeros( s , 5 ) ;for i 1 : soutput( i , class( i ) ) 1 ;end⛄三、运行结果⛄四、matlab版本及参考文献1 matlab版本2014a2 参考文献[1]韩纪庆,张磊,郑铁然.语音信号处理第3版[M].清华大学出版社2019.[2]柳若边.深度学习:语音识别技术实践[M].清华大学出版社2019.[3]徐照,松元建.基于BP神经网络的语音情感识别研究.[J]软件导刊. 2014,13(04)3 备注简介此部分摘自互联网仅供参考若侵权联系删除 仿真咨询1 各类智能优化算法改进及应用生产调度、经济调度、装配线调度、充电优化、车间调度、发车优化、水库调度、三维装箱、物流选址、货位优化、公交排班优化、充电桩布局优化、车间布局优化、集装箱船配载优化、水泵组合优化、解医疗资源分配优化、设施布局优化、可视域基站和无人机选址优化2 机器学习和深度学习方面卷积神经网络CNN、LSTM、支持向量机SVM、最小二乘支持向量机LSSVM、极限学习机ELM、核极限学习机KELM、BP、RBF、宽度学习、DBN、RF、RBF、DELM、XGBOOST、TCN实现风电预测、光伏预测、电池寿命预测、辐射源识别、交通流预测、负荷预测、股价预测、PM2.5浓度预测、电池健康状态预测、水体光学参数反演、NLOS信号识别、地铁停车精准预测、变压器故障诊断3 图像处理方面图像识别、图像分割、图像检测、图像隐藏、图像配准、图像拼接、图像融合、图像增强、图像压缩感知4 路径规划方面旅行商问题TSP、车辆路径问题VRP、MVRP、CVRP、VRPTW等、无人机三维路径规划、无人机协同、无人机编队、机器人路径规划、栅格地图路径规划、多式联运运输问题、车辆协同无人机路径规划、天线线性阵列分布优化、车间布局优化5 无人机应用方面无人机路径规划、无人机控制、无人机编队、无人机协同、无人机任务分配6 无线传感器定位及布局方面传感器部署优化、通信协议优化、路由优化、目标定位优化、Dv-Hop定位优化、Leach协议优化、WSN覆盖优化、组播优化、RSSI定位优化7 信号处理方面信号识别、信号加密、信号去噪、信号增强、雷达信号处理、信号水印嵌入提取、肌电信号、脑电信号、信号配时优化8 电力系统方面微电网优化、无功优化、配电网重构、储能配置9 元胞自动机方面交通流 人群疏散 病毒扩散 晶体生长10 雷达方面卡尔曼滤波跟踪、航迹关联、航迹融合
返回列表