方法文章

基于 CogStack 利用电子健康记录实现精神病风险实时检测与预警系统

8.6K 次观看

DOI:

10.3791/60794

2020年5月15日

本文内容

摘要

我们演示如何基于 CogStack(一种用于电子健康记录的信息检索与提取平台),部署一个实时的精神病风险计算与预警系统。

摘要

近期研究表明,一种自动化的、涵盖全生命周期的、跨诊断的、基于临床的个体化风险计算器,通过利用电子健康记录(EHRs),为大规模支持精神病高风险个体的早期检测提供了一个强有力的系统。该风险计算器已进行过两次外部验证,目前正处于临床实施的可行性测试阶段。为了应对现实临床环境中诸如数据缺失和系统可用性等实际挑战,应通过前瞻性可行性研究推动该风险计算器在临床常规工作中的整合。本文提出了一种在真实世界电子健康记录系统中前瞻性实施实时精神病风险检测与预警服务的方法。该方法依托CogStack平台,这是一个开源、轻量级、分布式的信息检索与文本提取系统。CogStack平台集成了多项服务,支持临床数据的全文检索、涵盖全生命周期的实时精神病风险计算、向临床医生发出早期风险预警,以及对患者健康状况的可视化长期监测。我们的方法包括:1)将来自多个来源的数据摄入并同步至CogStack平台;2)部署此前已开发并验证的风险计算器算法,以及时计算患者的精神病风险;3)创建交互式可视化图表和仪表盘,用于随时间监测患者的健康状况;4)构建自动化预警系统,确保临床医生能及时获知高风险患者信息,以便采取适当的干预措施。这是首个在临床常规实践中开发并实施类似检测与预警系统以实现精神病早期识别的研究。

引言

精神分裂症谱系障碍是一类严重的精神健康疾病,患者难以区分内心的主观体验与外界环境的客观现实1,同时存在高于平均水平的自伤和自杀风险2。在常规治疗模式下,这类疾病对全球范围内的个人、家庭和社会造成重大的公共卫生影响,并带来显著的健康和经济负担3。在精神病发作早期进行干预可改善此类精神障碍的预后4。特别是对发展为精神病的临床高风险个体(CHR-P)5进行识别、预后评估和预防性治疗,具有独特潜力,可改变疾病进程,从而提高众多患者及其家庭的生活质量3,6。CHR-P个体是指主动寻求帮助且表现出轻度症状和功能损害的青年人7:他们在两年内发展为精神病的风险约为20%8,而在某些特定亚组中风险更高9,10。尽管已有一定进展,但预防策略在常规临床实践中的应用仍受限于识别高风险个体的能力11。目前的识别方法依赖于个体主动求助行为以及基于精神病风险怀疑的转诊机制;这些方法在处理大量样本时效率极低11。因此,现有识别方法难以推广至绝大多数高风险人群12。事实上,当前的识别策略仅能在个体处于高风险阶段时发现其中5%(独立运行的专业早期识别服务)至12%(青少年心理健康服务)的高风险个体6

为了在更多高危个体中扩大预防性干预的临床获益,我们开发了一种自动化的、涵盖全生命周期(即适用于所有年龄段)、跨诊断类别(即适用于不同诊断)13、基于临床的个体化风险计算器,该工具能够大规模识别在二级精神卫生保健服务中存在精神病风险的个体,而不仅限于符合CHR-P标准的个体14。该风险计算器采用Cox比例风险模型,根据预先选定的五个常规收集的临床变量,预测个体在六年内发展为精神病性障碍的风险,符合方法学指南的要求15:年龄、性别、种族、年龄与性别的交互项以及主要索引诊断。这些临床变量的选择基于来自荟萃分析的先验知识16,17,符合当前先进方法学指南的推荐15。限制预测变量的数量是为了保持事件数与变量数之比,减少过拟合偏差;若未经过先验筛选而纳入过多变量,将导致过拟合问题并降低预后准确性18。本模型所采用的方法在预后准确性方面与自动化的机器学习方法相当18。Cox模型的参数基于伦敦南部和莫兹利国家卫生服务基金会信托(SLaM)的一个回顾性去标识化队列数据进行估计19。SLaM是英国国家卫生服务(NHS)下属的一家精神卫生信托机构,为伦敦南部(兰贝斯、萨瑟克、刘易舍姆和克罗伊登区)共136万人口提供二级精神卫生保健服务,并拥有全球记录中最高的精神病发病率之一20。模型开发所用的所有数据均提取自“临床记录交互式搜索”(CRIS)平台——一种数字病例登记系统,可为研究人员提供对匿名化临床记录的回顾性访问与分析功能19。CRIS中的临床信息来源于SLaM定制的电子健康记录(EHR)系统,即电子患者诊疗路径系统(ePJS)。SLaM已实现无纸化办公,ePJS是其临床常规数据采集的标准平台。因此,该跨诊断风险计算器充分利用了电子健康记录,具备自动筛查大量接受二级精神卫生保健服务患者EHR数据的潜力,以识别可能处于精神病风险中的个体。该跨诊断风险计算器的算法此前已有发表6,14,21。该跨诊断风险计算器已在另外两家NHS基金会信托机构中完成外部验证14,21,并进行了优化22,证明其在不同人群中具有良好的预后性能和可推广性。

