张梦娜 王君岩 龙 洋 张浩峰 胡 勇
1(南京理工大学医院预防保健科,南京 210094)
2(新南威尔士大学计算机科学与工程学院,悉尼 2052)
3(杜伦大学计算机科学系,杜伦DH1 3LE)
4(南京理工大学计算机科学与工程学院,南京 210094)
抑郁症是一种严重的情绪障碍,会影响患者的身心健康[1-2]。它通常包括长时间的强烈悲伤感,以及无助、绝望和毫无价值的感觉。抑郁症不仅会导致对活动、疲劳和睡眠问题失去兴趣,还会影响患者的感觉和思维方式。根据世界卫生组织的数据,各个年龄阶段的总计超过3 亿人都患有抑郁症,这是年轻人自杀的主要原因[3-4]。在英国,据报道1/4 的人患有抑郁症[5]。因此,抑郁症被认为是全球范围内主要的精神健康疾病。在临床诊断中,心理医生通过面对面的访谈,并将他们的评估结果与《精神疾病诊断和统计手册》 (Diagnostic and Statistical Manual of Mental Disorders,DSM)中概述的9 种抑郁症状相对照,以诊断患有抑郁症的患者[6]。如今,这种方式已被临床医生、研究人员和相关机构广泛使用。DSM 的最新版本是第5 版,于2015年5月18日发布;它定义了9 种抑郁症状,并描述了日常生活中有助于诊断的独特行为。根据这些症状和情况,临床医生进行评估并诊断出抑郁症。通常,症状可概括为情绪低落和快感不足。在严重的情况下,患者可能会出现妄想,但较少出现精神病(如幻觉)等症状[7-8]。在典型情况下,症状包括记忆力差、易怒甚至有自杀念头。通常,根据患者的情况和症状,由受过训练的临床医生对患者进行诊断评估。但是,由于感到羞耻或不了解抑郁症,抑郁症患者通常不愿与心理学家会面来寻求帮助。因此,有必要寻找一种非直接接触式的自动化检测方法。
当前自动化抑郁症的检测方法主要是使用语音或者视频特征来实现。Gratch 等[9]构建了一个苦恼分析访谈语料库(Distress Analysis Interview Corpus,DAIC),包含临床访谈,旨在帮助诊断焦虑、抑郁和创伤后应激障碍等心理困扰的状况。该访谈由人类、人类控制的个体和自主的个体进行,参与者包括抑郁个体和非抑郁个体。收集的数据包括录音和录像以及广泛的问卷调查,语料库的一部分被转录和注释为各种语言和非语言特征。该语料库已被用来支持自动面试代理的创建,并用于心理困扰的自动识别。由于语音成为与抑郁症患者的最主要交流方法,因此Srimadhur 等[10]利用了基于光谱程序的卷积神经网络,对语音信号进行处理,并获得了60%左右的准确率。考虑到样本不平衡问题,Ma 等[11]提出了一种深层模型,即DeepAudioNet,用于编码声道中与抑郁症相关的特征,将卷积神经网络(convolutional neural networks,CNN)和长短时记忆(long-short term memory,LSTM)相结合,以提供更全面的音频表示。此外,由于监督的样本较少,Zhao 等[12]提出了一种新的交叉任务方法,将注意力机制从语音识别转移到抑郁症严重程度的测量,这种转移被应用在一个反映语音自然层次结构的两级层次网络中。Vázquez-Romero 等[13]在预处理阶段,将语音文件表示为一系列对数谱图,并随机采样以平衡正、负采样,然后再采用卷积神经网络进行处理。Negi 等[14]利用一个人声音的韵律特征(音高、音调、节奏),建立了一个检测他是否患有抑郁症的模型。然而,视频也可以部分地反映出患者的一些状况,因此Melo 等[15]利用基于视频的方法实现抑郁症的检测;该方法根据被试的面部表情,提出了一种通过分布学习来精确预测抑郁水平的深度学习结构;该结构能够利用数据分布,探索面部图像和抑郁水平之间的顺序关系,并且对噪声和不确定的标记具有鲁棒性。考虑到不同模态会含有更多的有用信息,Yang 等[16-17]使用语音、视频和文本混合的方法,认为基于文本的内容特征对于分析抑郁症相关的文本指标也很重要;此外,为了提高抑郁症自动评估系统的性能,还需要强大的模型,能够模拟嵌入音频、视频和文本描述符中的抑郁症特征,因此提出了新的文本和视频特征,并从音频、视频和文本的描述符中混合了用于抑郁估计和分类的深度和浅层模型。另外,Qureshi 等[18]也利用声学,文本和视觉模式,提出了一个新的基于多任务学习注意的深度神经网络模型,它有助于多种模式的融合。特别地,使用这个网络来回归和分类抑郁症的水平。然而,这些方法都需要面对面地采集受访者的音频、视频以及文本信息,但面对面的采集通常会被患者所排斥,且标注的准确性也会受到影响。
在现代社会中,社交媒体的使用已在人们的日常生活中变得越来越不可或缺。人们越来越多地在Twitter、Facebook 以及微博等社交媒体上分享自己的感受和情感。如今,社交媒体不仅可以反映个人的日常生活,还可以反映他们的心理活动和健康状况,包括抑郁症患者在内的越来越多的人倾向于在微博等社交媒体平台上分享自己的感受和情感。因此,研究人员已开始分析社交媒体上抑郁用户的在线行为。例如,Park 等[19]提供的证据证明,社交媒体可以提供有意义的数据,用以捕捉用户的沮丧情绪。在后续的工作中,他们与抑郁和非抑郁的用户进行了面对面的采访,发现非抑郁的用户将Twitter 视为信息消费和共享的工具,而抑郁的用户将Twitter 视为情感互动和社会意识的工具。先前的研究表明,可以通过社交媒体发现抑郁症。因此,Choudhury 等[20]确定社交媒体具有检测和诊断抑郁症的潜力。Shen 等[21]收集了基于Twitter 数据的大规模数据集,并分析了抑郁和不抑郁的Twitter用户之间的在线行为有何不同。这样的研究带来了分析社交媒体作为检测抑郁用户的手段的可能性。但是,现有的工作仍存在一些局限性:一是很少有工作分析社交媒体上的时间序列信息。大多数研究关注用户的社交网络信息,而每个用户在不同社交媒体平台上的活动各不相同,无法通过检查一天的活动来检测抑郁,所以应该有一个研究来更仔细地调查过去的信息。因此,可以肯定的是,时间序列信息对于抑郁症的检测很重要。二是很少有使用社交媒体(如Twitter)的抑郁症检测应用程序使用机器学习,同样很少有应用研究抑郁症的新出现症状。因此,有必要开发一种使用机器学习来分析抑郁症状的方法。
正是基于这样的基础,使采用机器学习方法、通过社交媒体数据发现抑郁症成为可能。最近,机器学习已通过社交媒体用于抑郁症的检测工作中。但是,鉴于数据样本的不平衡,并且大多数情况下来自非抑郁者,因此开展此类工作存在一些挑战。此外,尚未有分析此问题中时序信息的工作。考虑到抑郁症状不会立即出现,早期的文本信息有助于判断抑郁症的倾向,这使得时序信息更加重要。针对这一问题,本研究提出一种非监督LSTM 多示例学习模型,通过提取一种新的文本数据特征,可以嵌入来自推文的时间序列信息。具体来说,使用无监督的LSTM 提取函数,可以提取包括来自先前推文消息的特征。此外,本研究还利用多示例学习进行分类,进而检测抑郁与否;以通过时间序列特征为样本,通过训练分类器,实现每一条推文的分类;采用阈值方法,最终实现用户是否存在抑郁症的检测。本研究所提出的方法根据时间序列信息,更好地利用了调查对象的病态发展信息,提升了检测的准确率。
为了通过Twitter 进行抑郁症检测,采用两个标签齐全的抑郁症和非抑郁症Twitter 用户数据集MDDL,这些数据集已在线发布[21]。在此基础上,采用基于启发式规则的方法,从Twitter 成熟的API 构建两个标记良好的抑郁和非抑郁数据集,具体的情况如表1所示。数据集的统计量可以总结如下:
表1 所用数据集简介Tab.1 Summary of the employed dataset
1)抑郁数据集。基于2009—2016年之间的推文收集了抑郁症数据集,从中筛选出100 个调查对象,选择发布了的3 973 条推文数据。如果调查对象的推文中包含严格的模式,则将其标记为“抑郁”,例如“我被诊断为抑郁症”。
2)非抑郁数据集。收集者于2016年12月收集了一个非抑郁数据集,同样从中筛选出100 个调查对象,选择发布了的3 973 条推文数据。如果调查对象从未发布过任何带有字符串“抑郁”的推文,他或她将被选入非抑郁数据集。
考虑到要验证方法的可行性,将数据集划分为两个部分,一部分用于训练,另一部分用于测试,训练数据与测试数据的比率为8 ∶2。在训练与测试过程中,将随机分配样本,并按照多次计算的平均结果来记录最终数据。
本研究提出一个多示例学习的模型,利用提取的时间序列特征来检测用户是否患有抑郁症。基于现有研究的局限性,并根据Twitter 数据集,提出了一种无监督的 LSTM 多示例学习模型(unsupervised LSTM multi-instance learning,ULML),其总体思路是:
1)使用无监督的LSTM,从每个推文中提取时间序列特征,该LSTM 可以存储每个用户的推文信息,可以更好地反映来自潜在抑郁症用户的抑郁信息。
2)为了利用时间序列特征的效率,并解决数据集不平衡的问题,通过分析该特征来训练多示例学习模型。鉴于多示例学习所特有的属性,本研究提出的机器学习模型在抑郁症检测方面将会表现得很好。
首先,给出要研究问题的定义:设有N=Nd +Nu条标注的推文数据,包括Pd个抑郁症患者的Nd条推文数据TD = {td1,td2,…,tdNd} 和标签数据YD ={yd1,yd2,…,ydNd} ,以及Pu个非抑郁症患者的Nu条推文数据TU = {tu1,tu2,…,tuNu} 和标签数据YU={yu1,yu2,…,yuNu} ,其中T=TD ∪TU={t1,t2,…,tN},Y=YD ∪YU={y1,y2,…,yN} 。期望采用非监督方法对TD 和TU 分别抽取时间序列特征SD = {sd1,sd2,…,sdNd} 和SU = {su1,su2,…,suNu},其中S=SD ∪SU ={s1,s2,…,sN} ,并通过这些数据训练二值分类器F,用于未来对其他相关人员进行抑郁症的分类检测。
该方法的总体框架如图1所示。首先,基于给定用户的时间轴推文T,将其标记化为可用的推文编码X,然后使用无监督的LSTM,将每个推文编码为时间序列特征S;然后,使用训练好的二进制分类器,对每个时间序列特征进行分类,其中分类器由数据集中标记良好的抑郁或非抑郁的推文训练;最后,利用多示例学习来检测给定用户是否患有抑郁症。
图1 方法的总体框架Fig.1 Framework of the proposed method
1.2.1 特征提取
为了训练出多示例学习模型,使用时间序列特征作为输入,该特征基于每个用户的时间轴推文。众所周知,时间序列数据是指按时间顺序索引的数据点序列,因此可用无监督的LSTM 作为从每个推文中提取时间序列特征的方法。在这种情况下,为了表示用户时间轴推文中的时间序列信息,利用无监督的LSTM(也称为LSTM 自动编码器),从每个推文中提取了一组向量si。其中,自动编码器是一种重建式的神经网络,以无人监督的方式,从用户那里学习每条推文的矢量化表示。
LSTM 自动编码器至少需要两个LSTM 层。以两个LSTM 层模型为例,第一层可以视为编码器,第二层可以视为解码器。首先,模型通过第一LSTM层输入矢量化的推文,以输出形状良好的向量;然后,将此向量作为输入,以便通过第2 个LSTM 层,使输出具有与输入向量化推文相同的形状;最后,将对模型进行优化,以使输入和输出尽可能相似。因此,LSTM 自动编码器将来自输入层的标记化推文xi压缩为格式良好的代码si,然后将代码解压缩为向量x^i的形式。如图1中的特征提取部分所示,LSTM 自动编码器的步骤如下:
1)推文标记化。由于词干推文是一种字符串,因此自动编码器的第一步是在输入之前对推文进行标记化。最初选择10 000 个流行的英语单词,然后通过所选流行单词的序列号对词干推文中的每个单词进行标记。为了使每个推文具有相同的尺寸,使用单词嵌入方法。此方法首先计算推文的最大词语数m,然后在tweet 向量前面嵌入0,以使每个推文具有相同的维数。通过这样的方式,可以将推文T= {t1,t2,…,tN} 标记为X= {x1,x2,…,xN}。
2)LSTM 自编码器。根据图1中的特征提取部分,编码器部分包含输入推文、LSTM 编码层和推文表示。输入层顺序输入标记化的文本序列xi,进入到LSTM 层中进行处理并编码为序列编码si,然后这些序列编码再通过LSTM 层进行解码为x^i。其中,LSTM 自动编码器层旨在生成与输入标记化推文具有相同形状的矩阵。因此,可以将输入和输出之间的差定义为损失函数,有
为了使输入与输出相似,该自动编码器力求使损失函数最小化。其中,LSTM 自动编码器采用了Adam 优化器[22]。这是一种优化算法,代替了经典的随机梯度下降过程,根据训练数据迭代来更新网络权重。因此,此方法从所有标记化推文中迭代相同数量但随机的项,以训练LSTM 自动编码器的模型,以便优化自动编码器算法,最小化损失函数。
1.2.2 多示例学习
考虑给定的数据集,其中非抑郁的样本数量大于抑郁的样本数量。此外,根据标签的规定,用户的推文包含严格的模式,例如“我被诊断为抑郁症”,才会被标记为抑郁。因此,多示例学习是一种合适的机器学习方法。另外,抑郁症检测问题是典型的二分类问题,分类模型用于估计二进制预测变量的概率。在这项工作中,抑郁症检测模型用来估算用户抑郁症的可能性。在机器学习领域,逻辑回归和支持向量机是二进制分类领域的基本方法。因此,采用了这两种方法来训练分类器。
1)逻辑回归(logistic regression,LR)。根据这一概念,逻辑回归分类器f(si)可以定义如下:
式中,W、b为待学习的参数。
同时,为了测量二元分类器的逻辑回归模型的学习损失,这里采用交叉熵损失函数,可以表示如下:
式中,yi为si所对应的真实标签。
为了训练分类器,采用了基本的优化器算法,即梯度下降法,该方法也称为最速下降法,以寻找损失函数的最小值。在进行最终的实验之前,本研究进行了一系列学习率不同的逻辑回归实验。根据这些实验,本研究选择了学习率为0.06 的分类器,该分类器具有最佳的性能。
2)支持向量机(support vector machine,SVM)。本研究还训练了两个具有不同内核功能的SVM 模型。根据Representer 定理[23],SVM 中的参数可以写成训练数据的线性组合,那么最终的分类器可以表示如下:
式中,φ(sj)Tφ(si)为核函数,也可以表示成K(si,sj)。
根据经验,采用了线性核(L-SVM)和RBF 核(R-SVM)。其中,线性核的核函数可以表示为此外,RBF 核的核函数可表示为
本研究选择了LIBSVM 软件包[24]作为实验软件。数据样本是标记化的抑郁推文和标记化的非抑郁推文。根据经验,这些实验将时间序列特征维设置为128。根据损失和迭代图,这些实验选择了无监督的LSTM 模型,该模型迭代9 000 次,以提取时间序列特征。对于L-SVM,采用默认参数的模型,其中C=1.0;对于R-SVM,选择了软件默认参数的模型,其中C =1.0,γ =10。
3)多示例学习。在训练了检测抑郁推文的模型之后,下一步就是预测Twitter 用户是否患有抑郁。针对数据集不平衡的问题,采用多示例学习作为检测模型来检测Twitter 用户。特别地,鉴于不平衡的数据集,本研究改进了该算法。该算法可分为两部分,每一部分的详细的结构如下:
(1)={s1,s2,…,sj,…,sn}为用户ui的时间序列特征,其中单个n为用户的推文数;采用选定的二进制分类器f(sj)来检测每个推文的时间序列,输出结果表示为={y1,y2,…,yj,…,yn},其中yj∈{0,1}。
(2)由于检测分类的准确性无法达到100%,因此将算法添加一个权重参数ω,如果该用户预测的推文被判定为抑郁的比重大于所有时间轴推文的权重ω,则可以将其诊断为抑郁。因此,该算法的第二步(即最终结果)可以定义如下:
式中,l为推文中被分类为抑郁的推文数量。
为了验证所提出的机器学习方法对利用文本信息进行抑郁症分类的有效性,从以下几个方面进行研究。
1)为了证明所提出方法的先进性,对比4 种传统的机器学习方法,包括朴素贝叶斯(naive bayes,NB)、随机决策森林(random decision forest,RDF)、多重社交网络学习(multiple social network learning,MSNL),以及多模式抑郁词典学习(multimodal depression dictionary learning,MDDL)。
2)为了证明所提出的方法中的各个模块性能以及不同的参数设置对最终性能的影响,对训练中所采用不同的分类器、不同的时间序列特征、不同的特征维度进行研究。
3)采用4 种评测准则来研究所提出方法的有效性,包括准确率、召回率、精度、F1 分数等。
1.3.1 对比方法
为了验证所提出的机器学习方法的性能,比较了4 个传统的基本方法,分别是朴素贝叶斯、随机决策森林、多元社交网络学习和多模式抑郁字典学习。
1)朴素贝叶斯。在机器学习中,朴素贝叶斯是一种基于贝叶斯定理的简单概率分类器算法。它的思想基础是对给定的项目进行分类,解决条件下每个类别的概率,在给定的项目中考虑最大值[25],其基本定义如下:
在机器学习中,朴素贝叶斯有3 种类型,分别是高斯朴素贝叶斯、多项式朴素贝叶斯和伯努利朴素贝叶斯。由于伯努利朴素贝叶斯特别适合于短文本的分类[26],因此选择此事件模型进行比较。
2)随机决策森林。在机器学习中,随机决策森林是包含多个决策树的分类器,其输出类别由各个树状结构的输出类别的模式编号(分类)或均值预测(回归)确定。这种算法最早是由Tin 等在1995年提出的[27],然后被广泛用于分类、回归和其他任务。为了防止过度拟合,本项目根据经验,将最大深度的参数设置为2,将随机状态的参数设置为1。
3)多重社交网络学习。Song 等[28]提出了一种名为MSNL 的新型模型,它可以对源置信度和源一致性进行建模,特别是可使用线性系统的逆函数来获得封闭形式的解决方案。此外,他们提出了一种社交网络中数据丢失的方法。学习模型定义如下:
式中,权重向量αs表示代表来自第s个社交网络的训练好的模型权重,则损失函数定义如下:
式中:β为正则化参数,在模型函数和损失函数中eTα= 1;此外,根据经验和参数调整,将正则化参数λ设置为0.01,β设置为10-5,μ设置为0.1,以获得该模型的良好性能。
4)多模式抑郁词典学习。Shen 等[21]提出了一种抑郁用户分类器,通过多模型字典学习来学习稀疏表示。它使用了6 种不同的特征,然后利用字典学习来学习一组潜在字典D= [d1,d2,…,dD] 和一个潜在稀疏表示A= [a1,a2,…,an] ,有
式中,λ为平衡参数。
然后,根据得到的稀疏表示,训练了一个逻辑回归分类器,该分类器使用潜在的稀疏回归来检测用户是否患有抑郁症,有
式中,ρ为平衡参数,W为训练中需要学习的回归参数矩阵,f(yi,W,ai)为训练中的分类器损失函数,表示为
由于某些数据无法在社交网络功能中进行标准化,因此在此模型中删除了6 种数据类型。它们是状态计数、关注者计数、朋友计数、列出计数、收藏夹计数和转发计数。根据原始的论文设定,将字典维设置为135,将正则化参数α设置为3×10-5,将ρ设置为1×10-6。
此外,为了验证所提出方法的有效性,在此实验中,选择了Pytorch 作为深度学习软件平台,并采用一台NVIDIA GTX1080Ti 作为硬件平台。根据经验将时间序列特征维设置为128,并根据损失和迭代图选择了无监督的LSTM 模型,该模型迭代9 000次,以提取时间序列特征。
1.3.2 对比特征
基于所提出的多示例学习算法的概念,从推文中提取的任何特征都可以用作所提出算法的输入。根据提取的特征,从每个推文中提取主题特征,并且几乎可以肯定,抑郁推文的主题和非抑郁推文的主题可能会有所不同。因此,做了一组实验,利用主题特征来训练多示例模型。
1)主题特征(latent Dirichlet allocation,LDA)。该实验采用了25 维LDA 特征,可以将其定义为来自每个Twitter 用户的每条推文中前25 个主题的概率。
2)时间序列特征(time series,TS)。根据先前的实验,该实验选择了128 维无监督LSTM 特征来表示时间序列特征。
1.3.3 评测准则
在二元分类领域,数据的统计主要采取4 种方法:TP (true positive),表示实际值是抑郁的,而预测值也是抑郁的;TN (true negative),表示实际值是非抑郁的,而预测值也是非抑郁的; FP (false positives),表示实际值为非抑郁,而且预测值为抑郁的;FN (false negative);表示实际值为抑郁的,而预测值为非抑郁的。
借助于以上4 个统计数据,通过比较准确率、召回率、精度和F1 得分,评价比较方法和比较特征的识别性能。
1)准确性:这是正确预测的值与总值的比率。几乎可以肯定,准确性是最直观的性能指标,有
2)召回率:也称为灵敏度,是正确预测的正值与实际值中所有值的比率,有
3)精度:也称为正预测值,是正确预测的正值与总预测的正值之比,有
4)F1-分数:这是精度和召回率的加权平均值。通常,它表示精度和召回率的和谐平均值,有
首先,本研究进行了一系列实验,以验证提出的多示例学习模型的性能。为了训练这些方法,在开始此实验之前,已将提取的特征格式化为相同的维度。这些方法需要使用的特征是社交网络特征、情感特征、主题特征和领域特征,每个特征都可以视为模态。由于方法自身的特殊性,仅采用时间序列特征作为输入数据来预测抑郁症。根据先前的实验,该实验选择了尺寸为128 的无监督LSTM 特征。
表2显示了4 个基本方法与所提出的方法(ULML)之间的性能比较。可以看出,MSNL 的准确性和精度最高,而ULML 的召回率和F1 得分最高。这表明,由于ULML 的召回率较高,因此在检测到用户有抑郁症时,提出的多示例学习具有较好的性能。这也意味着,如果有关于用户的更多信息,则机器学习模型可能具有更高的准确性。另外,MDL模型的性能不好,因为无法提取配置文件特征和视觉特征,因此这两种方式可能对该模型产生更大的影响。此外,当NB 和RDF 具有更多模态时,性能会更好。
表2 不同方法的性能Tab.2 Performance on different methods
首先,进行了一组实验,以检验在提出的多示例学习模型中非监督LSTM 功能的情况。由于MSNL 和MDL 必须利用多种模式,因此本实验仅使用朴素贝叶斯和随机森林作为比较基准。与以前的实验一样,该实验评估的时间序列特征的维度为128。如表3所示,所提出的具有时间序列特征的多示例学习模型,明显优于具有时间序列特征的朴素贝叶斯和随机森林。这意味着时间序列可能更适合于所提出的多示例学习模型,并且也证明选择多示例学习是因为其机器学习模型正确。
表3 每个模型上时间序列特征的性能Tab.3 Performance of time series features on each model
表4所示为这3 个分类器之间的性能比较。可以看出,所有分类器均具有良好的性能,其中带有RBF 内核的SVM 的分类器在所有4 个指标上均优于其他分类器。这些实验证明,无监督的LSTM 功能可用于检测抑郁症的推文并表现良好。由于RBF 内核SVM 具有最佳性能,因此时间序列特征可能是线性不可分的特征,这也意味着当尺寸不是太大并且样本为中等大小时,RBF 核方法比线性核方法更好。
表4 不同分类器下的性能Tab.4 Performance with different classifiers
根据方法论中提到的RBF 核函数,为了更好地反映无监督的LSTM 功能,针对参数γ与C的不同组合进行了一组实验,以找到最合适的分类器组合。其中,C为惩罚系数,γ表示映射到新要素空间后的数据分布。此外,这些实验根据经验,将时间序列特征维设置为128,并使用了无监督的LSTM 模型,该模型反复进行9 000 次,提取时间序列特征。
表5所示为分类器在不同参数组合之间的性能比较。可以看出,当参数γ=10 且参数C=10 时,相关的RBF 核分类器是最合适的分类器。根据该表,可发现性能的趋势随着C值的变化,在开始时是上升的,然后缓慢下降。这证明,如果C值越高则越容易拟合,如果C值越小则越容易拟合不足,因此,当C值太大或太小时,泛化能力都变差。
表5 不同参数下的模型性能Tab.5 Performance with different parameters
在以前的实验中,由于经验,采用了128 维无监督LSTM 功能。为了验证无监督的LSTM 功能可以用于多示例学习,进行了一系列不同维度的无监督LSTM 功能的实验。当提取256 维特征时,会发现损失值无法降低,这可能是因为尺寸太大而无法收敛。因此,这些实验的设置尺寸d= {16,32,64,128}。根据维度列表,针对每个维度进行一组实验,如图2所示,其中多示例权重ω∈[0.05,0.24]。
图2 不同维度下的准确率随权重变化Fig.2 The relationship between accuracy and weight under different dimensions
表6所示为在这些维度中多示例学习的性能。可以看到,尺寸128 可获得最佳性能,并且随着尺寸的增加,性能会变得更好。然而,随着尺寸的增加,损失变得难以减少,这能证明更高的维度可以存储更多有关时间序列的消息。因此,对于建议的多示例学习算法,维度128 可被视为最合适的维度。
表6 不同维度的性能表现Tab.6 Performance with different feature dimensions
表7所示为所提出的具有不同特征的多示例学习模型的性能。可以看出,与主题特征(LDA)相比,时间序列特征(TS)获得了最佳性能。这表明与主题特征信息相比,时间序列信息能更好地反映Twitter 用户的抑郁倾向,也意味着所提出的机器学习模型可用于检测Twitter 用户的抑郁情绪。
表7 不同特征下的性能Tab.7 Performance with different features
在传统的临床诊断中,心理医生需要通过与来访者进行面对面的访谈来诊断其是否患有抑郁症以及病情的程度。然而,这种方法会有很多潜在的问题。鉴于有抑郁倾向的患者更愿意向社交媒体倾述自己的心情及状态,所以借助计算机辅助方法,并利用社交媒体中的文本信息,提出了基于时间序列特征以及多示例学习的早期抑郁症检测方法。把被诊断人的社交媒体的文本信息进行LSTM编码,产生时间序列特征,然后用多示例学习的方法对其进行二分类,从而判断被诊断人是否具有早期抑郁症倾向。
Islam 等[29]在Facebook 上搜集了一些社交媒体数据,构建了21 列的情感信息数据,包括7 145条数据,其中58%被标注为抑郁,而42%被标注为非抑郁;采用传统的手工特征提取的方式,提取社交媒体特征,最后采用决策树、K-近邻和SVM 来实现抑郁症的分类。Cacheda 等[30]利用文本、语义以及写作相似度来定义特征,并采用随机森林的方法实现抑郁症的分类。这两种方法均属于传统的手工特征方法,从本研究的结果中可以发现,采用传统的特征均不如基于深度学习的序列特征的效果好,说明序列化的深度特征可以更多地保存患者的多个时间信息,能够进一步提升分类效果。
然而,深度学习的优异表现主要是通过大量的有标注数据集的训练而获得的[31],目前专注于用文本信息进行抑郁症识别的数据集较少,Shen 等[21]采用的这个数据集相对来说是一个适用于模型训练的数据集。然而,这个数据集包含了太多的冗余信息,使其不能直接用于模型训练,因此从中整理了100 个抑郁患者和100 个非抑郁患者合计7 946条推文数据。从结果上来看,虽然取得了75%的准确率,但还是远远不够的,其原因之一就是训练数据集不够大,能够学习到的知识是有限的。本研究的主要目的是通过实验验证LSTM 特征,以及多示例学习的有效性,证明其可以用于早期抑郁症的诊断,比传统的算法模型要好,后期可以通过扩大数据集进行模型效果的提升。Gui 等[32]同样也通过强化学习的方法,验证了LSTM 序列特征的优越性。
此外,根据特征比较实验,对于提出的多示例学习模型,128 维无监督LSTM 是最合适的时间序列特征,说明特征的维度越高,可以保存的有效信息就越多。研究结果还表明,基于RBF 内核的SVM分类器是该算法最合适的二进制分类器,这意味着时间序列特征是线性不可分的特征。而且,与从每个推文中提取的其他特征相比,时间序列特征可以更好地反映抑郁信息,因此证明用其可以通过社交媒体中的文本信息进行诊断抑郁症检测。
根据不同的模型比较实验的结果来看,ULML在召回指标中表现最佳。可以看出,对于检测抑郁用户,所提出模型的性能优于比较的基准模型。但是,该模型的准确性和精确度不如其他多模态模型好。这是由于这些多模态模型利用了来自用户的更多信息,而所提出的模型仅采用了时间序列特征。然而,在实践中召回率较高,即发现抑郁症的阳性病例是有非常价值的[21]。
此外,对推文数据的编码训练采用高维标签码并作为输入,其实这样的标签之间是没有关联意义的,这也是影响性能的一个关键因素。Word2Vec(word to vector)是一个基于维基百科的词向量模型[33],可以把对文本内容的处理简化为向量空间中的向量运算,计算出向量空间上的相似度,以表示文本语义上的相似度。因此,为了将同一条推文数据之间的单词有意义化,未来可以采用Word2Vec先对词语向量化,并采用双重LSTM 进行编码学习[34],使特征中包含更多的原始语义信息,以进一步提升模型的性能。
针对传统的面对面交谈来检测抑郁症存在的问题,本研究利用患者在社交媒体上所发布的文本信息来检测早期的抑郁倾向。提出利用时间序列特征和多示例学习检测模型,使用无监督LSTM 提取时间序列特征,使用训练分类器实现二值分类,使用多示例学习模型解决不平衡样本问题,并在一个通用标注数据集上进行了测试,以验证所提出方法的有效性和先进性。鉴于当前方法中所用的数据集较小,使训练得到的模型不够完美,所以下一步将整理更多的数据以供训练。此外,考虑到当前文本数据的表示采用标签码的形式,单词之间缺乏联系,下一步将引入Word2Vec 来实现文本信息的编码,增强单词之间的关联性,以提升模型的整体性能。