基于规则衰减的临床辅助决策方法、系统、设备和介质与流程

文档序号:22966698发布日期:2020-11-19 21:38阅读:136来源:国知局
基于规则衰减的临床辅助决策方法、系统、设备和介质与流程

本发明涉及数据处理技术领域,特别是涉及一种基于规则衰减的临床辅助决策方法、系统、设备和介质。



背景技术:

医学规则的准确性是每家医疗厂商都要面临的问题,目前市面上的医学规则运算基本只是停留在病症问题的表象上得出的结论,未能正确的推断出其可能引起此病症的最根本问题。这样的偏差规则运算结果会严重的造成患者失去宝贵的治疗时间和准确的治疗方案(例如某人因咳嗽去医院查看,当将患者的信息和咳嗽传给规则运算后只给出一个简单的感冒,殊不知可能是肺炎或是其他病症引用发的)。因此如何能根据患者的现有数据及病史数据精准的推断出相应的医学辅助以提高医生的工作效率的同时也降低因错误的诊断造成的医疗事故是件非常迫切的问题。



技术实现要素:

鉴于以上所述现有技术的缺点,本申请的目的在于提供一种基于规则衰减的临床辅助决策方法、系统、设备和介质,以解决现有技术中存在的至少一个问题。

为实现上述目的及其他相关目的,本申请提供一种基于规则衰减的临床辅助决策方法,所述方法包括:s1、获取患者数据并清洗至预设数据库以得到整合数据,并将所述整合数据保存至redis存储系统中;s2、将redis存储系统中存储的所述整合数据进行规则运算以推断出诊断结果;s3、将本次诊断结果与存入redis存储系统中的上一次诊断结果进行对比;s4、若对比结果不相同,则将本次诊断结果汇入所述整合数据或替换所述整合数据中的上一次诊断结果,并重复步骤s2-s3;若对比结果相同,则将本次诊断结果作为最终诊断结果,以用于临床辅助决策。

于本申请的一实施例中,所述获取患者数据并清洗至预设数据库以得到整合数据,包括:获取院方数据库中的患者数据;将患者数据清洗映射为预设数据库的数据结构,并将患者数据的信息唯一化;在所述预设数据库中对映射后的患者数据进行去重、合并、及格式归一的整合处理以得到整合数据。

于本申请的一实施例中,所述患者数据包括当前数据和历史数据;所述当前数据和历史数据包括:基本数据、诊断数据、病史数据、用药史数据、住院数据、及家族史数据中任意一种或多种。

于本申请的一实施例中,所述整合数据在保存至redis存储系统前,需要进行合法性校验,以验证所述整合信息中的基本数据是否完整或正确,从而将校验通过的所述整合数据存入redis存储系统中。

于本申请的一实施例中,所述规则运算是通过调用drools规则引擎进行计算以推断出新的诊断结果;其中,所述drools规则引擎是依据现有医学诊断规则进行编写的。

于本申请的一实施例中,所述方法还包括:若本次诊断结果为首次诊断结果,则直接将本次诊断结果汇入所述整合数据,并重复步骤s2-s3。

为实现上述目的及其他相关目的,本申请提供一种基于规则衰减的临床辅助决策系统,所述系统包括:存储模块,用于获取患者数据并清洗至预设数据库以得到整合数据,并将所述整合数据保存至redis存储系统中;规则运算模块,用于将redis存储系统中存储的所述整合数据进行规则运算以推断出诊断结果;将本次诊断结果与存入redis存储系统中的上一次诊断结果进行对比;若对比结果不相同,则将本次诊断结果汇入所述整合数据或替换所述整合数据中的上一次诊断结果,并重新执行本模块步骤;若对比结果相同,则将本次诊断结果作为最终诊断结果,以用于临床辅助决策。

为实现上述目的及其他相关目的,本申请提供一种计算机设备,所述设备包括:存储器、及处理器;所述存储器用于存储计算机指令;所述处理器运行计算机指令实现如上所述的方法。

为实现上述目的及其他相关目的,本申请提供一种计算机可读存储介质,存储有计算机指令,所述计算机指令被运行时执行如上所述的方法。

