多通道和伴心律迁移学习的制作方法

文档序号:26009925发布日期:2021-07-23 21:29阅读:148来源:国知局
多通道和伴心律迁移学习的制作方法

相关申请的交叉引用

本申请要求于2018年11月30日提交的美国临时申请序号62/773,817的权益。上述相关专利申请的全部内容通过引用并入本文中。



背景技术:

用于收集生物特征数据的便携式监视设备在诊断和治疗患者的身体疾病方面正变得越来越普遍。移动心脏遥测(mct)就是示例之一。mct使医生获得了有关各种心脏疾病和异常的发生和规律的宝贵信息。可以分析使用mct收集的ecg数据以检测各种心脏疾病,包括各种异常心跳和心律。

附图说明

为了能够详细地理解本公开的特征的方式,可以通过参考实施例获得上面简要概述的本公开的更具体的描述,附图中示出了其中一些实施例。然而,应注意,附图仅示出了示例性实施例,因此不应被视为限制其范围,可以允许其他同等有效的实施例。

图1示出了根据一个实施例的示例性计算环境。

图2示出了根据一个实施例的并行处理计算环境。

图3示出了根据一个实施例的用于处理接收到的健康事件的事件引擎。

图4a-b示出了根据一个实施例的用于从ecg数据识别主心律和“伴心律(withrhythms)”的深度学习架构。

图5是根据一个实施例的用于训练从ecg数据识别主心律和“伴心律”的深度学习架构的流程图。

图6是根据一个实施例的用于使用深度学习架构对主心律和“伴心律”进行分类的流程图。

图7示出了根据一个实施例的用于使用单通道ecg数据对心脏事件进行分类的深度学习架构。

图8示出了用于使用多通道ecg数据对心脏事件进行分类的深度学习架构。

图9是根据一个实施例的使用多通道ecg数据对心脏事件进行分类的深度学习架构。

图10是根据一个实施例的使用多通道ecg数据和深度学习架构对心脏事件进行分类的流程图。

为了便于理解,相同附图标记(在可能的情况下)表示图中共同的相同元素。可以设想,一个实施例的元素和特征可以有益地并入其他实施例,而无需进一步叙述。

具体实施方式

概述

本文描述的实施例是一种用于对心脏事件进行分类的计算机实现的方法。该方法包括通过使用机器学习架构中的第一阶段分析患者的心电图(ecg)数据来生成特征集。该方法还包括基于特征集使用所述机器学习架构中的第一阶段对ecg数据中的第一心脏事件进行分类。该方法还包括基于经分类的第一心脏事件和特征集,使用机器学习架构的第二阶段对ecg数据中的第二心脏事件进行分类。第二心脏事件与第一心脏事件至少在时间上部分重叠。

本文所述的另一个实施例是一种用于对心脏事件进行分类的计算机实现的方法。该方法包括接收与患者有关的多个心电图(ecg)数据通道。该方法还包括生成多个特征集,每个特征集对应于多个ecg数据通道中的对应一个。每个特征集是使用机器学习架构中的相应路径生成的。该方法还包括基于多个特征集,使用机器学习架构对ecg数据中的心脏事件进行分类。

本文所述的另一个实施例是一种用于对心脏事件进行分类的系统。该系统包括处理器和存储程序的存储器,该程序在处理器上运行时执行操作。操作包括接收与患者有关的多个通道的心电图(ecg)数据。操作还包括生成多个特征集,每个特征集对应于多个ecg数据通道中的相应一个。每个特征集是使用机器学习架构中的相应路径生成的。操作还包括基于多个特征集中的至少一个,使用机器学习架构中的第一阶段对ecg数据中的第一心脏事件进行分类。操作还包括基于经分类的第一心脏事件和多个特征集中的至少一个,使用机器学习架构中的第二阶段对ecg数据中的第二心脏事件进行分类。第二心脏事件与第一心脏事件至少在时间上部分地重叠。

示例性实施例

解释患者的ecg数据会很困难且耗时。深度学习技术可以允许准确、快速地识别ecg数据中的心脏事件(例如异常心跳和心律)。

在实施例中,患者的ecg数据可以反映多个并行心律。例如,ecg数据可以反映患者在经历与“伴心律”(例如,心室内传导延迟(ivcd)和一级心脏阻滞)并行的主心律(例如,正常窦性心律或心房颤动)。“伴心律”可以与基本的主要心律同时发生,ecg数据可以反映两种心律。此外,在一些情况下,患者可以经历与主心律并行的多个“伴心律”。ecg数据可以反映所有这些并行心律。

在实施例中,深度学习技术可用于建立准确且快速的算法,该算法检测并分类连同主心律一起的“伴心律”。这可以提高检测这些心率的准确性和速度,从而为患者提供更准确(且快速)的医疗和警报(例如,向患者提供医疗,向护理人员发出通知信息,或向监视服务人员提供警报)。例如,可以使用迁移学习技术。在一个示例中,可以使用监督学习(例如,使用预先标记的数据)来设计和训练用于检测主心律的深度学习模型。该深度学习模型可以扩展到也对“伴心律”进行分类。在实施例中,可以设计并训练多个分类器网络,每个分类器旨在基于主心律分类器和基础ecg数据两者的输出对特定的“伴心律”进行分类。这些分类器可以并行使用,以同时识别多个“伴心律”。

作为另一示例,患者可以穿戴检测多个ecg数据通道的心脏监视设备。例如,设备上的每个传感器对可以检测不同的ecg数据通道。也就是说,设备可以包括:用于检测1个数据通道的1个传感器对、用于检测3个数据通道的3个传感器对、用于检测12个数据通道的12个传感器对、或者甚至用于检测64个数据通道的64个传感器对。作为另一示例,传感器对可以用于检测比传感器数量更多的数据通道。例如,具有3个传感器的设备能够计算3个以上的数据通道(例如,6个数据通道)。具有5个或更多个传感器的设备能够计算甚至更多的数据通道。在实施例中,这些通道中的每个通道能捕捉到通过心脏的电传播的略微不同的方面,并且因此将包含心脏活动中时间同步但略微不同的电物理表示。

