APP下载

基于PSO-kNN算法与多生理参数的压力状态下情绪识别

2013-11-12孙洪央徐祖洋王静雷沛吴开杰

中国医疗器械杂志 2013年2期
关键词:生理粒子样本

孙洪央,徐祖洋,王静,雷沛,吴开杰,

柴新禹上海交通大学生物医学工程学院,上海市,200240

0 引言

此文中压力为心理压力的简称,指人们发现真实或想象的事情超出自己意料之外时的生理和精神上的综合反映[1]。长期的压力会导致人体对疾病的敏感性增加,从而诱发多种疾病[2]。情绪与压力状态之间存在着极为显著的相关关系。压力状态下会诱发多种情绪,包括兴奋、恐惧和厌烦等[3]。而情绪作为一种心理感受,通常通过语言、语调、面部表情、行为姿态、呼吸等身体表现来表达[4]。生理信号是由人的自主神经系统和内分泌系统控制的[5],更能客观真实的反映出人们当时的情绪状态和心理感受。

通过生理信号变化反映特定情绪的“情感计算”理论,最早由美国麻省理工学院的Picard教授[6]提出,从生理信号中提取特征来进行情感识别的可行性[7]。国内外其他研究小组在此领域也做了大量工作,取得了一些成果:美国中佛罗里达大学的Nasoz等[8]分别采用k近邻(k Nearest Neighbour,kNN)、判别函数分析(Discriminant Function Analysis,DFA)及Marquardt反向传播(Marquardt Backpropagation,MBP)算法;韩国延世大学的Kim等[9]采用支持向量机(Support Vector Machine,SVM)算法;德国奥格斯堡大学计算科学研究所着重比较了不同的特征选择方法和分类器相结合的识别效果[10]。我国情感计算研究起步较晚,其中西南交通大学的刘光远团队采用多种特征提取、选择方法与分类器相结合的方法对奥格斯堡大学的情感数据样本开展了情绪识别效果的比较研究[11-12]。

通过生理信号识别反映一定压力状态下的情绪变化以及内在心理压力程度,为客观评价心理状态并辅助被测人群及时调整应激状态提供了一种有效手段。Zhai等[13]采用SVM算法,Setz等[14]通过DFA和SVM算法分别进行分类。目前,国内外针对压力状态下的情感计算研究相对较少,特别是针对不同压力程度下的情感计算研究。本文将粒子群(Particle Swarm Optimization,PSO)算法与kNN算法相结合,基于多种生理信号参数对压力状态下的情绪体验进行了识别研究。通过智能算法与去除情感基线结合的方法,最高识别率达到80%以上,提高了传统多生理信号的情绪状态识别方法的正确率,为探索压力状态下情绪与多种生理信号的关系提供了一定依据。

1 压力状态下情绪识别研究方法

本研究首先设计了压力状态下的不同情绪及紧张情绪程度诱发实验,并实时采集多个被试特定情绪状态下的心率、呼吸率、皮肤阻抗、血氧饱和度、脉率、血压等六种生理信号参数。通过对这些生理数据进行预处理及特征提取,结合实验主观体验问卷结果,采用PSO-kNN算法对实验样本数据进行特征选择和分类,最终建立压力状态下的情绪识别模型。

1.1 粒子群算法(Particle Swarm Optimization,PSO)

情绪识别研究的核心为特征选择与分类算法的选择。情绪相关生理信号的特征选择本质上是一种组合优化问题。PSO算法源于鸟群觅食的行为研究,是一种新的全局优化进化算法。其基本原理是每个优化问题的潜在解都是搜索空间中的一个粒子,所有粒子都有一个由被优化的函数决定的适应值,同时,还有一个速度决定他们发展的方向和距离,然后粒子们就追随当前的最优粒子在解空间中搜索。该算法概念简明、实现方便、收敛速度快、参数设置少,受特征维数变化影响小,是一种高效的搜索优化算法。因此,本文采用粒子群算法对生理特征进行特征优化选择。

PSO算法描述如下:

假设特征总数为D个,种群个体有m个,则第i个粒子的速度为Vi=(vi1,vi2,vi3,…,viD)T其位置为Xi=(xi1,xi2,xi3,…,xiD)T,而位置的值就是问题的一个解。将第i个粒子的位置值代入适应度函数就可以得到第i个粒子的适应值。通过比较适应值,可以得到当前第i个粒子所经历的最优位置为Pbesti=(pbesti1,pbesti2,pbesti3,…,pbestiD)T,通过比较所有粒子可以得到整个种群的最优位置为Gbest=(gbest1,gbest2,gbest3,…,gbestD)T。这样就可以通过以下两个公式得到下一代的粒子,如此反复,最终得到一个满意的解。

