APP下载

基于文字输入特征的情绪自动识别

2017-03-29曹晓春

现代计算机 2017年4期
关键词:准确率分类文字

曹晓春

(四川大学计算机学院,成都 610065)

基于文字输入特征的情绪自动识别

曹晓春

(四川大学计算机学院,成都 610065)

情绪一直受到研究者的广泛关注,但是关于情绪自动识别的研究却很少。通过收集自由文本输入时的击键特征、停顿特征和修改特征,使用分类算法判断输入者是否出现喜、怒、哀、惧四种基本情绪,可以建立情绪的自动识别模型。实验结果表明,四种基本情绪都能通过文本输入的特征进行推断,并且拥有较高的准确率。

情绪;自由文本;击键特征;分类算法;自动识别

0 引言

情绪理论由达尔文和詹姆斯提出来后得到了广泛的关注和研究,起初研究的进展非常的缓慢,近几十年来,情绪的研究得到了较快的发展。

尽管情绪理论很多,但是Ekman和Friesen研究发现人类有六种基本情绪,即快乐、悲伤、恐惧、惊讶、愤怒、嫉妒。其他情绪都是以这六种基本情绪组合出来的,属于复合情绪。但是这个结论并没有得到所有研究者的承认,英国研究者的研究表明Ekma的六种基本情绪并不准确,他们研究得到的基本情绪只有四种,即喜、怒、哀、惧。在他们的研究中惊讶和恐惧是同一种情绪,愤怒和厌恶是同一种情绪。同时,情绪的fMRI研究发现,惊讶情绪的脑电持续时间非常短,显著短于其他几种情绪的持续时间。所以本文在在研究过程中只选取了喜、怒、哀、惧四种基本情绪,对文字输入者的这四种基本情绪进行判断。

目前关于情绪的研究都集中在情绪的产生机制,情绪的影响因素,情绪的分类,情绪对人的影响等方面。而关于对人情绪的判断的研究相对较少,现有的关于情绪判断的研究都是表情、微表情、身体行为方面的研究。通过对他人的表情、行为的观察对他们的情绪进行判断,探究哪些表情和行为能够准确地对情绪进行准确地判断。情绪和性格、脾气、个体行为等因素相互作用,不仅影响着人们的行为、表情,同时人们的行为和表情也能够反映一个人的情绪。

随着计算机图像学的发展,人们开始使用图像学方面的方法对人物图片和影像资料进行分析,判断图中或影像中人物的情绪。Schosberg首先提出了表情描述的三个量化尺度:注意-拒绝(A-R)、高兴-不高兴(P-U)、和活跃度。1978年Terzopoulos和Waters则运用了简化的Ekman-Friesen模型,用计算机产生人脸动画,同时也做了人脸视频序列的表情分析,判断人脸表现出来的情绪。

近年来,社交网络和社交软件得到普及,现在存在大量的非面对面的交流,这些交流中,不能看到交流对象的表情和行为,对他们的情绪判断存在很大的困难。但是,对方的情绪对交流者的反应、决策有着很重要的作用,需要根据对方不同的情绪产生不同的反应,这样才能更加融洽地交流下去。

本文基于文本输入的特征对文字输入者的情绪进行推断,使用常用的五种分类算法(朴素贝叶斯、决策树、k近邻、支持向量机和AdaBoost)逐个判断他们是否表现出了四种基本情绪(喜、怒、哀、惧),建立相应的情绪推断模型。

1 相关技术

1.1 击键特征模型

Joyce和Gopal Guptal最早提出了利用击键特征模型。他们设计了一个基于击键韵律的特征采集系统,在用户进行输入的过程中,采集用户使用键盘输入击键时间特征。因为Joyce等人的击键模型中只选用了击键平均时间,所以其数据收集和特征提取非常简单,计算量也很小。但是这个模型也存在不足之处:击键特征过于单一;特征值的处理过于简单;用户的输入习惯可能会随时间的推移而缓慢变化,当积累到一定量时,会导致此种方法的识别准确率降低。

Kacholia和Pandit等人根据Joyce模型提取击键特征过于单一的缺点,从键入单个字符、两个字符序列和多个字符序列等方面进行了研究。他们认为一个单独的按键事件应该分成按下(Press)事件和释放(Release)事件两个部分,从而可以构建一个能够描述键盘输入事件序列的PR-RP模型。