深度学习技术可以使用多通道数据来识别心脏事件(例如,心率或心跳)。例如,在实施例中,正如下文进一步讨论的,迁移学习技术可以使用单通道ecg分类器并创建多通道分类器。这可以有许多优点,包括(例如)提高准确性,提高冗余度,并且提高机器学习模型的训练。分类的心律或心跳可以被提供给患者、护理人员或监视服务人员,并用于患者的治疗。

图1示出了根据一个实施例的示例性计算环境100。如图所示,计算环境100可以包括各自经由网络145相互连接的护理人员环境105和患者环境130。护理人员环境105和患者环境130允许护理人员101(例如,技术人员、护士、医生等)监视由患者103生成的生物特征数据。

护理人员环境105包括工作流服务器110、计算设备120、监视系统117和数据存储库118。工作流服务器110、计算设备120和监视系统117中的每一个可以是专用计算系统或虚拟计算机实例(例如,在云计算平台中执行)。护理人员101可以使用计算设备120访问(例如,经由浏览器应用122、设备120上的本地应用等)由监视系统117托管的用户界面(ui)。

值得注意的是,尽管被显示为单个实体,但数据存储库118可以表示多个单独的数据存储(例如,关系型数据库)。此外,这些数据存储可以横跨多个计算节点。为此,单独的数据存储可以作为单个数据存储发挥作用(例如,通过数据复制技术和通过使用负载均衡器)。因此,数据存储库118代表任何数量计算系统上任何种类的数据存储,这与本文描述的功能一致。

此外,尽管未被示出,但数据存储库118可以存储来自各种其他实体的数据和/或服务请求,例如第三方应用、伙伴和附属机构、电子医疗记录系统、外部监视设备和产品、分析引擎、数据整合器应用等等。更具体地,可以设想,数据存储库118和(更具体地)护理人员环境105内的其他元素可以与任何数量的不同数据发起者和接收者交互,这与本文描述的功能一致。因此,计算环境100仅仅是为说明目的而提供的,并且不受限制。

工作流服务器110包括要执行的应用和数据,以识别和处理与患者103相对应的健康事件。如图所示,工作流服务器110包括通信模块113、处理节点114和队列115。在一个实施例中,处理节点114是对接收到的数据(例如,健康事件)执行预定任务或动作的软件代码或应用。工作流服务器110使用一组相互连接的处理节点114和形成工作流的队列115来评估从患者环境130接收到的数据。当从患者环境130接收到生物特征数据或健康事件时,工作流可以对数据进行分类(或再分类),以识别健康事件的类型,例如,向患者/护理人员展示或通知、抑制、分类、聚集、计算、优先处理/分诊等。例如,从患者环境130接收到的不同类型的数据可以触发不同类型的健康事件,例如,不规则心跳会触发心脏事件,而表明电极已脱落的信号则触发维护事件。在一个实施例中,患者环境130内的至少一个传感器设备140或被安装为患者环境130内的移动设备135的一部分的监视应用136可能已经对数据或健康事件进行初步分类。尽管如此,工作流服务器110可以评估生物特征数据(或维护数据)以确认该初步分类是正确的。

每种类型的健康事件可以采用通过工作流的不同路径。也就是说,不同的健康事件可以使用不同路径穿过处理节点114和队列115。例如,心脏事件可以使用服务器110中与维护事件不同的处理节点114进行评估。此外,针对同一健康事件的通过工作流的路径可能基于各种因素而不同,例如健康事件的严重性、患者103年龄、患者103的其他症状、患者103服用的药物等。例如,高优先级的心脏事件可以跳过一个或多个处理节点114或队列115,并且立即向使用监视系统117的护理人员101显示。

通信模块113允许工作流服务器110从患者环境130接收数据,并且将数据发送给护理人员101。通信模块113可以从至少一个传感器设备140接收数据,该数据用于通过相互连接的处理节点114和队列115识别健康事件和相应路径。通信模块113通过使用监视系统117和计算设备120帮助护理人员101完成工作流。此外,除从患者环境130接收数据外,通信模块113可以使工作流服务器110向患者环境130发送请求或指示,例如询问患者103是否有任何症状或指示患者103重连到至少一个传感器设备140的断开电极(未示出)。

在一个实施例中,健康事件穿过工作流服务器110的路径可以包括在没有用户干预的情况下处理健康事件的处理节点114,以及需要护理人员101输入的处理节点114。例如,处理节点114之一可以对健康事件进行过滤或筛选,以测定将该事件放在什么队列中,将该事件与一个或多个规则进行比较以测定要执行的动作,或存储该事件。替代地,处理节点114中的其他处理节点可以要求护理人员101执行动作或提供指示。例如,监视系统117可以针对健康事件生成用户界面(ui),然后由浏览器应用程序122向护理人员101显示。一旦护理人员101执行动作(例如,确认事件的分类或同意工作流服务器110建议的动作),则执行工作流的其余操作,例如,向患者103发送通知,在患者103历史记录中记录此事件,将此事件传送到不同的护理人员101之一,对健康事件进行再分类(如果护理人员101表示初步分类不正确),或对健康事件进行优先处理或分诊。

继续参考图1,患者环境130包括移动设备135和至少一个传感器设备140。移动设备135包括允许至少一个传感器设备140和护理人员环境105之间通过网络145进行通信的监视应用136。监视应用136可以配置至少一个传感器设备140(例如,物联网设备)以监视如护理计划所规定的一个或多个患者103的生物特征数据。例如,监视应用136可以配置患者穿戴的心率监视设备上的逻辑,以监视患者心率。进而,监视应用136可以向工作流服务器110发送心率数据,工作流服务器测定是否触发健康事件,如果是,则执行工作流以处理该事件,如上所述。在另一个实施例中,心率监视设备在检测到满足阈值条件后,可以生成健康事件并将健康事件传送给移动设备135,移动设备进而将健康事件传送给工作流服务器110以进行处理。然而,在其他实施例中,由工作流服务器110执行的一些任务可以由移动设备135执行。也就是说,工作流可以包括由移动设备135或至少一个传感器设备140执行的任务,以及由工作流服务器110执行的任务。