综上所述,本申请提供的一种基于规则衰减的临床辅助决策方法、系统、设备和介质,所述方法包括:s1、获取患者数据并清洗至预设数据库以得到整合数据,并将所述整合数据保存至redis存储系统中;s2、将redis存储系统中存储的所述整合数据进行规则运算以推断出诊断结果;s3、将本次诊断结果与存入redis存储系统中的上一次诊断结果进行对比;s4、若对比结果不相同,则将本次诊断结果汇入所述整合数据或替换所述整合数据中的上一次诊断结果,并重复步骤s2-s3;若对比结果相同,则将本次诊断结果作为最终诊断结果,以用于临床辅助决策。

具有以下有益效果:

本申请可以根据患者的数据进行自动多次的规则运算,直到最后一次推断的结果与上一次的结果相同才算完成规则的运算结束。这个规则运算过程逐步衰减,直至将所有可能的推断用以高效精准的辅助医生决策。相比现有的技术,提高了医疗内容诊断的可靠性和精准性。

附图说明

图1显示为本申请于一实施例中基于规则衰减的临床辅助决策方法的流程示意图。

图2显示为本申请于一实施例中基于规则衰减的临床辅助决策系统的模块示意图。

图3显示为本申请于一实施例中计算机设备的结构示意图。

具体实施方式

以下通过特定的具体实例说明本申请的实施方式,本领域技术人员可由本说明书所揭露的内容轻易地了解本申请的其他优点与功效。本申请还可以通过另外不同的具体实施方式加以实施或应用,本说明书中的各项细节也可以基于不同观点与应用,在没有背离本申请的精神下进行各种修饰或改变。需说明的是,在不冲突的情况下,以下实施例及实施例中的特征可以相互组合。

需要说明的是,以下实施例中所提供的图示仅以示意方式说明本申请的基本构想,虽然图式中仅显示与本申请中有关的组件而非按照实际实施时的组件数目、形状及尺寸绘制,但其实际实施时各组件的型态、数量及比例可为一种随意的改变,且其组件布局型态也可能更为复杂。

目前市面上的医学规则运算基本只是停留在病症问题的表象上得出的结论,未能正确的推断出其可能引起此病症的最根本问题。这样的偏差规则运算结果会严重的造成患者失去宝贵的治疗时间和准确的治疗方案,例如某人因咳嗽去医院查看,当将患者的信息和咳嗽传给规则运算后只给出一个简单的感冒,殊不知可能是肺炎或是其他病症引用发的)。因此如何能根据患者的现有数据及病史数据精准的推断出相应的医学辅助以提高医生的工作效率的同时也降低因错误的诊断造成的医疗事故是件非常迫切的问题。

针对这一问题,本申请提供了一种基于规则衰减的临床辅助决策方法、系统、设备和介质。其中,本申请所述方法与市面上的其他方案的差异是,本申请的规则衰减运算会将患者的当前数据以及其历史数据作为规则运行的重要组成部分,同时会在每一次的推断出结果后作为规则运算所需要的数据再次进行规则的推断。只要每次都有新的数据推出都会再次进行规则运算推断,每一次规则所推断出的诊断结果与上一次的诊断结果相比,内容会逐渐减少,直至最后所推出的结果与上一次的推断结果一样才判断为对应该此患者的合理诊断结果。这样的一套规则衰减方法得出的结果准确性会更高,更能高效的辅助医生诊断。

如图1所示,展示为本申请于一实施例中的基于规则衰减的临床辅助决策方法的流程示意图。如图所示,所述方法包括:

步骤s1:获取患者数据并清洗至预设数据库以得到整合数据,并将所述整合数据保存至redis存储系统中。

于本申请一实施例中,所述获取患者数据并清洗至预设数据库以得到整合数据,包括:

a、获取院方数据库中的患者数据。

举例来说,一般一家医院中不同科室或区域所构建的数据库可能由布不同厂商搭建的,例如药房数据系统、住院系统、检查化验系统等,这些数据的数据结构以及数据的格式、命名等均有不同。本申请首先将从院方多个不同数据库中获取所有关于患者的数据。