后来他们又对的PR-RP模型进行了细化,提出了新的思路,把击键时间间隔分为了以下四种:PP(Press-Press)时延:从某个键的按下事件开始到另一个键的按下事件为止的间隔时间。PR(Press-Release)时延:从某个键的按下事件开始到另一个键的释放事件为止的间隔时间。RP(Release-Press)时延:从某个键的释放事件开始到另一个键的按下事件为止的间隔时间。RR(Release-Release)时延:从某个键的释放事件开始到另一个键的释放事件为止的间隔时间。本文只使用了PR和RP两种延迟时间。

1.2 固定文本和自由文本

击键动力学的研究内容主要包括两种文本形式,一种是固定文本,另一种是自由文本。对自由文本的研究,用户不再是输入特定的字符串序列,而是可以自由的进行输入,无论是打字聊天、编辑文档还是输入用户名密码,都能够对用户的击键特征进行监控和研究。这种情况比固定文本研究要复杂得多,产生的数据量也要大很多。本文就是针对用户在互联网上聊天时输入的自由文本进行研究。

1.3 分类算法

分类算法是数据挖掘中的重要技术,其目的是为了使用数据特征集构造一个分类模型,把未知类别的数据映射到给定的类标下。模型的构造过程可以分为两个阶段——训练阶段和测试阶段。模型在构造之前要将数据进行预处理,把数据集随机的分为训练集和测试集。训练集用来建立模型,训练集中的数据又称训练样本,一个样本的形式为:(x1,x2,…,xn;y),其中xi表示属性值,y为类标。训练集中每个样本都提供了类标,所以这个阶段也成为有指导学习。测试集在测试阶段使用,用来对前面建立的分类模型进行检测,通过检测分类模型的分类准确率来判断分类模型的好坏。

本文采用常用的几种分类算法(朴素贝叶斯,决策树、k近邻、支持向量机和AdaBoost)建立分类模型,并对分析他们的分类准确率。

2 特征选择

研究表明,不同的情绪会导致不同的行为,例如,愤怒会让人产生冲动,做事的速度会加快,悲伤会让人抑郁,做事的速度会缓慢许多。同样,不同的情绪对文字输入也有着不同的影响,通过对文字输入的特征进行分析便能反过来对情绪进行推断。文字输入的流畅性和节律能够很好的反映用户的情绪状态。前人研究表明不同情绪说话的速度、节律、语调都有差异,这些差异跟他们的情绪有着重要的联系,例如恐惧的人会语无伦次,重复词语,节律时快时慢;悲伤的人说话速度很慢,但是节律很稳定。在文字输入时,不同情绪的人会表现出类似的特点。本文将文字输入的特征分为了三个方面的特征:击键特征、修改特征和停顿特征。

击键特征分为单键特征和组合特征。单键特征就是指键盘上汉语拼音对应的26个英文字母的个体特征,本文主要使用时间上的特征,即按下一个键到释放该建的时间。

本文使用的组合特征只是两个键的时间上的组合特征。组合特征有两种:RP:第一个键释放到第二个键按下的时间;PR:第一个键按下到第二个键释放的时间。

本文并不考虑单个键的击键时间特征,而是选取击键时间的统计特征。计算用户在在输入过程中击键时间的最大值、最小值、平均值、中位数、标准差,三种击键特征总共15个特征。

除了前面的击键特征,本文还使用了与文本内容相关特征。这些特征不仅仅是击键的时间,还包含了文字输入中输入的内容相关的一些特征。例如输入时的停顿时间、内容修改次数、句子长度等,这些特征已经在以前的研究中被证明对通过语音推断情绪有显著影响。同样,这些特征在用键盘进行文字输入时也可以被检测到,也可以用来对情绪进行推断。

在输入过程中我们还可以得到关于修改和停顿等方面的信息。对文字的修改有两种方式,第一种是修改光标所在的位置,第二种是修改前面的错误。修改光标处的错误又分为修改单个字词和修改长短文字。修改前文错误分为前文插入和前文删除。本文选取两种修改方式的特征共14个。

停顿是两次敲击键盘是时间差超过规定的停顿阈限,根据已有的研究,本文将停顿阈限定为2s。本文提取停顿次数、长度、最长停顿、停顿位置等8个特征用于推断模型。