其中w是惯性权重因子,一般取0.4~0.9;C1和C2为学习因子,一般取C1=C2=2;rand1()和rand2() 是0到1之间的随机向量。过大的惯性权重可以加大粒子的飞行速度,有利于跳出局部极值,较小的惯性权重可以减小粒子的飞行速度,使得粒子在局部进行搜索,更快达到算法收敛。根据式(3)让惯性权重随着迭代次数线性递减的算法进行权重调整,可以使粒子在开始阶段进行全局搜索,随着迭代次数的增加在局部进行搜索,更快达到算法收敛。

wmax为惯性权重最大值,wmin为惯性权重最小值,Tmax为最大迭代次数,T为当前迭代次数。本文参数初始值的设置采用惯性权重法[15],将w初始化为常数0.729,C1=C2=1.494。为防止粒子飞出搜索空间,一般取太大会飞离最好解,太小会陷入局部最优。

1.2 k近邻算法(k Nearest Neighbour,kNN)

kNN是一种成熟而简单的分类算法,能充分利用整个情绪样本的生理特征。kNN算法的描述如下,如果一个样本在特征空间中的数个最相似(即特征空间中最邻近)的样本中的大多数属于某一个类别,则该样本也属于这个类别。kNN算法中,所选择的邻居都是已经正确分类的训练集对象。该方法在定类决策上只依据最邻近的一个或者几个样本的类别来决定待分样本所属的类别,本文设置近邻参数为1。

1.3 PSO-kNN算法

将PSO优化算法与kNN算法相结合,不仅可以优化选择特征,提高kNN的分类正确率,同时还能尽可能降低所选的特征数。在PSO-kNN算法中,当一个粒子能够使分类器产生的分类精度越高,同时选出的特征数目越少,它的适应值就应该越高。评价各粒子的适应度函数为f(x),f(x)越大,适应能力越强,适应度函数可定义为:

其中,RMSE为均方根误差,Features为样本特征子集数,Factor为平衡因子。

本文将PSO-kNN算法用于压力状态下生理信号特征选择和情绪分类,具体步骤如下:

Step1 设计粒子,用一个二进制位串来表示,每一个二进制位对应生理信号特征集中的一个特征,该位为1表示对应的特征入选特征子集,该位为0则表示对应的特征不在选出的特征子集中;

Step2 初始化粒子群,即随机设定每个粒子的初始位置Xi和初始速度Vi;

Step3 用kNN算法进行学习和训练,测试并记录分类精度及选择特征数量。根据式(4)计算粒子适应度;

Step4 对每个粒子,将适应度函数值f(xi)与自身的最优值f(pbesti)进行比较,如果f(xi)<f(pbesti),则用适应值取代前一轮的优化值,用新的粒子取代前一轮的粒子;

Step5 将每个粒子的最好适应值f(xi)与所有粒子的最优适应值f(pbesti)进行比较。如果f(xi)<f(pbesti),则用该粒子的最好适应值取代原有全局最好适应值,同时保存粒子的当前状态;

Step6 根据PSO的模型式(1)、(2),更新粒子的速度和位置,产生新种群Xi+1,速度调整规则如下:当vi>Vmax时,vi=Vmax;当vi≤-Vmax时,vi=-Vmax;

Step7 更新惯性因子w;

Step8 更新粒子的二进制位;

Step9 检查结束条件。若满足,则结束寻优,返回当前最优的特征子集及分类精度;否则增加迭代次数,使迭代次数T=T+1,转至Step3。设定的结束条件为寻优达到最大迭代次数Tmax或评价值小于给定精度。

2 情绪诱发实验

2.1 实验材料

不同情绪诱发实验中,采用佛罗里达大学NIMH情绪与注意研究中心的国际情感诱发图片库(International Affective Picture System,IAPS[16])作为压力状态下不同情绪诱发实验的主要素材,该图片库中的图片经由大量被试进行效价值和唤醒度评估,具有较高的信度。图片库中效价值和唤醒度的分值范围为1~9,1表示效价值和唤醒度很低,9表示效价值和唤醒度很高,本文选择IAPS中不同分值效价值和唤醒度的图片来诱发不同的情绪,如表1所示。压力状态下不同紧张情绪程度的诱发实验采用不同位数加减心算任务进行诱发。

表1 IAPS四种情绪诱发图片素材效价值与唤醒度Tab.1 The valence and arousal of four kinds of emotion-induced pictures in IAPS

2.2 实验被试

实验被试共14人(男8人,女6人),来自上海交通大学,年龄22周岁~27周岁。身心健康、视觉听觉正常,过往无精神及神经性疾病史,且自愿参与实验。实验前4小时内未参与剧烈运动,实验前一周内未使用任何药品。实验开始之前,使每位被试充分了解实验目的和过程,并进行抗压能力问卷测试,均具有一定的抗压能力。整个实验严格遵守赫尔辛基宣言(Declaration of Helsinki)。

