你当前正在访问 Microsoft Azure Global Edition 技术文档网站。 如果需要访问由世纪互联运营的 Microsoft Azure 中国技术文档网站,请访问 https://docs.azure.cn

预测患者住院天数和流量

Azure 数据工厂
Azure Data Lake Storage
Azure 机器学习
Azure Synapse Analytics
Power BI

此 Azure 解决方案可帮助医院管理员利用机器学习的强大功能来预测住院天数,从而改进容量规划和资源利用率。 首席医疗信息官可以使用预测模型来确定哪些设施负担过重,以及在这些设施中支持哪些资源。 医护管理员可以使用模型来确定是否有足够的人力资源来处理患者出院。

体系结构

使用医疗保健设备和 Azure 服务的远程患者监视体系结构示意图。

下载此体系结构的 Visio 文件

数据流

下面的数据流对应上图:

  1. 来自电子健康记录 (EHR) 和电子病历 (EMR) 的匿名健康数据是使用具有适当运行时(例如:Azure、自托管)的 Azure 数据工厂提取的。 在此方案中,我们假设匿名数据可以使用 Azure 数据工厂连接器之一(例如 ODBC、Oracle、SQL)进行批量提取。 其他数据源(例如 FHIR 数据)可能需要包含 Azure Functions 等中间引入服务。

  2. Azure 数据工厂数据通过数据工厂流入 Azure Data Lake Storage(第 2 代)。 在此过程中,Azure 数据工厂中不存储任何数据,而在此步骤中它可以处理/重试连接断开等故障。

  3. Azure 机器学习用于将机器学习算法/管道应用于步骤 2 中引入的数据。 这些算法可以基于事件、计划或手动应用,具体取决于需求。 具体来说,这包括:

    3.1 训练 - 引入的数据用于使用线性回归和梯度提升决策树等算法的组合训练机器学习模型。 这些算法通常通过管道中的各种框架(例如 scikit-learn)提供,并且可能包括预处理/后处理管道步骤。 例如,来自现有预处理(例如,删除空行)EMR/EHR 数据的患者健康因素(例如入院类型)可用于训练线性回归等回归模型。 然后,该模型将能够预测新的患者住院天数。

    3.2 验证 - 将模型性能与现有模型/测试数据以及应用程序编程接口 (API) 等任何下游消耗目标进行比较。

    3.3 部署 - 模型使用容器打包,用于不同的目标环境。

    3.4 监视 - 收集和监视模型预测,以确保性能不会随着时间的推移而降低。 可以发送警报,以按需使用此监视数据触发对模型的手动或自动重新训练/更新。 请注意,可能需要 Azure Monitor 等其他服务,具体取决于提取的监视数据的类型。

  4. Azure 机器学习输出流向 Azure Synapse Analytics。 模型输出(预测的患者住院天数)与现有患者数据结合在一个可缩放的服务层中,例如用于下游消耗的专用 SQL 池。 此时可以通过 Synapse Analytics 完成其他分析,例如每家医院的平均住院天数。

  5. Azure Synapse Analytics 向 Power BI 提供数据。 具体来说,Power BI 在步骤 (4) 中连接到服务层,以提取数据并应用所需的其他语义建模。

  6. Power BI 用于分析,供医护管理员和医院资源协调员使用。

组件

  • Azure 数据工厂 (ADF) 提供完全托管的无服务器数据集成和业务流程服务,能够可视化地将数据源与超过 90 个内置的、免维护连接器集成,而无需额外成本。 在此方案中,ADF 用于引入数据并协调数据流。

  • Azure Data Lake Storage (ADLS) 为高性能分析提供可缩放的安全数据湖。 在这种情况下,ADLS 用作可缩放的、经济高效的数据存储层。

  • Azure 机器学习 (AML) 服务通过以下方式加速端到端 LOS 预测机器学习生命周期:

    • 为数据科学家和开发人员提供广泛的生产经验,用于生成、训练和部署机器学习模型并促进团队协作。
    • 利用行业领先的 MLOps(机器学习运营或用于机器学习的 DevOps)加快上市时间。
    • 在安全、受信任的平台(专为负责任的机器学习而设计)上进行创新。

    在此方案中,AML 是一项服务,可生成用于预测患者住院天数和管理端到端模型生命周期的模型。

  • Azure Synapse Analytics:一种无限制的分析服务,可将数据集成、企业数据仓库和大数据分析结合在一起。 在此方案中,Synapse 用于将模型预测合并到现有数据模型中,并为下游消耗提供高速服务层。

  • Power BI 提供企业级自助服务分析,使你能够:

    • 为所有人打造具有商业智能的数据驱动型文化。
    • 使用行业领先的数据安全功能(包括敏感度标签、端到端加密和实时访问监视)确保数据安全。

    在此方案中,Power BI 用于创建最终用户仪表板并应用这些仪表板中所需的任何语义建模。

