发明内容
为克服上述现有技术的不足,本公开提供了一种基于文本情感分析的心身健康状态预警方法,可以实现系统的快速注册以及对被试的全方位的健康测评。
为实现上述目的,本公开的一个或多个实施例提供了如下技术方案:
第一方面,公开了一种心身健康状态预警系统,包括:
用户管理模块、心理数据采集模块、生理数据采集模块、情感分析模块、预警分析模块及核心调度模块;
所述用户管理模块,基于就诊人员的基本信息自动创建账号,进行快速注册;
所述情感分析模块,利用网络文本情感分析技术对用户进行初步情感状态分析,获得情感不稳的用户;
所述心理数据采集模块,针对情感不稳的用户,从已填写的全部心理测评量表获取所需的心理测试信息;
所述生理数据采集模块用于采集被试生理数据;
所述核心调度模块针对心理测试信息进行处理,得到各种心理统计指标,针对生理数据进行处理,得到各种生理参数指标;
所述预警分析模块根据被试心理统计指标从预先构建的心理健康状态预警等级表查询与比对相应的指标标准来得到心理健康状态预警等级;
针对生理数据,根据预先构建的生理健康参数指标标准表即每个指标的平均值与标准差,使用被试生理参数指标计算偏差程度与偏差分数得到生理健康状态疾病预警等级;
取二者最严重等级作为心身综合预警等级。
进一步的技术方案,还包括:绘图模块,所述绘图模块用于对核心调度模块处理后的数据进行绘制。
进一步的技术方案,还包括:报告生成模块,所述报告生成模块根据心身综合预警等级表选择不同的预警颜色与预警分析,并结合绘图模块绘制的数据图形进行报告填充,生成最终的综合健康状态报告。
进一步的技术方案,所述生理参数指标可以包括总心率、最高心率、最低心率、室上节律性、LF、HF、LF/HF、SDNN、SDANN、RMSSD、SDNNI、pNN50中的一种或多种
进一步的技术方案,所述心理统计指标包括量表项目总分、量表项目均分、因子得分、因子均分、阳性项目数、阴性项目数中的一种或多种。
进一步的技术方案,心理数据采集模块、生理数据采集模块所采集数据经核心调度模块进行处理后分别发送至显示设备、绘图模块和数据库。
进一步的技术方案,所述快速注册的步骤为:
扫描注册用户的身份证或就诊卡,获得就诊人员基本信息,包括身份证号、姓名、性别、出生日期及家庭住址;
自动为就诊人员创建账号,将就诊人员上述基本信息存入数据库,存储信息中包括用户id,为随机生成的唯一的字符串。
进一步的技术方案,采集的该注册用户的心理数据的步骤为:
从已填写的全部心理测评量表获取所需的心理测试信息,心理测试信息包括:用户ID、测试开始时间、测试结束时间、题目ID及对应答案ID;
根据测试信息计算得分,将相关信息存储到数据库中。
进一步的技术方案,得到偏差分数后,设置了多个危机预警阈值区间,根据其所落入的区间来判断预警等级。
以上一个或多个技术方案存在以下有益效果:
本发明为一种心理因素、生理因素以及二者相结合的对被试个体综合健康状态进行预警的技术方案,利用网络文本情感分析技术对用户进行初步情感状态分析,然后对情感不稳的用户进行有针对性的心理测评,可以取得更真实有效的心理测评结果,再结合生理测评数据进行综合评判预警,可以实现对被试的全方位的健康测评,使得报告分析结果与预警等级更加接近被试个体的心身健康状态,可有效的提高最终的治疗效果。
本发明在对被试进行心理测试的同时,对其生理数据进行采集,并建立相应的心理健康状态预警等级表和生理健康状态疾病预警标准表,可实现对被试个体的心身综合健康状态进行预警,通过设置绘图模块与报告生成模块可给出直观的测试结果图与全面的健康分析报告,可为医生提供参考,提高工作效率,保证治疗方案的准确性与全面性。
基于关键词词向量特征的扩充方法,对于用户发布的文本内容,通过提取关键词来对原文本内容进行语义扩充,丰富了特征数量,解决了特征稀疏问题。文本分类模型,使用卷积层与全连接层的组合来构造深度学习模型以进行情感分类。
本发明可实现就诊人员的快速注册登录,心理测评系统的使用可减少医生的工作时间,为其提供更加方便、有效的测试管理工具。
本发明附加方面的优点将在下面的描述中部分给出,部分将从下面的描述中变得明显,或通过本发明的实践了解到。
具体实施方式
应该指出,以下详细说明都是示例性的,旨在对本公开提供进一步的说明。除非另有指明,本文使用的所有技术和科学术语具有与本公开所属技术领域的普通技术人员通常理解的相同含义。
需要注意的是,这里所使用的术语仅是为了描述具体实施方式,而非意图限制根据本公开的示例性实施方式。如在这里所使用的,除非上下文另外明确指出,否则单数形式也意图包括复数形式,此外,还应当理解的是,当在本说明书中使用术语“包含”和/或“包括”时,其指明存在特征、步骤、操作、器件、组件和/或它们的组合。
在不冲突的情况下,本公开中的实施例及实施例中的特征可以相互组合。
实施例一
本实施例公开了一种基于文本情感分析的心身健康状态预警方法,包括:
基于就诊人员的基本信息自动创建账号,进行快速注册;
利用网络文本情感分析技术对用户进行初步情感状态分析,获得情感不稳的用户;
参见附图6所示,针对情感不稳的用户,获得采集的该注册用户的生理数据及心理数据并分别进行处理,其中,对于生理数据,根据预先构建的生理健康参数指标标准表即每个指标的平均值与标准差,使用被试生理参数指标计算偏差程度与偏差分数得到生理健康状态疾病预警等级;
对于心理数据,对比心理健康状态预警等级表,得到心理预警等级;
对上述生理健康状态疾病预警等级及心理预警等级进行比较,获得心身综合预警等级。
获取用户网络文本内容的数据流程参见附图4所示,具体的,利用网络文本情感分析技术对用户进行初步情感状态分析,获得情感不稳的用户,参见附图2所示,具体为:
获取用户网络文本内容,进行关键词提取与词向量扩充,建立情感分类模型,定义结构参数,进行模型训练,返回用户文本情感类别,针对负类用户,综合心理指标与生理指标对用户的身心健康进行预警。
参见附图3所示,具体的,快速注册的步骤为:
步骤(1):利用扫码器扫描身份证或就诊卡注册登录系统;
步骤(2):进入系统,完成心理测评;
所述步骤(1)步骤为:
步骤(1-1):医生或就诊人员使用扫码器扫描身份证或就诊卡;
步骤(1-2):系统获得就诊人员基本信息,如身份证号、姓名、性别、出生日期、家庭住址;
步骤(1-3):系统自动为就诊人员创建账号,将就诊人员基本信息存入数据库,存储信息包括:用户id、身份证号、姓名、性别、出生日期、默认部门,其中用户id为随机生成36位UUID字符串,该字符串唯一;
步骤(1-4):进入心理测评系统;
所述步骤(2)步骤为:
步骤(2-1):系统显示就诊人员需完成全部心理测评量表,就诊人员选择量表依次进行测试;
步骤(2-2):测试完成后,就诊人员提交答卷,测试信息提交至服务器端,服务器端接收的内容包括:测试者id(即用户id)、测试开始时间、测试结束时间、题目id及对应答案id;
步骤(2-3):服务器端根据题目答案计算得分,将相关信息存储到数据库中。
医生使用个人账号登录心理测评系统,可在心理测评模块中的测试记录查询子模块中查看用户测评结果;
心理测评系统在管理员账号登录的情况下,在用户管理模块为用户设置权限,就诊人员使用该系统仅可使用量表测试功能,医生可使用量表管理模块和心理测评模块,管理人员可使用全部功能模块。
在一实施例中,心理测评系统包括用户管理子模块、量表管理模块、心理测评模块及部门管理模块;
用户管理子模块用于管理人员对系统用户信息进行管理维护,可执行操作包括查询、删除、修改权限。
量表管理模块用于医生和管理人员对心理测评量表进行维护,其子模块包括量表信息子模块、题目管理子模块、答案管理子模块和因子管理子模块,可执行操作包括增加、修改、删除、查询。
心理测评模块包括心理测评子模块、测评记录子模块及测试发布子模块,就诊人员使用心理测评子模块提供的量表测试功能,医生可使用该模块全部功能。
部门管理模块用于管理人员对测试部门进行管理,所述心理测评系统以部门为单位发布测试。
具体例子中,采集的该注册用户的心理数据的步骤为:
从已填写的全部心理测评量表获取所需的心理测试信息,心理测试信息包括:用户ID、测试开始时间、测试结束时间、题目ID及对应答案ID;
根据测试信息计算得分,将相关信息存储到数据库中。
得到偏差分数后,设置了多个危机预警阈值区间,根据其所落入的区间来判断预警等级。
实施例二
参见附图1所示,本实施例的目的是提供了一种心身健康状态预警系统,包括:
用户管理模块、心理数据采集模块、生理数据采集模块、预警分析模块、报告生成模块、核心调度模块、情感分析模块;所述各模块都与核心调度模块相连接,预警分析模块与报告生成模块相连接,其中心理数据采集模块、生理数据采集模块所采集数据经核心调度模块进行处理后分别发送至显示设备、绘图模块和数据库;所述显示设备用来显示处理后的数据;所述绘图模块用于对核心调度模块处理后的数据进行绘制,绘图种类包括雷达图、柱形图、折线图,便于直观表达与分析数据;所述数据库用于存储用户数据、采集模块所采集并进行处理后的数据;所述预警分析模块将处理后的数据与预设的阈值进行比对、分析,并返回相应的预警等级与分析结果并发送至报告生成模块。
具体实施例中,用户管理模块用于管理用户的个人信息,用户在用户管理模块注册后,系统会给用户分配唯一的身份ID,通过该身份ID可查找到该用户的全部信息,用户可自行对其信息进行填写、修改、删除与保存操作。
情感分析模块包括用户文本内容获取单元、用户情绪分类单元。
其中用户文本内容获取单元是通过scrapy爬虫工具、程序公用接口、数据库直接获取等方式获取用户发布过的文本内容,其来源可以是微信、微博、豆瓣、贴吧、博客等各种网络环境。
参见附图5所示,其中用户情感分类单元,是一种基于关键词词向量特征扩展的情感分类模型,构建步骤如下:
步骤(1):关键词提取。
步骤(2):词向量扩展。
步骤(3):建立CNN深度学习模型,对模型进行训练。
步骤(4):对用户的文本内容,按照步骤(1)、步骤(2)生成模型输入向量,送入训练好的模型中进行分类,返回用户情绪分类类别。
所述步骤(1)的步骤为:
步骤(1-1):对所有用户得的全部文本内容使用jieba分词工具进行分词得到文本分词词集,按照停用词表对词集去停用词。
jieba分词工具在Python环境下使用pip install jieba即可安装使用。
停用词表是本地已经构建好的停用词表。
步骤(1-2):将分好词的词集视为一个文档,使用TF-IDF公式提取每个文档的关键词,TF代表词语w在当前文档中出现的频率,IDF表示如果包含词语w的文档数量越少,则w约具有区分情感类别的能力,TF-IDF公式如下:
步骤(1-3):将所有文档词语按照TF-IDF值的大小进行降序排序,选取排名靠前的前n个词语作为保留词典。将保留词典与文档进行对比,二者的交集作为该文档中的关键词。
所述步骤(2)的步骤为:
步骤(2-1):使用word2vec词向量计算工具,利用所有文档对其进行训练,得到预训练好的词向量模型。
步骤(2-2):利用步骤(1)到的关键词,输入到上述词向量模型中进行相似度计算,得到与该关键词语义相似的若干词向量,与原文档向量组成扩展后的文档向量。
所述相似度计算方法为余弦相似度计算,公式如下所示:
所述步骤(3)的步骤为:
步骤(3-1):使用tensorflow框架,创建一维卷积神经网络提取语义特征与文本的上下文特征。
步骤(3-2):卷积层后连接池化层,使用1-Max-Pooling方法抽取每个特征向量的最大值表示该词语向量的最重要特征,将所有特征向量拼接后组成池化层最终的特征向量,后接dropout函数防止过拟合。
步骤(3-3):池化层后接两层全连接层,其作用是将卷积层与池化层学到的深层分布式特征表示映射到样本标记空间,其中第一层全连接层后接relu函数防止反向传播时梯度消失,第二层全连接层后接sigmoid函数进行文本情感分类。
sigmoid函数如下所示:
情感分类只有正类与负类,故该深度学习模型为二分类模型。
步骤(3-4):设置反向传播优化器,损失函数,训练上述建立好的深度学习模型。
反向传播优化器选用Adam优化器。
损失函数采用交叉熵损失函数,公式如下:
在一实施例中中,心理数据采集模块包括用于管理心理量表的量表管理单元(在这里是对SCL90量表的基本信息、题目组与答案组进行维护)、用于采集被试心理数据的量表测试单元,采集得到的心理数据交由核心调度模块进行处理,得到各种心理统计指标;所述心理统计指标包括量表项目总分、量表项目均分、因子得分、因子均分、阳性项目数、阴性项目数中的一种或多种。
生理数据采集模块包括用于采集被试心率的心率传感器,采集得到心率数据后交由核心调度模块进行处理,得到各种生理参数指标;所述生理参数指标可以包括总心率、最高心率、最低心率、室上节律性、LF、HF、LF/HF、SDNN、SDANN、RMSSD、SDNNI、pNN50中的一种或多种。
在具体实施例子中,上述生理数据采集模块也可以包括其他可以采集人体生理数据的相关传感器,例如:脉搏传感器等。
具体实现时,预警分析模块根据被试心理统计指标从预先构建的心理健康状态预警等级表查询与比对相应的指标标准来得到心理健康状态预警等级,根据预先构建的生理健康参数指标标准表即每个指标的平均值与标准差,使用被试生理参数指标计算偏差程度与偏差分数得到生理健康状态疾病预警等级,取二者最严重等级作为心身综合预警等级,最后将心身综合预警等级发送至所述报告生成模块。
在一可实现的实施例子中,报告生成模块根据心身综合预警等级表选择不同的预警颜色与预警分析,并结合绘图模块绘制的数据图形进行报告填充,生成最终的综合健康状态报告。
心理健康状态预警等级表如表1所示:
表1
生理健康参数指标标准表如表2所示:
表2
心身综合预警等级表如表3所示:
表3
预警等级 |
预警颜色 |
预警分析 |
正常 |
绿色 |
您的心身健康状况严重程度为正常。 |
轻度 |
黄色 |
您的心身健康状况严重程度为轻度 |
中度 |
橙色 |
您的心身健康状况严重程度为中度。 |
较严重 |
棕色 |
您的心身健康状况严重程度为较严重。 |
重度 |
红色 |
您的心身健康状况严重程度为重度。 |
偏差程度计算方式如下所示:
假设测得某生理指标有a1、a2、a3,对应所述生理健康参数指标标准表的均值与方差有x1、σ1,x2、σ2,x3、σ3。
基于此则有
基于此则可得到生理健康偏差分数其中f函数为归一化函数,将偏差分数Y固定在区间(0,1)之间。
得到偏差分数Y后,基于此设置了五个危机预警阈值区间,包括(0.00,0.20)、(0.21,0.40)、(0.41,0.60)、(0.61,0.80)、(0.81,1.00),当偏差分数Y落入区间(0.00,0.20)时则判定预警等级为正常;当偏差分数Y落入区间(0.00,0.20)时则判定预警等级为正常;当偏差分数Y落入区间(0.21,0.40)时则判定预警等级为轻度;当偏差分数Y落入区间(0.41,0.60)时则判定预警等级为中度;当偏差分数Y落入区间(0.61,0.80)时则判定预警等级为较严重;当偏差分数Y落入区间(0.81,1.00)时则判定预警等级为重度。
本公开实施例对于情感状态属于负类的用户进行心理量表测评,在测评的同时还会对其生理数据进行采集,建立了相应的心理健康状态预警等级表和生理健康状态疾病预警标准表,实现对被试个体的心身综合健康状态进行预警,通过设置绘图模块与报告生成模块可给出直观的测试结果图与全面的健康分析报告,可为医生提供参考,提高工作效率,保证治疗方案的准确性与全面性。
本公开实施例中心理因素、生理因素以及二者相结合的对被试个体综合健康状态进行预警的系统,可以实现对被试的全方位的健康测评,使得报告分析结果与预警等级更加接近被试个体的心身健康状态,可有效的提高最终的治疗效果
以上实施例的装置中涉及的各步骤与方法实施例一相对应,具体实施方式可参见实施例一的相关说明部分。术语“计算机可读存储介质”应该理解为包括一个或多个指令集的单个介质或多个介质;还应当被理解为包括任何介质,所述任何介质能够存储、编码或承载用于由处理器执行的指令集并使处理器执行本公开中的任一方法。
本领域技术人员应该明白,上述本公开的各模块或各步骤可以用通用的计算机装置来实现,可选地,它们可以用计算装置可执行的程序代码来实现,从而,可以将它们存储在存储装置中由计算装置来执行,或者将它们分别制作成各个集成电路模块,或者将它们中的多个模块或步骤制作成单个集成电路模块来实现。本公开不限制于任何特定的硬件和软件的结合。
以上所述仅为本公开的优选实施例而已,并不用于限制本公开,对于本领域的技术人员来说,本公开可以有各种更改和变化。凡在本公开的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本公开的保护范围之内。
上述虽然结合附图对本公开的具体实施方式进行了描述,但并非对本公开保护范围的限制,所属领域技术人员应该明白,在本公开的技术方案的基础上,本领域技术人员不需要付出创造性劳动即可做出的各种修改或变形仍在本公开的保护范围以内。