一种基于云计算的健康诊疗方案推荐的方法及其系统与流程

文档序号:13448125阅读:697来源:国知局
一种基于云计算的健康诊疗方案推荐的方法及其系统与流程
本发明涉及一种健康诊疗方案推荐的方法及其系统,更具体的说,涉及一种基于云计算的健康诊疗方案推荐的方法及其系统,属于计算机网络
技术领域

背景技术
:在当今社会中,很多患者的身体出现不适的时候,患者亦不知道自己究竟患了什么病,要挂很多科室,做不同的检查。其中排队挂号、检查和看病有可能消耗患者一天或者几天时间,无形中增加了患者的时间成本和相关医疗费用的负担,降低了人们的生活品质。而且,随着知识更新变得越来越快,人类进入信息爆炸时代,医学知识同样如此,特别是基因和分子生物学的知识,以及药物的新知识更使临床医生头痛,他们的更新速度呈几何级数增长,可是,有很多的医生依然使用老办法医治,不能更有效的为患者服务。另外,因为同一种疾病可以表现为不同的症状,而不同的疾病也可以表现为同一种症状,因此,医生在给病人进行诊断时,需要罗列出一系列的疾病来考虑,按可信度最高的一两种疾病来尝试治疗,会发生不同程度的误诊。从根本上来说,目前缺乏一款产品可以帮助并提升患者看病的效率,同时可以协助医生进行有效的检查和诊治,并减少误诊率发生。关于健康诊疗方案推荐的方法及其系统从问题中提取答案的过程:(1)当问题首先提交给云计算系统时,它会对问题加以解析,并对患者之前的病例和检查的结果情况进行监测,以提取问题的主要特征。(2)它会通过查阅医学资料汇编,寻找包含潜在有价值答案的段落,从而对预设的各个分项生成一系列假设。(3)它会使用各种合理的算法对问题的语言和每一种潜在答案的语言进行深入比较,并对答案的类型进行判断。通过各种合理的算法,每一种都拥有不同的比较和判断方式。例如,某些比较针对的是词汇和同义词的匹配,某些针对时间和空间特征,某些针对医学使用环境信息的相关资源。(4)每一个预设分析中的每一种合理的算法都会生成一个或多个记分,由问题推断出各个预设分项中潜在答案的准确程度。(5)随后会利用统计模型对预设分项中的每个生成的记分加以权衡,此统计模型会捕获该算法在系统“培训期”内针对该领域中两个类似段落之间建立推论的表现效果。然后,该统计模型可用于总结云计算系统对于由此问题推断出候选答案证据的置信度级别。(6)系统会针对每一个候选答案重复此过程,直至找到表现一系列最强大的候选答案为止。医学知识库资料汇编对于云计算系统的操作至关重要。此资料汇编包含各种类型的非结构知识,例如,书籍、论文、操作手册、常见问题及解答、医学机构、医生、护士及企业信息和新闻。系统会对医学资料汇编加以获取,查看所有内容并将其转变为易于使用的形式。获取过程同样是围绕内容进行的。即,它关注于医学资料汇编是否包含适当的内容,剔除过时的、不相关的或者来自潜在不可靠来源的文章或页面。现实应用中由于医生对医疗信息获取远远赶不上知识更新迭代的速度,因此基于云计算的健康诊疗方案推荐的方法及其系统具有非常好的应用前景。技术实现要素:本发明所要解决的技术问题是,克服现有技术的缺点,提供一种提升患者看病效率、降低误诊率并且使医生更有效的为患者服务的基于云计算的健康诊疗方案推荐的方法。同时,本发明还提供一种解决上述问题的基于云计算的健康诊疗方案推荐的系统。为了解决以上技术问题,本发明提供一种基于云计算的健康诊疗方案推荐的方法,按如下步骤进行:(1)云服务器收集医学知识数据,并对医学知识数据分析后进行存储;(2)用户终端上传已注册的患者的电子病历至云服务器,云服务器结合患者的电子病历和步骤(1)中存储的医学知识数据,对患者的健康状况进行预分析;(3)用户终端上传患者目前出现的症状至云服务器,云服务器根据患者目前的症状并结合步骤(1)中的医学知识数据、步骤(2)中的预分析数据和患者注册时的基本情况,利用贝叶斯网络的算法制定健康诊疗方案并输出。本发明技术方案的进一步限定为,步骤(3)中所述的贝叶斯网络的算法包括:phase1,通过算法1得到初始化顺序数组init_order,算法1具体为:输入一个包含m条实例的数据集d,一组n个节点变量集合x={x1,x2,...,xn},初始节点k;遍历节点变量集合x,计算每对节点之间的互信息mi;定义初始节点k,找到第一个并访问过的节点t,并通过遍历找出与节点t的互信息最大且未访问过的节点v,依次类推,得到初始化顺序数组init_order;phase2,调用算法2和算法3执行并行的结构学习,算法2具体为:输入一组n个节点变量集合x={x1,x2,...,xn}和节点变量的初始顺序init_order;设置的并行worker的最大个数为s,调用结构函数遍历worker后,得到贝叶斯网络结构bn;算法3具体为:输入一组部分节点变量集合px={xs1,xs2,...,xst}、节点变量的初始顺序init_order、节点父集合的最大维度umax、一个包含m条实例的数据集d,通过k2算法得到部分节点集中的每个xi,和其父节点集合πi。进一步地,步骤(1)中所述的对医学知识数据分析的方法为如下方法中的一种或者多种的结合:①语音分析;②自然语言分析;③专业医学用语分析;④语义分析。进一步地,步骤(2)中所述的用户终端上传已注册的患者的电子病历至云服务器的方法为如下方法的一种或者多种的结合:①已注册的患者在用户终端自行录入电子病历并上传;②下载合作医院的电子病历,用户终端进行批量导入;③用户终端与合作医院的电子病历通过接口连接,实时同步患者的电子病历。更进一步地,步骤(3)中所述的患者注册时的基本情况包括:性别、年龄、血型、药物过敏、食物过敏、环境过敏、输血反应史、遗传史、感染史、器官移植史和药物不良反应。再进一步地,步骤(3)中所述的健康诊疗方案的内容包括:症状诊断、就诊科室、建议检查、建议用药、并发症、建议手术、预防方法、护理方法、食补方法、图解、视频、相关文献、推荐医院、推荐医生和推荐护士。本发明提供的另一技术方案为:一种基于云计算的健康诊疗方案推荐的系统,包括用户终端和云服务器,所述用户终端与所述云服务器双向通信连接,所述用户终端包括用户注册模块,用于录入患者的基本情况;电子病历管理模块,用于录入或者导入患者的电子病历;症状录入模块,用于录入目前出现的症状;健康诊疗方案推荐模块,用于通过人机交互界面展示推荐的健康诊疗方案;所述云服务器包括资料录入模块,用于录入医学知识数据;存储模块,用于存储医学知识数据、患者的基本信息和患者的电子病历;数据分析模块,用于①对医学知识进行数据分析;②结合患者的电子病历和医学知识数据,对患者的健康状况进行预分析;③根据患者目前的症状并结合医学知识数据、健康状况的预分析数据和患者的基本信息制定健康诊疗方案。本发明技术方案的进一步限定为,所述用户终端为机器人、电脑、手机、多媒体或者电视。进一步地,所述用户终端与所述云服务器之间的通信方式为:互联网、无线电或者wifi。更进一步地,所述电子病历管理模块包括电子病历录入单元,用于手工录入患者的电子病历;电子病历导入单元,用于批量导入已下载的合作医院的电子病历;电子病历同步单元,用于通过数据接口实时同步合作医院的电子病历。本发明的有益效果是:本发明提供的一种基于云计算的健康诊疗方案推荐的方法及其系统,让患者在有网络和通信的地方可以随时的关注自己的健康状况,并且,当健康出现问题时,方便及时的了解可以采取的治疗、预防及护理方法;本发明还可以让医生全面的了解患者的健康状况,以及针对患者的病情提供最先进的参考诊疗方法,避免老旧的诊疗方法产生的医疗事故,有效降低误诊率,提高工作效率;本发明节省时间、人力、物力等资源,减轻患者相关医疗费用的负担,减少医患纠纷。附图说明图1为本发明提供的一种基于云计算的健康诊疗方案推荐的方法的流程图;图2为本发明提供的一种基于云计算由问题推导答案的流程图。图3为本发明提供的一种基于云计算的健康诊疗方案推荐的系统结构框图。图4为本发明提供的简单的贝叶斯网络实例。图5为本发明提供的心脏病危险因素分析贝叶斯网络结构。具体实施方式实施例1本实施例提供的一种基于云计算的健康诊疗方案推荐的系统,其结构框图如图2所示,包括用户终端和云服务器,用户终端与云服务器双向通信连接,用户终端与云服务器之间的通信方式为:互联网、无线电或者wifi。用户终端为机器人、电脑、手机、多媒体或者电视,包括用户注册模块、电子病历管理模块、症状录入模块和健康诊疗方案推荐模块。用户注册模块,用于录入患者的基本情况。用户注册模块为患者提供通过语音、触摸、手势和脸部识别等注册方式,防伪度高,且方便患者使用。用户注册时需输入的基本信息包括性别、年龄、血型、药物过敏、食物过敏、环境过敏、输血反应史、遗传史、感染史、器官移植史和药物不良反应。电子病历管理模块,用于录入或者导入患者的电子病历。电子病历管理模块包括电子病历录入单元,用于手工录入患者的电子病历,录入电子病历提供基本的表格,患者可以根据以往的就医经历填写电子病历。电子病历导入单元,用于批量导入已下载的合作医院的电子病历,如果合作医院的电子病历模板与本系统的电子病历模板不同,可以自动进行转换。电子病历同步单元,用于通过数据接口实时同步合作医院的电子病历,提供与合作医院的电子病历系统的接口,通过接口,定时对患者的电子病历进行同步。电子病历提供了患者的既往病史,为健康诊疗提供有效的参考。症状录入模块,用于录入目前出现的症状。通过人机交互界面,使患者录入目前身体的症状。健康诊疗方案推荐模块,用于通过人机交互界面展示推荐的健康诊疗方案,诊疗方案按照症状和病症的相似度由近及远排列,供患者进行选择,为患者的就医或者医生对患者医治提供参考。云服务器为基于云计算和分布式的大型服务器集群,进行超大数据的分析及运算。云服务器包括资料录入模块、存储模块和数据分析模块。资料录入模块,用于录入医学知识数据。录入的医学数据包括百科全书、词典、图书、新闻、电影剧本、医学工具书、临床诊断手册、医学杂志、病例(电子病例)、相关生物医学等论文信息。存储模块,用于存储医学知识数据、患者的基本信息和患者的电子病历。数据分析模块,用于①对医学知识进行数据分析;②结合患者的电子病历和医学知识数据,对患者的健康状况进行预分析;③根据患者目前的症状并结合医学知识数据、健康状况的预分析数据和患者的基本信息制定健康诊疗方案。基于云计算的健康诊疗方案由内容推导出答案的流程图如图3所示的内容包括:症状诊断、就诊科室、建议检查、建议用药、并发症、建议手术、预防方法、护理方法、食补方法、图解、视频、相关文献、推荐医院、推荐医生和推荐护士。通过终端输入:“心悸、呼吸困难、发绀、咳嗽、咯血、胸痛、水肿、少尿等,请问是啥病啊?”医生会根据知识积累,给出先去做检查。然后根据检查结果给出“心脏病”这个答案,但对于“云计算系统”,这个过程要复杂得多。“云计算系统”首先贝叶斯网络上有相关信息进行分析这个问题属于的那种病,接着分析这些疾病,会找到很多文章。它要定位相关疾病的文章,其中把涉及到关于心脏病及其相关症状及体征等相关那一段分别找出来,(如果患者的以往病例和检查都已录入数据库,将整合病例数据)然后对这一段做深度分析,比如找到相关症状文章中的一句话,这句话里说到这是心脏病、高原性心脏病等等。上述结果是通过构建贝叶斯网络,然后根据三个算法得出。图4所示为一个简单的贝叶斯网络实例,表1为它对应的条件概率表。图4的节点表示随机变量vi,有向弧表示变量之间的相互联系。其中有锻炼(e)和饮食(d)是影响心脏病(hd)的危险因素,胸痛(cp)和高血压(bp)对应该疾病的症状。有了节点及其相互关系、条件概率表,贝叶斯网络就可以表达网络中所有节点的联合概率,并可根据先验概率和某些节点的取值计算其他任意节点的概率信息。表1贝叶斯网络对应的条件概率表p(e=yes)=0.7p(e=no)=0.3p(d=健康)=0.2p(d=不健康)=0.8p(hd=yes|e=yes,d=健康)=0.25p(hd=no|e=yes,d=健康)=0.75p(hd=yes|e=yes,d=不健康)=0.45p(hd=no|e=yes,d=不健康)=0.55p(hd=yes|e=no,d=健康)=0.55p(hd=no|e=no,d=健康)=0.45p(hd=yes|e=no,d=不健康)=0.75p(hd=no|e=no,d=不健康)=0.25p(hb=yes|d=健康)=0.2p(hb=no|d=健康)=0.8p(hb=yes|d=不健康)=0.85p(hb=no|d=不健康)=0.15p(bp=yes|hd=yes)=0.85p(bp=no|hd=yes)=0.15p(bp=yes|hd=no)=0.2p(bp=no|hd=no)=0.8p(cp=yes|hd=yes,ep=yes)=0.8p(cp=no|hd=yes,ep=yes)=0.2p(cp=yes|hd=yes,ep=no)=0.6p(cp=no|hd=yes,ep=no)=0.4p(cp=yes|hd=no,ep=yes)=0.4p(cp=no|hd=no,ep=yes)=0.6p(cp=yes|hd=no,ep=no)=0.1p(cp=no|hd=no,ep=no)=0.9本发明所述的一种基于云计算的健康诊疗方案推荐的系统的工作方法,其流程图如图1所示,按如下步骤进行:(1)云服务器收集医学知识数据,并对医学知识数据分析后进行存储。录入的医学数据包括百科全书、词典、图书、新闻、电影剧本、医学工具书、临床诊断手册、医学杂志、病例(电子病例)、相关生物医学等论文信息。对医学知识数据分析的方法为如下方法中的一种或者多种的结合:①语音分析;②自然语言分析;③专业医学用语分析;④语义分析。(2)用户终端上传已注册的患者的电子病历至云服务器,云服务器结合患者的电子病历和步骤(1)中存储的医学知识数据,对患者的健康状况进行预分析。用户终端上传已注册的患者的电子病历至云服务器的方法为如下方法的一种或者多种的结合:①已注册的患者在用户终端自行录入电子病历并上传;②下载合作医院的电子病历,用户终端进行批量导入;③用户终端与合作医院的电子病历通过接口连接,实时同步患者的电子病历。(3)用户终端上传患者目前出现的症状至云服务器,云服务器根据患者目前的症状并结合步骤(1)中的医学知识数据、步骤(2)中的预分析数据和患者注册时的基本情况制定健康诊疗方案,并输出一种或者多种推荐的诊疗方案,诊疗方案通过用户终端的人机交互界面传递给患者。云服务器基于云计算和分布式的大型服务器集群进行超大数据的运算统计分析,帮助患者找到与目前症状相关的信息,在分析疾病时是通过贝叶斯网络的算法进行实现。贝叶斯算法首先计算网络中任意两节点之间的互信息然后执行下面的操作:①随机从节点集中取一结点k,作为初始点t,把节点k添加到访问顺序数组init_order中;②找出节点集中未使用过的和节点t的互信息最大的节点变量v,标记节点v为使用过的节点,把节点v添加到访问顺序数组init_order中,把v赋为初始节点t;③继续在剩余节点集中搜索,重复上面的步骤②,直到每一个结点都被标记。通过上述步骤得到的节点访问顺序数组init_order即可作为初始节点顺序信息代入并行结构学习算法进行搜索,通过一定的搜索策略,最后找到最优的网络结构。本发明选用的结构学习算法为cooper和herskovits提出的基于评分搜索的k2算法,它是贝叶斯网络结构学习领域的经典算法,具有非常优异的学习性能。k2算法的思想是首先定义一个评价网络模型优劣的评分函数,再从一个空的网络开始,根据事先确定的节点顺序,选择使后验结构概率最大的节点作为该节点的父节点,依次遍历完所有的节点,逐步为每一个变量添加最佳的父节点。采用定理1的评分函数如下:其中ri为节点变量xi的取值个数;πi为节点变量xi的父节点集合;qi为πi的配置数;nijk为数据集d中满足节点xi的取值为k,其父节点集为第j个配置的样本的个数;随着实际应用中采集的数据越来越多,单处理器的处理时间越来越长,本发明为了满足云计算环境下健康监测普适服务系统对实时性的要求,对k2算法进行了改进,引入了并行优化的思想。算法总共包括2个阶段:phase1和phase2,首先phase1通过算法1得到初始化顺序数组init_order,然后phase2调用算法2执行并行的结构学习,其中phase2的执行过程中会调用算法3。整个算法的伪代码如下所示:phase1:算法1.init_order_learning.输入:一个包含m条实例的数据集d,一组n个节点变量集合x={x1,x2,...,xn},初始节点k;m条实例即为患者的病症、医学知识数据、预分析数据和患者注册时的基本情况的集合。输出:变量的初始化顺序数组init_orderphase2:(并行算法,实现了对k2算法的改进,适合云计算环境)算法2.parallel_structure_learning_1.输入:一组n个节点变量集合x={x1,x2,...,xn}和节点变量的初始顺序init_order;设置的并行worker的最大个数为s;输出:贝叶斯网络结构bn算法3.parallel_structure_learning_2.输入:一组部分节点变量集合px={xs1,xs2,...,xst}和节点变量的初始顺序init_order;节点父集合的最大维度umax;一个包含m条实例的数据集d;输出:对于部分节点集中的每个xi,输出其父节点集合πi。算法复杂度分析:考虑最坏情况下的时间复杂度。m是样本数,n是变量个数。ri是每个变量的最大可能取值数。每个节点的最大父节点数是umax。算法1:需要计算每个节点对的互信息mi。因为mi是对称的,所以需要计算n(n-1)/2次的互信息。计算每次mi的复杂度是o(4r2+m)或者仅仅是o(m),因为r通常远远小于m。因此需要o(mn2)的时间来计算所有的mi。第一步的时间复杂度为o(mn2)+o(n2)。算法2:由于把n次for循环并行分配给s个处理器同时运行,同时每一个for的执行都会调用一次算法3。时间复杂度为串行执行的1/s。算法3:计算一次评分g的计算量为o(mur)[12],由于每个节点最多只有n-1个父节点,所以计算一次y的时间复杂度为o(nmur)。由于最多只有u次while循环,这样算法3的复杂度即为o(nmu2r)。由于u<=n,所以算法3的时间复杂度不超过o(n3mr)。综上所述,算法的总的时间复杂度为o(mn2)+o(n2)+o(n4mr/s)。心脏病的病例数据来源采用美国cleveland医疗基金会(clevelandclinicfoundation),v.a.医疗中心提供的心脏病病例数据进行测试。其数据说明见表2,在这个数据集的基础上进行了仿真扩展来满足的实验需求。表2心脏病数据说明云服务器获得疾病描述的多种症状时,将通过缺失值处理、属性离散化等数据预处理方式进行处理。缺失值处理是对于数据集中的空值,利用均值/众数填充法(mean/modefill)进行填充,即:对于连续型属性的空值,使用该属性非空值的均值来代替空值;对于字符型或整数型属性,使用被该属性的众数来代替空值。属性离散化是数据集中有一些变量具有连续属性。因为贝叶斯网络对小于6个离散取值的变量操作效果最好,所以对变量thalach、oldpeak使用等频率算法进行离散化。此外,把age、trestbps、chol这3个属性根据医生的经验分别离散化为3段。表3属性的离散化和符号化结果属性区间age0:(-∞,45),1:[45,55),2:[55,+∞)trestbps0:(-∞,120),1:[120,139),2:[139,+∞)chol0:(-∞,200),1:[200,239),2:[240,+∞)thalach0:(-∞,143),1:[143,162),2:[162,+∞)oldpeak0:(-∞,0.1),1:[0.1,1.4),2:[1.4,+∞)基于云计算的心脏病实例的危险因素分析模型构建bayesian_network_heart_disease模型如下:输入:数据集d输出:bnbayesiannetwork_heartdisease模型执行过程:1)对数据集d进行数据预处理2)输入处理好的数据,根据3.1节描述的算法构建贝叶斯网络3)输出建好的贝叶斯网络bn使用bayesiannetwork_heartdisease模型构建贝叶斯网络结构:从扩展的数据集中选取2万条数据,应用本文提出的算法和matlab编程进行实验。得到如图3所示的心脏病分析贝叶斯网络结构。图3所示的心脏病分析贝叶斯网络由14个节点和若干连线组成.其中,14个节点即为表2所示14的个变量,节点之间的连线表明变量间的相互影响关系。各个节点代表1:年龄;2:性别;3:胸痛类型;4:静脉压;5:胆固醇;6:每毫升的血糖浓度是否超过120mg;7:静息心电图;8:最高心率;9:是否运动导致心绞痛;10:运动导致st下降;11:峰值st倾斜角度;12:主血管数量;13:心跳情况;14:是否患有心脏病。本发明基于云集计算提出的init_order_learning方法可以帮助建立准确的心脏病诊断模型。bayesiannetwork_heartdisease模型具有较高的准确率,可以为医生/患者按可信度的大小提供几种最有可能的诊断,这对在线预测(心脏病等疾病)是至关重要的。因为同一种疾病可以表现为不同的症状,而不同的疾病也可以表现为同一种症状,因此需要列出一系列疾病来考虑,按可信度最高的一两种疾病来尝试治疗,为患者或医生提供指导和建议。此外,本发明的诊断模型大大缩短了建模的时间。在实际应用中,随着传感器采集到的数据的不断增多,有必要根据新采集到的数据来更新模型,本发明提出的算法可以满足在线诊断、健康监测普适等服务系统对准确率和实时性的双重要求,对实际的应用具有很大的价值。患者注册时的基本情况包括:性别、年龄、血型、药物过敏、食物过敏、环境过敏、输血反应史、遗传史、感染史、器官移植史和药物不良反应。健康诊疗方案的内容包括:症状诊断、就诊科室、建议检查、建议用药、并发症、建议手术、预防方法、护理方法、食补方法、图解、视频、相关文献、推荐医院、推荐医生和推荐护士。本系统面向的人群分为两种,一种为普通用户,即患者;另一种为医生。当本系统应用于普通患者时,普通患者需在本系统成功注册,注册后完成电子病历的录入或者选择已经导入成功的电子病历;需要获得健康诊疗方案时,只需要在用户终端的人机交互界面处输入目前的症状,云服务器即可根据医学知识数据、电子病历预分析数据和患者注册时的基本情况制定健康诊疗方案,并按照可信度的由大到小的顺序提供给患者,为患者预防疾病和就医治疗提供建议和指导。当本系统应用于医生时,医生需取得患者的注册信息,并成功登录本系统,根据医生对患者做出的检查和诊断,输入患者目前的症状,云服务器即可根据医学知识数据、电子病历预分析数据和患者注册时的基本情况制定健康诊疗方案,并按照可信度的由大到小的顺序提供给医生,为医生提供先进的诊疗方法。本发明可以与合作单位的数据库进行对接,仅为合作单位提供服务,也可以面向大众,为普通用户提供远程服务,应用广泛,便于普及。虽然本发明被描述为具体的体现方式和例子,尽管本发明的实施方案已公开如上,但其并不仅仅限于说明书和实施方式中所列的运用,它完全可以被适用于各种适合本发明的领域,对于熟悉本领域的人员而言,可容易地实现另外的修改,因此在不背离权利要求及等同范围所限定的一般概念下,本发明并不限于特定的细节和这里示出与描述的图例。其他相关的技术细节和具体实现,对于本领域的技术人员而言是易于理解和实现的。通过编程可以实现以上的具体控制过程。因此,除上述实施例外,本发明还可以有在本领域以及其他领域的其他实施方式。凡采用等同替换或等效变换形成的技术方案,均落在本发明要求的保护范围。当前第1页12
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1