本文用于情绪推断模型的特征总共37个,各自的分类和数量如下表。

表1 文字输入特征分类

3 实验

3.1 实验平台

实验数据的采集是通过普通的Lenovo104键薄膜键盘,使用Java编写的Windows钩子程序来实现的。特征选择和模型训练主要是通过Weka3.6和MATLAB 2015b来实现的。本文的所有工作都是在Windows平台下完成的。

3.2 被试

本文共选取60位被试,所有被试都是四川大学在校学生,年龄在22-27(平均值24,标准差6.7)岁之间,都至少使用电脑5年以上,熟悉键盘输入,没有阅读障碍。被试中男生35名,女生25名。

3.3 实验过程

为了让被试产生相应的情绪,被试在进行文字输入前需要看5分钟的视频,这些视频为五个:喜、怒、哀、惧、无情绪五类,用来启动用户相应的情绪。每位被试都需要观看五个视频,每看完一个视频后,在键盘上输入刚才看到的视频的大致内容,输入的时间没有限制。为了避免视频的顺序效应,每位被试的五个视频出现的顺序是随机的。

3.4 数据收集

整个文字输入过程在一个空白Word中进行,我们使用Java程序编写了Windows后台钩子程序,通过安装键盘钩子程序,收集用户在互联网通讯软件中通过键盘输入的按键信息。

4 实验结果分析

本次实验共招募被试60名,每位被试产生5组数据,总共300份数据。其中无情绪启动和喜、怒、哀、惧四种情绪启动后的数据各60组。在处理数据时,采用机器学习分类算法进行分类。将喜、怒、哀、惧四种情绪下产生的数据无情绪启动情况下产生的数据进行分类,判断被试在输入过程中是否有产生四种情绪。

本文实验得到的数据,分别采用五种机器学习算法建立分类模型。本文采用了10折交叉验证,9/10的数据用于搜索最佳参数和建模,剩下的1/10的数据用来对该模型进行验证。最后对四类情绪分类准确率进行统计,同时使用双侧T检验判断分类的准确率和基线之间是否有显著性差异。因为四种情绪启动的数据和无情绪启动的数据是一样的,所以这里的基线就是50%。

如表2所示,在四个基本情绪维度上使用五种分类算法,得到的所有分类准确率都和基线之间有着显著性差异,能够很好地对被试是否产生了四种情绪进行判断。其中恐惧情绪的分类准确率最高,五种分类器得到的准确率都高过70%,其中支持向量机得到的准确率达到了89.67%。准确率最低的是哀伤情绪,最高准确率为73.36%,最低为61.76%。Ekman的研究结果表明,人在产生恐惧的情绪是,身体反应是最大的,MRI的波动也最大,哀伤情绪对人的情感、决策影响较大,但是对身体、行为的影响相对较小。这能很好解释本文的研究结果,当产生恐惧情绪时,击键的行为的改变较大,而哀伤情绪的对击键行为的影响较小。所以恐惧情绪能够更好地检测出来,二哀伤情绪的准确率较低。

从表中的数据来看,支持向量机的分类效果最好,准确率最高,都在80%以上。我们推测,这可能是因为小样本的原因。支持向量机适合小样本训练,所以分类效果较好。如果使用非常大的数据进行分析,可能会得到其他结果。

表2 无时间限制分类准确率

5 结语

本文使用分类算法,对用户文字输入的特征进行处理,对他们表现出的四种基本情绪进行判断,得到如下结果:1.能够通过用户进行文字输入的特征对四种基本情绪——喜、怒、哀、惧进行判断,判断是否产生了四种基本情绪的一种或多种。2.恐惧情绪最容易通过文字输入特征进行判断,哀伤情绪的判断准确率最低。3.使用支持向量机对情绪分类的准确率最低。

本文建立的情绪自动识别模型能够很好地识别情绪,但是,情绪识别模型是通过分类算法进行二分,只能判断用户在输入过程中是否存在四种基本情绪。这尚属于定性的研究,并不能对他们情绪的强度进行分析。在将来的研究中,打算进一步建立定量分析模型,自动识别用户各种情绪的强度。现在,大段文字输入的场景较少,更多的文字输入是在社交中的文字输入。这种文字输入主要特点是交互性和简短性,和本文的研究有一定的差异。我们打算进一步研究社交过程中的情绪的特点,以及对情绪进行自动识别。