根据风险预测模型开发的方法学指南15,23,在模型开发与验证之后的下一步是将该预测模型应用于常规临床实践。实施研究通常需先开展试点研究或可行性研究,以解决风险算法在临床实践中可能遇到的实际应用限制。例如,运行计算器所需的年龄、性别和种族等数据可能在诊断当日无法获得,或后续未及时更新。在实施过程中,应考虑采用有效的方法来处理缺失数据,并同步实现实时数据流中的频繁更新,以获得最可靠的预测结果。此外,由于风险计算器的初始开发基于回顾性队列数据,尚不清楚其是否适用于真实世界临床环境中典型的实时数据流。另一个挑战是确保相关临床医生能够在适当的时间范围内,通过共同认可且被接受的沟通途径接收到风险计算器生成的建议。

为了克服这些局限性,我们已完成一项可行性实施研究,采用个体化跨诊断风险计算器。该研究包括两个阶段:第一阶段为体外阶段,利用本地电子健康记录(EHR)数据进行,未与临床医生或患者接触;第二阶段为体内阶段,涉及与临床医生的直接接触。体外阶段具有双重目标:(i)根据实施研究综合框架(Consolidated Framework for Implementation Research, CFIR)27 解决实施障碍;(ii)将跨诊断风险计算器整合至本地EHR系统中。实施障碍包括向临床医生传达风险结果的方式。在SLaM,所有患者均被邀请注册“联系同意”(Consent for Contact, C4C),表明其愿意为研究目的被联系,且不影响其接受的照护质量。这减少了与联系患者相关的伦理问题。此外,通过与临床医生组成的工作组,协助调整了信息传达方式。在体内阶段(2018年5月14日至2019年4月29日),所有符合以下条件的个体被视为符合纳入标准:(i)年龄超过14岁;(ii)正在接受任何SLaM服务(涵盖Lambeth、Southwark、Lewisham和Croydon地区);(iii)首次获得ICD-10索引主诊断,诊断为任何非器质性、非精神病性精神障碍(急性短暂性精神病性障碍,ATPD除外),或被指定为CHR-P状态;(iv)具有有效的联系方式。在体内阶段,每周新进入SLaM的患者会自动接受精神病风险筛查,风险超过特定阈值者将被识别。随后,研究团队会联系患者的责任临床医生,讨论进一步建议,并最终提议进行面对面评估6。若评估后认为符合CHR-P标准,患者将被转介至专门的CHR-P服务,例如南伦敦外展与支持服务(Outreach and Support in South London, OASIS)28。这将有助于在精神病性障碍发病前更早识别高风险个体,并为改变疾病进程提供重要机会。关键的是,本项可行性研究实现了该计算器与本地EHR系统的全面整合,这也是本文的主题。该可行性研究的完整方案,包括研究评估计划概述、数据安全与伦理问题管理细节,已在我们先前的研究中报告6。本文作为该可行性研究的一部分6,重点介绍基于本地EHR数据的实时精神病风险检测与预警系统的技术实现。更具体而言,本研究旨在探讨该风险计算器在患者初次接触二级精神卫生服务时,及时识别高风险个体的技术可行性。关于临床医生对风险计算器所提建议的依从性等可行性研究的完整结果,将另行报告。对所提出研究的有效性进行全面评估需采用随机化设计,这超出了当前研究项目的范围。据我们所知,本文是首篇描述基于实时EHR数据的风险计算器用于精神病早期检测的实施方法的文献。

我们对精神病风险的检测与预警方法利用了 CogStack 平台。CogStack 平台是一个轻量级、分布式且容错的信息检索与文本提取平台24。该平台包含三个关键组件:1)CogStack 流水线,其使用 Java Spring Batch 框架,实时将来自预定义数据源的数据(包括多种格式的结构化和非结构化电子健康记录数据,如 Word、PDF 文件和图像)摄取并同步至预定义的数据接收端;2)Elasticsearch,一种搜索引擎,可用于存储和查询电子健康记录数据的全文内容,并提供多种应用程序编程接口(API),以便将高级分析功能嵌入引擎中;3)Kibana,一种交互式、基于网页的用户界面,允许用户查询 Elasticsearch 中的数据,构建可视化仪表板,并对数据中的异常或其他感兴趣模式设置预警。此外,CogStack 具备通过电子邮件和短信(SMS)向临床医生发出潜在问题预警的能力,使临床医生能够及时收到风险计算器报告的高危患者通知。

