基于智能分析引擎的静脉血栓风险管理系统
2022-01-19刘俊卿王洪涛
刘俊卿,王洪涛,周 霏
(天津医科大学肿瘤医院 国家肿瘤临床医学研究中心;天津市“肿瘤防治”重点实验室;天津市恶性肿瘤临床医学研究中心,天津 300060)
静脉血栓栓塞症(Venous Thrombo Embolism,VTE)包括肺血栓栓塞症(Pulmonary Embolism,PE)和深静脉血栓形成(deep vein thrombosis,DVT),PE和DVT是同一疾病不同阶段、不同部位的两种临床表现,两者统称为VTE[1]。每年全球VTE的发生近1 000万例[2],是院内非预期死亡的重要原因。对静脉血栓栓塞症这种具有高发病率和死亡率的疾病,及早对病人进行风险评估和预防显得十分重要[3]。全世界32个国家的调查显示,超过50%的住院患者存在发生VTE的风险,但仅有一半的高危患者接受了预防措施[4]。中国工程院院士王辰等牵头纳入1.3万余例住院患者,覆盖44个城市60多家床位超过500张的三甲医院的研究显示,中国外科住院患者中处于VTE发生中、高风险比例分别为32.7%和53.4%。然而,仅有极少数(9%)人群按照美国胸科医师学院(ACCP)第9指南所推荐的预防建议进行预防,其中内科预防率为6.0%、外科预防率为11.8%[5]。而早期对住院病人进行全面的VTE风险评估,识别VTE高危病人,及时进行预防,可以显著减少医院内VTE的发生[6]。因此,建立高效便捷的VTE风险防控信息管理系统,是医院预防VTE发生的重点环节。
1 政策和现状
近年来,我国卫生健康委已经将院内VTE纳入医院医疗质量管理体系,2018年,卫健委开展“加强肺栓塞和医院内静脉血栓栓塞症防治能力”建设项目[7],这是继原卫生部全国脑卒中筛查与防治项目后第二个国家疾病防控项目。2020年10月全国肺栓塞和深静脉血栓形成防治能力建设项目办公室发布了《信息化应用和质控管理建议》,建议VTE防治应从预防、诊断、治疗和质控4个方面管理,通过功能评价和应用评价综合推进VTE防治信息化应用水平。
医院现行评估流程通常是由医务人员在纸质版的评估量表上勾选相应条目后进行累加得分,根据指南推荐的得分区间,按照低危、中危、高危、极高危进行危险度的分层[8],再根据危险度采取相应的预防处理措施。线下纸质管理方式存在风险评估不易全量覆盖、预防/治疗措施不能实施跟踪、事后无法监控统计等问题。因此,急需设计建设一套基于智能分析引擎的集VTE评估量表生成、评估、治疗、统计功能于一体的院内静脉血栓栓塞风险管理系统。
2 系统需求分析
2.1 同类型系统比较
近年来,随着我国逐步重视医院VTE防治体系的建设和管理工作,并修订相关指南及管理建议,国内多家医院和业内人士进行了VTE防控管理的探索与实践。王琦等[1]研发了基于医院信息系统(HIS)基础上的、采用一体化操作设计的VTE信息管理系统,将VTE风险评估、出血风险评估及预防策略等建立在临床信息管理系统中,对比分析了手工进行VTE防治管理的缺陷和不足。刘娇等[9]设计实现了基于一体化电子病历和临床数据中心,完善血栓风险评估Caprini评分表,实现数据自动化抓取,以及不良事件上报的自动触发,自动生成每月住院患者VTE防治信息总表,并进行全院推广。上述研究都按照相关要求和指南实现了VTE评估、管理工作的信息化,但是对于电子病历中基于自然语言的非结构化诊疗信息,没有得到有效利用,难以实现评估工作的智能化。基于智能分析引擎的肿瘤患者静脉血栓栓塞风险管理系统利用NLP、数据挖掘和机器学习等人工智能技术,应用文本挖掘、语义分析技术深度分析医院信息系统中医疗文书、诊断、手术、检查检验、医嘱等相关高危致病信息,将非结构化文本形式的病历数据变成可用于统计、查询和分析的结构化数据。通过信息技术实现对患者静脉血栓形成风险进行自动评估和预警。
2.2 当前的问题和瓶颈
医院电子病历中包含了大量的患者诊疗信息,例如,人口统计信息、检查检验信息、症状、疾病史、用药史等描述,而这些病历大多是基于自然语言的,非结构化的病历信息虽然便于描述患者的诊疗过程,但这些描述不便于搜索和统计分析,不能有效利用。因此,需要使用自然语言处理相关技术。
2.3 系统功能性需求
目前,国内外癌症患者VTE风险评估主要采用Khorana风险预测模型和Caprini风险评分表。Khorana模型是Khorana(2008)开发的一个用于评估门诊癌症患者VTE风险的评估模型,现已广泛用于门诊化疗癌症患者VTE的风险评估,评估为高危的患者需预防血栓治疗,该评分量表已在多个前瞻性及回顾性研究中进行了验证[10]。而Caprini风险评分表广泛应用于外科VTE风险评估,国内指南也推荐用于肿瘤术后VTE的风险评估。Caprini血栓风险评估模型的优点包括:①危险因素涵盖全面,根据目前可得的危险因素评分,并可根据危险因素变化及时调整患者危险分级;②对患者进行个体化的VTE风险评分,有利于指导个体化的预防治疗,便于采取相应的预防措施,可操作性强;③适合专科和非专科医生、护理工作者及广大基层医疗工作者使用。
系统根据评估量表中的风险因素,自动生成患者评估量表以及计算评估总分,根据评分规则提示危险程度,并联动相应预防处理措施。具体VTE风险分级为:①外科Caprini风险评估。评分0分,提示“非常低危,无需预防”;1~2分,提示“低危,物理预防”;3~4分,提示“中危,药物预防和(或)物理预防”;评分≥5分,提示“高危,药物预防和(或)物理预防”。②内科Khorana风险评估。评分0分,提示“低危,物理预防”;1~2分,提示“中危,药物预防和(或)物理预防”;评分≥3分,提示“高危,药物预防和(或)物理预防”。中高危患者采取药物预防处理前需要填写住院患者出血风险评估,如存在出血高危因素,提示“存在出血高危因素,药物预防需慎重”。
新入院患者24 h内完成VTE风险评估,手术患者术后24 h内完成,患者发生病情变化时随时进行评估,长期住院患者每月复评一次。根据评分规则提示危险程度,并联动相应预防处理措施。中高危患者采取药物预防处理前需要填写出血风险评估,如存在出血高危因素,医生会慎重选择药物预防措施。
3 系统设计
3.1 架构设计
VTE防控管理系统对接临床业务系统,可获取患者临床业务数据,从HIS中提取患者基本信息、医嘱、处置、护理、诊断等数据,从手术管理系统中提取手术相关数据,从LIS中提取报告数据,从EMR系统中提取电子病历信息,通过智能分析引擎批量分析,将潜在的VTE风险患者进行标记识别;通过系统消息服务平台,实现风险患者即时通知护士评估、医生预防处置,并可在事后提醒护士录入处置结果,形成VTE防控管理的信息化闭环;在系统运行过程中,记录VTE防控闭环各个节点处理过程,同时从电子病历系统中提取部分结构化描述进行保存,逐步形成VTE病历数据仓库,为构建更精准的VTE智能分析引擎提供数据基础。
系统总体设计架构图如图1所示。
(1)提取临床业务系统数据,利用智能化、自动化VTE预警风险评估技术开展全样本筛查,有效预测在院病例的VTE风险等级,初步筛查出潜在风险病例。
(2)基于消息服务平台,将VTE智能分析引擎分析出的结果信息推送至护士端,护士在实时接收待确认患者信息后,修改或确认评估信息。
(3)风险评估确认后,针对确实存在风险的患者,第一时间推送至医生端,医生根据风险级别、出血风险、病历特征等信息生成个性化的预防措施以及针对性的治疗方案,从而提高VTE早评估、早预防、早诊断和早治疗。
(4)基于临床路径方法建立标准化干预诊疗路径,实现患者评估、预防、诊断、治疗等全过程各个节点的全面记录,逐步积累VTE病历数据,形成VTE病历数据仓库。
3.2 关键技术
自然语言处理(Natural Language Processing,NLP)就是用计算机处理、理解以及运用人类语言(如中文、英文等),它属于人工智能的一个分支,是计算机科学与语言学的交叉学科,又常被称为计算语言学。基于NLP技术,通过后台对自由输入或半结构化的病历文书进行关键词界定,对医疗术语的语义进行解析,最终将自然语言描述的电子病历文本通过NLP技术转化为机器可读、可处理的结构化数据,为VTE系统智能评估提供基础。
Socket是应用层与TCP/IP协议族通信的中间软件抽象层,它是一组接口。在设计模式中,Socket其实就是一个门面模式,它把复杂的TCP/IP协议族隐藏在Socket接口后面,对用户而言,一组简单的接口就是全部,让Socket去组织数据,以符合指定的协议。用Socket可以实现发送即时消息的功能,客户端和服务端需要建立长连接,在长连接的情况下发送消息。客户端可以发送心跳包来检测长连接。
动态链接库(Dynamic Link Library,DLL),是微软公司在微软Windows操作系统中,实现共享函数库概念的一种方式,利用该技术对VTE业务功能封装,支持第三方进行功能嵌入。
3.3 核心模块设计
3.3.1 VTE智能分析引擎 VTE智能分析引擎采用Java语言,基于SpringBoot框架开发,与医院各临床业务系统进行数据接口对接,利用NLP自然语言识别技术,对临床业务系统中非结构化文本形式的数据进行结构化处理。在此基础上,结合预定义风险评估模型,对VTE各项关键风险因素进行验证,实现患者VTE风险智能分析。VTE防控系统智能分析引擎架构如图2所示。
VTE智能分析引擎对非结构化的电子病历数据进行命名、抽取以及构建词典库,获取VTE相关诊疗信息,根据评估规则划分VTE风险等级。首先,将病历文本进行中文分词,将连续的字序列按照相应算法规则重新组合为词序列;其次,结合临床知识使用标注工具Brat将新的词序列进行词性标注与命名实体识别、标注相关语义和语法,达到语义分析的目的;最后,对每个风险因素设定不同风险权重值,针对低、中、高危状态设定相应阈值,当患者各因素分值总和处于阈值范围内时,则标记其为对应的风险等级的人群。
基于系统运行形成的VTE病历数据仓库中大量数据,使用了逻辑回归(Logit Regression,LR)建模方法进行系统学习优化,由临床VTE医疗专家参照上述两个评估量表明确所有评估指标,再对明确的指标提取内容进行效果评价。不断迭代分析模型,以提高智能分析的准确率。
3.3.2 VTE消息服务平台 VTE消息服务平台采用C#语言,结合Socket通讯技术,利用科学合理的方法将种类繁多、涉及部门宽广、存放位置分散的消息数据源进行规范与集中,搭建一个通用的消息服务平台,并具备统一的用户使用方法、统一的用户签约方式、统一的数据管理、安全的数据接口、便捷的系统搭建方法以及统一灵活接口调用方式将各个系统模块中消息进行集中管理,以即时消息的方式,打通医生、护士工作站,实现对VTE防控闭环各个任务节点的串联工作(见图3)。
4 功能实现
系统读取院内各个医疗信息系统中的结构化和非结构化诊疗信息,经过自然语言处理提取VTE风险因素,根据风险评估规则生成评估表,计算出患者VTE的风险值,达到风险值时对医生和护士工作站分别做出提示。建议采取预防治疗措施,将诊疗全过程进行记录,生成各类管理和统计报表,最终形成VTE管理数据仓库,对数据仓库数据进行系统学习,进一步优化风险评估模型,以期实现精准的医疗决策支持。VTE管理系统业务处理流程如图4所示。
4.1 VTE业务处理客户端
VTE业务处理客户端同样采用C#语言,是基于WinForm框架开发的C/S架构程序,支持与医生站、护士站系统进行嵌入式集成(DLL方式),避免用户多次身份信息验证,由医生站、护士站系统进行客户端程序的唤醒和退出,可实现VTE消息接收,并以弹窗形式进行VTE业务处理(见图5)。
4.2 VTE病历数据仓库
VTE病历数据仓库采用MSSQLServer数据库,以VTE事件为主表,VTE患者信息、风险评估内容、预防处置措施以及处置结果记录为副表构建星型数据模型,数据仓库的特征在于面向主题、集成性、稳定性和时变性,用于支持管理决策。随着系统持续的运行,不断进行VTE防控管理业务数据积累,形成VTE病历专项数据仓库。系统指标展示采用ECharts前端框架,后台采用Java技术进行数据处理,实现VTE数据可视化。
4.3 VTE管理数据统计
该功能主要分析和查询全院VTE患病情况,并通过占比及分布情况,实现VTE预警结果分析与统计查询的功能。
具体通过如下几个维度展现。VTE风险评估相关指标:入院24 h VTE风险评估率、VTE中/高危患者出血风险评估率、VTE中/高危患者出院前再评估率;VTE预防干预相关指标:内科预防干预相关指标、内科高危患者预防比例、内科高危患者药物预防比例、外科中/高危患者预防比例、外科中/高危患者药物预防比例;VTE监测相关指标:手术患者手术后肺栓塞发生率、手术患者手术后深静脉血栓发生率、PTE死亡发生率、PTE死亡占医院内死亡比例、PTE死亡患者中未采取预防措施的比例、PTE诊治成功率。
5 结语
VTE不仅严重影响医疗安全与医疗质量,而且会增加医疗成本[11-12]。院内VTE防治工作不仅已纳入医疗质量管理和监控体系,同时应将其提高到医院管理、医疗质量管理及患者安全管理的高度[9]。基于智能分析引擎的静脉血栓风险管理系统用信息化系统替代传统纸质评估单评估,节约了纸张成本;实现医护信息系统对接,减少了口头交接的时间消耗,最大程度避免评估工作的遗漏与误差,有效保障了患者的安全;实现评估筛查全覆盖,系统在某肿瘤专科医院上线后VTE风险评估率为100%,避免了纸质评估的漏评、错评问题,有效降低了静脉血栓栓塞发生率;评估过程全流程管控,评估为中高危患者中,预防措施的干预率为72.1%,药物预防前出血评估率为100%,有效提高了院内管理效率;监控管理全覆盖,详细呈现了评估结果和疾病发生状况,有效提升了医疗管理质量;借助信息化平台的搭建,提高了临床防控共识及管理水平[13]。