[1]乔建中.情绪研究[M].南京师范大学出版社,2003.

[2]刘海燕,郭德俊.近十年来情绪研究的回顾与展望[J].心理科学.2004,27(3):684-686.

[3]Ortony A,Turner T J.What's Basic about Basic Emotions[J].Psychological Review.1990,97(3):315-331.

[4]Ekman P,Sorenson E R,Friesen W V.Pan-Cultural Elements in Facial Displays of Emotion[J].Science.1969,164(3875):86-88.

[5]Gross J J.Emotion Regulation:Affective,Cognitive,and Social Consequences[J].Psychophysiology,2002,39(3):281-291.

[6]Ochsner K N,Knierim K,Ludlow D H,et al.Reflecting upon Feelings:an fMRI Study of Neural Systems Supporting the Attribution of Emotion to self and other.[J].Journal of Cognitive Neuroscience.2004,16(10):1746-1772.

[7]刘箴.虚拟人情绪向量和表情向量的合成[J].系统仿真学报.2006,18(s1):404-406.

[8]Russell J A.Core Affect and the Psychological Construction of Emotion.[J].Psychological Review,2003,110(1):145-172.

[9]陈上万.基于视频的情绪检测系统的研究[D].浙江工业大学,2013.

[10]吴立平,王金海,崔军.人脸表情识别在监护系统中的应用与设计[C].天津市生物医学工程学会学术年会,2014.2014.

[11]吴奇,申寻兵,傅小兰,等.微表情研究及其应用[J].心理科学进展,2010,18(9):1359-1368.

[12]刘晓旻,谭华春,章毓晋.人脸表情识别研究的新进展[J].中国图象图形学报,2006,11(10):1359-1368.

[13]Card S K,Moran T P,Newell A.The Keystroke-Level Model for User Performance Time with Interactive Systems[J].Communications of the Acm.2010,23(7):396-410.

[14]Vizer L M,Zhou L,Sears A.Automated Stress Detection Using Keystroke and Linguistic Features:An Exploratory Study[J].International Journal of Human-Computer Studies.2009,67(10):870-886.

[15]Singley M K,Anderson J R.A Keystroke Analysis of Learning and Transfer in Text Editing[J].Human-Computer Interaction,1987,3 (3):223-274.

[16]易彬,胡晓勤.基于加权贝叶斯的击键特征身份识别[J].现代计算机:普及版,2015(5):15-19.

[17]史扬,曹立明.基于击键特征的用户身份校验[J].计算机工程,2005,31(6):120-122.

[18]倪桂强,李佳桢,潘志松,等.基于支持向量数据描述的击键生物特征认证[J].模式识别与人工智能,2008,21(5):704-708.

[19]罗可,林睦纲,郗东妹.数据挖掘中分类算法综述[J].计算机工程,2005,31(1):3-5.

Emotion Automatic Recognition Based on Text Input

CAO Xiao-chun

(College of Computer Science,Sichuan University,Chengdu 610065)

Emotion is widely researched,but little has been done on automatic emotion recognition.In this paper,we propose an approach that intends to recognize emotion automatically.we collected keystroking characteristics,pausing features and modifying features,and used classification algorithms to determine whether the user expressed the four kinds of basic emotions,happiness,anger,sadness and fear.Result showed that the four basic emotions can be inferred through the characteristics,and it performed a high accuracy rate.

Emotion;Free Text;Keystroke;Classification Algorithm;Automatic Identification

1007-1423(2017)04-0003-05

10.3969/j.issn.1007-1423.2017.04.001

曹晓春(1991-),男,四川广安人,硕士研究生,研究方向为人机交互

2016-12-13

2017-01-21

猜你喜欢

准确率分类文字
文字的前世今生
乳腺超声检查诊断乳腺肿瘤的特异度及准确率分析
不同序列磁共振成像诊断脊柱损伤的临床准确率比较探讨
2015—2017 年宁夏各天气预报参考产品质量检验分析
颈椎病患者使用X线平片和CT影像诊断的临床准确率比照观察
热爱与坚持
当我在文字中投宿
按需分类
教你一招:数的分类
说说分类那些事