我们提出了一种基于南伦敦与莫兹利(SLaM)电子精神病学记录系统(ePJS)的精神病风险检测与预警模型,该模型利用了CogStack平台。与CRIS平台相比(后者每周提供一次对来自ePJS的去标识化健康记录的回顾性访问机制19),SLaM的CogStack平台能够实时访问可识别身份的电子健康记录(EHR),使预警更贴近临床诊疗点,并实现前瞻性设计中的风险预测,尽管CRIS和CogStack平台的数据均来源于SLaM的ePJS。在下文中,我们将详细介绍本方法中的关键步骤,包括从EHR准备源数据、将源数据导入CogStack平台以通过Elasticsearch实现全文检索、使用Python守护线程运行精神病风险计算器,以及通过Kibana用户界面设置交互式可视化和实时风险预警。任何希望基于EHR数据构建实时风险检测与预警系统的研究人员均可参考本方法及其参考实现。正如我们将在下文详述的,所提出的方法采用了开源、轻量级且具有高度灵活性和可移植性的技术,使得风险计算器可在多种环境中运行,并对其他风险评估算法具有高度适用性。此外,该方法提供了一种直接有效的方式,以增强嵌入于通用医疗系统中的EHR在风险检测与预警方面的功能。

方案

本研究已获得英格兰东部剑桥郡和赫特福德郡研究伦理委员会批准(参考编号:18/EE/0066)。

注意:本方案基于 CogStack 平台和 Python 编程语言开发。该系统要求设备上已预先安装 Docker(更具体地说,Docker Compose https://docs.docker.com/compose/)、Anaconda Python(https://www.anaconda.com/distribution/)和 Git(https://git-scm.com/downloads)。本方案中提供的命令基于 Linux 环境。下文将详细介绍如何从电子健康记录(EHR)数据库准备源数据、将数据导入 CogStack 平台,以及基于 CogStack 平台建立精神病风险的实时计算与预警系统。此外,我们还开发了一个在线版风险计算器,以方便在二级精神卫生保健中对个体发展为精神病的概率进行数值计算,网址为 http://www.psychosis-risk.net

1. 源数据准备

注意:在大多数使用场景中,CogStack 从指定的数据库视图中摄取源数据,该视图可整合来自一个或多个源数据库表的数据,其中视图是数据库中包含对数据的存储查询结果集的可搜索对象。摄取视图的设置需根据特定的使用场景及医疗记录数据库系统的部署配置进行定制。本方案基于 Fusar-Poli 等人开发并由其团队两次外部验证的精神病风险计算器14,21,并作为一项试点实施可行性研究的一部分6。该方案基于采用 Microsoft SQL Server 2014 部署的电子健康记录(EHR)数据库。

  1. 在现有的电子健康记录(EHR)数据库系统中创建一个视图对象(本方案中称为 "vwPsychosisBase"),用于整合精神病风险计算与预警所需的患者信息。确保该视图包含所有首次被诊断为非器质性、非精神病性精神障碍的患者信息(根据《国际疾病分类第十版》[ICD-10] 记录),具体定义见原始模型14,21
  2. 确保视图中的每条记录包含三类患者信息:1)患者在EHR系统中的首次主要诊断信息,包括ICD-10诊断编码(诊断被归类为以下十个类别:急性短暂性精神障碍、焦虑障碍、双相情感障碍、起病于儿童和青少年期的障碍、发育障碍、非双相情感障碍、智力发育迟缓、人格障碍、生理紊乱综合征、物质使用障碍)及诊断日期;2)患者的 demographics 数据,包括性别、种族和出生日期;3)患者照护团队最近的联系方式,例如全科医生(GP)、专科顾问和照护协调员的详细信息。前两类信息对精神病风险计算器至关重要14,21,第三类信息则用于实现及时的风险预警。
  3. 确保视图中的每条记录具有唯一标识符(例如本方案中使用的 "patient_id")。
  4. 选取视图中每条记录所关联的所有源信息的最后更新时间戳(例如患者 demographics 信息和首次主要诊断信息的最后更新时间),并将其中最新的时间戳作为该记录在视图中的最后更新日期和时间(本方案中记为 "etl_updated_dttm")。记录的最后更新时间使 CogStack 能够同步数据库中的更新,例如新增或修改的记录。