2.3 实验设备

情绪诱发素材呈现采用高性能计算机系统(Intel(R) CoreTMi5-2310 CPU @2.90 GHz,4 GB DDR3 RAM,联想,中国;17英寸专业显示屏,300 cd/m2,分辨率为1280×768,垂直刷新率为75 Hz)。图片及心算题目呈现屏幕与被试距离约50 cm。生理信号的检测与记录基于实验室自主研发的便携式多生理参数采集设备,可采集心电、心率、呼吸率、皮肤阻抗、血氧饱和度、脉率、血压等多种生理信号参数。其中,仪器心率监测范围在30 bpm~240 bpm,误差≤2%,呼吸率误差≤5%,皮肤阻抗误差≤3%,血氧误差≤2%,脉率误差≤3%,血压误差在±1.3 kPa(10 mmHg)以内。

2.4 实验过程

实验一:不同视觉刺激下的情绪诱发采用十张同一类型情绪诱发图片,每张图片呈现12 s,整个过程持续2 min。被试在每次幻灯片播放结束后进行2 min的情绪平复,并对该组图片诱发的情绪进行评估。正式实验开始前,每位被试进行一组预实验,使被试熟悉整个实验流程及实验环境。预实验图片亦来自IAPS。

实验二:不同难度任务下的紧张情绪程度诱发压力状态下紧张情绪程度诱发采用具有不同难度级别的两位数、三位数、四位数的加减法心算任务[17]。每道题目呈现时间为5 s,共125 s。被试被告知在规定时间内尽量正确完成所有题目,如果获得95%及以上正确率将获得额外奖励。每组题目间被试有2 min的休息时间用于情绪平复。在三组心算任务完成后,要求被试对三组任务诱发的紧张程度进行主观评价。正式实验开始前,同样进行一组预实验以使被试熟悉整个实验流程。

2.5 实验数据处理

通过不同情绪与不同难度任务下的紧张情绪程度诱发实验,获得14位被试共98个生理信号样本数据。依据被试的主观问卷,最后共甄选出有效生理信号样本数据89个。其中,平静情绪样本数据14个,恐惧情绪样本数据10个,兴奋情绪样本数据12个,厌烦情绪样本数据11个,低紧张程度下样本数据14个,适中紧张程度下样本数据14个,高紧张程度下样本数据14个。为了消除被试个体间生理数据差异,本文将所获得的恐惧、兴奋、厌烦、低紧张程度、适中紧张程度、高紧张程度下的样本数据减去每位被试平静情绪状态下基线生理数据,得到去除基线生理样本数据,即33个三类情绪样本数据,42个三种紧张程度样本数据。完成数据的预处理后,根据表2对各类生理信号数据样本进行特征提取,最终得到33个特征。

表2 六种生理信号提取的特征Tab.2 Feature selection of six physiological signals

3 实验结果与分析

基于多生理信号的压力状态下情绪识别算法采用Matlab实现。针对压力状态下的三种情绪进行分类识别,将33个三类情绪样本中的21个样本子集作为训练集,其余12个样本子集作为测试集。对去除基线生理数据的样本和未去除基线生理数据的样本分别进行训练、测试,得到识别结果如表3所示。ALL指包含BP、HR、RR、PR、SpO2、SC的生理信号集合。

表3 生理信号及其特征组合对压力状态下三类情绪状态的识别结果Tab.3 The classification of three stress emotions by physiological signals and their features’ combination

对压力状态下的紧张程度进行识别,将42个紧张程度样本数据集中的30个样本子集作为训练集,将剩余12个样本子集作为测试集。对去除基线生理数据的样本和未去除基线生理数据的样本分别进行训练、测试,得到识别结果如表4所示。

表4 生理信号及特征组合对压力状态下三种紧张程度的识别结果Tab.4 The classification of three tension degrees by physiological signals and their features’ combination

本研究采用了信效度较高的IAPS图片系统来设计情绪诱发实验,通过实验中被试主观问卷评价,所诱发的特定情绪具有更高的可靠性。如表3与表4所示,通过PSO-kNN算法对情绪相关生理数据进行识别,三类不同情绪的平均识别率为75%,三种不同紧张程度的平均识别率为83.33%。其中,去除基线生理信号样本的识别率均高于相应未去除基线的结果。说明通过去除基线生理信号消除个体间生理信号的差异,能够有效提高压力状态下的情绪识别效果。同时,由结果可以看出,优化选择后的多种生理信号特征组合比单一生理信号特征更能提高识别算法的识别效果。在多次样本训练中,舒张压、心率最大值最小值差和脉率最小值这三种特征均被多次选入三类情绪识别的最优子集特征,表明这三种生理信号特征对压力状态下的多类情绪识别具有重要意义;在三种紧张程度识别训练结果中,心率方差、心率最大值和呼吸率方差特征多次被选中,说明这三种生理信号特征有助于压力状态下紧张情绪程度的识别。与Nasoz等人直接采用kNN算法识别结果相比,本文结合去除基线情感及PSO算法对多种生理信号的多种特征进行优化选择后,再用kNN分类能得到更好的识别效果。

4 总结与展望

本文采用IAPS图片视觉刺激与心算任务实验实现三类情绪和三种压力程度的诱发,建立起情绪相关生理信号样本库。通过PSO特征优化找到了有效识别压力情绪的六种特征向量,并利用kNN算法实现了压力状态下的情感计算与压力程度识别。实验结果表明,采用PSO-kNN算法针对三种情绪的识别有效率达到75%,压力程度的识别率达到83.33%。通过基线去除及PSO特征优化,与传统的未进行特征优化选择的kNN相比,具有更好的识别效果。为情感计算研究中生理信号处理及模式识别算法研究提供一定的参考。

未来的工作将在实验室环境下进一步扩展压力状态下的情绪相关多生理数据样本,研究更为有效的特征提取算法及最优特征组合,从而更加完善压力状态下基于多生理信号的情绪识模型。并将情绪识别模型推广到实际应用中,如运动员赛前紧张情绪程度识别等。

[1] Parker H.Stress Management[M].Delhi,IND:Global Media,2007.

[2]Kiecolt-Glaser JK,McGuire L,Robles TF,et al.Psychoneuroimmunology:psychological influences on immune function and health[J].J Consult Clin Psychol,2002,70(3):537.

[3]Lazarus RS.Stress and emotion:A new synthesis[M]New York:Springer Publishing Company,2006.

[4]Cowie R,Douglas-Cowie E,Tsapatsoulis N,et al.Emotion recognition in human-computer interaction[J].IEEE Signal Proc Mag,2001,18(1):32-80.

[5]Kreibig SD.Autonomic nervous system activity in emotion:A review[J].Biol Psychol,2010,84(3):394-421.

[6] Picard RW.Affective computing[M].Cambridge:The MIT Press,1997.

[7]Picard RW,Vyzas E,Healey J.Toward machine emotional intelligence:Analysis of affective physiological state[J].IEEE T Pattern Anal Mach Intell,2001,23(10):1175-1191.

[8]Nasoz F,Alvarez K,Lisetti CL,et al.Emotion recognition from physiological signals using wireless sensors for presence technologies[J].Cogn Technol Work,2004,6(1):4-14.

[9]Kim KH,Bang S,Kim S.Emotion recognition system using shortterm monitoring of physiological signals[J].Med Biol Eng Comput,2004,42(3):419-427.

[10]Wagner J,Kim J,André E.From physiological signals to emotions:Implementing and comparing selected methods for feature extraction and classification[C].ICME 2005.

[11]牛晓伟,刘光远.基于遗传算法的生理信号情感识别[J].西南大学学报 (自然科学版),2007,(9):026-030.

[12]林时来,刘光远,张慧玲.蚁群算法在呼吸信号情感识别中的应用研究[J].计算机工程与应用,2011,47(2):169-172.

[13]Zhai J,Barreto A.Stress detection in computer users based on digital signal processing of noninvasive physiological variables[C].EMBS'28,2006.

[14]Setz C,Arnrich B,Schumm J,La Marca R,Troster G,Ehlert U.Discriminating stress from cognitive load using a wearable EDA device[J].IEEE T Inf Technol Biomed,2010,14(2):410-417.

[15]Eberhart RC,Shi Y.Comparing inertia weights and constriction factors in particle swarm optimization[C].Proc Cong Evol Comput,2000.

[16]Lang PJ,Bradley MM,Cuthbert.International affective picture system (IAPS):Affective ratings of pictures and instruction manualR].Technical Report A-8,2008.

[17]黄志剑,王魏芳,杨健梅.紧张状态下优秀运动员动态心理特征分析[J].武汉体育学院学报,2006,40(3):33-37.

猜你喜欢

生理粒子样本
碘-125粒子调控微小RNA-193b-5p抑制胃癌的增殖和侵袭
用样本估计总体复习点拨
基于膜计算粒子群优化的FastSLAM算法改进
大脑如何知觉音乐的形式美?——来自电生理的证据
肉鸡铬需要量及其营养生理作用
基于BP神经网络的旋转血泵生理控制
Conduit necrosis following esophagectomy:An up-to-date literature review
规划·样本
基于粒子群优化极点配置的空燃比输出反馈控制
妈妈们产后的生理烦恼