在一个实施例中,监视应用136从至少一个传感器设备140接收环境数据。一般地,环境数据通知监视应用136在靠近至少一个传感器设备140和用户的区域内的环境条件,例如,用户所在的房间。例如,至少一个传感器设备140可以检测患有呼吸系统疾病的患者103的空气质量或花粉数量。在另一个示例中,至少一个传感器设备140可以跟踪用户在环境中的运动或动作,例如患者103晚上去多少次卫生间,或者患者103是否在晚上辗转反侧。然后,这种环境数据可以由监视应用136本身使用或与生物特征数据结合使用,以触发由工作流服务器110处理的健康事件。

在一个实施例中,监视应用136可以使用移动设备135上的输出设备(例如,显示器或音频系统)来向患者103提供信息。例如,在执行工作流时,处理节点114之一可以询问患者103是否经历过任何症状。为了从患者103处获得反馈,监视应用136可以在移动设备135上显示允许患者103列出症状的用户界面(ui)。此外,监视应用136还可以显示与护理计划或至少一个传感器设备140有关的一般信息,例如患者的心率或体重、至少一个传感器设备140的状态等。

在一个实施例中,至少一个传感器设备140与监视应用136交互,并且协助患者103向护理人员环境105报告患者的生命体征和其他信息。如图所示,至少一个传感器设备140可以包括身体传感器141、体重计142和血压袖带143。至少一个传感器设备140中的每一个都可以捕捉患者103的不同生命体征。例如,当应用于患者103身体时,身体传感器141实时捕捉生物特征数据(例如,心率、ecg数据等)。此外,至少一个传感器设备140中的每一个可以被配置为以电子方式向移动设备135上的监视应用136传送与身体相关的指标。进而,监视应用136将捕捉的指标发送到工作流服务器110,这可用于触发使用处理节点114和队列115进行处理的健康事件。

在一个实施例中,在检测到已达到观察阈值时,至少一个传感器设备140执行健康事件的初步分类。在一个特定实施例中,移动设备135被配置为执行健康事件的初步分类。例如,身体传感器141在检测到从患者103收集到的ecg数据表明心脏行为不稳定时,可以将健康事件归为心脏事件。健康事件的这种初步分类以及相关的ecg数据(例如,包括事件前后的预定时间长度的ecg数据)可以被传送到移动设备135(例如,通过通信链路),并且监视应用136随后通过网络145(例如,互联网)将ecg数据和健康事件数据转发到工作流服务器110。替代地,监视应用136可以不分类数据,而是将原始的、未经处理的传感器数据转发给工作流服务器110,工作流服务器使用其中一个处理节点114对健康事件进行识别并分类,这些健康事件随后在工作流服务器110中被处理。

图2示出了根据一个实施例的并行处理计算环境200。如图所示,患者环境130将生物特征数据和/或健康事件传送到包括负载均衡器205的护理人员环境105。工作流服务器110a-110c均包括相应的一个事件引擎215a-215c。虽然没有显示,但每个事件引擎215a-215c包括形成用于处理健康事件的如上所述的工作流的多个相互连接的处理节点和队列。在一个实施例中,事件引擎215a-215c均包括以相同方式排列的相同处理节点和队列,以便任何一个事件引擎215a-215c能够处理由至少一个传感器设备140生成的不同健康事件,即,任何一个事件引擎215a-215c能够处理心脏事件、呼吸系统事件、维护事件等。基于当前的工作负载,负载均衡器205将接收到的数据或健康事件传送到工作流服务器110a-110c之一以进行处理。例如,负载均衡器205可以以轮流的方式或通过监视工作流服务器110a-110c的每个相应的中央处理单元(cpu)或存储器使用情况来分配接收到的健康事件。

替代地,事件引擎215a-215c可以具有不同的处理节点和队列(或节点和队列的不同布置),使得事件引擎215a-215c被配置为处理不同的事件类型。例如,事件引擎215a、215b可以具有处理心脏事件的工作流(并且有相同处理节点和队列),而事件引擎215c中的工作流处理呼吸系统事件。负载均衡器205可以使用由患者环境130提供的初步分类或基于至少一个传感器设备140中测量生物特征数据的传感器设备来测定事件引擎215a-215c中的哪个事件引擎应接收健康事件。

无论事件引擎215a-215c是否具有相同或不同的布置,都可以容易地响应于不同的工作负载对计算资源进行调整。例如,如果额外的传感器设备(例如,传感器设备140)被添加到患者环境130中,则系统管理员可以添加额外的工作流服务器110a-110c之一,以处理数量增加的接收到的健康事件。反之亦如此。如果健康事件的数量减少,则管理员可以删除一个或多个工作流服务器110a-110c。例如,如果事件引擎215a、215b两者都处理心脏事件,但心脏事件的数量减少,系统管理员可以去除工作流服务器110a、110b之一。作为另一个示例,负载均衡器组件可以监视工作流服务器110a-110c的计算资源使用情况,并且可以基于计算资源的使用情况,增减服务器数量。

继续参考图2,监视系统117包括用户界面管理器220(ui管理器)和用户界面225(ui)。如上所述,处理节点114可能需要来自护理人员101(图1)的输入,以便通过事件引擎215a-215c路由健康事件。为此,事件引擎215a-215c向ui管理器220发送请求,该管理器生成可向护理人员101显示的ui225。例如,用户界面管理器220可以生成包括与心脏事件对应的心电图(ecg)图的用户界面225。此外,用户界面225可以包括输入/输出功能(例如,按钮或下拉菜单),护理人员可以使用输入/输出功能向事件引擎215a-215c之一提供输入或指示。例如,护理人员可以指示事件引擎215a-215c之一将心脏事件存储在数据存储库118中,将心脏事件发送到由另一护理人员监视的队列115之一(图1)(例如,获得第二意见),或将心脏事件转发给患者103的护理人员101。因此,监视系统117允许工作流服务器110向护理人员101输出信息,以及从护理人员101接收指令。