2. 数据摄取

  1. 从 Github 下载或克隆代码仓库(https://github.com/cogstack-slam/psychosis),或在终端窗口中输入 "git clone https://github.com/cogstack-slam/psychosis.git"。下载的文件夹包含精神病风险计算的代码以及用于部署 CogStack 实例的配置文件。
  2. 进入 "cogstack_deploy/cogstack/" 目录,并修改 "psychosis.properties" 文件以配置 CogStack Pipeline 的数据摄入。根据电子健康记录(EHR)数据库的设置,修改 "SOURCE: DB CONFIGURATIONS" 部分的设置,包括指定数据库服务器的 IP 地址、数据库名称、数据库用户名和密码。如有必要,修改视图名称(例如 "vwPsychosisBase")和字段名称(例如 "patient_id" 和 "etl_updated_dttm")。如果在配置此文件时出现错误,请参考 https://cogstack.atlassian.net/wiki/spaces/COGDOC/pages/38043684/Quickstart 上的说明。
  3. 进入 "cogstack_deploy/common/elasticsearch/config/" 目录,并在 "elasticsearch.yml" 文件中修改 "xpack.notification.email.account" 部分,以配置用于发送警报的电子邮件地址。有关电子邮件配置的详细说明,请参见 https://www.elastic.co/guide/en/kibana/6.4/watcher-create-threshold-alert.html
  4. 进入 "cogstack_deploy/" 目录并输入 "docker-compose up" 以运行 CogStack 平台。请以管理员权限执行此命令。如果进程成功完成,终端中将打印出当前正在运行的服务状态日志,包括 CogStack Pipeline、Elasticsearch 和 Kibana。结果是,源数据库视图中的所有数据和更新将被及时摄入到 CogStack 平台中名为 "psychosis_base" 的 Elasticsearch 索引中。
  5. 打开网页浏览器,通过输入 "http://localhost:5601/"(或将 "localhost" 替换为运行 CogStack 平台的服务器的特定 IP 地址)访问 Kibana 用户界面。首次访问 Kibana 时,点击 Management 选项卡和 Index Patterns 选项卡,以指定希望使用 Kibana 访问的 Elasticsearch 索引。在 "Index pattern" 字段中输入 "psychosis_base",然后点击 Next step。为 "Time Filter" 字段名称选择 "etl_updated_dttm",然后点击 Create index pattern,以将 "psychosis_base" 索引模式添加至 Kibana。
  6. 一旦 Kibana 连接到 Elasticsearch 索引(即 "psychosis_base"),即可通过 "Discover" 页面交互式地搜索和浏览源数据。Kibana 允许非技术人员搜索结构化元数据和自由文本。"Discover" 功能的详细使用说明请参见 https://www.elastic.co/guide/en/kibana/6.4/discover.html

3. 风险计算

  1. 打开一个新的终端窗口,进入 "psychosis/" 目录。在终端中输入 "conda install package-name" 或 "pip install package-name",安装风险计算器所使用的所有必需 Python 包(包括 "elasticsearch"、"elasticsearch_dsl"、"pandas" 和 "numpy")。
  2. 输入 "python risk_calculator.py" 以运行精神病风险计算器。如果进程成功完成,终端中将打印出风险计算的日志,且风险结果将存储在 CogStack 平台中一个名为 "psychosis_risk" 的新 Elasticsearch 索引中。
  3. 使用 Kibana 界面查看风险结果。与步骤 2.5 和 2.6 类似,添加一个新的索引模式 "psychosis_risk",以将 Kinbana 与 "psychosis_risk" 索引连接,并通过 "Discover" 页面浏览风险结果。为便于识别新出现的高风险患者,在构建 "psychosis_risk" 索引时,使用 "first_primary_diagnosis_date" 作为 "Time Filter" 字段。在 "Discover" 页面浏览数据时,请确保已选中索引模式 "psychosis_risk"。

4. 数据可视化

  1. 除了通过 Kibana 中的 "Discover" 页面搜索和访问个体层面的信息外,还可以构建可视化图表和仪表板,以获得高风险患者整体人群特征的概览。为此,请点击 Kibana 侧边导航栏中的 Visualize,然后点击 Create new visualization 按钮,并选择一种可视化类型(例如饼图或折线图)。选择 "psychosis_risk" 作为希望通过 Kibana 进行可视化的索引。默认情况下,可视化将包含 "psychosis_risk" 索引中的所有记录/患者。有关构建 Kibana 可视化的详细说明,请参见 https://www.elastic.co/guide/en/kibana/6.4/visualize.html
  2. 若要为可视化选择特定的数据子集,请添加一个 "filter"。例如,将筛选字段设为 "h_2_year",操作符选择 "is not between",并将数值范围设置为从 "0.0" 到 "0.05",则仅包含两年内精神病风险高于 0.05 的患者。
  3. 在完成单个可视化图表的构建后,点击 Kibana 侧边导航栏中的 Dashboard,创建一个用于集中显示一组相关可视化内容的仪表板。点击 Create new dashboardAdd 按钮以创建新的仪表板面板,然后选择希望在该面板中显示的可视化图表。点击 Save 并输入标题以保存该面板。有关构建 Kibana 仪表板的说明,请访问 https://www.elastic.co/guide/en/kibana/6.4/dashboard.html

5. 风险预警

  1. 在 Kibana 的侧边导航中点击 管理,然后在 Elasticsearch 下点击 Watcher,以在患者存在精神病风险时向临床医生创建警报。如果未显示 Watcher 按钮,请点击 许可证管理,然后点击 开始试用更新许可证
  2. 点击 创建高级 Watch 以设置新的 Watcher。输入一个 "ID" 和 "名称"。删除 "Watch JSON" 部分的内容,并将 "psychosis" 目录下 "watcher.json" 文件中的内容复制到 "Watch JSON" 部分。该 Watcher 将每隔 24 小时检查一次,若发现一名或多名患者在未来两年内患精神病的风险高于 0.05(可行性测试的暂定阈值),则会从 "username@nhs.uk"(在步骤 2.3 中设置)向 "clinician@nhs.uk"(可替换为希望接收警报的电子邮件地址)发送警报邮件。
  3. 在保存 Watcher 之前,点击 模拟 以测试 Watcher 的执行。如果 Watcher 设置成功,将看到打印出的模拟输出结果。若设置中出现错误,请参考 https://www.elastic.co/guide/en/elastic-stack-overview/6.4/watcher-getting-started.html 上的说明进行排查。
  4. 要停止一个 Watcher,可从该 Watcher 的 "Status" 页面永久删除或临时停用。

结果

本部分展示了系统在处理实时临床数据流方面的实用性实施结果,重点在于通过风险计算器处理数据,并及时向临床医生提供预后结果。关于该系统临床效用的评估,例如临床医生对风险计算器所提建议的依从性,将在相关研究完成后于另一份报告中单独呈现。

源数据的摄入
我们基于南伦敦与莫兹利 NHS 信托基金会(SLaM)电子精神病服务系统(ePJS)的一个副本数据库,部署了精神病风险计算与预警系统。该副本数据库每10分钟同步一次ePJS的实时数据。在此副本数据库中构建了一个数据库视图,用于整合患者信息以进行精神病风险计算,其中每条记录对应一位患者的信息。该视图中的所有记录均被实时摄入至CogStack平台(在配备8核CPU和16GB内存的虚拟机上,每条记录耗时约0.6微秒)。截至2019年7月13日本稿件撰写之时,SLaM中接受首次非器质性、非精神病性精神障碍索引诊断的202,289名患者的所有记录均已摄入CogStack,用于精神病风险计算,并存储于“psychosis_base”Elasticsearch索引中。图1按记录的最后更新日期的时间顺序,展示了随时间推移摄入CogStack的记录数量。通过比对数据库与Elasticsearch索引中的记录数量及内容,未发现任何数据缺失或不一致的情况,证实了CogStack管道在数据摄入与同步方面的可靠性。

风险结果的验证
为了验证本方案中精神病风险检测器的实施效果,我们将CogStack检测出的高风险患者(称为“CogStack版本”)与基于CRIS的原始风险计算器检测出的患者(称为“CRIS版本”)进行了比较。由于目前尚未建立用于筛查高风险患者的明确阈值6,14,21,本研究中暂定将两年内精神病风险为5%作为阈值。需注意,该阈值仅为测试该系统在英国国家医疗服务体系(NHS)中是否具备实际可行性而设定,未来可能随研究进展而调整。确定最优识别高风险个体的实际阈值仍有待未来大规模研究进一步明确。具体而言,我们首先检索了在CRIS版本中精神病风险超过该阈值的所有患者(患者数量N=169)。这些患者均于2018年5月14日至2019年4月29日期间在SLaM首次被诊断为非器质性、非精神病性精神障碍。通过筛选同一时间段内诊断的患者,我们进一步检索出在CogStack版本中两年内精神病风险高于0.05的N=170名患者。最后,我们比较了这两组患者之间的差异,两组患者合并后的唯一患者总数为N=173。结果显示,有161名患者(占173名患者的93%)在两个版本中的风险评分一致。高度的一致性证实了该基于CogStack的方案在生成风险评分方面的有效性。

在两个版本中,有12名患者的風險評分不同。通過檢查這些患者的電子健康記錄(EHR),我們發現這種差異是因為在CRIS版本中計算風險評分後,這些患者的數據得到了更新。具體而言,雖然風險評分計算器所使用的預測因子(如出生日期、性別和自我報告的族裔)是靜態變量,但部分患者在早期健康記錄中某些變量缺失或為默認值(例如族裔未知),而這些變量在後續階段被補充或更新。這可能導致在不同時間點計算出不同的風險評分。類似地,部分患者在基於初始主要索引診斷計算出初步風險評分後,其診斷隨後被撤銷。在此情況下,風險評分計算器將為該患者查找下一個有效的主要診斷,並重新計算風險評分,因此更新後的風險評分也可能與初始評分不同。由於原始風險評分計算器是基於CRIS中的回顧性數據開發,僅供研究使用,其原始計算流程未及時同步EHR數據的更新,也未實時刷新風險評分。相比之下,在CogStack版本中,只要患者的任何源數據發生更新,其風險評分即會被重新計算,這使得基於CogStack的計算器能夠為患者提供最可靠且最新的風險評分。這些結果充分凸顯了本方案中風險評分的可靠性。

结果可视化与风险预警
为了展示 CogStack 在数据可视化方面的能力,我们构建了一个关于精神病高风险患者信息的仪表盘。与之前可行性测试中采用的方法一致,我们将未来两年内精神病风险高于 5% 的患者定义为高风险患者。图 2 展示了精神病高风险患者特征的可视化结果,包括患者的种族、性别、年龄以及诊断类别。除了通过 Web 界面(例如 Kibana)进行风险结果可视化外,本方案还支持通过其他通知渠道(如电子邮件)向用户或临床医生发送风险预警。图 3 展示了利用 Kibana 中的 Watch 组件设置风险预警服务的界面。一旦该服务成功配置,当存在一名或多名未来两年内精神病风险高于 5% 的患者时,用户即可收到电子邮件通知。图 4 展示了此类电子邮件通知的一个示例,其中报告了高风险患者的数量及其所在行政区。由于在如何传达预测的精神病风险评分方面仍需进一步工作,目前我们尚未将风险通知直接发送给临床医生。为测试技术可行性,本研究中的所有通知均由技术研究人员(T.W.)通过 SLaM 的电子邮件系统在安全网络内发送给临床研究人员(D.O.)。每条通知中仅包含患者信息的汇总统计结果,不包含任何个人身份识别信息。

Kibana 仪表板中的网络数据分析,随时间推移的日志条目可视化。
图 1:摄入 CogStack 的源数据。 截至 2019 年 7 月 13 日,共有 202,289 条记录被摄入到 "psychosis_base" Elasticsearch 索引中,直方图显示了按记录最后更新时间排序的随时间摄入的记录数量。用户还可以查询结构化和非结构化信息,并在此页面中获取与查询匹配的搜索结果。请点击此处查看此图的放大版本。

显示精神病风险数据分析的 Kibana 仪表板,包含人口分布图表。
图 2:精神病高风险患者(即未来两年内精神病风险高于 0.05)的特征仪表板。a)高风险患者的民族分布,外层饼图为内层饼图中民族类别的子分类;(b)患者性别的分布;(c)患者确诊时的年龄分布;(d)各诊断组的患者数量。请点击此处查看此图的放大版本。