b、将患者数据清洗映射为预设数据库的数据结构,并将患者数据的信息唯一化;

于本实施例中,然后对所获取的患者数据进行清洗,以映射为本申请预设数据库所需要的数据结构,以及将患者数据的信息唯一化。举例来说,具体的清洗动作一方面针是对数据结构的同一修改,另一方面也是对多种多样的格式或命名的患者数据信息进行唯一化修改,例如,患者的一些基本信息在不同系统中可能是不同存储格式,如图片格式、文字格式。虽然患者数据中有些信息格式或命名不同,但实质信息是唯一的,例如,名字、性别、社保卡号、身份证号等信息。

c、在所述预设数据库中对映射后的患者数据进行去重、合并、及格式归一的整合处理以得到整合数据。

于本实施例中,由于针对一患者的数据来源可能来自一家医院的不同科室,所以数据可能存在重复,以及如变量或参数等数据的格式不统一等情况,因此,在所述预设数据库中对映射后的患者数据进行去重、合并、及格式归一的整合处理以得到整合数据。

于本实施例中,所述患者数据包括当前数据和历史数据。历史数据是指患者可追溯道的所有历史记录,如基本数据、诊断数据、病史数据、用药史数据、住院数据、及家族史数据等;当前数据在本申请中主要指本次的就医记录,或当天,或就近日期的最新数据。

于本实施例中,所述当前数据和历史数据包括:基本数据、诊断数据、病史数据、用药史数据、住院数据、及家族史数据中任意一种或多种。

需说明的是,所述当前数据对于本申请最终给出的临床辅助决策是非常重要的参考数据,而历史数据是次重要的辅助参考数据。

于本实施例中,redis(remotedictionaryserver)存储系统,即远程字典服务,是一个开源的使用ansic语言编写、支持网络、可基于内存亦可持久化的日志型、key-value数据库,并提供多种语言的api。redis是一个key-value存储系统。和memcached类似,它支持存储的value类型相对更多,包括string(字符串)、list(链表)、set(集合)、zset(sortedset--有序集合)和hash(哈希类型)。这些数据类型都支持push/pop、add/remove及取交集并集和差集及更丰富的操作,而且这些操作都是原子性的。在此基础上,redis支持各种不同方式的排序。与memcached一样,为了保证效率,数据都是缓存在内存中。区别的是redis会周期性的把更新的数据写入磁盘或者把修改操作写入追加的记录文件,并且在此基础上实现了master-slave(主从)同步。

redis是一个高性能的key-value数据库。redis的出现,很大程度补偿了memcached这类key/value存储的不足,在部分场合可以对关系数据库起到很好的补充作用。它提供了java,c/c++,c#,php,javascript,perl,object-c,python,ruby,erlang等客户端,使用很方便。

redis支持主从同步。数据可以从主服务器向任意数量的从服务器上同步,从服务器可以是关联其他从服务器的主服务器。这使得redis可执行单层树复制。存盘可以有意无意的对数据进行写操作。由于完全实现了发布/订阅机制,使得从数据库在任何地方同步树时,可订阅一个频道并接收主服务器完整的消息发布记录。同步对读取操作的可扩展性和数据冗余很有帮助。

需说明的是,与其他存储系统相比,redis存储系统中所存储的数据不易丢失,能够定时保存,在发生方及后可自动提取,并且最大的特点是可支持的数据类型多,可提供多种语言,因此,更加适合有多种数据类型的医学数据,非常适合于本方法所适用的场景。

于本申请一实施例中,所述整合数据在保存至redis存储系统前,需要进行合法性校验,以验证所述整合信息中的基本数据是否完整或正确,从而将校验通过的所述整合数据存入redis存储系统中。

于本实施例中,合法性校验主要针对所述整合信息中的基本数据,如姓名、身份证号、社保卡号、出生日期等,这些信息是确定患者信息唯一且准确的信息,因此,对这些基本数据必须验证是否完整或正确,从而才可将校验通过的所述整合数据存入redis存储系统中。