事件引擎215a-215c可以将数据存储在数据存储库118中并从数据存储库118中检索数据。例如,通过在存储库118中存储基于监视患者的生命体征得出的所有接收到的健康事件(或选定的健康事件),事件引擎215可以维护患者的历史。此外,事件引擎215a-215c可以使用存储在数据存储库118中的数据来处理健康事件。例如,如果事件引擎215a-215c中的一个接收到表示患者103当前体重的生物特征数据,则事件引擎215a-215c中的一个可从数据存储库118中检索患者103的过去体重测量值,并得出详述患者103的体重如何随时间变化的趋势图。例如,患者目前的体重可能不足以触发健康事件,但患者在一段时间内的派生体重变化会触发健康事件。正如下文所讨论的,这些推导的趋势可用于生成派生的观察(或其他事件)。

在一个实施例中,事件引擎215a-215c对健康事件进行优先处理,这进而确定了事件引擎215a-215c中的工作流处理健康事件的速度,或者什么处理节点和队列用于处理健康事件。如上所述,基于健康事件的严重程度、健康事件的类型、其生物特征数据生成健康事件的患者103的特征等,可以对健康事件进行优先处理。此外,基于其他标准,如机构政策、护理计划级政策、患者级政策、其他政策或上述的一些组合,可以对健康事件进行优先处理。

图3示出了根据一个实施例的包括处理健康事件的工作流的事件引擎215。如上所述,将由传感器接收到的健康事件或生物特征数据从负载均衡器205转发到事件引擎215。具体而言,工作流中的数据服务节点114a从负载均衡器205接收转发的信息。如果负载均衡器205转发健康事件,则数据服务节点114a基于类型(例如,心脏、呼吸或维护事件)对健康事件进行分类。在某些情况下,在数据服务节点114a接收到之前,健康事件就已分类。尽管如此,数据服务节点114a可使用更多的计算密集型技术来审查与健康事件相关的数据,如ecg数据、呼吸率、血压等,以测定初步分类是否正确。在另一个示例中,数据服务节点114a可以提供比初步分类更详细的健康事件分类。例如,传感器设备可能已生成健康事件,因为它检测到不规则心跳。然而,数据服务节点114a可以评估心跳并将健康事件分类为特定的心脏健康事件,例如,心室三联征事件或房室阻滞事件。数据服务节点114a可以保存健康事件的分类,下游节点和队列使用此分类来处理该健康事件。

数据服务节点114a可以接收来自患者环境的原始数据或观察值,而不接收健康事件。也就是说,患者佩戴的传感器设备可能还没有评估原始数据或观测值,以测定该数据是否触发健康事件。例如,来自传感器的观察数据包括血压测量、体重测量、ecg数据等。如下文所述,事件引擎215评估这些观察数据,并可以触发然后在引擎215中进行处理的健康事件。

数据服务节点114a将观察结果转发给观察队列115a,并且将健康事件转发给事件队列115b。过滤器节点114b提取队列115a和115b中存储的观察和健康事件。该节点114b充当决定健康事件和观察结果被送往何处进行进一步处理的守门员。当评估观察结果时,过滤器节点114b可以决定是否忽略(即放弃)观察结果或将观察结果转发到派生的观察队列115e。例如,过滤服务节点114b可以忽略诸如低电池信号、指示传感器设备已开始收集生物特征数据的启动信号或指示传感器设备已停止的停止信号等观察结果。相反,节点114b可以向派生的观察队列115e转发诸如体重测量、血压测量、ecg数据等观察结果。以这种方式,过滤服务节点114b筛选传入的观察结果,以测定是否应该进行进一步处理,例如检查触发健康事件。

然后通过派生观察服务节点114c处理由过滤服务节点114b转发的观察结果。该节点114c将接收到的观测值与以前接收到的观测值结合使用,以创建新的观测值或生成新的健康事件。换言之,派生的观察服务114c可以将以前接收到的观察结果与当前接收到的观察值进行汇总,以计算统计数据、趋势、触发健康事件等。虽然没有显示,但节点114c可以通信耦合到存储过去观察结果的数据存储库。例如,如果当前接收到的观察值为体重测量,则派生的观察服务节点114c可将该测量值与以前的体重测量进行评估,以测定患者在规定时间内的体重变化。这种体重变化可以触发健康事件,然后被转发给数据服务节点114a以作进一步处理。即使没有触发健康事件,派生的观察服务节点114c也可以将派生的观察值(例如,体重变化、平均血压、心率趋势等)存储在数据存储库中,使得在事件引擎215(或其他事件引擎215)接收到患者的进一步观察时,该数据可用。

在一个实施例中,派生的观察服务节点114c可以处理健康事件。例如,传感器设备可以在测定患者一天的平均血压超过阈值时触发健康事件。过滤服务节点114b可以将此健康事件转发到派生的观察服务节点114c,该节点然后可以使用该患者过去的血压测量值来得到患者的每周或每月平均血压或血压趋势图。基于这个派生的观察值,节点114c可以生成一个新的健康事件,或者如果派生的观察值不满足相应的条件,则决定放弃该健康事件。

此外,过滤服务节点114b还包括用于测定是否应该放弃接收到的健康事件,转发到事件动作队列115d,或转发到事件规则评估队列115c的逻辑。例如,系统管理员可以测定一些健康事件与某些患者无关。过滤服务节点114b中的逻辑可以识别并放弃这些健康事件,以防止它们通过事件引擎215的其他部分传播。例如,患者可能患有心脏杂音,不断导致传感器设备触发健康事件。与连续处理这些健康事件不同,护理人员可以指示过滤服务节点114b筛选出(或压制)患者的这些健康事件。