用于配置触发器操作和模拟匹配结果的 Kibana Watcher 设置界面。
图 3:设置并模拟 Watch 以实现风险告警。 请点击此处查看此图的放大版本。

患者统计分析、CCG 列表及患者数量、NHS 数据摘要。
图 4:风险预警电子邮件示例。 每个临床委托组(CCG)中存在精神病风险的患者数量以括号标示。请点击此处查看该图的放大版本。

讨论

我们已展示了首个基于开源信息检索与提取平台CogStack的电子健康记录(EHR)实时精神病风险检测与预警系统的实施。采用该方法,可将包含结构化与非结构化信息在内的多种格式临床数据集进行转换并导入CogStack实例,从而实现全文检索、数据的交互式分析与可视化,并向临床医生实时预警存在精神病风险的患者。尽管原始的精神病风险计算器已在多个英国国家医疗服务体系(NHS)信托机构的试点研究中得到验证,但此前仅使用了回顾性患者记录6,14,21;本实验设计首次提供了该风险计算器可被复制并实现实时部署应用的证据基础。该方法能够通过现有的临床通知渠道(如电子邮件)实时自动向临床医生传递预后结果,明确证明了开展大规模实效性试验以评估该风险计算器在真实世界中最终临床效用的技术可行性。

该方案具有实证创新性,因为目前尚不存在类似的 psychosis 风险检测与预警系统。此外,该方案在临床应用中具有高度的普适性,这主要得益于我们方法的独特优势。从理论角度来看,我们采用的风险预测模型是基于 SLaM NHS Trust 的一个大规模回顾性去标识化队列数据开发的。SLaM 为南伦敦约 136 万人口提供二级精神卫生保健服务,其 psychosis 发生率是全球记录中最高的地区之一。该大规模队列在社会人口学和诊断特征方面具有高度多样性,使我们能够开发出不太可能偏向于特定人群特征的预测模型。这一优势已得到证据支持:该风险计算器的预后准确性已在两个不同的数据库中被成功重复验证14,21,其中包括一个来自 SLaM 以外的数据集。该风险模型的另一项理论优势在于,其预测变量仅包含基本的人口统计学信息和临床诊断信息。这类信息在电子临床数据中普遍存在,且我们先前的研究表明,这些预测变量的缺失数据相对罕见14,21。预测变量信息的高度可获得性,使得该风险计算器能够在不同二级精神卫生保健机构的大量患者样本中运行。此外,该风险计算器是一种通用算法,适用于所有在二级精神卫生保健环境中存在 psychosis 发病风险的个体,而不论其年龄如何。也就是说,该计算器不仅适用于 psychosis 风险最高的 15 至 35 岁人群16,也适用于此年龄范围之外的个体,展现出高度的普适性。