步骤s2:将redis存储系统中存储的所述整合数据进行规则运算以推断出诊断结果;

于本实施例中,所述规则运算是通过调用drools规则引擎进行计算以推断出新的诊断结果;其中,所述drools规则引擎是依据现有医学诊断规则进行编写的。优选地,本申请是基于开源的drools规则引擎框架,依据现有医学诊断规则使用java语言进行编写的。

举例来说,一些病症的诊断往往是通过多种病状表征、生理参数(如通过血液、尿液检测出的多种生理指标)、以及患者的相关信息(如年龄、性别、家族史等)来综合判断的。因此,本申请中的规则运算就是drools规则引擎框架中将现有医学诊断规则编码化或程序化,通过综合分析各项数据中的指标参数或信息,以自动分析推理出诊断结果。

drools具有一个易于访问企业策略、易于调整以及易于管理的开源业务规则引擎,符合业内标准,速度快、效率高。如业务分析师或审核人员可以利用它轻松查看业务规则,从而检验是否已编码的规则执行了所需的业务规则。并且drools是为java量身定制的基于charlesforgy的rete算法的规则引擎的实现。具有了oo接口的rete,使得商业规则有了更自然的表达。drools的聪明之处在于,用xml节点来规范if--then句式和事实的定义,使引擎干起活来很舒服。而使用java,groovy等原生语言来做判断和执行语句,让程序员很容易过渡、移植,学习曲线很低。

步骤s3:将本次诊断结果与存入redis存储系统中的上一次诊断结果进行对比;

步骤s4:若对比结果不相同,则将本次诊断结果汇入所述整合数据或替换所述整合数据中的上一次诊断结果,并重复步骤s2-s3;若对比结果相同,则将本次诊断结果作为最终诊断结果,以用于临床辅助决策。

于本实施例中,若本次诊断结果为首次诊断结果,则直接将本次诊断结果汇入所述整合数据,并重复步骤s2-s3。

整体来说,一次的诊断结果推断,会存在一定的数据分析偏差,而造成推断的可靠性和精准性偏低。因此,本申请巧妙的通过将诊断结果带入数据源(整合数据)中重新进行规则运算,当出现与上一次诊断结果不同时,则继续带入重新进行规则运算,直至诊断结果与上一次诊断结果相同。每一轮的运算规则可退出的结果会呈现逐步衰减,因此,最后一次的诊断结果与之前的诊断结果相比,尤其是第一次的诊断结果,更加可靠和精准。

举例来说,整合数据中包含多种数据参数,在第一规则运算中,可能不同数据参数所对应的权重较为平均,因此,在得到的第一次诊断结果中,可能包含多种情况的诊断结果,例如,感冒、发烧、鼻炎等诊断结果。然后将诊断结果待会整合数据再进行规则运算时,原来的各项数据参数的权重就可能根据诊断结果产生变化,如,与该诊断结果直接相关的数据参数的权重增加,而不相关的数据参数的权略有降低等。那么再得到的第二次诊断结果中,得到的诊断结果可能就少了发烧或鼻炎等内容。继续将第二次诊断结果带入整合数据再进行规则运算,那么得到的第三次诊断结果就可能只剩感冒了。重复上述步骤,当第四次的诊断结果还是只有感冒时,那么之后再重复上述步骤,也可能只有该诊断结果了,因此,当诊断结果没有发生变化后,就可以确定该诊断结果是最后的诊断结果了。然后,就可以将该诊断结果返回到辅助决策界面,以供医生临床决策提供参考。

另外,还有一些情况,在各项数据参数初始时权重较平均的情况下,某些主要症状可以很容易判断,但是随着重复的进行规则运算,与该症状常见的并发症所对应的某些表征数据参数会逐渐凸显出来,因此,通过本申请方法自动多次的规则运算,除了上述举例中诊断结果会逐渐缩减的情况外,还会有诊断结果变化或替换的情况,对应后者这种情况,可有利用发现容易被忽略的并发症。