如果接收到的健康事件有相应的动作,则过滤服务节点114b将健康事件转发到事件动作队列115d。然而,如果健康事件的动作尚未被测定,过滤服务节点114b将健康事件转发到事件规则评估队列115c。规则引擎服务节点114d从队列115c取出健康事件,并使用一个或多个规则来评估健康事件。示例性规则包括测定每日体重变化和平均血压是否超过各自的阈值。基于这种评估,节点114d可以测定事件引擎215应执行什么动作,例如,抑制/忽略该事件,自动处理该事件,向护理人员显示该事件,或延迟处理该事件。一旦测定动作,规则引擎服务节点114d就生成并转发包括相应动作的新健康事件到数据服务节点114a。现在已知相应的动作,一旦新的健康事件到达过滤器服务节点114b,它就把事件转发到事件动作队列115d而不是事件规则评估队列115d。

通过将此事件转发到延迟动作队列115f,规则引擎服务节点114d可以延迟处理此健康事件。当没有足够的可用计算能力来执行规则评估或尚未完成规则评估时,节点114d可以这样做。也就是说,如果尚未评估所有的规则,并且在触发事件动作之前需要进一步评估,那么该事件可以被放入队列115f。例如,该规则可以触发心脏事件,但系统必须首先检查以测定该事件在采取相应的动作之前是否在患者身上被抑制。如图所示,然后由过滤服务节点114b检索存储在延迟动作队列115f中的健康事件,并可在稍后时间(即当所有规则都被评估时)被重新引入事件规则评估队列115c中。

一旦知道健康事件的相应动作并且健康事件被存储在事件动作队列115d中,动作引擎服务节点114e就把健康事件路由到适当的动作服务(即自动处理服务320、通知服务325或监视服务330)。自动处理服务320可以执行不需要护理人员监督或输入的动作(例如,将健康事件存储在数据存储库中)。作为另一个示例,自动处理服务320可以在事件以新的优先级被重新引入工作流之前向健康事件分配优先级或严重性。例如,当健康事件显示为心脏事件但数据质量较低时,自动处理服务320也可以生成新的健康事件。作为响应,服务320可以引入用于检查传感器连接/电极的维护事件。

事件引擎215使用通知服务325以向患者、护理人员、汽车提供商或设备发送有关健康事件的信息。通知服务325可以包括与患者沟通的不同通信通道或技术,如电子邮件、聊天、sms消息等。虽然图3只示出用于处理请求的通知队列115h和通知引擎服务节点114g,但事件引擎215可以有不同的队列和通知节点用于不同的通信技术。例如,如果从传感器设备拔下电极时触发维护事件,通知服务325可以向患者的移动设备发送电子邮件,从而指示患者插上电极。替代地,如果因为呼吸频率升高而触发呼吸事件,通知服务可以向患者发送短信询问她目前是否正在进行体育活动。

监视服务330将事件引擎215通信耦接到监视系统117。当需要护理人员对健康事件进行输入时,监视服务330将健康事件转发给监视队列115g。监视系统117中的用户界面管理器220包括从监视队列115g中提取健康事件并将其分配给任务队列310a或310b的工作流管理器节点305。ui管理器220还包括为健康事件生成ui的任务管理器节点315a和315b。然后,这些ui通过计算设备120a和120b向护理人员显示。此外,任务管理器节点315可以在用户界面中放入与健康事件相关的生物识别或维护数据。例如,心脏事件的用户界面可以显示ecg图和基线图,而呼吸事件的用户界面显示呼吸率和血液中的氧气水平。以这种方式,用户界面管理器220可以针对不同的健康事件生成定制的用户界面。

计算设备120可以向事件引擎215的数据服务节点114a传送可用于生成新的健康事件或更新当前的健康事件的信息。例如,护理人员可以指示事件引擎215采取某种动作,例如将健康事件转发给不同的护理人员以获得第二种意见,对健康事件再分类,抑制或忽略健康事件,通知护理人员,等等。基于护理人员的输入,事件引擎215再次通过节点114和队列115路由健康事件。

事件引擎215还包括任务评估服务节点114f。与事件引擎215中处理或存储从患者环境中接收到的观察数据或健康事件的其他节点和队列不同,任务评估服务节点114f基于护理协议或护理计划决定是否触发健康事件。在一个实施例中,当患者不遵循护理协议或计划时,节点114f触发健康事件。例如,护理协议可以要求患者在整天穿戴一定数量的传感器设备,或每天进行体重测量。通过监视由事件引擎215接收的观察和健康事件,任务评估服务节点114f测定患者是否遵守护理协议。如果没有,任务评估服务节点114f触发健康事件,并为事件引擎215执行相应的动作,例如使用通知服务325向患者发送通知或使用监视服务330通知护理人员。

图4a-b示出了根据一个实施例的用于从ecg数据识别主心律和“伴心律”的深度学习架构。深度学习架构400是机器学习架构,并包括两个阶段。在第一阶段420,原始ecg数据用于对主心律进行分类。例如,如图4a所示,原始ecg数据可以提供给与批量归一化层424和非线性激活函数426(例如,整流线性单元(relu))连接的卷积层422。该组合的输出可以被提供给卷积层428,与批量归一化层430、非线性激活函数432和dropout层434连接。在实施例中,非线性激活函数仅仅是一个示例。可以使用任何合适的激活函数层。此外,在实施例中,dropout层仅仅是一个示例。可以使用任何合适的正则化层。在实施例中,卷积层428、批量归一化层430、非线性激活函数432和dropout层434形成组合450。可以酌情重复这种组合。然后,来自dropout层434的输出被提供给与批量归一化层438和非线性激活函数440连接的卷积层436。来自这个最终的非线性激活函数440的输出被提供给与softmax层444连接的全连接层442。

