时间:2024-05-04
潘礼正,2,尹泽明,佘世刚,袁峥峥,赵 路
(1.常州大学 机械工程学院,江苏 常州 213164;2.东南大学 江苏省远程测量与控制重点实验室,南京 210096)
近年来,情感状态识别在健康监测、远程教育、驾驶员状态评估以及人机交互等领域成为研究的热点[1-2]。
目前的情绪识别研究主要建立在面部表情、语音、身体姿势等信号的基础上[3-4],但这些信号容易受到人的主观意志控制。生理学研究表明,生理信号与人体状态密切相关,由神经系统和内分泌系统控制,不受人的主观思想的影响,因此能客观地反映情绪状态,得到了广泛的研究与应用[4-6]。但是目前的研究大多都是通过单模态的生理信号进行情绪识别。例如文献[7]通过脑电信号进行情感识别;文献[8-9]通过心电信号进行情感识别;文献[10]通过脉搏信号进行情感识别;文献[11]通过皮肤电信号进行情感识别;文献[12]通过肌电信号进行情感识别;上述研究都取得了一定的成果,但是存在识别率不高的问题。文献[13-14]的研究表明,在情感识别过程中,通过将多种模态的生理信号特征进行融合作为分类器的输入,能够使识别结果更加客观和准确,但是将多模态生理信号特征融合会增加特征维度、降低识别效率。
为了提高情绪识别的效率和准确率,本文提出了一种融合多种生理信号及FCA-ReliefF的情绪识别方法,并在公开的数据集进行实验,验证提出方法的有效性。
为了验证提出方法的有效性,采用德国 Augsburg 大学建立的公开的情感数据库[15]。数据包含被试在4种情绪状态(开心、愤怒、伤心、愉悦)下的4种生理信号(心电、肌电、呼吸、皮肤电)。其中心电信号(ECG)的采样频率为256Hz,肌电信号(EMG)、呼吸信号(RSP)、皮肤电信号(SC)的采样频率均设置为32 Hz。实验连续进行25天,每天对被试4种情绪状态的4种生理信号进行采集。为了方便后续研究,每种生理信号的数据采集长度均保留为2分钟。最终得到开心、愤怒、伤心、愉悦样本各25个,共100个样本。本文情感识别流程图如图1所示。
图1 情绪识别算法流程图
特征提取就是从生理信号中提取出能够反映与情绪相关的特征参数。为了提高分类结果的准确率,本文分别从信号的时域和频域两个维度入手从情感生理数据中提取出相应的时域特征和频域特征。
时域特征是从统计学的角度对生理信号的波形进行相应的特征提取。首先计算信号在时域中常用统计量,包括最大值、最小值、均值、标准差、方差、中值、极值等7个特征;然后对信号序列分别作一阶差分和二阶差分后再分别提取上述7个特征,总计得到21个特征。一阶差分体现了信号的变化趋势和变化快慢;二阶差分可以用来检测信号局部的拐点。对每一类信号都提取上述的21个特征,总共84个特征。在时域内进行特征提取涉及到如下计算公式:
(1)
(2)
(3)
(4)
式中,Xn代表信号的第n个样本;N表示要分析的数据的长度;ux代表平均值;σx代表标准差;σx代表方差;1diff代表一阶差分。
利用快速傅立叶变换(FFT)将信号从时域变换到频域。将信号从时域转换为频域涉及以下公式:
(5)
(6)
当满足傅立叶积分条件时,式 (5) 称为f(t)的傅立叶变换;式 (6) 的积分运算称为F(w)的反傅立叶变换;F(w)被称为f(t)的镜像函数;f(t)为原函数。
将信号从时域转换到频域后,提取最大值、最小值、均值、标准差、中值和极值等6个特征,从4种信号共获得24个特征。这样从时域和频域总共提取了108个特征,包括心电、肌电、呼吸和皮肤电信号的各27个特征。
特征相关性分析(FCA)是指计算各个特征之间的相关系数大小,衡量特征之间相关性,然后设置阈值删除两个相关性较大的特征中的一个[16]。相关性分析理论建立在删除相关性较大的特征不会降低剩余特征表达信息的能力[17]。因此,在不降低特征识别精度的前提下,使用FCA对原始的高维特征集进行了初步筛选工作,即删除原始特征集中两个相关特征中的一个冗余特征,从而降低特征维度。特征相关性分析(FCA)步骤如下:
1)利用分类器构造情绪识别模型,计算出每个特征的分识别精度,并根据每个特征的识别精度按照从小到大的顺序排列。本研究选取支持向量机作为分类器。
2)根据下面的公式计算两两特征之间的相关系数大小:
(7)
(8)
3)通过步骤2) 的计算,得到以下相关系数矩阵:
(9)
上述矩阵是一个对称矩阵,特征与特征之间的相关系数满足rij=rji。rnn在矩阵的主对角线上,是特征的自相关系数,并且满足rnn=1。
4) 设置阈值δ(0≤δ≤1)。当两个特征之间的相关性阈值满足rij>δ时,参照 (1) 的排序结果,保留识别率大的特征,剔除识别率小的特征。当遇到两个特征中的一个已经被删除时,另一个特征则保留下来,最终经过特征降维后保留下来的特征构成一个新的特征子集。再用ReliefF算法对新得到的特征集进行特征筛选。
保留的特征数量取决于设置的阈值。阈值越小,保留的特征数量越少,特征之间的相关性越小。相反,阈值越大,保留的特征数量越多,特征之间的相关性越大。根据分析阈值δ的选择范围一般在0.85~0.95。本文经过多次实验发现,当阈值δ设置为0.90时,效果最好。
ReliefF算法是一种在Relief基础上改进的算法。Relief算法基于特征的权重进行特征筛选,其算法步骤是首先根据特征与所属类别之间的关联度大小为每个特征分配一个权重值,然后根据阈值删除权重值小于阈值的特征[18]。Relief算法计算量较小,速度快,但它仅限于二分类问题之间的特征选择。经过改进得到的ReliefF算法将二分类问题的特征选择扩展到多分类问题的特征选择,其在手势识别、语音识别等领域已经取得了较好的实验结果[19]。ReliefF算法的主要实现步骤如下:
1)从样本集S中随机选择任意样本Si,并从与样本相同的类别S中选择k个相邻样本。
2)从不同于样本Si的每个类别中任意选择k个相邻的样本;
3)根据下面的公式更新每个特征权重值:
(10)
4)确定阈值进行删除。
本文参考文献[18-19],在确定删除阈值时,分别去除最小权重的5%、8%、10%、15%、20%、25%、30%、35%和40%的特征量。实验结果表明,删除25%的特征数量后,得到的识别率最高。因此,本文选择去除25%的特征量,最终得到包含60个特征的特征集。
本节主要将提出的方法应用到德国Augsburg大学建立的公开的情感数据集上。
实验结果主要从以下两个方面进行展示:1) 对比单一生理信号和多种生理信号融合后在进行情绪识别时的准确率,用来展示多种生理信号融合在情绪识别中的优势;2) 将FCA-ReliefF降维算法应用到多种生理信号融合后得到的特征空间进行特征降维,分析特征空间缩减前后的维度变化以及识别率的变化,并与德国Augsburg大学提供的实验结果进行对比,展示提出方法的优势。
基于单一信号特征的四种情绪状态的情绪识别精度见表1和表2。
表1展示了基于单一信号特征和使用SVM分类器的情绪识别率。可以看出,肌电信号识别率最高,达到72.26%;心电信号识别率最低,只有62.12%;4种生理信号的平均识别率为66.17%。
表1 基于支持向量机的单一生理信号识别精度
基于决策树分类器的单一生理信号情绪识别率如表2所示。其中肌电信号识别率最高,达到62.32%。SC信号的识别率最低,只有52.16%。4种情绪状态的平均识别率较低,只有56.48%。
表2 基于决策树的单一生理信号识别精度
通过对表1和表2进行分析,可以得出结论:1)无论是使用支持向量机还是决策树分类器,肌电信号都比其他生理信号更容易识别;2)支持向量机的分类效果优于决策树分类器;3)单一生理信号的识别率普遍较低。
表3和表4展示了分别使用支持向量机和决策树进行生理信号特征融合后识别的结果。
表3 基于支持向量机的多生理信号融合的识别精度
表4 基于决策树的多生理信号融合的识别精度
结果显示愤怒和悲伤的识别率最高,均为98.41%;喜悦和快乐的识别率稍低,均为95.16%。这表明,愤怒和悲伤的、这两种情绪状态比快乐和愉悦的情绪状态更容易识别;4种情绪的平均识别率达到了96.79%。
从表4可以看出愤怒识别率最高,为92.06%,愉悦识别率最低,为85.48%;悲伤和喜悦的识别率分别为90.48%和88.71%;4种情绪状态的平均识别率为89.18%。
分析表1、表2、表3和表4,得出如下结论: 1)无论使用哪种分类器,愤怒的情绪状态比其他三种情绪状态更容易识别,而快乐的情绪状态较难分类;2)使用决策树进行分类得到的结果低于支持向量机的识别效果;3)与单一信号特征的识别率相比,生理信号融合后的识别精度得到了显着改善,识别率远高于单一信号情绪识别结果,这表明多种生理信号特征融合是提高识别率的有效方法。
此外,还将实验结果与德国Augsburg大学的结果[15]进行了比较,如表5所示。与德国Augsburg大学的实验结果对比得到,本文得到的4种不同情绪的平均识别率更高,分别为96.79%和89.18%,进一步验证了特征融合方法的有效性。此外,德国Augsburg大学和本文的研究结果都表明,愤怒的情绪更容易识别。
表5 德国Augsburg大学与本文实验结果的对比
*代表本文使用的方法
尽管生理信号特征融合的平均识别率较高,但是特征维度达到了108维,特征维度较大影响了识别效率。为了有效地减少特征维数,采用了基于FCA-ReliefF的两阶段特征筛选策略。在进行选择之前,需要将经过融合得到的108维特征进行从1~108顺序编号,不同的数字代表不同的特征编号。这108个特征已在前文中介绍,包括心电、肌电、呼吸和皮肤电信号的各27个特征。通过使用FCA-ReliefF方法去除的特征分别示于表6和表7中。
表6 使用FCA剔除的特征
表6表示使用FCA进行第一阶段特征降维删掉的特征编号,即将原始的108维特征减少到80维特征删掉的特征编号。包括心电信号的6个特征、肌电信号的8个特征、呼吸信号的7个特征、皮肤电信号的7个维度,总共剔除了20个特征。
接着采用ReliefF算法进行第二阶段降维,即对剩余的80个特征进行二次降维。在此步骤中,又剔除了20维特征,包括心电信号的4个特征、肌电信号的6个特征、呼吸和皮肤电信号各5个特征。被剔除的特征编号如表7所示。
表7 使用ReliefF剔除的特征
将经过FCA-ReliefF方法降维后得到的特征集输入分类器进行分类。为了验证提出方法的有效性,将本文实验结果与文献[20]、[21 ]进行对比,结果如表8所示。
表8 使用不同特征选择方法的情绪识别精度
*代表本文使用的方法。
实验结果表明:1)本文的实验结果在未经过特征降维时在特征维数及识别精度方面均优于文献[20-21 ];2) 为了进一步减小特征空间,使用FCA-ReliefF进行特征选择,特征维度从108维减小到60维,识别精度进一步提高,达到了98.40%,验证了提出方法的有效性。
本文采用德国Augsburg大学公开的情感数据库进行情绪识别实验。提出基于特征融合与FCA-ReliefF的方法进行情绪识别,结果表明,特征维数从108维降到60维,识别率达到了98.40%,验证了方法的有效性。在此研究工作基础上,后续工作将围绕相关指定任务展开,包括新的特征提取方法、改进的分类器,进一步提高情绪识别的效率和准确率。
我们致力于保护作者版权,注重分享,被刊用文章因无法核实真实出处,未能及时与作者取得联系,或有版权异议的,请联系管理员,我们会立即处理! 部分文章是来自各大过期杂志,内容仅供学习参考,不准确地方联系删除处理!