从实际应用的角度来看,风险计算器和 CogStack 平台均为轻量级的开源服务,不涉及资源消耗大的技术或昂贵的基础设施。这种低成本且易于部署的平台可降低其在真实临床环境中推广应用的障碍。此外,我们的解决方案克服了主要的实施障碍:风险评估系统除非在日常临床实践中被医务人员实际使用,否则其价值十分有限25。具体而言,我们的方法能够从电子健康记录(EHR)中获取数据,独立于电子病历系统进行分析,并通过现有的通知渠道将分析结果反馈给临床医生。该方法无需修改已有系统的业务逻辑,可作为独立服务运行,从而支持并扩展现有的临床决策支持系统。因此,该方案与现有临床系统具有高度兼容性,可轻松整合到常规临床实践中。此外,该方案提供了用户友好的界面,用于临床数据的检索、分析和可视化,使临床医生能够方便地解读和探索风险评估结果。

该方案也存在一定的局限性。首先,该方案在常规临床实践中的有效性尚未得到评估。本研究主要关注在本地电子健康记录(EHR)系统中实现实时精神病风险检测与预警系统的可行性技术测试。为了进一步评估该系统在常规临床实践中的有效性,未来仍需开展大规模随机对照试验6。第二个局限性在于,本方案中风险评分的预测是基于首次主要诊断结果,而这些数据是在单一时间点采集的静态信息。然而,临床高风险精神病状态(CHR-P)的症状本质上是随时间动态演变的。近期已开发出一种动态版本的精神病风险计算器,其预测模型可动态更新以反映病情变化26。未来的研究工作将聚焦于将该动态计算器整合至当前方案中。

