APP下载

基于反向传播神经网络和医疗物联网的心理压力评估方法

2022-07-26孟凡宸曹乐阚秀张磊田健鹏

中国医学物理学杂志 2022年7期
关键词:心理压力特征提取神经网络

孟凡宸,曹乐,阚秀,张磊,田健鹏

上海工程技术大学电子电气工程学院,上海 201620

前言

现代社会中,受心理压力困扰的人逐渐增多,不同程度的心理压力会对人体生理和心理造成不同程度的影响。如果过强的心理压力持续时间过长,就会扰乱人的心理和生理功能平衡,进而损害身心健康,甚至产生精神疾病[1]。传统的心理压力检测方法通常采用心理量表法[2],这种自评方法存在一定主观性。或采用激素测量,检测皮质醇、糖皮质激素、儿茶酚胺水平[3-4],这需要专业人员采样并分析数据,不适合大规模推广。采用心率变异性(Heart Rate Variability,HRV)来对心理压力程度进行分类,HRV衡量的是连续心跳之间的具体变化,这种微小变化能够客观反映大脑所承受的压力[5]。

HRV 中蕴涵着大量心血管神经及体液调节的信息,近年来,随着信号处理技术不断发展,HRV 的有关研究成为研究热点[6]。HRV 是脉搏R-R 间期(R-R interval,RRI)信号进行时域分析、频域分析以及非线性分析得到的,脉搏RRI信号的获取通常采用心电图(Electrocardiography,ECG)法和光电容积脉搏波描记(Photoplethysmography,PPG)法[7]。HRV 有数十种指标,能够反映出人体各个方面的状况[8],采用传统工分析法从如此多指标中寻找出HRV 和心理压力之间的关系变得十分困难。支持向量机(Support Vector Machines,SVM)解决这种复杂问题,虽然在处理小规模样本的时候表现非常好,其泛化能力在分类算法中也出类拔萃,但是在面临大规模高维数据时,效果将有所下降[9]。因此本系统借助反向传播(Back Propagation,BP)神经网络,学习归纳以往经验和数据中的潜在特征[10],从而达到分类预测的目的。BP 神经网络是一种切实可行的多层神经网络[11],BP即为反向传播,从后向前求损失函数对每层神经元参数的偏导数,再迭代更新所有的参数[12]。

本系统可以通过BP神经网络对心理压力进行分类,然而在实际应用中,有些特征并不是一成不变的,适时地重新收集这些数据并预测分类可以减少心理压力带来的风险。这里需要引入医疗物联网(Internet of Medical Things,IoMT)的概念,IoMT 是医疗设备和人员的网络,其使用无线通信来实现医疗保健数据的交换[13]。IoMT 和医疗保健的结合可以提高生活质量,提供更好的护理服务,并可以创建更具成效的系统[14]。通过跟踪患者的健康记录来监控用户的健康情况,捕捉异常情况,提醒用户自身存在的健康风险[15]。本系统借助IoMT 为后续的模型优化提供大量的数据支持,为进一步提高检测精度提供了可能。

1 数据采集

为获取心理压力的评估指标即HRV 特征,本文采用PPG 法,与ECG 法相比,PPG 法更加便捷、结构简单、可重复性强。为此,本系统以医疗级PPG 芯片MAX30101 为感知终端,结合蓝牙模块,实现对PPG信号的高精度和网络化采集与初步分析。图1为便携式PPG采集系统实物图。

图2为实际采集过程示意图。对10 位志愿者(年龄23~25岁,男性8位、女性2位)进行PPG数据采集,志愿者均未患任何神经肌肉系统或心血管系统疾病。试验前需让受试者就坐,进行一系列典型脑力工作之后,受试者右手食指接触传感器芯片并保持不动,直到传感器采集到20 s的PPG数据。需要注意,手指应只接触传感器芯片,不得接触电路板,以免对数据造成干扰。每次采集到的数据以列表的形式保存成txt文件,方便后续的特征提取。

图2 PPG信号采集过程示意图Figure 2 PPG data acquisition process

2 IoMT系统设计