综上所述,与现有技术相比,本发申请可以根据患者的数据进行自动多次的规则运算,直到最后一次推断的结果与上一次的结果相同才算完成规则的运算结束。这个规则运算过程逐步衰减,直至将所有可能的诊断结果用以高效精准的辅助医生决策。大大提高了医疗内容推断的可靠性和精准性。

如图2所示,展示为本申请于一实施例中的基于规则衰减的临床辅助决策系统的模块示意图。如图所示,所述系统200包括:

存储模块201,用于获取患者数据并清洗至预设数据库以得到整合数据,并将所述整合数据保存至redis存储系统中;

规则运算模块202,用于将redis存储系统中存储的所述整合数据进行规则运算以推断出诊断结果;将本次诊断结果与存入redis存储系统中的上一次诊断结果进行对比;若对比结果不相同,则将本次诊断结果汇入所述整合数据或替换所述整合数据中的上一次诊断结果,并重新执行本模块步骤;若对比结果相同,则将本次诊断结果作为最终诊断结果,以用于临床辅助决策。

需要说明的是,上述系统各模块/单元之间的信息交互、执行过程等内容,由于与本申请所述方法实施例基于同一构思,其带来的技术效果与本申请方法实施例相同,具体内容可参见本申请前述所示的方法实施例中的叙述,此处不再赘述。

还需要说明的是,应理解以上系统的各个模块的划分仅仅是一种逻辑功能的划分,实际实现时可以全部或部分集成到一个物理实体上,也可以物理上分开。且这些单元可以全部以软件通过处理元件调用的形式实现;也可以全部以硬件的形式实现;还可以部分模块通过处理元件调用软件的形式实现,部分模块通过硬件的形式实现。例如,规则运算模块202可以为单独设立的处理元件,也可以集成在上述系统的某一个芯片中实现,此外,也可以以程序代码的形式存储于上述系统的存储器中,由上述系统的某一个处理元件调用并执行以上规则运算模块202的功能。其它模块的实现与之类似。此外这些模块全部或部分可以集成在一起,也可以独立实现。这里所述的处理元件可以是一种集成电路,具有信号的处理能力。在实现过程中,上述方法的各步骤或以上各个模块可以通过处理器元件中的硬件的集成逻辑电路或者软件形式的指令完成。

例如,以上这些模块可以是被配置成实施以上方法的一个或多个集成电路,例如:一个或多个特定集成电路(applicationspecificintegratedcircuit,简称asic),或,一个或多个微处理器(digitalsignalprocessor,简称dsp),或,一个或者多个现场可编程门阵列(fieldprogrammablegatearray,简称fpga)等。再如,当以上某个模块通过处理元件调度程序代码的形式实现时,该处理元件可以是通用处理器,例如中央处理器(centralprocessingunit,简称cpu)或其它可以调用程序代码的处理器。再如,这些模块可以集成在一起,以片上系统(system-on-a-chip,简称soc)的形式实现。

如图3所示,展示为本申请于一实施例中的计算机设备的结构示意图。如图所示,所述计算机设备300包括:存储器301、及处理器302;所述存储器301用于存储计算机指令;所述处理器302运行计算机指令实现如图1所述的方法。

在一些实施例中,所述计算机设备300中的所述存储器301的数量均可以是一或多个,所述处理器302的数量均可以是一或多个,而图3中均以一个为例。

于本申请一实施例中,所述计算机设备300中的处理器302会按照如图1所述的步骤,将一个或多个以应用程序的进程对应的指令加载到存储器301中,并由处理器302来运行存储在存储器301中的应用程序,从而实现如图1所述的方法。

所述存储器301可以包括随机存取存储器(randomaccessmemory,简称ram),也可以包括非易失性存储器(non-volatilememory),例如至少一个磁盘存储器。所述存储器301存储有操作系统和操作指令、可执行模块或者数据结构,或者它们的子集,或者它们的扩展集,其中,操作指令可包括各种操作指令,用于实现各种操作。操作系统可包括各种系统程序,用于实现各种基础业务以及处理基于硬件的任务。