在实施例中,阶段420使用这种层的配置以从原始ecg数据中对主心律进行分类。在阶段420中示出的层的具体配置仅为示例,可以使用其他合适的配置(例如,有更多的层、更少的层或不同的层)。此外,图4a中示出的示例使用卷积神经网络,但也可以使用其他合适的深度学习或机器学习技术。阶段420也可用于识别噪音。

此外,在一个实施例中,卷积层422至440被设计成将原始ecg数据压缩成特征集(例如,特征向量),该特征集以递增方式跨越小段的时间(例如,0.1秒、0.2秒、0.5秒或1秒)。时间段可以取决于分类任务。全连接层442和softmax层444对卷积层生成的特征集进行操作以执行分类任务。

深度学习架构400包括第二阶段460。在一个实施例中,第二阶段460用于识别与第一阶段420中识别的主心律并行发生的“伴心律”。例如,如图4所示,第二阶段460包括全连接层462和softmax层464。全连接层462接收由非线性激活函数440输出的特征向量和由softmax层444输出的分类主心律作为输入。在实施例中,第二阶段460可以使用监督学习进行训练,以对是否存在特定预设类型的“伴心律”进行二元测定。全连接层462和softmax层464只是示例。也可以使用其他合适的机器学习技术。

此外,如图4b所示,第二阶段460可以包括多个分类器和多个阶段(例如,全连接层462a-c和softmax层464a-c的多个组合)。这些分类器中的每一个可以用于对不同的“伴心律”进行分类。例如,第二阶段460可包括第一全连接层462a和第一softmax层464a,以检测心室内传导延迟(ivcd)。第二阶段或第三阶段可以进一步包括第二全连接层462b和第二softmax层464b,以检测一级心脏阻滞。第二阶段或第四阶段可以进一步包括第三全连接层462c和第三softmax层464c来检测另一个“伴心律”。在实施例中,这些全连接层462a-c中的每一个都接收第一阶段420的特征向量和分类输出作为输入。此外,在实施例中,这些“伴心律”的分类器中的每一个都可以并行操作,以基于第一阶段420的输出来识别多个不同的可能的“伴心律”。

图5是根据一个实施例的用于训练从ecg数据识别主心律和“伴心律”的深度学习架构的流程图。在块502,接收到训练数据。在实施例中,使用监督的学习技术,并且训练数据包括标有适当分类的样本ecg数据。在块504,使用训练数据对主心律分类模型进行训练(例如,图4a中说明的第一阶段420)。在实施例中,训练数据包括标有主心律分类的ecg数据,并且该训练数据用于训练主心律分类模型。在块506,使用训练数据来训练“伴心律”分类模型(例如,图4a-b中示出的第二阶段460)。在实施例中,在块506使用的训练数据包括来自块504的输出(准确标记),包括从ecg训练数据生成的特征向量和相应的分类。

在图5所示的实施例中,在“伴心律”分类模型之前训练主心律分类模型。替代地,这些模型也可以一起训练。例如,通过合并(例如,通过加权平均或其他合适的技术)从每个softmax层的输出计算的损失函数,可以同时训练这些模型。在这个示例中,ecg数据的片段可以提供多个标签(例如,主要心律分类和“伴心律”分类),而模型可以提供多个相应的分类(例如,主心律分类和“伴心律”分类)。加权损失函数可用于通过测定哪个结果分类应加权更多来促进训练。在这个实施例中,深度学习模型可以具有图4a-4b中图示的结构。替代地,可以删除第一阶段softmax444和第二阶段全连接462之间的连接。

在某些情况下,一起训练这些模型可以提高分类性能,因为卷积层有更多机会生成与“伴心律”分类更相关的特征。但这种训练也可能需要更多的配置,包括仔细调整损失函数,以便在主心律分类上集中深度学习模型的优先级,在大多数情况下,这应该优先于正确的“伴心律”分类。此外,这种训练可能需要更多的数据,但获取这些数据会是困难的或昂贵的。

图6是根据一个实施例的用于使用深度学习架构对主心律和“伴心律”进行分类的流程图。在块602,接收ecg数据。在实施例中,这包括来自患者的原始ecg数据。替代地,可以以适当的方式对该ecg数据进行预处理(例如,为ecg数据的期望方面提供增益或衰减)。在604块,ecg数据被馈入对ecg数据中的主心律进行分类的深度学习架构(例如,图4a中示出的第一阶段420)。如上所述,在实施例中,深度学习架构可以在小段时间内对数据进行分类。这些时间段可取决于分类任务。在块606,来自块604的输出(包括,例如,生成的特征向量和分类)被馈入对数据中的“伴心律”进行分类的深度学习架构(例如,图4a-b中说明的第二阶段460)。如上所述,深度学习架构可以被设计为对多个“伴心律”进行并行分类。

图7示出了根据一个实施例的用于使用单通道ecg数据对心脏事件进行分类的深度学习架构。深度学习架构700可用于对原始ecg数据进行分类,以识别特定的心跳或心率。这仅仅是示例架构,也可以使用其他合适的配置。如图7所示,原始ecg数据可以提供给卷积层712,该卷积层712与批量归一化层714和非线性单元716(例如,relu)连接。该组合的输出可以被提供给卷积层718,与批量归一化层720、非线性激活函数722和dropout层724连接。在实施例中,卷积层718、批量归一化层720、非线性激活函数722和dropout层724形成组合740。可以酌情重复这种组合。然后,来自dropout层724的输出被提供给与批量归一化层728和非线性激活函数730连接的卷积层726。来自这个最终的非线性激活函数730的输出被提供给与softmax层734连接的全连接层732。深度学习架构700将原始ecg数据作为输入,并对该数据进行分类以识别特定的心脏事件。