为满足网络化、数据化、便捷性需求,本文结合心理压力检测设计了一个IoMT框架。该框架由3个主要组件组成:数据采集、边缘计算和服务器。图3为本文的IoMT系统示意图。

图3 IoMT系统示意图Figure 3 IoMT system diagram

本文介绍的IoMT 系统分为嵌入式系统程序和上位机系统程序两部分。其中嵌入式系统程序设计开发平台为Keil MDK5 软件。上位机系统程序分为两部分,其一为Python3.8 开发的PC 端上位机,其二为Android Studio 开发的移动端APP。PC 端上位机通过蓝牙与硬件部分实现通信,从硬件实时接收数据后,对数据进行预处理后提取HRV 特征,使用由tensorflow 框架训练生成的BP 神经网络模型对数据进行解析分类,最终将用户实时心理压力详情信息以用户界面(UI)的形式反馈给用户。同时使用Spring Boot 框架进行后台服务器的搭建,Mybatis 与MySql 数据库进行连接。后台服务端负责管理客户端信息,收集其发送的数据,并为用户提供数据查询、报警处理的服务。服务端的用户(如医生)作为管理者,可以远程获取使用者的状态信息,并及时提供所需服务。

3 特征提取

针对工频信号、人体呼吸以及人体动作等干扰,本文采用小波去噪方法对PPG 信号进行去噪处理[16]。由图4和图5可得,经过小波去噪去除基线后的数据波形清晰、不漂移,数据经过该方法处理后,特征提取和模型预测等步骤保持一定的准确性。QRS 波群代表左、右心室除极电位和时间的变化[17],第一个向下的波为Q 波,向上的波为R 波,第二个向下的波是S 波。图6为采用QRS 尖峰检测算法实现了PPG波形峰值检测效果[18]。

图4 PPG原始波形Figure 4 PPG original waveform

图5 PPG去噪去基线后波形Figure 5 Waveform after PPG denoising and baseline removal

观察图6可发现,该算法对于PPG 信号的峰值检测具有较高的准确度。该算法所得到的尖峰间隔数据可直接进行特征提取,提取出HRV 特征并输入模型,从而获得最终模型判断结果。

图6 PPG波形峰值检测图Figure 6 PPG waveform peak monitoring

4 BP神经网络模型的建立与训练

4.1 数据集介绍

BP 神经网络训练所使用的数据集为多模态SWELL 知识工作数据集(SWELL Knowledge Work Dataset),该数据集用于研究人体压力和用户建模[19]。该数据集收集了25 人进行典型脑力工作时(撰写报告、做演示、阅读电子邮件、搜索信息)的HRV 数据。给予参与者3 种情景来对压力程度进行区分,分别为:无时间限制,有时间限制及工作的同时不定期打断参与者。每个参与者都经历了3 种不同的工作条件:(1)没有压力。参与者可以在任务上工作最多45 min,但他们不知道他们任务的最长持续时间。(2)时间压力。参与者被提前告知需要在30 min内完成任务。(3)不定期打断。参与者在分配的任务中会收到8 封电子邮件。一些电子邮件与他们的任务相关,并且要求参与者采取具体行动,而其他电子邮件则与他们的任务无关。

参与者在任务负荷、脑力劳动、情绪和感知压力方面的主观体验是用经过验证的问卷作为基本事实进行评估的。将该数据集分割成两部分,一部分为用于训练BP 神经网络模型的训练集,另一部分为用于评估模型的测试集,其中训练集的规模为369 289组,测试集的规模为41 034组。此外本文为使特征提取变得更加便捷,对原数据集的特征进行精简,将原有的34个特征减少到15个。

4.2 BP神经网络模型的构建

本文所用BP神经网络模型由1个输入层、3个隐藏层、1 个输出层组成,各层之间使用全连接的方式,与传统的浅层神经网络相比具有更高效的特征提取能力,能够更好的分类和预测[20]。根据特征提取到的15 个特征决定输入层由15 个神经元组成,数据集中心理压力分成3 个类型,输出层由3 个神经元组成。为防止一定程度上的过拟合和欠拟合,经过多次尝试最终确定隐藏层神经元的个数为25个。