所述处理器302可以是通用处理器,包括中央处理器(centralprocessingunit,简称cpu)、网络处理器(networkprocessor,简称np)等;还可以是数字信号处理器(digitalsignalprocessing,简称dsp)、专用集成电路(applicationspecificintegratedcircuit,简称asic)、现场可编程门阵列(field-programmablegatearray,简称fpga)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件。

在一些具体的应用中,所述计算机设备300的各个组件通过总线系统耦合在一起,其中总线系统除包括数据总线之外,还可以包括电源总线、控制总线和状态信号总线等。但是为了清除说明起见,在图3中将各种总线都成为总线系统。

于本申请的一实施例中,本申请提供一种计算机可读存储介质,其上存储有计算机程序,该程序被处理器执行时实现如图1所述的方法。

在任何可能的技术细节结合层面,本申请可以是系统、方法和/或计算机程序产品。计算机程序产品可以包括计算机可读存储介质,其上载有用于使处理器实现本申请的各个方面的计算机可读程序指令。

计算机可读存储介质可以是可以保持和存储由指令执行设备使用的指令的有形设备。计算机可读存储介质例如可以是(但不限于)电存储设备、磁存储设备、光存储设备、电磁存储设备、半导体存储设备或者上述的任意合适的组合。计算机可读存储介质的更具体的例子(非穷举的列表)包括:便携式计算机盘、硬盘、随机存取存储器(ram)、只读存储器(rom)、可擦式可编程只读存储器(eprom或闪存)、静态随机存取存储器(sram)、便携式压缩盘只读存储器(cd-rom)、数字多功能盘(dvd)、记忆棒、软盘、机械编码设备、例如其上存储有指令的打孔卡或凹槽内凸起结构、以及上述的任意合适的组合。这里所使用的计算机可读存储介质不被解释为瞬时信号本身,诸如无线电波或者其他自由传播的电磁波、通过波导或其他传输媒介传播的电磁波(例如,通过光纤电缆的光脉冲)、或者通过电线传输的电信号。

这里所描述的计算机可读程序可以从计算机可读存储介质下载到各个计算/处理设备,或者通过网络、例如因特网、局域网、广域网和/或无线网下载到外部计算机或外部存储设备。网络可以包括铜传输电缆、光纤传输、无线传输、路由器、防火墙、交换机、网关计算机和/或边缘服务器。每个计算/处理设备中的网络适配卡或者网络接口从网络接收计算机可读程序指令,并转发该计算机可读程序指令,以供存储在各个计算/处理设备中的计算机可读存储介质中。

用于执行本申请操作的计算机程序指令可以是汇编指令、指令集架构(isa)指令、机器指令、机器相关指令、微代码、固件指令、状态设置数据、集成电路配置数据或者以一种或多种编程语言的任意组合编写的源代码或目标代码,所述编程语言包括面向对象的编程语言—诸如smalltalk、c++等,以及过程式编程语言—诸如“c”语言或类似的编程语言。计算机可读程序指令可以完全地在用户计算机上执行、部分地在用户计算机上执行、作为一个独立的软件包执行、部分在用户计算机上部分在远程计算机上执行、或者完全在远程计算机或服务器上执行。在涉及远程计算机的情形中,远程计算机可以通过任意种类的网络—包括局域网(lan)或广域网(wan)—连接到用户计算机,或者,可以连接到外部计算机(例如利用因特网服务提供商来通过因特网连接)。在一些实施例中,通过利用计算机可读程序指令的状态信息来个性化定制电子电路,例如可编程逻辑电路、现场可编程门阵列(fpga)或可编程逻辑阵列(pla),该电子电路可以执行计算机可读程序指令,从而实现本申请的各个方面。

综上所述,本申请提供的一种基于规则衰减的临床辅助决策方法、系统、设备和介质,有效克服了现有技术中的种种缺点而具高度产业利用价值。

上述实施例仅例示性说明本申请的原理及其功效,而非用于限制本发明。任何熟悉此技术的人士皆可在不违背本申请的精神及范畴下,对上述实施例进行修饰或改变。因此,举凡所属技术领域中包含通常知识者在未脱离本发明所揭示的精神与技术思想下所完成的一切等效修饰或改变,仍应由本申请的权利要求所涵盖。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1