如图7所示,用于分类单通道心跳或心率的深度学习架构是卷积神经网络。如上所述,这种配置仅是示例,也可以使用其他合适的配置(例如,具有更多、更少或不同的层和连接)。此外,还可以使用其他常见的深度学习架构。例如,可以使用递归神经网络,或任何其他合适的深度学习架构。

图8示出了用于使用多通道ecg数据对心脏事件进行分类的深度学习架构。在实施例中,可以修改图7示出的深度学习架构以对多通道的ecg数据进行分类。如上所述,患者可以佩戴心脏监视设备,该设备检测多通道ecg数据。图8中示出的深度学习架构800使用现有的单通道架构(例如,图7中示出的架构700),基于ecg数据的多个通道对心跳和心率进行分类。在实施例中,这是通过从现有的、完全训练的架构中删除最终的分类层(例如,全连接层732和softmax734)来完成的。这生成了特征提取网络,该网络生成了特征向量。分析每个通道的数据,以生成自己的特征向量,并将该特征向量传递给一组新的分类层(例如,全连接层832和softmax层834),这些分类层已经使用从每个层生成的级联特征进行了训练。虽然图8使用全连接层832和softmax层834作为示例分类层,但可以使用其他合适的机器学习结构和技术(例如,更多、更少或不同的层和连接)。

如图8所示,一个通道的ecg数据提供给现有的单通道深度学习心跳或心率分类器的特征分类部分。例如,通道1ecg数据可以提供给卷积层812a,该卷积层812a与批量归一化层814a和非线性单元816a(例如,relu)连接。该组合的输出可以被提供给卷积层818a,与批量归一化层820a、非线性激活函数822a和dropout层824a连接。在实施例中,卷积层818a、批量归一化层820a、非线性激活函数822a和dropout层824a形成可以酌情重复的组合。然后,来自dropout层824a的输出被提供给与批量归一化层828a和非线性激活函数830a连接的卷积层826a。

通道2ecg数据可以提供给与批量归一化层814b和非线性激活函数816b(例如relu)连接的卷积层812b。该组合的输出可以被提供给卷积层818a,与批量归一化层820a、非线性激活函数822a和dropout层824a连接。在实施例中,卷积层818a、批量归一化层820a、非线性激活函数822a和dropout层824a形成可以酌情重复的组合。然后,来自dropout层824a的输出被提供给与批量归一化层828a和非线性激活函数830a连接的卷积层826a。

这可以对包括在ecg数据中的尽可能多的通道进行重复,直到通道n。通道necg数据可以提供给卷积层812n,该卷积层812n与批量归一化层814n和非线性激活函数816n(例如relu)连接。该组合的输出可以提供给卷积层818n,与批量归一化层820n、线性单元822n和dropout层824n连接。在实施例中,卷积层818a、批量归一化层820a、非线性激活函数822a和dropout层824a形成可以酌情重复的组合。然后,来自dropout层824a的输出被提供给与批量归一化层828a和非线性激活函数830a连接的卷积层826a。

在实施例中,卷积层812a-n至830a-n被设计成这样,即它们将ecg通道数据压缩成特征集(例如,特征向量),该特征集递增地跨越小段的时间(例如,0.1秒、0.2秒、0.5秒或1秒)。特征向量提供给组合分类器层,例如全连接层832和softmax834。softmax834的输出是基于分析ecg通道数据,对心脏事件进行分类。

在实施例中,图8示出的架构中可以有许多优点。例如,通过权衡相对于心脏的不同方向测量电传播的通道的信息,使用多通道的ecg数据可以提高分类的准确性。另一示例中,使用多通道的ecg数据可以提供冗余,当一个或多个通道由于运动、肌肉活动或组织电极接口问题造成低信号噪声比时,可以对ecg进行解释。

图9是根据一个实施例的使用多通道ecg数据对心脏事件进行分类的深度学习架构。在块902,接收训练数据,在块904,训练数据用来训练深度学习模型(例如,图8中示出的架构800)。在实施例中,图8中示出的架构改善并简化了深度学习架构的训练。

例如,单通道分类器(例如,图7中示出的深度学习架构700)可以在单通道数据的标记数据集上进行训练以对心脏事件进行分类。然后可以使用这个现有的分类器对多通道数据进行分类,而不需要特定的多通道数据集的训练数据。多个单通道ecg训练数据条可以馈送到多个通道路径(例如,图8中示出的812a-830a、812b-830b和812n-830n),每个路径创建特征向量。然后,这些特征向量馈送到分类器层(例如,全连接层832和softmax834)。深度学习架构800不需要为每个可能的通道分组提供单独的训练数据(例如,单独的3通道训练数据、单独的12通道训练数据、单独的64通道训练数据等),深度学习架构800可以使用现有的单通道训练数据进行训练。单通道深度学习架构800的多通道扩展可以只用几百或几千的训练示例就能准确训练,而不需要几十万(或几百万)的训练数据。这是有可能实现的,因为分类器层(例如,全连接层832和softmax834)在基于多通道数据对心脏事件进行分类时,需要的参数要少很多。

图10是根据一个实施例的使用多通道ecg数据和深度学习架构对心脏事件进行分类的流程图。在1002块,接收多通道ecg数据,在1004块,使用深度学习模型(例如,图8中示出的深度学习架构800)对该数据进行分类以识别所需的心跳或心率。在实施例中,如上所述,使用单通道分类器来测定每个通道数据的特征向量,并将特征向量馈送到组合分类器层(例如,全连接层832和softmax834)以对心脏事件进行分类。

分类的数据(例如,与图4a-b和图8有关的描述)用来通知和治疗患者。例如,机器学习架构可以识别心脏的不正常情况。然后,计算环境中的设备(例如,图1中示出的计算环境100)可以用来治疗患者的心脏不规则。例如,可以使用患者的移动设备(例如,图1中示出移动设备135)向患者推荐使用机器学习架构识别的心脏不规则的特定医疗方法(例如,药物治疗或患者行为)。在另一示例中,可以使用分类数据为治疗患者的医生生成一份报告。替代地,可以为患者本人生成一份报告。此外,可以根据分类数据生成或修改患者护理计划。例如,可以根据分类生成一个患者的护理计划。该患者护理计划可以根据分类为患者提供医疗选择(例如,药物治疗、教育内容、行为改变等)。此外,可以修改患者的现有护理计划。