备选方法

  • Azure Synapse Analytics Spark 和 Azure Databricks 等 Spark 服务可用作执行机器学习的替代方案,具体取决于数据科学团队的数据规模和技能组。
  • MLFlow 可用于管理端到端生命周期,作为 Azure 机器学习的替代方法,具体取决于客户的技能组/环境。
  • 在大多数情况下,Azure Synapse Analytics 管道可用作 Azure 数据工厂的替代方案,这主要取决于特定的客户环境。

方案详细信息

对于管理医疗机构的人来说,住院天数(即 LOS,从病人入院到出院的天数)非常重要。 但是,即使在同一医疗保健系统内,该数字也可能因机构、病情和专业而异,这使得很难跟踪患者流量和相应计划。

此解决方案使预测模型能够预测入院患者的住院天数。 LOS 是指患者从最初的入院到出院这段时间所经历的天数。 即使在同一医疗保健系统内,不同医疗机构、疾病状况和专科中的 LOS 也可能存在显著差异。

患者住院天数是否与护理质量有关?等研究表明,经风险调整后较长的 LOS 与接受较低的护理质量相关。 入院时的高级 LOS 预测可以通过为提供者提供预期的 LOS 来提高患者的护理质量,他们可以将其用作与当前患者 LOS 进行比较的指标。 这有助于确保 LOS 超过预期的患者得到适当的关注。 LOS 预测还有助于准确规划出院,从而降低各种其他质量指标,例如再入院率。

可能的用例

医院管理中有两种不同的业务用户,他们可以从更可靠的住院天数以及患者家属的预测中获益:

  • 首席医疗信息官 (CMIO),负责解决医疗保健机构中医疗保健专业人员不懂信息/技术的问题。 他们的职责通常包括通过分析确定医院网络中的资源是否分配得当。 CMIO 需要能够确定哪些机构负担过重,特别是这些机构的哪些资源可能需要得到支持,以根据需求重新调整此类资源。
  • 医护管理员,直接负责护理患者。 此角色需要监测每位患者的状况,并确保护理人员能够满足患者的具体护理要求。 医护管理员可以做出准确的医疗决策,并提前调整正确的资源。 例如,预测 LOS 的能力:
    • 作为对患者风险的初步评估,对于更好的资源规划和分配至关重要,尤其是在资源有限的情况下(如 ICU)。
    • 使医护管理员能够确定人员资源是否足以处理患者出院。
  • 预测 ICU 的 LOS 对患者及其家属以及保险公司也有好处。 预计出院日期有助于患者及其家属了解和估计医疗费用。 这也让家属了解患者的康复速度,并帮助他们计划出院和管理预算。

注意事项

这些注意事项实施 Azure 架构良好的框架的支柱原则,即一套可用于改善工作负载质量的指导原则。 有关详细信息,请参阅 Microsoft Azure 架构良好的框架

成本优化

成本优化是关于寻找减少不必要的费用和提高运营效率的方法。 有关详细信息,请参阅成本优化支柱概述

此解决方案中成本最高的组件是计算,可以通过多种方法根据数据量来经济高效地缩放计算。 一个示例是使用 Spark 服务(如 Azure Synapse Analytics Spark 或 Azure Databricks)来进行数据工程工作,而不是使用单节点解决方案。 与大型、垂直缩放的单节点解决方案相比,Spark 可以水平缩放并且更具成本效益。

此体系结构中配置的所有 Azure 组件的定价可在此 Azure 定价计算器保存的估算中找到。 对于周一至周五上午 9 点至下午 5 点运行的基本实现,此估算配置为显示预计的前期成本和每月成本。

卓越运营

卓越运营涵盖了部署应用程序并使其在生产环境中保持运行的运营流程。 有关详细信息,请参阅卓越运营支柱概述

可靠的机器学习运营 (MLOps) 实践和实现在此类解决方案的生产化中起着至关重要的作用。 有关详细信息,请参阅机器学习运营 (MLOps)

性能效率

性能效率是指工作负载能够以高效的方式扩展以满足用户对它的需求。 有关详细信息,请参阅性能效率要素概述

在此方案中,数据预处理是在 Azure 机器学习中执行的。 虽然此设计适用于中小型数据量,但从性能角度来看,大数据量或具有近实时 SLA 的方案可能会遇到困难。 解决此类问题的一种方法是将 Spark 服务(如 Azure Synapse Analytics Spark 或 Azure Databricks)用于数据工程或数据科学工作负载。 Spark 水平缩放并按设计分布,这使其能够非常高效地处理大型数据集。

安全性

安全性针对蓄意攻击及滥用宝贵数据和系统提供保障措施。 有关详细信息,请参阅安全性支柱概述

重要

此体系结构适用于匿名和非匿名健康数据。 但是,为了安全实现,建议以匿名形式从 EHR 和 EMR 源获取健康数据。

有关 Azure 机器学习提供的安全性和治理功能的详细信息,请参阅 Azure 机器学习的企业安全性和治理

作者

本文由 Microsoft 维护, 它最初是由以下贡献者撰写的。

主要作者:

若要查看非公开领英个人资料,请登录领英。

后续步骤

与实现此体系结构相关的技术和资源:

请参阅与此体系结构相关的其他 Azure 体系结构中心内容: