沈胤宏,郑秀娟,张 昀,苗丹民
(1四川大学电气工程学院自动化系,四川 成都 610065;2西安交通大学电子与信息学部信息与通信工程学院,陕西 西安 710049;3空军军医大学军事医学心理学系,陕西 西安 710032)
心理测量是根据心理学理论,给受试者一定的操作程序,通过对受试者的表现情况进行心理评估的过程[1]。心理测量可以通过量表答题的方式进行,采用预先拟定好的问题表,由受试者自行填写来收集资料,心理测量评估者根据填写结果对受试者进行心理评估。这种方法比较节省人力、物力,但受试者有可能作答认真或故意掩饰,从而影响结果的真实性,另外评估结果还可能受心理测量评估者专业素养的影响[1]。因此,在心理测量中需要一个客观评估指标进行辅助判断,以提高测量结果的准确性。
眼球运动在一定程度上反映了人类的思维过程,所以受试者在心理测量中的想法可以在一定程度上从眼球运动的记录中得到反映。从这些记录中可以确定哪些视觉元素吸引了受试者的注意力,通过分析眼动数据可以探索不同人群的意识与认知过程。近年来,随着眼动设备成本的降低以及数据分析工具的改进,眼动技术开始被广泛应用于意识和认知探索领域,如阅读[2]、场景感知[3]和视觉搜索[4]等。
目前,眼动仪采集的原始眼动数据表现为序列的形式,由具有时间先后顺序的视线点(x,y)组成,因此许多学者使用序列比对的方式分析眼动数据间的差异。其中最基础的是距离度量的方法,即使用欧式距离、Mannan距离[5]、Hausdorff距离[6]等直接计算眼动序列间的空间距离差异,距离度量的方式大都要求序列等长,并且忽视了注视的时间信息。现有的研究大都使用字符比对算法来分析眼动数据,如PRIVITERA等[7]提出使用编辑距离来分析眼动数据,使用网格法眼动序列量化为字符串的形式,根据一个字符串转换为另一字符串需要的操作次数(插入、删除、替换)来衡量眼动序列的差异,CRISTINO等[8]在编辑距离的基础上使用重复字符来表征注视停留时间,提出ScanMatch算法度量眼动序列间的差异性。编辑距离和ScanMatch等序列比对方法使用动态规划的思想对齐序列,在短序列上表现优异,当样本量过大或序列过长时,时间复杂度较大。KÜBLER等[9]跳出字符串两两比对的思想,提出了SubsMatch算法,该算法利用滑动窗口对字符串提取子序列,通过比较子序列的频率差异来分析眼动模式的差异,适用于具有重复查看的场景。沈胤宏等[10]在SubsMatch算法的基础上对归一化方法进行了改进,可以进一步细化不同长度序列间的差异性。虽然比较子序列频率差异这种方式的时间复杂度远低于字符比对的方法,但该算法严重依赖自由参数,如滑动窗口的大小[11],并且缺乏可解释性。
根据上述方法的优缺点,在量表答题场景下,本文提出了一种基于眼动特征的辅助心理测量方法,本文使用量表中的条目作为眼动实验刺激,采集受试者眼动数据,对眼动序列提取一系列的眼动特征,并使用差分进化算法(differential evolution,DE)结合支持向量机(support vector machine,SVM)构建心理测量量表答题场景下针对不同人群的分类模型。
健康组:56人,该群体在上述心理测验中的六个维度得分值<70分。按照量表评估心理测验标准,六个维度分值<70分的人视为健康者。不健康组:56人,该群体在上述心理测验中的六个维度得分值存在≥70分的情况,按照量表评估心理测验标准,视为不健康者。
所有被试年龄在18~25岁之间,均为高中学历,视力和智力正常,能独立阅读并完成量表作答。本研究已通过空军军医大学西京医院临床试验伦理委员会审核(许可证号:KY20182047-F-1),所有被试均签署了实验知情同意书。
1.2.1 心理测量量表材料 本文将包含261道健康人格测验条目的量表作为实验刺激材料,总共包含抑郁、自杀倾向、精神病态、轻躁症、偏执、精神分裂等测量维度。
1.2.2 眼动数据采集 量表各条目被制作成幻灯片,以图片的形式放映,屏幕为21寸大小(长:47.6 cm,宽:26.8 cm),分辨率设置为1 980×1 020。数据采集前放映实验简介幻灯片,同时告知受试者实验相关内容,以保证每位受试者都了解实验过程;接着进行人眼校正,受试者需要注视屏幕四角及中央五个点,校正成功则进入实验,否则重新校正,以保证实验过程中眼动仪能正常采集数据。受试者按幻灯片放映顺序依次作答量表题目,通过鼠标单击图片上的“是”或“否”进行问题回答,回答时间没有限制;每张题目幻灯片之间插入一张带有中心十字的幻灯片,保证受试者当前题目下的眼动数据不受影响。采集过程中人眼距离屏幕70 cm,使用下巴托固定受试者头部,使用SciEye系列TM300眼动一体机采集受试者答题过程中的眼动数据,并通过SciOne开放API接口进行原始数据处理(图1)。
图1 实验流程图
1.2.3 眼动参数提取 基于上述采集到的眼动数据,本文提取了相关的眼动参数,主要包括注视、眼跳等眼动指标。注视的持续时间和位置是描述眼神经系统行为的两个基本注视特征(F01:首次注视的位置;F02:首次注视的时长;F03:首次注视时长占比;F04:注视最长时长;F05:最长注视时长占比;F06:注视最长时长点的位置;F07:注视总时长;F08:注视点个数;F09:感兴趣区域个数)[12],人在观察时的信息主要是在注视期间获得。在观察过程中,这些特征可用于检查由各个方面共同调节的认知功能,如注视时间被认为是内容识别中语义激活阶段的良好指标,反映了观察者对当前内容的加工程度;注视位置则反映了被试感兴趣区域的位置分布。注视点个数描述了人眼的所有感兴趣区域的停留总数。
实验材料
对整体注视位置建模的一种简单方法是计算注视位置整体样本的质心、方差以及注视范围(F10:坐标均值;F11:注视范围;F12:坐标方差)[13],而这个简单的特征不能模拟注视漂移的特征,即眼睛在固定位置周围的缓慢移动。在眼动追踪检查期间,注视漂移可以各种形式表现出来,因此本文提取了一些用于模拟注视漂移的特征(F13:眼球震颤总长度;F14:眼球震颤平均幅度;F15:眼球震颤平均速度)。
眼跳是非常快速的运动(S01:眼跳总长度;S02:眼跳幅度;S03:眼跳速度;S04:最大眼跳距离;S05:回视次数),将眼睛从一个焦点位置旋转到另一个焦点位置。在观察时眼跳通常是从一个已知位置朝向一个新的未知区域,但有时会出现相反的眼跳,即回视[14]。回视是观察过程中另一个重要的眼动组成部分,大多数回视是针对紧邻的前一个注视区域,然而当观察者对信息理解不充分或信息太难时,回视会指向较早注视的区域,回视次数的多少反映了感兴趣程度或信息理解难易程度。本文通过对眼动数据处理得到相应的注视、眼跳等眼动参数,然后使用这些参数构建SVM分类模型对不同人群进行分类,从而得到辅助心理测量的客观指标。
1.2.4 DE-SVM心理测量模型构建 SVM是一种二分类模型[15],其基本思想是使不同类别的数据在特征空间几何间隔最大化。几何间隔最大化的求解可化为凸二次规划求解,因此SVM模型求解算法是求解凸二次优化问题的最优化算法。SVM不仅可以求解线性分类问题,利用核函数还可以求解非线性分类问题。本文选取普适性最好的高斯径向基核函数作为SVM的核函数,高斯径向基核函数的表达式如下:
(1)
其中(xi,xj)表示原数据空间的特征向量,σ表示高斯带宽,σ>0。
SVM算法由训练数据学习到的分类模型,其分类精度受核函数参数和惩罚因子的影响很大。不同的参数取值,分类精度大不相同。针对这个问题,本文采用DE对SVM进行参数寻优。DE是由STORN等学者在遗传算法等进化思想的基础上提出的、用于求解多维参数的整体最优解[16]。DE算法的基本思想是:随机选取三个父代,对其中两个父代进行加权差并与另一个父代进行加和,以此产生新的个体。将新个体与父代的适应度进行比较,适应度高的个体进入下一代。通过整个变异、重组和选择过程不断进化,引导搜索逼近最优解(图2)。
DE:差分进化算法;SVM:支持向量机。
1.2.5 对比方法与评价指标 本实验选取ScanMatch、SubsMatch以及SVM分类器为对比算法。采用准确率、查全率、查准率和F1分数(F1 score,F1)作为评价指标。四种指标计算公式如式(2)、式(3)、式(4)和式(5)所示:
(2)
(3)
(4)
(5)
式中,N为类别数,TPi、TNi、FPi、FNi分别表示第i类人群的实际为真预测为真、实际为假预测为假、实际为假预测为真、实际为真预测为假的样本数量。accuracy:准确率;recall:查全率;precision:查准率。
本文方法与现有的ScanMatch、SubsMatch以及SVM分类器进行比较。对四种算法在261道条目上分类准确率绘制箱线图(图3)。四种算法的分类准确率最小四分位都超过了机会水准50%,其中本文提出的DE-SVM方法分类效果整体最好,分类准确率中位数值最高,SVM和ScanMatch算法的分类准确率差距不大,SubsMatch的分类准确率在整体的表现最差。另外,注意到四种算法在不同条目上的分类准确率差异较大,SubsMatch算法的分类准确率最小值已经低于50%,而最大值大于70%,本文方法的分类准确率最大值与最小值之间的差值超过了30%,这是由于单个条目结果的不稳定性造成的,条目与条目之间的分类准确性存在差异,因此仍需要对整个量表的表现进行评估。
DE:差分进化算法;SVM:支持向量机。
利用四个指标对四种方法评估(表2),所有的指标均在261道条目上取平均值。表中结果显示,本文方法的四个评价指标分别为78.92%、79.88%、85.77%、81.96%,相比其他算法表现优异。SVM算法在分类准确率和查准率上稍微优于ScanMatch算法;ScanMatch算法在查全率和F1测度上优于SVM,这说明在分类健康人群时ScanMatch的表现较优异。
表2 四种算法的分类性能 (%)
从四种算法在两类人群的分类混淆矩阵结果可以看出四种算法对于健康人群的识别准确率均优于不健康人群(图4)。其中,SubsMatch和ScanMatch在识别不健康人群的能力较差,误识率高达59.28%和49.62%。ScanMatch方法在识别健康人群上效果最好,达到了86.99%,本文方法的健康人群识别准确率为85.77%,稍劣于ScanMatch,在不健康人群的识别准确率为69.46%,优于其他三种算法。
DE:差分进化算法;SVM:支持向量机。
以上是对本文算法在整个量表的261个条目上的平均结果,两类人群在不同条目上的分类结果差异很大,由图3的箱线图可以看出,部分条目的分类准确率极高,也有部分条目的分类准确率极低,四种算法的平均分类准确率最大值与最小值之差都在30%左右。测试集在每一个分类条目上都有一个预测标签,为了最大限度地发挥整套量表的作用,对分类结果进行降维,即利用受试者在261个条目中预测占比最大的标签为最终的预测标签。本文依然利用准确率、查准率、查全率和F1测度来评估降维后的分类结果(表3)。
表3 降维后四种算法的分类性能 (%)
从表3结果分析,降维后四种算法在大部分指标上都得到了显著提升,其中本文算法在四个指标上的表现都较为优异,降维后SVM算法的表现优于ScanMatch算法,而SubsMatch算法表现依然最差。值得注意的是,降维后四种算法的查全率都得到了显著提升,这说明降维后健康人群大都分类正确。同时本文绘制降维后的分类混淆矩阵,定量分析四种算法在两种人群上的分类结果。
从降维处理后四种分类算法的分类混淆矩阵可以看出四种算法在健康人群的识别上的表现都非常优异,SubsMatch算法、ScanMatch算法和SVM的分类准确率达到100%,本文提出的DE-SVM算法达到了96.43%,在不健康人群的分类上DE-SVM表现最好,SVM算法次优,SubsMatch表现最差,不健康人群大都被误识别为健康人群(图5)。
DE:差分进化算法;SVM:支持向量机。
采用量表进行心理测量时,过多的测试条目会使得受试者感到疲乏,在测试时间过长时,受试者会出现不耐烦、急躁、眼神飘忽不定等情况,从而影响测试结果。因此,在心理测量时希望使用较少的量表条目,同时保证较好的分类结果。本文将各个条目的分类准确率进行排序,并依次选取了不同数量(分别是分类准确率最高的前20、50、100、150和200条目,以及全部261个条目)表现较好的条目做降维处理,当条目数量达到50时,分类效果已经在6个取值中达到最好,因此在心理测验时只需要部分条目就能达到比较理想的测验结果,另一方面减轻了受试者的测试疲劳程度以及时间成本(图6)。
图6 不同数量条目降维后的分类性能
为了分析导致不同条目上分类准确率差异如此大的原因,本文对分类准确率排名靠前的条目和分类准确率排名靠后的条目进行了查看,发现分类效果表现较好的条目,其内容更容易引起受试者思考,引发情绪,条目内容相对消极,而分类表现较差的条目内容则相对积极。分类准确率最高的5个条目内容充满了消极感,具有自我否定的意味;而分类准确率最低的5个条目,条目1、2、7、37的内容比较积极,条目11也存在消极意味;总的来说具有消极意味的条目分类效果优于积极的条目,但是也存在消极条目分类效果不好的情况,这说明同类型的条目也存在较大的组内差异,导致消极类型不同条目分类效果差异明显的原因还需要进一步分析(表4~5)。
表4 分类准确率最高的条目内容
表5 分类准确率最低的条目内容
根据本文得到的实验结果,可以认为在一些容易唤醒受试者情绪的条目上更容易区分心理健康人群和心理不健康人群,使用这些条目进行心理测验即可达到较为理想的结果。
SubsMatch考察受试者在观察过程中重复注视模式的差异,在本实验中,不同人群在心理量表各条目问答时,关注的都是题目区域和选项区域,阅读顺序也基本都是从题目到选项,重复注视模式均在题目关键词与选项之间产生,即使是不同人群,在阅读题目材料时重复注视模式的差异也不明显。ScanMatch在本实验中的表现优于SubsMatch,ScanMatch算法通过网格的形式进行眼动数据字符化,然后通过对齐字符串来衡量序列之间的差异,在观看相同材料时,序列之间的差异性来自于不同人对于内容的注视停留时长,注视停留时长由字符重复次数来表征。另外,不同字符代表不同的空间位置,字符对齐其实就是注视转移顺序对齐,这也是ScanMatch算法表现较好的原因。
不同人群在阅读相同的文本内容时,受阅读习惯的影响,视觉注意在空间上的变化都是从左往右,从上往下。不同人群之间存在的模式差异性来自于认知差异。认知差异跟受试者的受教育水平以及情绪水平有关。本实验的受试者阅读无障碍,在情绪水平存在高低差异,心理不健康的受试者可能在一些消极词汇(如忧愁、闷闷不乐等)上停留时间更长。本文考虑这些眼动数据内部存在的认知差异,提取了注视停留时长、注视总时长、眼跳频率等特征,这些眼动特征反映了受试者在阅读心理量表时所涉及到的认知负荷。认知负荷越高,则说明受试者需要更多地投入注意力、记忆力等心理资源来完成任务。本文利用SVM模型对特征进行分类,结果稍优于ScanMatch,说明了这些眼动特征能有效刻画健康人群和不健康人群深层次的认知差异,能有效对两类人群进行识别。由于SVM分类器的分类效果受参数影响很大,为了最大限度地发挥提取的眼动特征的作用,本文利用DE算法对SVM进行参数寻优,在DE-SVM模型下的分类结果远远优于在SVM模型下的结果,说明合适的参数能充分发挥眼动特征以及分类器的性能,提高识别准确率,DE-SVM模型下的分类结果也远优于SubsMatch和ScanMatch,这表明受试者在观看题目材料时,在本文提取的眼动特征维度上差异显著,从眼动特征出发能有效进行心理测量。
在量表答题场景下,本文提出了一种基于眼动特征的辅助心理测量的方法,主要针对心理健康方面进行了评估。该方法虽然在识别准确率上有较好的表现,但仍有以下不足:一是心理测量的内容较为单一,没有涉及能力、动机等其他心理测量方面,未来需设计眼动实验,采集不同的眼动数据验证本文方法在其他心理测量方面的性能;二是眼动特征的选取较为常规,虽然通用性较好,但对于不同的实验场景仍需设计不同的特征结合本文的特征以提升识别性能。