该方法中最关键的步骤是确定用于在风险计算器中提取预测因子的电子健康记录(EHR)数据。当所使用的EHR系统采用的数据模型与本方案中使用的模型不同时(例如,患者民族群体采用不同的编码系统),该过程可能还涉及创建数据元素映射。我们已将所有代码和映射定义在线开源(https://github.com/cogstack-slam/psychosis)。基于这些资料,用户可根据自身情况复制部署过程或调整计算器。另一个关键步骤是在CogStack中为数据摄入创建数据库视图。由于在Elasticsearch中执行关系型连接操作(即,从一个或多个数据库表中合并列)可能导致较高的计算成本,我们通过创建数据库视图在EHR数据库中完成这些连接操作。该视图整合了风险计算器中提取预测因子所需的所有信息,以及CogStack管道在数据摄入过程中用于数据分区的两个关键字段。第一个字段是视图中每条记录的唯一主键(本方案中使用的为"patient_id"),第二个字段是记录最近一次被修改的时间戳。如果这两个字段未正确设置,CogStack可能无法及时同步EHR数据库中的数据更新。有关CogStack数据摄入问题的详细故障排除说明,可参见 https://cogstack.atlassian.net/wiki/spaces/COGDOC/overviewhttps://github.com/CogStack/CogStack-Pipeline

该方案具有高度可移植性,可轻松部署于拥有CRIS或CogStack平台的英国国家医疗服务体系(NHS)信托机构。迄今为止,CRIS平台(包括其知情同意流程)已在英国12个NHS信托机构中得到全面描述并持续扩展,整合了超过200万份去标识化患者记录(https://crisnetwork.co/)。同样,CogStack平台不仅已部署于SLaM,还应用于英国其他多家NHS信托机构,例如伦敦大学学院医院(UCLH)、国王学院医院(KCH)、盖伊和圣托马斯医院(GSTT)以及默西护理NHS信托机构。对于尚未拥有此类平台的信托机构,可使用在线版风险计算器(http://psychosis-risk.net),或依据本文及我们提供的在线文档从零构建该方案。尽管本方案旨在用于精神病风险检测,但其架构设计并不局限于这一特定应用场景。该方案具备足够的灵活性,可对其实时监测与预警组件进行重新配置和再利用,以适用于其他风险评估领域,例如药物不良反应,从而帮助临床医生及时采取干预措施,提升患者诊疗质量、安全性和就医体验。

披露

作者无任何利益冲突需要披露。

致谢

本研究由英国医学研究理事会(MRC)(MC_PC_16048)向 PFP 提供的伦敦国王学院“概念验证”资助项目资助,是该项目的直接成果。RD 和 AR 的工作得到了以下机构的支持:(a)莫兹利慈善基金会;(b)伦敦南部和莫兹利NHS基金会信托与伦敦国王学院联合设立的英国国家卫生研究所(NIHR)生物医学研究中心;(c)健康数据研究英国(Health Data Research UK),该机构由英国医学研究理事会、工程与物理科学研究理事会、经济与社会科学研究理事会、英格兰卫生与社会护理部、苏格兰政府卫生与社会护理总署首席科学家办公室、威尔士政府卫生与社会护理研究与发展局、北爱尔兰公共卫生局、英国心脏基金会和惠康基金会共同资助;(d)BigData@Heart 联盟,由创新药物计划-2 联合企业(grant agreement No. 116074)资助。该联合企业获得欧盟“地平线2020”科研与创新计划及欧洲制药工业协会联合会(EFPIA)的支持,由 DE Grobbee 和 SD Anker 担任主席,与20个学术和产业合作伙伴以及ESC合作;(e)英国国家卫生研究所伦敦大学学院医院生物医学研究中心。上述资助机构在本研究的设计、数据收集与分析过程中未发挥任何作用。文中观点仅为作者(们)的观点,不一定代表NHS、NIHR或卫生部的立场。

材料

本文使用的材料清单
姓名公司目录编号评论
CogStack-流程伦敦国王学院开源软件
Elasticsearch弹性中性密度开源搜索 &分析与统计
Kibana弹性中性粒细胞(Elastic NV)用于 Elasticsearch 的开源数据可视化插件
Python 软件包("elasticsearch", "elasticsearch_dsl", "pandas" 和 "numpy")开源社区开源软件包

参考文献

  1. Lieberman, J. A., First, M. B. Psychotic Disorders. New England Journal of Medicine. 379 (3), 270-280 (2018).
  2. Oh, H., Koyanagi, A., Kelleher, I., DeVylder, J. Psychotic experiences and disability: findings from the collaborative psychiatric epidemiology surveys. Schizophrenia Research. 193, 343-347 (2018).
  3. Tsiachristas, A., Thomas, T., Leal, J., Lennox, B. R. Economic impact of early intervention in psychosis services: results from a longitudinal retrospective controlled study in England. BMJ Open. 6 (10), e012611(2016).
  4. Fusar-Poli, P., McGorry, P. D., Kane, J. M. Improving outcomes of first-episode psychosis: an overview. World Psychiatry. 16 (3), 251-265 (2017).
  5. Fusar-Poli, P. The clinical high-risk state for psychosis (CHR-P), version II. Schizophrenia Bulletin. 43 (1), 44-47 (2017).
  6. Fusar-Poli, P., et al. Real-world Implementation of a Transdiagnostic Risk Calculator for the Automatic Detection of Individuals at-risk of Psychosis in Clinical Routine: Study Protocol. Frontiers in Psychiatry. 10, 109(2019).
  7. Fusar-Poli, P., et al. Disorder, not just state of risk: meta-analysis of functioning and quality of life in people at high risk of psychosis. British Journal of Psychiatry. 207 (3), 198-206 (2015).
  8. Fusar-Poli, P., et al. Heterogeneity of psychosis risk within individuals at clinical high risk: a meta-analytical stratification. JAMA Psychiatry. 73 (2), 113-120 (2016).
  9. Fusar-Poli, P., et al. Diagnostic and prognostic significance of brief limited intermittent psychotic symptoms (BLIPS) in individuals at ultra high risk. Schizophrenia Bulletin. 43 (1), 48-56 (2016).
  10. Fusar-Poli, P., et al. Prognosis of brief psychotic episodes: a meta-analysis. JAMA Psychiatry. 73 (3), 211-220 (2016).
  11. Fusar-Poli, P., Sullivan, S., Shah, J., Uhlhaas, P. Improving the detection of individuals at clinical risk for psychosis in the community, primary and secondary care: an integrated evidence-based approach. Frontiers in Psychiatry. 10, 774(2019).
  12. Fusar-Poli, P. Extending the benefits of indicated prevention to improve outcomes of first-episode psychosis. JAMA Psychiatry. 74 (7), 667-668 (2017).
  13. Fusar-Poli, P., et al. Transdiagnostic psychiatry: a systematic review. World Psychiatry. 18 (2), 192-207 (2019).
  14. Fusar-Poli, P., et al. Development and validation of a clinically based risk calculator for the transdiagnostic prediction of psychosis. JAMA Psychiatry. , (2017).
  15. Fusar-Poli, P., Hijazi, Z., Stahl, D., Steyerberg, E. W. The science of prognosis in psychiatry: a review. JAMA Psychiatry. 75 (12), 1289-1297 (2018).
  16. Radua, J., et al. What causes psychosis? An umbrella review of risk and protective factors. World Psychiatry. , (2018).
  17. Fusar-Poli, P., et al. Deconstructing vulnerability for psychosis: Meta-analysis of environmental risk factors for psychosis in subjects at ultra high-risk. European Psychiatry. 40, 65-75 (2017).
  18. Fusar-Poli, P., et al. Clinical-learning versus machine-learning for transdiagnostic prediction of psychosis onset in individuals at-risk. Translational Psychiatry. 9 (1), 1-11 (2019).
  19. Stewart, R., et al. The South London and Maudsley NHS foundation trust biomedical research centre (SLAM BRC) case register: development and descriptive data. BMC Psychiatry. 9 (1), 51(2009).
  20. Jongsma, H. E., et al. Treated incidence of psychotic disorders in the multinational EU-GEI study. JAMA Psychiatry. 75 (1), 36-46 (2018).
  21. Fusar-Poli, P., et al. Transdiagnostic risk calculator for the automatic detection of individuals at-risk and the prediction of psychosis: Second replication in an independent national health service trust. Schizophrenia Bulletin. , (2019).
  22. Fusar-Poli, P., et al. Transdiagnostic individualized clinically based risk calculator for the detection of individuals at-risk and the prediction of psychosis: Model refinement including nonlinear effects of age. Frontiers in Psychiatry. 10, 313(2019).
  23. Colditz, G. A., Wei, E. K. Risk prediction models: applications in cancer prevention. Current Epidemiology Reports. 2 (4), 245-250 (2015).
  24. Jackson, R., et al. CogStack - Experiences Of Deploying Integrated Information Retrieval And Extraction Services In A Large National Health Service Foundation Trust Hospital. BMC Medical Informatics and Decision Making. 18 (47), (2017).
  25. McGorrian, C., Leong, T., D'Agostino, R., Graham, I. Risk estimation systems in clinical use: SCORE, Heart Score and the Framingham system. Hyperlipidaemia (Oxford Cardiology Library). , Oxford University Press. (2012).
  26. Studerus, E., Beck, K., Fusar-Poli, P., Riecher-Rössler, A. Development and Validation of a Dynamic Risk Prediction Model to Forecast Psychosis Onset in Patients at Clinical High Risk. Schizophrenia Bulletin. , (2019).
  27. Damschroder, L. J., et al. Fostering implementation of health services research findings into practice: a consolidated framework for advancing implementation science. Implementation Science. 4, 50(2009).
  28. Fusar-Poli, P., et al. Outreach and support in south London (OASIS), 2001-2011: ten years of early diagnosis and treatment for young individuals at high clinical risk for psychosis. European Psychiatry. 28 (5), 315-326 (2013).

重印与许可

标签

CogStack 平台实时预警风险计算器实施数据摄入同步Kibana 可视化仪表板自动化临床医生预警精准医学精神病学临床常规整合