用于视频面试的语音情感识别方法
文献发布时间:2023-06-19 10:51:07
技术领域
本发明涉及文本语音信号处理,深度学习技术,尤其涉及一种用于视频面试的语音情感识别方法。
背景技术
随着互联网的高速发展,计算机在我们生活中承担着越来越重要的教学,为减轻面试官的工作量以及有效防范疫情,近年来越来越多企业着重视频面试,而作为最直接最有效的信息之一的语音,在视频面试中发挥着极其重要的作用。
语音情感识别的方法有很多。但以往的语音情感识别往往忽略了语音中语句的前后联系性,分析当前情感语句的前后句或若干句情感信息能有效提升联系语句的语音情感识别小伙。但仅仅基于上下文的语音情感识别一般只能简单地将上下文多帧特征直接作为输入而忽略了每帧各自的特点,并且多局限于特征层上下文。同时在现有的语音数据库中,语音情感特征可能变化十分迅速,而说话人的情感状态却变化缓慢,这种差异性也是语音情感识别中必须考虑的。
综上所述,现有的技术存在的问题是:
(1)现有的语音情感识别方法忽略了语音中语句的前后联系性,缺乏时序信息,影响识别准确率;
(2)现有的语音情感识别方法忽略了每帧各自的特征信息,且多局限于特征层上下文,影响识别准确率;
(3)现有的语音情感识别方法忽略了语音情感特征与说话人情感状态的差异性,影响识别准确率。
发明内容
为了克服上述缺陷,本发明提供一种用于视频面试的语音情感识别方法,该方法能有效改善情感分类的性能,正确识别语音中语句的前后联系性和时序信息,能有效提高语音情感识别的准确率。
本发明为了解决其技术问题所采用的技术方案是:一种用于视频面试的语音情感识别方法,包含以下步骤:
步骤1:制作语音情感数据集SEMAINE和RECOLA,并将数据集分为训练集,验证集和测试集;
步骤2:构建深度学习网络,该网络包括能很好学习语音序列数据的时间上下文信息的双向长短时记忆模块,以及能增强标签层上下文细节特征的注意力机制模块;
步骤3:构建均方根误差、一致性相关系数作为损失函数;
步骤4:将经过预处理的音频-标签数据流以较小的批尺寸分别送入特征层网络以及标签层网络进行训练,利用定义好的损失函数和优化器反向传播网络梯度,使用交叉验证方法检验网络性能,最终使网络收敛至最佳状态,并保存训练好的模型用于直接使用;
步骤5:利用得到的模型对语音测试数据集进行最终识别;
本发明的进一步技术方案是:所述步骤2中深度学习网络搭建如下:
提取语音情感特征全集。本发明使用开源软件OpenSMILE对输入的语音进行特征提取,包含过零量、能量、基频、谐波噪声比、梅尔频率倒谱系数等16个低层次语音情感特征,并在这些低层特征基础上应用最大值、最小值、均值、标准差等方式得到语音情感特征参数集;
在特征全集上使用SVM-RFE特征排序算法进行子集特征选择,其中SVM目标函数为:
s.t.y
当剔除第i个特征后J的变化为:
其中:ΔJ(i)≈(Δw
构建带有注意力机制的双向长短时记忆网络,包含输入门、遗忘门、记忆单元、输出门、隐层输出。定义如下:
输入门:
i
遗忘门:
f
记忆单元:
c
输出门:
o
隐层输出:
h
其中W
接着对注意力进行加权,最后通过Softmax函数进行归一化处理,其中带有注意力加权机制的双向长短时记忆网络定义如下:
e
x'
其中Attend(·)为计算注意力得分e
把经过注意力加权得到的特征表示输入到双向长短时记忆网络中,并通过特征层上下文学习得到语音情感最初的预测值,其中特征层上下文可以如下定义:
其中
再引入语音情感标签序列对标签层上下文进行学习,进一步加强语音情感识别的准确率;
进一步地,所述步骤3中损失函数构造如下:
其中y'
其中y为维度情感标注值序列数据,y'为模型实际输出数据,ρ为两个序列数据的皮尔森相关系数,μ
本发明的有益效果是:本发明方法包括以下步骤:首先提取情感语音特征全局后采用SVM-RFE特征排序算法降维度得到最优特征子集,并对其进行注意力加权,然后将加权后的特征子集输入双向长短时记忆网络学习特征层上下文并获得最初情感预测结果,再利用情感标签值对另一独立的双向长短时记忆网络训练学习标签层上下文信息并在初步情感预测结果的基础上完成最终预测。故本发明提出的用于视频面试的语音情感识别方法能有效改善了情感分类的性能,提高语音情感识别的准确率。
附图说明
图1是本发明用于视频面试的语音情感识别方法的完整网络结构图;
图2是本发明用于视频字幕的文本行检测方法的SVM-RFE特征选择算法流程图。
具体实施方式
实施例:下面将结合实施例对本发明的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其它实施例,都属于本发明保护的范围。
本发明提供的一种用于视频面试的语音情感识别方法,具体说明如下:
选择语音情感数据集SEMAINE和RECOLA作为训练数据集。本发明是在Windows 10操作系统上进行,开发语言为Python3.6,集成开发环境为Pycharm,深度学习框架是GPU版本的TensorFlow。硬件配置CPU为四核八线程的i7-7700,其主频3.60GHz,内存为16GB,GPU为NVIDIA GTX 1060。
构建各个网络模块,网络的整体结构图如图1所示。具体说明如下:
嵌入注意力机制并结合层级上下文的语音情感识别网络:该网络模块如图1所示,由语音情感特征全集模块、子集层特征选择模块、注意力加权模块和特征层、标签层上下文学习网络构成。首先使用开源软件OpenSMILE对输入的语音进行特征提取,包含过零量、能量、基频、谐波噪声比、梅尔频率倒谱系数等16个低层次语音情感特征,并在这些低层特征基础上应用最大值、最小值、均值、标准差等方式得到语音情感特征参数集,再通过SVM-RFE特征选择算法对特征参数集进行特征降维并获取最优特征子集,紧接着送入注意力加权模块,计算通过神经网络计算输入特征x
进一步的,网络中的SVM-RFE特征选择算法具体说明如下:
SVM-RFE特征选择算法如图2所示,根据支持向量机建模过程中的特征权重不断迭代淘汰排名靠后的特征从而实现特征排序,其中k代表特征维数。SVM分类器常用排序系数是各特征对目标函数具有的判别信息量,即特征权重向量w对分类面y=w·x+b的贡献值,权重w
其中SVM目标函数为:
s.t.y
当剔除第i个特征后J的变化为:
其中:ΔJ(i)≈(Δw
进一步的,网络中的注意力加权具体说明如下:
构建带有注意力机制的双向长短时记忆网络,包含输入门、遗忘门、记忆单元、输出门、隐层输出。定义如下:
输入门:
i
遗忘门:
f
记忆单元:
c
输出门:
o
隐层输出:
h
其中W
注意力加权是模型学习调整对来自不同时刻的帧特征给予不同的关注度:
e
x'
其中Attend(·)为计算注意力得分e
进一步的,网络中的两次层级上下文学习具体说明如下:
两次层级上下文使用的都是多层双向长短时记忆网络。假设双向长短时记忆网络一共有N层,第一层是输入层,第二层到第N-1层是双向长短时记忆层,第N层是输出层,特征上下文学习阶段公式如下:
其中
用于特征层上下文学习的BLSTM1与用于标签层上下文学习的BLSTM2网络参数训练均采用BPTT算法。设t时刻网络输入层向量为x(t),隐层向量为h(t),输出层向量为o(t),输入层与隐层间连接矩阵为V,隐层与隐层间连接矩阵为U,隐层与输出层间连接矩阵为W,隐层与输出层的偏置分别为b和a。h
首先随机初始化所有权值和偏置,初始化
h
o
随着时间从t=T到1反向传播,计算第p帧在t时刻输出层和隐藏的误差反向信号变量:
δ
δ
更新权值W、V、U和偏置a和b的偏导:
本发明使用均方根误差、一致性相关系数作为损失函数:
特征层上下文学习阶段将注意力加权后的特征序列x'
其中y'
其中y为维度情感标注值序列数据,y'为模型实际输出数据,ρ为两个序列数据的皮尔森相关系数,μ
本发明针对语音情感识别提出基于层级上下文和注意力机制的BLSTM模型,首先原始特征全集经过特征选择得到最优特征子集,消除高维数低层次特征的冗余性和不稳定性;然后对特征子集进行注意力加权,充分考虑输人各帧特征中的时间信息,使模型对输人层中每帧特征给予不同关注度;其次学习加权后的特征序列上下文信息得到初步情感预测结果,最后在上述初步结果基础上增加标签层上下文学习做最终识别。本发明抓住语音情感在表达过程中的连续性特点,利用BLSTM网络学习语音情感特征序列以及语音情感标签值序列两层级的上下文信息,综合考虑其差异性。实验结果表明,本文模型不仅提升了对情感语音信号的建模能力,而且有效提高了语音情感识别准确率。
以上所述,仅为本发明的具体实施方式,但本发明的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本发明揭露的技术范围内,可轻易想到变化或替换,都应涵盖在本发明的保护范围之内,因此,本发明的保护范围应以所述权利要求的保护范围为准。
- 用于视频面试的语音情感识别方法
- 通过移动终端的视频面试平台进行面试的方法及装置