另外,可以为患者、护理人员或其他相关方生成警报或输出。例如,可以通过患者操作的设备(例如,如图1中所示的移动设备135或计算机)上的图形用户界面向患者提供警报。替代地,可以通过护理人员操作的设备(例如,如图1所示的移动设备或计算设备120)上的图形用户界面向患者的护理人员提供警报。

以上讨论的深度学习模型可以在各种位置操作。例如,深度学习模型可以在护理人员环境105上的一部分运行(例如,在工作流服务器110、计算设备120或监视系统117上)。该模型可以在专用计算系统或虚拟计算机实例(例如,云计算平台)上运行。此外,深度学习模型可以在患者环境130中的设备上操作,包括移动设备135和传感器设备140。然而,深度学习模型可以是计算密集型的,因此,移动设备135或传感器设备140(或护理人员环境105中的任何设备)可以包括用于训练和运行深度学习模型的专门硬件。为了便于分类,深度学习模型的输入和输出可以存储在一个合适的位置(例如,图1中示出的数据存储库118)。

在前文中,参考本公开中提出的实施例。然而,本公开的范围并不限于具体描述的实施例。相反,所描述的特征和元素的任何组合,无论是否与不同的实施例有关,都被考虑用来实现和实施所考虑的实施例。此外,尽管本公开的实施例可以实现比其他可能的解决方案或现有技术的优势,但某一实施例是否实现了特定的优势并不限制本公开的范围。因此,前面的方面、特征、实施例和优点仅仅是说明性的,不被视为所附权利要求的要素或限制,除非在权利要求中明确提及。

正如本领域技术人员所理解的那样,本文所公开的实施例可以实施为系统、方法或计算机程序产品。因此,本公开的各方面可以采用以下形式:全硬件实施例、全软件实施例(包括固件、常驻软件、微代码等)或组合软件和硬件(在本文中全部统称为“模块”或“系统”)方面的实施例。此外,本公开的各方面可以采取具体实施在一个或多个计算机可读介质中的计算机程序产品的形式,该计算机可读介质具有在上面具体实施的计算机可读程序代码。

可以使用一个或多个计算机可读介质的任何组合。计算机可读介质可以是计算机可读信号介质或计算机可读存储介质。计算机可读存储介质可以是例如但不限于电子、磁性、光学、电磁、红外或半导体系统、设备或装置或者前述的任何合适的组合。计算机可读存储介质的更具体示例(非详尽列表)将包括以下内容:具有一个或多个电线的电连接、便携式计算机磁盘、硬盘、随机存取存储器(ram)、只读存储器(rom)、可擦除可编程只读存储器(eprom或闪存)、光纤、便携式光盘只读存储器(cd-rom)、光学存储设备、磁存储设备或前述的任何合适的组合。在本文件的上下文中,计算机可读存储介质是任何有形介质,有形介质可以包含或存储程序以供指令执行系统、装置或设备使用或与其结合使用。

在计算机可读介质上实施的程序代码可以使用任何适当的介质进行传输,包括但不限于无线、有线、光缆、射频等,或上述方式的任何适当组合。

例如,用于执行方法40中所示操作的计算机程序代码可以用一种或多种编程语言的任意组合编写,包括面向对象编程语言(诸如java、smalltalk、c++等)和常规过程编程语言(诸如“c”编程语言或类似编程语言)。程序代码可以完全在用户的计算机上执行,部分在用户的计算机上执行(作为一个独立的软件包),部分在用户的计算机上执行,部分在远程计算机上执行或完全在远程计算机或服务器上执行。在后一种情况下,远程计算机可以通过任何类型的网络与用户的计算机连接,包括局域网(lan)或广域网(wan),或者连接到外部计算机(例如,通过互联网使用互联网服务提供商)。

以上参考根据本公开实施例的方法、装置(系统)和计算机程序产品的流程图和/或框图描述了本公开的各方面。应当理解,流程图图示和/或框图的每个框以及流程图图示和/或框图中的框的组合可以由计算机程序指令实现。这些计算机程序指令可以被提供给通用计算机、专用计算机或其他可编程数据处理装置的处理器,以生成机器,从而使通过计算机或其他可编程数据处理装置的处理器执行的指令生成用于实施流程图和/或方框图中的一个或多个块所指定的功能/行为的手段。

这些计算机程序指令也可以存储在计算机可读介质中,该介质可以指导计算机、其他可编程数据处理装置或其他设备以特定方式运行,从而使存储在计算机可读介质中的指令生成一个制造品,包括实现流程图和/或方框图中指定的功能/行为的指令。

计算机程序指令也可以加载到计算机、其他可编程数据处理装置或其他设备上,以使一系列操作步骤在计算机、其他可编程装置或其他设备上执行,以生成计算机实现的过程,从而使在计算机或其他可编程装置上执行的指令为实现流程图和/或方框图中指定的功能/行为提供过程。

附图中的流程图和框图示出了根据本公开的各种实施例的系统、方法和计算机程序产品的可能实施方式的架构、功能和操作。在这方面,流程图或框图中的每个框可以表示包括用于实现指定的逻辑功能的一个或多个可执行指令的代码的模块、片段或部分。还应注意,在一些替代实施方式中,框中提到的功能可以不按图中所示的顺序发生。例如,连续示的两个框实际上可以基本上同时执行,或者框有时可以以相反的顺序执行,这取决于所涉及的功能。还将注意到框图和/或流程图的每个框以及框图和/或流程图中的框的组合可以由执行特定功能或动作的专用的基于硬件的系统或专用硬件和计算机指令的组合来实现。

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