将数据分为样本和标签两部分进行数据预处理,将样本数据进行数据归一化,将不同规格的数据转换到同一规格,如图7和公式(1)所示。

图7 数据归一化处理Figure 7 Data normalization

其中,x为原始数据,为归一化处理后的数据。运用独热编码对标签数据分类编码,将每一个类可能取值的特征变换为二进制特征向量,每一类的特征向量只有一个位置为1,其余位置都为0,如图8所示。

图8 标签独热编码处理Figure 8 Label one-hot encoding

前向传播公式见式(2):

其中,n为前一层的节点个数,m为当前层节点的个数,bj为当前层各节点的偏置单元,wij为当前层各节点之间的权重,函数f为当前层的激活函数。

交叉熵损失函数见式(3):

其中,loss表示损失值,a表示真实标记的分布,b则为训练后模型的预测标记分布,交叉熵损失函数可以衡量a与b的相似性[21]。

反向传播的权重和偏置单元的更新公式见式(4)、(5):

其中,lr 为学习率,由于学习率过大会使模型无法收敛,所以本模型将基础学习率设置为0.000 1,但学习率过小会让收敛过程变得缓慢,需要采用学习率优化算法,在对各种优化算法测试后,最终选取了Adam优化算法。

图9为BP 神经网络的结构图,其中隐藏层的激活函数为relu 函数,能提高神经网络的训练速度,解决了传统神经网络容易造成局部最优、梯度消失爆炸等问题,增强了神经网络分类模型的泛化能力[22],relu函数公式见公式(6):

图9 BP神经网络结构图Figure 9 Structure diagram of BP neural network

输出层为分类器,本系统属于多分类问题,因此激活函数为softmax 函数,产生每组数据属于各类别的概率,softmax函数公式见公式(7):

BP神经网络训练步骤如表1所示。

表1 BP神经网络训练步骤Table 1 BP neural network training steps

基于BP 神经网络和IoMT 的心理压力检测系统的算法建模包含构造神经网络、训练神经网络与使用神经网络进行分类3 个步骤,算法流程图如图10所示。

图10 BP神经网络算法流程图Figure 10 Flowchart of BP neural network algorithm

5 结果分析

模型训练的迭代次数为500次,使用Adam自适应优化算法对学习率进行优化,选取迭代次数的1/10与其他优化算法进行测试比较,如图11所示。发现Adam与RMSprop 这两种优化算法较于Adagrad、SGD、Adadelta优化算法,能够快速得出结果。进一步选用完整迭代次数同时测试了这两种优化算法,发现Adam优化算法的最终效果优于RMSprop优化算法(图12)。

图11 不同优化算法的损失值变化图Figure 11 Val_Loss variation diagram of different optimization algorithms

图12 Adam与RMSprop优化算法的损失值变化图Figure 12 Val_Loss variation diagram of Adam and RMSprop

图13为神经网络模型训练效果图,测试集和训练集的损失值逐步下降,准确率逐步上升,查看最终模型的预测准确率信息发现此时模型的预测准确度达到88.7%,基本满足测试准确率需求。将该系统进行50 次的真实测验后,其中正确的次数为45 次,与数据集准确度相符。

图13 神经网络模型训练效果图Figure 13 Results of neural network model training

6 结论

本文提出了一种基于BP 神经网络和IoMT 的心理压力评估方法,采用该方法实现了心理压力88.7%的预测准确度,该系统能够有效且快速地检测人体心理压力程度。同时借助IoMT 系统,达到了随时随地对使用者的心理压力状况进行检测的效果,因此,本文为便携式心理检测提供了有效的解决手段。

猜你喜欢

心理压力特征提取神经网络
同步定位与建图特征提取和匹配算法研究
基于神经网络的船舶电力系统故障诊断方法
MIV-PSO-BP神经网络用户热负荷预测
基于改进Hopfield神经网络的对地攻击型无人机自主能力评价
基于BSTL与XGDT算法对多级别心理压力的评估
基于MED—MOMEDA的风电齿轮箱复合故障特征提取研究
三次样条和二次删除相辅助的WASD神经网络与日本人口预测
基于曲率局部二值模式的深度图像手势特征提取
通过图片看内心
缓解心理压力的两种方法等二则