INFOBOX
| 数据集名称 | HiRID |
| 英文全称 | HiRID, a high time-resolution ICU dataset |
| 别名 / 简称 | HiRID、HiRID 1.1.1、High time-Resolution ICU Dataset |
| 疾病分类 | 多器官系统覆盖。核心映射:循环衰竭(循环系统疾病)、呼吸衰竭(呼吸系统疾病)、急性肾损伤(泌尿系统疾病)、多器官功能障碍综合征 |
| SNOMED CT | 循环衰竭相关:84114007 Heart failure (disorder) / 呼吸衰竭:65710008 Respiratory failure (disorder) / 急性肾损伤:14669001 Acute renal failure syndrome (disorder) / 脓毒症:91302008 Sepsis (disorder) 等 |
| 数据模态 | 结构化时序数据(生命体征 + 实验室检验 + 药物/液体输注 + 医疗设备参数) |
| AI 任务类型 | 时序分类、时序回归、生存分析、多类分类(表型分型)、早期预警系统 |
| 样本总数 | ~33,905 次 ICU 住院(2008-01 至 2016-06) |
| 数据大小 | ~2.5 GB(压缩 Parquet 格式)/ 原始 CSV 更大 |
| 数据格式 | Parquet(分区)/ CSV / 参考表 CSV |
| 许可证 | PhysioNet Contributor Review Health Data License 1.5.0 |
| 访问级别 | 申请审核(需 PhysioNet 认证账号 + DUA 签署 + CITI 培训 + 项目审核) |
| DUO 标签 | HMB, NPUNCU, IRB |
| 语言 | 英文(变量名 + 文档) |
| 首发日期 | 2020-06-05(PhysioNet v1.0 发布 / Nature Medicine 论文上线) |
| 最后更新 | 2021-10-29(v1.1.1,新增 discharge_status 列、修正肌钙蛋白单位偏差) |
| 发布机构 | ETH 苏黎世(生物医学信息学与统计系)+ 伯尔尼大学医院(Inselspital)重症监护医学科 |
| 官方主页 | https://hirid.intensivecare.ai |
| 下载地址 | https://physionet.org/content/hirid/1.1.1/(需经过 PhysioNet 认证与数据贡献者审核) |
| DOI | 10.13026/nkwc-js72(v1.1.1)/ 10.13026/323r-nk04(最新版) |
| 引用次数 | 570+(Google Scholar,截至 2026-07;主论文 Hyland et al. Nat Med 2020) |
| AI 就绪度评分 | ⭐⭐⭐⭐(4/5)— HiB 基准提供标准任务定义 + 端到端 Pipeline;扣分项:需申请数据 + 内存需求大(16GB/core)+ 无官方 Colab |
| 页面状态 | published |
§0 E-E-A-T 信任声明与免责声明
医学审核者:[千方病案医学编辑部]交叉审核:§2 医学背景(ICD-11 映射、循环衰竭/呼吸衰竭/急性肾损伤临床任务定义、金标准描述)、§7 偏倚分析。
数据工程审核者:[千方病案医学编辑部]交叉审核:§4 DAIMS 数据字典(general/observations/pharma 三表结构)、§5 数据划分策略(HiB 官方 split)、§6 预处理 Pipeline 和坑点。
审核日期:2026-07-27
医疗免责声明:本页面提供的医学信息仅供研究和教育目的,不构成医疗建议、诊断或治疗方案。数据集的医学描述基于公开发表的文献,未经逐一临床验证。任何基于该数据集训练的 AI 模型在应用于临床决策前,必须经过独立的临床验证和监管审批。
技术免责声明:本页面的代码示例、预处理建议和基准性能数据基于公开资料整理,不保证在特定环境下的准确性和适用性。使用者应自行验证代码安全性和数据预处理流程的正确性。千方病案医数集不对因使用本页面信息而导致的任何直接或间接损失承担责任。
数据使用合规:使用本页面描述的数据集前,请务必阅读并遵守数据集原始许可协议。部分数据集要求额外资质认证(如 PhysioNet CITI Training)。DUO 标签仅供参考,具体使用限制以数据集官方协议为准。
§1 数据集概览
§1.0 30 秒速览
HiRID 是由 ETH 苏黎世与伯尔尼大学医院(Inselspital)于 2020 年联合发布的重症监护公开数据集,包含约 34,000 次 ICU 住院的全部临床时序数据,涵盖 2008 至 2016 年间 681 个常规采集变量——从床旁监护仪波形到实验室检验,从机械通气参数到药物输注记录。
它的核心突破在于时间分辨率——绝大多数变量以 每 2 分钟 的频率记录,是 MIMIC-IV 的 30-60 倍、AmsterdamUMCdb 的 3-5 倍。这一粒度使得研究者首次能够在分钟级别追踪 ICU 患者的生理状态动态变化,从而构建更精准的早期预警模型。主论文于 Nature Medicine 发表的循环衰竭早期预警系统(circEWS)已被引用 570 余次,NeurIPS 2021 的 HiRID-ICU-Benchmark(HiB)更为该数据集定义了 6 个标准任务和 7 种模型的完整基准。
你可以用它来:训练一个能在循环衰竭发生前数小时发出预警的时序模型、研究 LightGBM 手工特征工程在高分辨率 ICU 数据上为何优于 Transformer、或者做跨数据集迁移学习——将 MIMIC-IV 上训练的模型通过 HiRID 的高分辨率进行外部验证。
§1.1 摘要
HiRID 的数据直接来源于伯尔尼大学医院 ICU 的患者数据管理系统(PDMS),在住院期间前瞻性记录了患者的全部常规临床信息。与 MIMIC 系列依赖事后从医院信息系统(HIS)批量导出不同,HiRID 的数据源是床旁实时录入系统,因此保留了天然的高时间粒度。
原始数据经 HIPAA Safe Harbor 和 GDPR 双重标准脱敏处理:移除全部 18 类 HIPAA 标识符、日期随机偏移(保持季节性和周内日模式)、年龄/身高/体重以 5 单位分箱、自由文本删除、人口统计特征 k-匿名化。数据集以 ICU 住院为单位组织,每次住院分配唯一 patientid,但同一患者多次住院的 ID 不可关联。
数据提供原始(raw)和预处理(preprocessed)两种形态。原始数据含全部 681 变量,预处理数据仅含 Nature Medicine 论文中选定的 18 个最具预测力的元变量,经过合并(merged)和插补(imputed)两个流水线阶段,采样至 5 分钟统一网格。
§1.2 为什么重要
技术创新维度:HiRID 的 2 分钟分辨率从根本上改变了 ICU 时序建模的数据假设。传统 ICU 数据集(MIMIC-IV 通常 1 小时间隔采样、eICU 15 分钟)迫使模型在稀疏观测中推断生理动态;HiRID 使得研究者可以直视患者状态的连续演化。这一差异在循环衰竭预测任务中尤为显著——临床从代偿到失代偿的窗口通常仅 2-6 小时,2 分钟粒度意味着在窗口期内可捕获 60-180 个观测点(vs MIMIC 的 2-6 个)。主论文中的 circEWS 系统正是利用了这一优势,在循环衰竭发生前的中位提前期大幅领先基于低分辨率数据的方法。
方法论洞察维度:HiB 基准最引人注目的发现是 LightGBM + 手工特征在所有 6 个任务中排名前 2,其中 4 个排名第 1,始终优于 LSTM/GRU/TCN/Transformer 等深度学习方法。这一"反直觉"结果在 NeurIPS 2021 引发了关于医疗时序建模方法论的重要讨论——高分辨率数据并没有自动让 DL 受益,手工特征工程和梯度提升树的组合在可解释性和预测性能上取得了最佳平衡。
生态推动维度:HiRID 是第一个被 NeurIPS Datasets & Benchmarks Track 采纳的 ICU 数据集基准平台,HiB 提供了从下载、预处理到训练和评估的完整端到端 Pipeline(基于 Conda),显著降低了重现性门槛。社区围绕 HiRID 构建了丰富的衍生框架——包括 YAIB 多数据集基准框架、PPICU 儿科迁移学习平台等。
§1.3 同类数据集对比
| 数据集 | 住院次数 | 时序分辨率 | 变量数 | 地域 | 时间跨度 | 核心差异化 |
|---|---|---|---|---|---|---|
| HiRID | ~33,905 | 2 分钟 | 681 原始 / 18 预处理 | 瑞士(单中心) | 2008-2016 | 最高时序分辨率,HiB 标准基准 |
| MIMIC-IV | 546,028 (hosp) / 76,540 (ICU) | 非均匀(通常 ~1 小时) | 数千 | 美国(单中心) | 2008-2022 | 规模最大、模态最全(EHR + CXR + ECG + 笔记) |
| AmsterdamUMCdb | 23,106 | 非均匀(通常 ~1-5 分钟) | 数千 | 荷兰(单中心) | 2003-2016 | 欧洲首个 GDPR 合规 ICU 数据集 |
| eICU-CRD | 200,859 | 5 分钟(床旁监护仪部分) | 数百 | 美国(多中心,208 家医院) | 2014-2015 | 唯一多中心 ICU 数据集 |
§1.4 版本时间轴
| 时间 | 事件 |
|---|---|
| 2020-03 | Nature Medicine 发表主论文:Hyland et al., “Early prediction of circulatory failure in the intensive care unit using machine learning” |
| 2020-06-05 | PhysioNet v1.0 首次公开发布(DOI: 10.13026/hz5m-md48),含 685 变量 |
| 2021-10-29 | v1.1.1 发布(DOI: 10.13026/nkwc-js72):新增 discharge_status 列于 general 表、修正肌钙蛋白单位偏差、变量数从 685 调整至 681 |
| 2021-12 | HiRID-ICU-Benchmark (HiB) 被 NeurIPS 2021 Datasets & Benchmarks Track 接收 |
§1.5 典型应用场景
- 器官衰竭早期预警:利用 2 分钟高分辨率时序构建循环衰竭、呼吸衰竭、急性肾损伤的多时间窗预测模型
- 时序建模方法论对比:在 HiB 基准的 6 个标准化任务上公平比较 LSTM/GRU/TCN/Transformer/LightGBM 等方法的性能
- 跨数据集迁移学习:考察在 HiRID 上训练的模型迁移至 MIMIC-IV/AmsterdamUMCdb 的泛化性能(或反之)
- 临床事件时间窗效应分析:利用高密度观测精准分析"距离某个临床事件还有 X 小时"的预测性能衰减曲线
- 不规则时序数据建模:原始数据天然稀疏、非均匀采样,是研究 ODE-RNN/Latent ODE/神经过程等连续时间模型的理想平台
§2 医学背景
§2.1 ICD-11 编码
HiRID 数据集覆盖 ICU 多器官系统功能障碍,核心临床任务映射如下:
| 临床任务 | ICD-11 编码 | ICD-11 疾病名 |
|---|---|---|
| 循环衰竭 | MC80-MC81 | 循环性休克 / 心力衰竭 |
| 呼吸衰竭 | CB41 | 急性呼吸衰竭 |
| 急性肾损伤 | GB60 | 急性肾损伤 |
| 多器官功能障碍 | MG46 | 多器官功能障碍综合征 |
| ICU 死亡 | — | 全因 ICU 死亡(含撤除治疗) |
§2.2 SNOMED CT 映射
| 数据集标签 / 概念 | SNOMED CT | SNOMED CT 术语 |
|---|---|---|
| Circulatory failure | 84114007 | Heart failure (disorder) |
| Respiratory failure | 65710008 | Respiratory failure (disorder) |
| Acute kidney injury | 14669001 | Acute renal failure syndrome (disorder) |
| Sepsis | 91302008 | Sepsis (disorder) |
| ICU mortality | 419620001 | Death (event) |
§2.3 疾病简介
重症监护医学的核心挑战在于早期识别和处理危及生命的器官功能障碍。ICU 患者处于持续的生理恶化风险中——循环衰竭(组织灌注不足导致器官缺血)、呼吸衰竭(气体交换障碍需机械通气支持)和急性肾损伤(肾功能急剧下降导致代谢废物蓄积)是最常见且致死率最高的三类急性事件。这些事件并非瞬时发生,而是经历从代偿到失代偿的动态过程,窗口期通常为 2-6 小时。高时间分辨率数据对于捕捉这一动态过程至关重要。
§2.4 临床任务定义
HiRID 的 6 个核心临床任务(由 HiB 定义,经临床医生协作制定):
| 任务 | 类型 | 预测目标 | 临床意义 |
|---|---|---|---|
| 24 小时死亡预测 | 二分类 | ICU 住院内未来 24 小时是否死亡 | 支持撤除/升级治疗决策 |
| 12 小时循环衰竭预测 | 二分类(动态) | 未来 12 小时是否发生循环衰竭 | 争取提前干预的黄金窗口 |
| 12 小时呼吸衰竭预测 | 二分类(动态) | 未来 12 小时是否发生呼吸衰竭 | 优化呼吸机管理策略 |
| 2 小时尿量回归 | 回归 | 未来 2 小时总尿量 (mL) | 急性肾损伤持续监测 |
| APACHE 表型分型 | 多分类 | ICU 入院时 APACHE II/IV 组别 | 患者严重程度分层 |
| 剩余住院时长回归 | 回归 | ICU 剩余停留时长 (小时) | 资源规划与床位管理 |
§2.5 患者人群特征
| 维度 | 特征 |
|---|---|
| 数据来源 | 伯尔尼大学医院 (Inselspital) 重症监护医学科,单中心,60 床综合 ICU |
| 采集时间 | 2008-01 至 2016-06,~8.5 年 |
| 年龄分布 | 成人为主(ICU 患者),>89 岁分箱至 90,年龄以 5 岁 bin 存储 |
| 性别比例 | 按性别分箱释放(以 5 岁 bin × 性别 × 身高 × 体重组合 k-匿名化至 ≥5) |
| 种族分布 | 未释放(符合 GDPR / 瑞士数据保护法律) |
| 就医类型 | 综合 ICU 住院(内科 + 外科 + 神经外科 + 创伤等全部专科) |
| 年入院量 | >6,500 次 / 年(60 床) |
§2.6 金标准 / 参考标准
| 数据划分 | 标注方式 | 标注者 | 金标准性质 |
|---|---|---|---|
| 循环衰竭标签 | MAP ≤ 60 mmHg + 乳酸 ≥ 2.0 mmol/L + 血管活性药物使用 | 自动(PDMS 数据规则推导) | 临床共识标准,非独立专家标注 |
| 呼吸衰竭标签 | 机械通气参数阈值 | 自动 | 基于设备状态,高可靠性 |
| 死亡标签 | 出院状态字段 (alive/dead/unknown) | 自动 | 直接来自 PDMS 系统记录 |
| 尿量 | 床旁记录(护士录入) | 临床护士 | 实时测量值,含人为记录延迟 |
| APACHE 分组 | APACHE II/IV 评分算法 | 自动计算 | 验证过的预后评分系统 |
§3 数据集规格
§3.0 版本抉择矩阵
| 你的需求 | 推荐版本 | 大小 | 理由 |
|---|---|---|---|
| 快速复现 HiB 基准论文 / 比较模型 | 预处理数据(imputed 阶段) | ~数百 MB | 18 个元变量、5 分钟统一网格、无缺失值,直接可训练 |
| 使用全部 681 变量做特征工程 / 研究 | 原始数据 (raw) | ~2.5 GB | 全变量、原始 2 分钟分辨率、可自定义变量选择和预处理 |
| 单领域快速实验 / 概念验证 | 预处理数据(merged 阶段) | ~数百 MB | 18 元变量、保留原始稀疏时间网格、无需应对插补 artifacts |
| 大规模训练 / 性能优先 | 原始 Parquet | ~2.5 GB | 分区 Parquet 支持 pandas/Dask 并行处理,性能远超 CSV |
§3.1 模态详细说明
HiRID 是纯粹的结构化时序数据数据集,不含影像、基因组或自由文本。数据来自 PDMS 的以下信息源:
- 床旁监护:心率、有创/无创血压、SpO2、呼吸频率等连续监测参数,每 2 分钟自动记录
- 医疗设备参数:机械通气模式与设置(PIP、PEEP、潮气量等)
- 医务人员观察:GCS 评分、RASS 镇静评分、尿量及其他液体输出
- 实验室检验:动脉/静脉血气、乳酸、INR、血糖、CRP 等
- 药物与液体:所有给药记录,含剂量、流速、累积剂量、给药途径
§3.2 样本构成
| 子集 | 住院次数 | 说明 |
|---|---|---|
| 全部 ICU 住院 | ~33,905 | 数据包含的全部 ICU 住院(2008-2016) |
| 原始数据 (raw) | ~33,905 | 含全部 681 变量、2 分钟原始时间网格 |
| 预处理 - merged | 子集(满足人口学筛选标准) | 18 个元变量,稀疏时间网格 |
| 预处理 - imputed | 子集(同 merged) | 18 个元变量,5 分钟统一网格,已插补 |
| HiB 基准 train/val/test | 按 split.tsv 划分 |
约 70% / 15% / 15% 比例 |
§3.3 数据格式详情
| 文件 | 格式 | 说明 |
|---|---|---|
observation_tables_parquet.tar.gz |
分区 Parquet | 原始观测表,按 patientid 哈希分区,每分区含多个患者 |
pharma_records_parquet.tar.gz |
分区 Parquet | 药物/液体输注记录 |
reference_data.tar.gz |
CSV | 三张参考表(变量参考、序数变量映射、预处理变量参考)+ general 表 |
hirid_variable_reference.csv |
CSV | 全部 681 原始变量的 ID/名称/单位 |
ordinal_vars_ref.csv |
CSV | 分类/序数变量的值→含义映射 |
hirid_variable_reference_preprocessed.csv |
CSV | 18 个预处理器元变量的 ID/名称/来源变量/单位 |
§3.4 存储规模
| 版本 | 压缩大小 | 解压后 |
|---|---|---|
| 原始 Parquet(全部) | ~2.5 GB | 更大(取决于 pandas 内存加载方式) |
| 参考数据 | ~数十 MB | ~数十 MB |
| 预处理 CSV | ~数百 MB | ~数百 MB |
§3.5 标注方式
HiRID 的"标签"并非传统意义上的独立人工标注,而是由 PDMS 系统从临床记录中自动派生:
- 硬终点(死亡、出院):直接来自
discharge_status字段(v1.1.1 新增),无需标注 - 器官衰竭标签:由临床医生与合作团队依据公认标准共同定义——例如循环衰竭定义为满足 MAP ≤ 60 mmHg、乳酸 ≥ 2.0 mmol/L 且正在使用血管活性药物的复合条件
- 时间窗对齐:对动态预测任务,每个时间步长生成一个标签(如"未来 12 小时内是否会达到循环衰竭标准"),形成逐时刻的预测-标签对
§3.6 日期偏移与隐私保护
- 日期偏移:所有时间戳随机偏移,使得入院日期映射到 2100-2200 年之间
- 偏移保持:同一住院的偏移量一致,保证院内时序关系完整;跨住院不可比较
- 季节性保持:偏移量设计为保持原始 Seasonality 和 Day-of-week 模式
- 年龄分箱:5 岁 bin(最大值 90,含所有 ≥90 岁);身高、体重同样 5 单位 bin
- 单位标准化:历史和现行单位不一致的测定项统一为最新单位,消除通过单位变更推断时间范围的可能
- k-匿名化:年龄 × 体重 × 身高 × 性别四元组中,每个组合至少出现 5 名患者
§3.7 采集时间
2008 年 1 月至 2016 年 6 月,跨度约 8.5 年。在此期间 ICU 临床实践和药物选择可能发生变化,对跨时间验证构成挑战。
§3.8 地域覆盖
瑞士伯尔尼市,伯尔尼大学医院(Inselspital)重症监护医学科——一所拥有 60 张床位的跨学科综合性 ICU,每年收治超过 6,500 名成人患者,覆盖内科、外科、神经外科、创伤等全部专科。
§3.10 深度溯源链
PDMS 床旁实时录入
↓
数据导出(ICU 信息管理系统)
↓
HIPAA Safe Harbor + GDPR 脱敏流水线
↓ (日期偏移 / 年龄分箱 / 自由文本删除 / k-匿名化)
原始数据 (raw) — 681 变量,2 分钟网格
↓
Nature Medicine 论文预处理流水线(GitHub: ratschlab/circEWS/preprocessing)
↓ (变量合并 / 概念映射 / 缺失值插补 / 下采样至 5 分钟网格)
预处理数据 — merged (18 元变量,稀疏网格)
↓ (前向填充 + 复杂插补策略)
预处理数据 — imputed (18 元变量,5 分钟统一网格)
↓
HiRID-ICU-Benchmark Pipeline(conda env + gin configs)
↓ (varref.tsv 变量选择 + split.tsv 数据划分 + 标准化)
HiB 标准训练/验证/测试集
§4 数据结构详解
§4.0 目录结构
hirid-data-root/
├── observation_tables/
│ ├── part-0.parquet/
│ ├── part-1.parquet/
│ └── ...
├── pharma_records/
│ ├── part-0.parquet/
│ └── ...
├── reference_data/
│ ├── general_table.csv
│ ├── hirid_variable_reference.csv
│ ├── ordinal_vars_ref.csv
│ └── hirid_variable_reference_preprocessed.csv
└── *_index.csv # patientid → partition_id 映射
§4.1 DAIMS 标准化字段描述表
General 表
| 字段名 | 数据类型 | 说明 | 示例值 | AI 用途 | 观测误差 | 信息性缺失编码 | 取值范围 |
|---|---|---|---|---|---|---|---|
patientid |
int | ICU 住院唯一标识(映射 ID) | 10001 | 样本索引 | 无 | N/A | 整数 |
admissiontime |
timestamp | 入院时间(偏移后,2100-2200 年间) | 2152-03-15 08:30:00 | 时间锚点 | 偏移不确定性 | N/A | 2100-2200 |
sex |
str | 性别 | “M” | 人口学特征 | 可能因 k-匿名化略去极少数 | N/A | “M” / “F” |
age |
int | 入院年龄(5 岁 bin,>89→90) | 65 | 年龄调整 | 分箱丢失精度 | N/A | 整数,0-90 |
discharge_status |
str | ICU 出院状态(v1.1.1 新增) | “alive” | 死亡标签 | 低,直接来自系统记录 | N/A | “alive” / “dead” / “unknown” |
Observations 表
| 字段名 | 数据类型 | 说明 | 示例值 | AI 用途 | 观测误差 | 信息性缺失编码 | 取值范围 |
|---|---|---|---|---|---|---|---|
patientid |
int | 住院标识 | 10001 | 关联键 | 无 | N/A | 整数 |
datetime |
timestamp | 观测时间点(偏移后) | 2152-03-15 09:02:00 | 时序建模 | 偏移不确定性 | N/A | 2100-2200 |
entertime |
timestamp | 数据库录入时间 | 2152-03-15 09:05:00 | 录入延迟分析 | — | N/A | 2100-2200 |
variableid |
int | 变量标识符(681 个) | 200 | 变量选择 | — | N/A | 对应 variable_reference.csv |
value |
float | 数值测量值 | 72.0 | 特征值 | 传感器误差 + 手动录入错误 | 结构性缺失(未测量时行为空) | 浮点数 |
status |
int | 状态位掩码 | 4 | 数据质量控制 | — | N/A | 见下方 bitmask 表 |
stringvalue |
str | 字符串值(分类变量使用) | “M” | 分类特征 | — | N/A | 字符串 |
type |
str | 实验室值类型 | “F” | 区分初筛/终报 | — | N/A | “C”(correction) / “F”(final) / “P”(preliminary) |
status 位掩码解码表:
| bit | 十进制值 | 含义 |
|---|---|---|
| 1 | 1 | out of range(超出范围) |
| 2 | 2 | invalidated(已失效) |
| 3 | 4 | first of connection(连接后首次值) |
| 4 | 8 | caused by event(由事件触发) |
| 5 | 16 | compressed(压缩值) |
| 6 | 32 | notified, not measured(通知但未测量) |
| 7 | 64 | is bigger than(超过上限) |
| 8 | 128 | is smaller than(低于下限) |
| 10 | 512 | mandatory(强制值) |
Pharma 表
| 字段名 | 数据类型 | 说明 | 示例值 | AI 用途 | 观测误差 | 信息性缺失编码 | 取值范围 |
|---|---|---|---|---|---|---|---|
patientid |
int | 住院标识 | 10001 | 关联键 | 无 | N/A | 整数 |
pharmaid |
int | 药物标识符 | 426 | 药物选择 | — | N/A | 对应 variable_reference.csv |
givenat |
timestamp | 给药时间(偏移后) | 2152-03-15 10:00:00 | 时间特性 | 偏移不确定性 + 记录延迟 | N/A | 2100-2200 |
givendose |
float | 单次给药剂量 | 2.5 | 剂量特征 | 手动录入误差 | N/A | 浮点数 |
cumulativedose |
float | 输注累积剂量 | 150.0 | 累积暴露量 | — | N/A | 浮点数 |
doseunit |
str | 剂量单位 | “mg” | 单位标准化 | — | N/A | 字符串 |
fluidamount_calc |
float | 输注液体量 (mL) | 100.0 | 液体平衡 | 计算值,来源系统不可靠 | N/A | 浮点数 |
route |
str | 给药途径 | “iv” | 给药方式区分 | — | N/A | 字符串 |
infusionid |
int | 输注批次 ID | 5001 | 输注会话分组 | — | N/A | 整数 |
§4.3 数据层级
ICU 住院 (patientid)
├── General 表(每个 patientid 一行)
│ 性别 / 年龄(bin) / 入院时间 / 出院状态
│
├── Observations 表(每个 patientid × 每 2 分钟 × 每个启用的 variableid 一行)
│ 心率 / 血压 / SpO2 / 实验室检验 / 观察项 ...
│
└── Pharma 表(每个 patientid × 每次给药/输注一行)
多巴胺 / 去甲肾上腺素 / 镇静药物 / 液体 ...
患者不可跨住院追踪——每次 ICU 住院独立分配 patientid。
§4.4 标签分布
| 任务 | 正类定义 | 正类占比 | 类别不平衡程度 |
|---|---|---|---|
| 24 小时死亡预测 | 未来 24h 内 ICU 死亡 | 约 2-5% | 严重不平衡 |
| 12 小时循环衰竭预测 | 未来 12h 内达循环衰竭标准 | 约 3-8% | 严重不平衡 |
| 12 小时呼吸衰竭预测 | 未来 12h 内达呼吸衰竭标准 | 约 5-10% | 中度不平衡 |
| APACHE 表型分型 | 多类(4-8 组) | 分布不均 | 多类不平衡 |
§4.5 缺失值情况
| 缺失类型 | 机制 | 处理建议 |
|---|---|---|
| 结构性缺失 | 某项检验/监测在某一时刻未被进行 = 这条观测记录不存在 | 信息性缺失——缺失本身传递临床信息。不应简单填充均值/中位数。HiB 方案:前向填充(最多 5 分钟止)+ 标准化后填 0 |
| status 标记的质量问题 | bitmask 标记值异常(out of range / invalidated 等) | 预处理时按位掩码过滤无效值 |
| 日期偏移丢失可比性 | 跨住院时间不可比较 | 仅在单个住院内使用时序关系 |
| 年龄/身高/体重分箱 | 原始连续值不可恢复 | 视为有序分类变量处理 |
信息性缺失编码表:
| 缺失模式 | 临床含义 | 编码建议 |
|---|---|---|
| 无乳酸测定 | 临床医生不认为需要测乳酸(患者稳定) | 前向填充 + 标准化为 0 |
| 无血管活性药物记录 | 未使用该类药物 | 二进制特征 = 0 |
| GCS 连续长时间不更新 | 患者可能处于镇静状态 | 前向填充 + 显式时间差特征 |
| 实验室检验间隔稀疏 | 非高峰时段检验频率降低 | 显式编码"距上次检验的时间" |
§5 数据划分与使用建议
§5.1 官方数据划分
HiB 基准提供官方 split:
| 划分 | 来源 | 比例 |
|---|---|---|
| 训练集 (train) | split.tsv(HiB 仓库) |
~70% |
| 验证集 (val) | split.tsv |
~15% |
| 测试集 (test) | split.tsv |
~15% |
§5.2 划分策略说明
- 划分基于 ICU 住院(patientid) 层级——同一住院的全部时间步在同一划分中,防止时间序列数据泄漏
- 划分经研究者精心设计以确保 train/val/test 间的人群分布可比性
- 如果使用原始数据做自定义实验,推荐遵循相同的住院层级划分
§5.3 数据使用建议
| 场景 | 建议 |
|---|---|
| 基线复现 / 模型比较 | 使用 HiB 官方预处理数据 + 官方 split,确保可比性 |
| 新模型开发 | 使用原始数据 + 自定义预处理,但注意复用 HiB 的变量选择和 split 划分以维持可比性 |
| 跨数据集迁移 | 在 HiRID 上训练→在 MIMIC-IV/AmsterdamUMCdb 上评估(或反之),需注意变量名映射 |
| 临床部署研究 | 必须使用时序交叉验证(而非随机划分)模拟真实部署场景 |
§5.4 伦理与合规使用
-
需完成 PhysioNet CITI Data or Specimens Only Research 培训
-
需签署 PhysioNet Data Use Agreement
-
数据贡献者(伯尔尼大学医院)额外要求提交研究计划简介供审核
-
严禁尝试重新识别患者(去匿名化)
-
数据集仅限健康/医学/生物医学研究使用(HMB),禁止商业用途(NPUNCU)
§6 AI 就绪指南
§6.0 云端快速启动
HiRID 目前没有官方 Colab Notebook。推荐使用 HiB 官方 Conda 环境在本地或 GPU 服务器上运行:
# 克隆 HiB 仓库
git clone https://github.com/ratschlab/HIRID-ICU-Benchmark.git
cd HIRID-ICU-Benchmark
# 创建 Conda 环境
conda env create -f environment.yml
conda activate icu-benchmark
pip install -e .
# 下载原始数据(需 PhysioNet 认证)
# 解压至 hirid-data-root/
# 运行预处理(约需 16GB RAM/core,总计 ~30GB 磁盘)
icu-benchmarks preprocess \
hirid-data-root /path/to/hirid/parquet \
work-dir ./output \
var-ref-path ./preprocessing/resources/varref.tsv \
split-path ./preprocessing/resources/split.tsv \
nr-workers 8
§6.1 快速上手
# ========================================
# HiRID 快速上手 — PyTorch 版
# 环境要求: torch>=1.10, pandas, pyarrow
#
# ⚠️ 目录结构预期:
# 将 PhysioNet 下载的 parquet 文件解压至 ./hirid_data/ 目录:
# ./hirid_data/
# ├── observation_tables/
# │ ├── part-0.parquet/
# │ └── ...
# ├── pharma_records/
# ├── reference_data/
# │ └── general_table.csv
# └── *_index.csv
#
# 本示例加载单分区 Parquet 进行快速验证。
# ========================================
import pandas as pd
import pyarrow.parquet as pq
# 加载 general 表
general = pd.read_csv(''''./hirid_data/reference_data/general_table.csv'''')
print(f"总住院数: {len(general)}")
print(f"死亡率: {general[''''discharge_status''''].value_counts(normalize=True)[''''dead'''']:.2%}")
# 加载单分区观测数据(快速验证用)
partitionevent-blocked= ''''./hirid_data/observation_tables/part-0.parquet''''
obs_partition = pq.read_table(partition_path).to_pandas()
# 查看核心变量
# variableid=200 = 心率 (Heart rate)
hr = obs_partition[obs_partition[''''variableid''''] == 200]
print(f"心率记录条数: {len(hr)}")
print(f"心率统计: mean={hr[''''value''''].mean():.1f}, std={hr[''''value''''].std():.1f}")
# 过滤无效值(status bitmask 检查)
# 保留 status == 0(无异常标记)或仅含 compression bit(16) 的值
valid_hr = hr[hr[''''status''''].isin([0, 16])]
print(f"有效心率记录: {len(valid_hr)} / {len(hr)} ({100*len(valid_hr)/len(hr):.1f}%)")
§6.2 数据获取
| 步骤 | 内容 | 耗时 |
|---|---|---|
| 1. PhysioNet 账号注册 | https://physionet.org → 注册账号 | ~5 分钟 |
| 2. 完成 CITI 培训 | 选择 “Data or Specimens Only Research” 课程 | ~2-4 小时 |
| 3. 提交 HiRID 数据使用请求 | PhysioNet HiRID 页面 → “Request Access” → 简述研究目的 | ~1-3 个工作日审批 |
| 4. 下载数据 | observation_tables_parquet.tar.gz + pharma_records_parquet.tar.gz + reference_data.tar.gz | ~30 分钟(取决于网速) |
| 5. 解压 | `cat *.tar.gz | tar zxvf - -i` |
§6.3 预处理 Pipeline
原始 Parquet 数据
↓ [1] 分区并行加载(pandas / Dask)
↓ [2] status bitmask 过滤——移除 out_of_range(1) / invalidated(2) / notified_not_measured(32) 标记的记录
↓ [3] 变量选择——按 varref.tsv 选择 18 个目标元变量
↓ [4] 变量合并——将多个 source variableid 映射到同一元变量(如多条血管活性药物 source → pm41 Dobutamine)
↓ [5] 重采样——转换为 5 分钟统一时间网格
↓ [6] 缺失值前向填充——每变量独立前向填充,最多 5 分钟步长,超出则不填充
↓ [7] 标准化——z-score(train 集 μ/σ),填充后缺失值标准化为 0
↓ [8] 标签生成——按任务定义的临床标准,为每个时间步生成预测标签
↓ [9] 特征拼接——18 元变量的 5 分钟网格 + 静态特征(age bin / sex)
↓ [10] 序列打包——截断为固定长度序列(因任务而异,24h-120h)
§6.4 PyTorch DataLoader
import torch
from torch.utils.data import Dataset, DataLoader
class HiRIDDataset(Dataset):
"""HiRID 预处理数据的 PyTorch Dataset"""
def __init__(self, data_path, task, split=''''train''''):
self.X = torch.load(f''''{data_path}/{task}/{split}_X.pt'''')
self.y = torch.load(f''''{data_path}/{task}/{split}_y.pt'''')
self.static = torch.load(f''''{data_path}/{task}/{split}_static.pt'''')
self.lengths = torch.load(f''''{data_path}/{task}/{split}_lengths.pt'''')
def __len__(self):
return len(self.X)
def __getitem__(self, idx):
return self.X[idx], self.y[idx], self.static[idx], self.lengths[idx]
def collate_variable_length(batch):
X, y, static, lengths = zip(*batch)
# 按长度降序排列(LSTM pack_padded_sequence 要求)
lengths = torch.tensor(lengths)
sorted_idx = torch.argsort(lengths, descending=True)
return (
torch.nn.utils.rnn.pad_sequence(
[X[i] for i in sorted_idx], batch_first=True
),
torch.stack([y[i] for i in sorted_idx]),
torch.stack([static[i] for i in sorted_idx]),
lengths[sorted_idx]
)
dataset = HiRIDDataset(''''./processed/'''', ''''Mortality_At24Hours'''', ''''train'''')
loader = DataLoader(
dataset, batch_size=64, shuffle=True,
collate_fn=collate_variable_length, num_workers=4
)
§6.5 常见坑点
⚠️ 坑点 1:Parquet 分区全量加载内存溢出(分类:工程陷阱)
问题:HiRID 的 Parquet 分区虽便于并行处理,但未压缩时单分区也可能占用大量内存。若试图用
pd.read_parquet(''''observation_tables/'''')全量加载,在 32GB RAM 以下的机器上将直接 OOM。症状:
MemoryError或系统卡死。pandas 加载时内存占用可达文件大小的 3-5 倍。解决:
- 使用分区并行加载(Dask / PySpark / rayon),每次只在内存中保留一个分区
- 或在加载阶段即按
variableid过滤,只保留目标元变量的来源变量- HiB 预处理脚本已实现多 worker 分区处理,建议直接复用而非从零构建
参考:HiB README: “The above command requires about 16GB of RAM per core”
⚠️ 坑点 2:忽略 status bitmask 导致噪声数据(分类:预处理陷阱)
问题:Observations 表的
status字段是位掩码,直接使用value而不检查status会将超出范围、已失效、未实测但通知的值当成有效数据。症状:训练过程中出现极端异常值(心率 = 0 或 >300),loss 不收敛或 nan。
解决:
# 过滤有效值:允许 0(正常)和 16(compressed)标记 valid_mask = obs[''''status''''].isin([0, 16]) clean_obs = obs[valid_mask] # 更保守方案:仅保留 status == 0 strict_clean = obs[obs[''''status''''] == 0]参考:HiRID 官方文档 — status 位掩码定义表
⚠️ 坑点 3:同一患者的多次住院无法关联(分类:数据泄漏)
问题:HiRID 为每次 ICU 住院分配独立的
patientid。如果同一患者在 2008-2016 年间因不同疾病多次入住 ICU,会被视为不同"患者"。在自定义 split 时,若按patientid而非"真实患者"划分,可能导致同一实际患者的两次住院分别进入训练集和测试集——这是时间序列预测中的严重数据泄漏。症状:测试集性能异常优于验证集,模型表现出"作弊级"预测能力。
解决:HiRID 的设计使得这一问题无法完全避免——因为跨住院关联信息已被脱敏移除。但可以通过以下措施缓解:
- 使用 HiB 官方 split.tsv(已最大化避免跨划分的潜在患者重叠)
- 实验报告中明确声明这一已知局限性
- 对外部验证时,优先使用 MIMIC-IV / AmsterdamUMCdb(可追踪真实患者 ID)
参考:HiRID 官方文档: “The dataset treats each ICU admission uniquely and it is not possible to identify multiple ICU admissions as originating from the same patient.”
⚠️ 坑点 4:日期偏移后跨住院时间不可比较(分类:数据泄漏)
问题:所有时间戳经随机偏移后映射到 2100-2200 年范围。不同住院的偏移量独立随机,因此跨住院的时间间隔无物理意义——不能将 patient A 的 “2152-03-15” 与 patient B 的 “2152-03-15” 解读为同一天。
症状:如果基于绝对时间构建特征(如"一周中的哪一天"“是否为冬季”),跨住院使用时该特征的群体统计分布是正确的(因偏移保持了季节性和周内日模式),但在单个住院层面不可解释。
解决:在住院内部使用时序(如
datetime - admissiontime),不跨住院比较绝对时间戳。需要多住院时间对齐的场景,使用相对时间(如"距入院第 X 小时")。参考:HiRID 官方文档 — Anonymization procedure
⚠️ 坑点 5:年龄/身高/体重的 5 单位分箱丢失连续信息(分类:偏倚陷阱)
问题:年龄、身高、体重均以 5 单位 bin 存储(年龄 >89 → 90)。精确的生理关系计算(如 BMI = 体重 / 身高²)将因分箱产生系统误差。
症状:基于精确 BMI 阈值的临床分析(如区分正常体重/超重/肥胖)不准确,模型学习到的是粗糙的分类关系而非连续剂量-反应关系。
解决:将年龄/身高/体重作为有序分类变量(而非连续变量)处理。如果需要精确连续性,考虑使用 MIMIC-IV 等未分箱的数据集。
参考:HiRID 官方文档 — Anonymization procedure
⚠️ 坑点 6:结构性缺失的信息性——填充 0 ≠ 无信息(分类:标签理解)
问题:HiRID 的观测表是稀疏的——某项检验未被做时该行不存在。前向填充 + 标准化为 0 的常见做法有临床陷阱:乳酸的"最后一次测得值是 1.5 mmol/L(经标准化后转为 z=-0.3)"与"从未测过乳酸(前向填充无值,标准化为 0)"在标准化后的特征空间中可能是相似的数值,但临床含义截然不同。
症状:模型在缺失率高的子群体中出现系统性性能下降,尤其是在检验频率低的低危患者中。
解决:
- 显式编码"距上次有效测量的时间"作为附加特征
- 添加二值掩码指示每个特征在当前时间步是否有真实测量值
- 在标准化前将缺失值设为独立于 z-score 分布的标记值(如 -5),再经标准化
参考:Che et al. (2018), “Recurrent Neural Networks for Multivariate Time Series with Missing Values”, Scientific Reports
⚠️ 坑点 7:预处理 18 元变量 ≠ 原始 681 变量的最佳子集(分类:预处理陷阱)
问题:HiRID 的预处理 18 元变量是为 Nature Medicine 论文中的循环衰竭预测(circEWS)任务优化的。在呼吸衰竭预测、AKI 预测或表型分型任务中,这 18 个变量可能遗漏关键信息(如特定呼吸力学参数、肾替代治疗记录、微生物学结果等)。
症状:使用预处理的 imputed 数据做非 circEWS 任务,模型性能遇到天花板,无法通过调参进一步改善。
解决:对于 HiB 未覆盖的新任务,强烈推荐从原始数据开始,根据临床知识自定义变量选择。HiB 的 varref.tsv 可作为起点。
参考:HiB paper §3, “Task Definition”
⚠️ 坑点 8:深度学习不一定优于 LightGBM(分类:评估误用)
问题:HiB 基准的系统实验显示,在全部 6 个任务中,LightGBM + 手工特征(HCF)的性能始终排名前 2(4 个任务排名第 1)。LSTM/GRU/TCN/Transformer 等深度学习方法并未在 HiRID 的高分辨率数据上展示出一致的优势。
症状:投入大量 GPU 算力训练 Transformer 后发现性能不如 30 分钟跑完的 LightGBM 基线。
解决:在 HiRID 上开发新模型前,务必先建立 LightGBM + HCF 的强基线。仅在以下场景考虑深度学习方法:(1) 多任务联合学习、(2) 端到端表示学习(无手工特征)、(3) 需要不确定性估计的贝叶斯方法、(4) 作为学术研究探索 DL 为什么在此场景下表现不佳。
参考:Yèche et al. (2021), HiRID-ICU-Benchmark, NeurIPS 2021 Datasets & Benchmarks Track
§6.6 数据增强
| 策略 | 适用性 | 说明 |
|---|---|---|
| ✅ 时序窗口滑动 | 推荐 | 以不同偏移量截取训练样本,增加样本量 |
| ✅ Mixup(时序版) | 可尝试 | 两段 ICU 住院时序的凸组合,需在住院内而非跨住院执行 |
| ✅ 标签平滑 | 推荐 | 针对严重类别不平衡的双分类任务,ε = 0.1 |
| ❌ 高斯噪声注入 | 谨慎 | HiRID 已有传感器噪声,额外加噪可能模糊真实信号 |
| ❌ 时间扭曲 / 速度变化 | 不推荐 | ICU 时序的物理时间有临床含义,altering 时间轴破坏临床可解释性 |
§6.7 模型建议
| 场景 | 推荐模型 | 理由 |
|---|---|---|
| 快速基线 / 临床部署原型 | LightGBM + 手工特征 | HiB 全部任务 Top 2,可解释性最佳 |
| 多任务联合学习 | GRU / LSTM + 多头输出 | 合理的 DL 起点,RNN 对不规则采样有一定鲁棒性 |
| 长时序依赖 | TCN (Temporal ConvNet) | 膨胀卷积捕获长时间依赖,比 LSTM 快 |
| 研究探索 | Transformer + 时间编码 | 当前 HiB 排名中等,但有改进空间(学习率 + 预热 + 层归一化) |
| 不规则时序 (raw data) | ODE-RNN / Latent ODE | HiRID 原始数据的稀疏性适合连续时间模型研究 |
§6.8 计算需求
| 阶段 | GPU | 内存 (RAM) | 磁盘空间 | 预计时间 |
|---|---|---|---|---|
| 数据下载 | — | — | ~3 GB | ~30 分钟 |
| HiB 预处理 | — | ≥16 GB / core | ~30 GB | ~1-2 小时(8 workers) |
| LightGBM 训练 | — | ~8 GB | — | ~30 分钟 / 任务 |
| LSTM 训练 | 1×V100/3090 | ~16 GB | — | ~2-4 小时 / 任务 |
| Transformer 训练 | 1×V100/3090 | ~16 GB | — | ~3-6 小时 / 任务 |
§6.9 评估指标
from sklearn.metrics import (
roc_auc_score, average_precision_score,
balanced_accuracy_score, mean_absolute_error
)
import numpy as np
# HiB 评估协议固定
# 二分类任务:AUPRC + AUROC
auprc = average_precision_score(y_true, y_pred_proba)
auroc = roc_auc_score(y_true, y_pred_proba)
# 多分类(表型分型):Balanced Accuracy
y_pred_class = np.argmax(y_pred_proba, axis=1)
bacc = balanced_accuracy_score(y_true, y_pred_class)
# 回归:Mean Absolute Error (MAE)
mae = mean_absolute_error(y_true, y_pred)
# ⚠️ 注意:HiB 论文强调由于严重类别不平衡,
# AUPRC 比 AUROC 更适合作为主要比较指标
§7 质量评估与局限性
§7.1 已知偏倚
| 偏倚类型 | 描述 | 严重程度 | 缓解措施 |
|---|---|---|---|
| 单中心选择偏倚 | 所有数据来自同一所瑞士三甲教学医院 ICU,临床实践模式、患者人群结构(瑞士/欧洲白人为主)有机构特异性 | 高 | 必须用 MIMIC-IV / AmsterdamUMCdb / eICU 做外部验证 |
| 年龄分箱偏倚 | 5 岁 bin 损失年龄作为连续变量的预测信息,>89 岁患者无法区分 | 中 | 将年龄处理为有序分类变量,或在分析中明确标注这一限制 |
| 时间漂移 | 2008-2016 年间临床实践变化(如脓毒症定义更新 Sepsis-3、新型血管活性药物引入) | 中 | 按入院年份分组评估性能,近期数据权重更高 |
| 观测偏倚(检验频率) | 危重患者检验频率更高 → 观测密度与严重程度相关 | 中 | 添加检验频率作为特征,使用时间差作为缺失值代理 |
| 非患者级 split | 同一真实患者的多次住院可能进入不同划分,虽已脱敏但理论上存在残留泄漏风险 | 低 | 使用 HiB 官方 split + 外部验证证实泛化性 |
§7.2 标注质量
| 标注项 | 准确率 | 局限性 |
|---|---|---|
| 死亡标签(discharge_status) | 极高 | 来自 PDMS 直接记录,但 “unknown” 状态的病例需剔除或单独分析 |
| 循环衰竭标签 | 良好 | 基于 MAP/乳酸/血管活性药物三条件自动生成,非独立双专家标注。边界病例(MAP 短暂 = 60 等)可能被误分类 |
| 呼吸衰竭标签 | 高 | 基于机械通气参数阈值,设备数据可靠 |
| 尿量记录 | 中-高 | 护士手动录入,存在记录延迟和遗漏。导管移除后的尿量记录不可靠 |
| APACHE 分组 | 高 | 已验证的预后评分系统,自动计算 |
§7.3 泛化性讨论
| 场景 | 泛化性评估 | 失效风险 | 证据 |
|---|---|---|---|
| 瑞士 → 美国 | 中等 | 人口结构差异、保险体系差异可能影响诊疗模式 | HiB 论文未提供跨地域验证数据 |
| 2008-2016 → 2020+ | 中-低 | Sepsis-3 定义更新、COVID-19 大流行改变了 ICU 患者谱 | 无直接证据,临床知识推断 |
| 三甲教学医院 → 社区医院 | 低 | 患者严重程度、检验频率、高级治疗可及性差异显著 | 队列特征推断 |
| HiRID → MIMIC-IV 跨数据集 | 需验证 | 时间分辨率差异、变量映射不精确 | 需另行设计实验 |
| 瑞士成人 ICU → 儿科 ICU | 不推荐 | 年龄、生理学、疾病谱完全不同 | — |
§7.4 伦理考量
- 知情同意豁免:伯尔尼州 IRB 已批准本研究并豁免知情同意(回顾性、观察性研究性质)
- HIPAA + GDPR 双重合规:同时满足美国 HIPAA Safe Harbor 和欧盟 GDPR 去识别化标准
- k-匿名化:年龄 × 体重 × 身高 × 性别四元组每个组合至少 5 名患者
- 自由文本移除:所有临床笔记、自由文本字段已删除,单独依靠结构化数据无法重新识别患者
- 数据访问控制:PhysioNet 分级访问——认证用户 + DUA 签署 + CITI 培训 + 贡献者项目审核
- 禁止商业使用:许可证明确限制非商业研究用途
§7.5 公平性评估
HiRID 释放的受保护属性有限(仅 sex 和 age bin),且年龄/身高/体重已分箱。公平性评估建议包括:
- 性别分层评估:按 sex 分层计算模型在不同性别子群体中的 AUPRC
- 年龄 bin 评估:按年龄 bin 分组评估,特别关注 >89 岁(合并 bin)组的性能
- 跨数据集公平性:在 MIMIC-IV(更多人口统计属性)上训练的模型迁移至 HiRID 时,评估性能在 sex 维度的一致性
§7.6 数据漂移提示
- 数据采集截止于 2016 年 6 月,距今约 10 年。同期 ICU 临床实践有显著演变(如 2016 年后 Sepsis-3 定义推广)
- COVID-19 大流行后(2020+),ICU 患者谱(长期 COVID 后遗症、肺纤维化)、治疗策略(俯卧位通气普及)均发生变化,HiRID 训练的模型在新患者群中可能有性能衰减
- 建议定期使用更新的 ICU 数据集(如 MIMIC-IV v3.1,数据至 2022)做时间验证
§7.7 DAIMS 24 项数据就绪度评估表
| # | DAIMS 检查项 | 评分 | 依据 |
|---|---|---|---|
| 1 | 数据集目的 | ✅ | Nature Medicine + HiB 论文明确定义了临床和研究目的 |
| 2 | 数据来源与采集方式 | ✅ | PDMS 系统全量自动记录,详细文档化 |
| 3 | 数据采集时间范围 | ✅ | 2008-01 至 2016-06,跨度明确 |
| 4 | 患者人群描述 | ⚠️ | 年龄/身高/体重分箱降低了人群描述精度 |
| 5 | 标注/参考标准定义 | ✅ | 6 个任务均有明确的临床标准定义(HiB 论文) |
| 6 | 标注者资质 | ⚠️ | 标签自动生成,无独立人工标注验证 |
| 7 | 标注一致性检验 | ❌ | 无标注者间一致性数据(标签自动生成) |
| 8 | 数据格式与结构 | ✅ | Parquet + CSV,分区结构、字段 schema 完整文档化 |
| 9 | 缺失值机制 | ✅ | 结构性缺失 + status bitmask 均有文档说明 |
| 10 | 变量定义与单位 | ✅ | 681 变量参考表 + 18 元变量参考表,含单位 |
| 11 | 数据划分策略 | ✅ | 官方 split.tsv,按住院层级划分,train/val/test 比例明确 |
| 12 | 数据划分可复现性 | ✅ | HiB 仓库提供 split.tsv 和完整 conda 环境 |
| 13 | 伦理审批 | ✅ | 伯尔尼州 IRB 批准 + HIPAA + GDPR 合规 |
| 14 | 知情同意 | ✅ | IRB 批准豁免知情同意(回顾性研究) |
| 15 | 隐私保护措施 | ✅ | 多重去识别化(HIPAA Safe Harbor + 日期偏移 + 分箱 + k-匿名化 + 自由文本删除) |
| 16 | 偏倚识别与讨论 | ✅ | §7.1 详细列明 5 类已知偏倚 |
| 17 | 泛化性讨论 | ⚠️ | 文档已讨论,但缺少系统外部验证研究(HiB 未包含跨数据集实验) |
| 18 | 使用限制说明 | ✅ | PhysioNet 许可证 + DUO 标签 |
| 19 | 数据版本与更新 | ✅ | v1.0→v1.1.1 更新记录完整,DOI 版本化 |
| 20 | 基准与评估协议 | ✅ | HiB 基准:6 任务 × 7 模型,标准化 metric + 评估代码 |
| 21 | 代码与工具可复现性 | ✅ | HiB 提供端到端 Conda 环境 + 预处理/训练/评估 Pipeline |
| 22 | 社区资源 | ✅ | GitHub (ratchlab) + 专题网站 (hirid.intensivecare.ai) + PhysioNet 讨论 |
| 23 | 文档可用性 | ✅ | 官方网站 + PhysioNet 页面 + HiB README + 示例 Notebook |
| 24 | 数据长期可访问性 | ✅ | PhysioNet 托管,RRID:SCR_007345 |
DAIMS 评分:20.0 / 24
评分解读:良好 — 接近优秀,主要扣分项集中在自动标签验证和人群描述的精度损失。
对你意味着什么:HiRID 的数据文档和基准质量在 ICU 数据集中属于顶级水平。主要关注点:(1) 标签自动生成、缺乏人工验证,建议在关键任务(死亡预测除外)中以临床医生手动标注的子集作为校准;(2) 年龄/身高/体重分箱限制了某些亚组分析和连续剂量-反应关系研究;(3) 目前缺少跨数据集的系统性外部验证研究,研究者需要在自身项目中补充这一环节;(4) 泛化性讨论主要在理论层面,缺乏向 MIMIC-IV/AmsterdamUMCdb 迁移的实验数据。
§7.8 外部验证矩阵
| 外部数据集/场景 | 来源机构 | 评估任务 | 关键发现 |
|---|---|---|---|
| MIMIC-IV | MIT/BIDMC (美国) | 跨数据集迁移 | 尚无系统评估——变量映射和采样频率差异(2 min vs ~1h)是主要障碍 |
| AmsterdamUMCdb | 阿姆斯特丹 UMC (荷兰) | 跨数据集泛化 | 同为欧洲 ICU 数据集,时序分辨率接近(1-5 min),最适合作为外部验证目标 |
| eICU-CRD | Philips/MIT (美国多中心) | 多中心泛化 | eICU 是唯一多中心 ICU 数据集,可作为"瑞士单中心→美国多中心"泛化的测试平台 |
| PPICU (儿科 ICU) | 独立队列 | 跨人群迁移 | 已有研究将 HiRID→PPICU 做迁移学习,用于死亡率预测 (AUROC 0.72) 和 LOS 预测 (MAE 0.69) |
约束:本表列出的跨数据集评估主要来自独立研究者报告,无经过同行评审的系统性多数据集验证论文(截至 2026-07)。
§8 基准性能与生态
§8.1 排行榜
HiRID-ICU-Benchmark (HiB), NeurIPS 2021 Datasets & Benchmarks Track。使用 5 分钟重采样数据,所有模型在相同预处理流水线上训练与评估(3 个随机种子平均)。
⚠️ 注意:以下数值不可与 MIMIC-IV 或其他 ICU 数据集的基准数字直接比较——任务定义、数据划分和评估协议均不同。仅用于 HiRID HiB 框架内的模型横向对比。
任务 1:24 小时死亡预测(AUPRC,↑ 越高越好)
| 排名 | 模型 | AUPRC | 关键技术 |
|---|---|---|---|
| 1 | LGBM + HCF | 0.626 ± 0.000 | 手工特征 + 梯度提升树 |
| 2 | Transformer | 0.610 ± 0.008 | 自注意力机制 |
| 3 | GRU | 0.603 ± 0.016 | 门控循环单元 |
| 4 | TCN | 0.602 ± 0.011 | 时序卷积网络 |
| 5 | LSTM | 0.600 ± 0.009 | 长短时记忆网络 |
| 6 | Logistic Regression | 0.581 ± 0.000 | 线性基线 |
| 7 | LGBM | 0.546 ± 0.008 | 无手工特征的 LightGBM |
任务 2:12 小时循环衰竭预测(AUPRC,↑ 越高越好)
| 排名 | 模型 | AUPRC | 关键技术 |
|---|---|---|---|
| 1 | LGBM | 0.389 ± 0.003 | LightGBM(无手工特征) |
| 2 | LGBM + HCF | 0.388 ± 0.002 | 手工特征 + LightGBM |
| 3 | GRU | 0.368 ± 0.005 | 门控循环单元 |
| 4 | TCN | 0.358 ± 0.006 | 时序卷积网络 |
| 5 | Transformer | 0.352 ± 0.006 | 自注意力机制 |
| 6 | LSTM | 0.322 ± 0.008 | 长短时记忆网络 |
| 7 | Logistic Regression | 0.305 ± 0.000 | 线性基线 |
任务 3:12 小时呼吸衰竭预测(AUPRC,↑ 越高越好)
| 排名 | 模型 | AUPRC | 关键技术 |
|---|---|---|---|
| 1 | LGBM + HCF | 0.604 ± 0.002 | 手工特征 + 梯度提升树 |
| 2 | Transformer | 0.594 ± 0.003 | 自注意力机制 |
| 3 | GRU | 0.592 ± 0.003 | 门控循环单元 |
| 4 | TCN | 0.589 ± 0.003 | 时序卷积网络 |
| 5 | LGBM | 0.585 ± 0.001 | LightGBM |
| 6 | LSTM | 0.569 ± 0.003 | 长短时记忆网络 |
| 7 | Logistic Regression | 0.530 ± 0.000 | 线性基线 |
任务 4:2 小时尿量回归(MAE mL,↓ 越低越好)
| 排名 | 模型 | MAE | 关键技术 |
|---|---|---|---|
| 1 | LGBM + HCF | 0.45 ± 0.00 | 手工特征 + LightGBM |
| 1 | LGBM | 0.45 ± 0.00 | LightGBM |
| 3 | Transformer | 0.48 ± 0.02 | 自注意力机制 |
| 4 | GRU | 0.49 ± 0.02 | 门控循环单元 |
| 5 | LSTM | 0.50 ± 0.01 | 长短时记忆网络 |
| 5 | TCN | 0.50 ± 0.01 | 时序卷积网络 |
任务 5:APACHE 表型分型(Balanced Accuracy %,↑ 越高越好)
| 排名 | 模型 | Balanced Acc | 关键技术 |
|---|---|---|---|
| 1 | LGBM + HCF | 45.8 ± 2.0 | 手工特征 + 梯度提升树 |
| 2 | Transformer | 42.7 ± 1.4 | 自注意力机制 |
| 3 | TCN | 41.6 ± 2.3 | 时序卷积网络 |
| 4 | LGBM | 40.4 ± 0.8 | LightGBM |
| 5 | LSTM | 39.5 ± 1.2 | 长短时记忆网络 |
| 6 | GRU | 39.2 ± 2.1 | 门控循环单元 |
| 7 | Logistic Regression | 39.1 ± 0.0 | 线性基线 |
任务 6:剩余住院时长回归(MAE 小时,↓ 越低越好)
| 排名 | 模型 | MAE | 关键技术 |
|---|---|---|---|
| 1 | LGBM | 56.9 ± 0.4 | LightGBM |
| 2 | LGBM + HCF | 57.0 ± 0.3 | 手工特征 + LightGBM |
| 3 | Transformer | 59.5 ± 2.8 | 自注意力机制 |
| 4 | TCN | 59.8 ± 2.8 | 时序卷积网络 |
| 5 | GRU | 60.6 ± 0.9 | 门控循环单元 |
| 6 | LSTM | 60.7 ± 1.6 | 长短时记忆网络 |
完整引用:Yèche, H., Kuznetsova, R., Zimmermann, M., Hüser, M., Lyu, X., Faltys, M., & Rätsch, G. (2021). HiRID-ICU-Benchmark — A Comprehensive Machine Learning Benchmark on High-resolution ICU Data. NeurIPS 2021 Datasets and Benchmarks Track. arXiv:2111.08536.
§8.2 SOTA 总结与选型建议
| 场景 | 最佳选择 | 理由 |
|---|---|---|
| 纯预测性能 | LGBM + HCF | 全部 6 任务 Top 2,4 个 Top 1 |
| 可解释性 | LGBM + HCF | SHAP 值可量化每个手工特征的贡献 |
| 快速迭代 | LGBM(无 HCF) | 30 分钟训练,无需构造手工特征 |
| 表示学习 | Transformer | 潜在端到端表示的代表,虽然当前排名中等 |
| 部署效率 | LGBM | 模型体积小,推理速度快 |
| 学术探索 | ODE-RNN / Latent Neural ODE | 连续时间模型的新方向,HiRID 的高分辨率原始数据特别适合这类方法 |
§8.3 评测协议
| 维度 | HiB 协议 |
|---|---|
| 数据版本 | HiRID v1.1.1 |
| 预处理 | HiB Pipeline(5 分钟重采样 + z-score 标准化 + 前向填充) |
| 数据划分 | 官方 split.tsv(train/val/test = ~70%/15%/15%,按 ICU 住院划分) |
| 重采样策略 | 前向填充 + 标准化至 0(缺失值均标准化为 0) |
| 随机种子 | 3 个(结果的均值和标准差) |
| 评估指标 | 二分类:AUPRC (主) + AUROC (辅);多分类:Balanced Accuracy;回归:MAE |
| 代码仓库 | https://github.com/ratschlab/HIRID-ICU-Benchmark |
§8.4 相关数据集
| 数据集 | 关系 | 说明 |
|---|---|---|
| MIMIC-IV | 互补 | 规模最大、模态最全的 ICU 数据集,与 HiRID 的低分辨率 + 多模态 vs 高分辨率 + 纯结构化的对比 |
| AmsterdamUMCdb | 互补 | 同为欧洲 ICU 数据集,时间分辨率接近(1-5 min),GDPR 合规,也是 HiRID 去识别化流程的参考 |
| eICU-CRD | 互补 | 唯一多中心 ICU 数据集(美国 208 家医院),弥补 HiRID 单中心局限 |
| PPICU | 衍生 | 基于 HiRID→儿科 ICU 迁移学习的研究平台 |
§8.5 关键论文
- Hyland et al. (2020) — “Early prediction of circulatory failure in the intensive care unit using machine learning.” Nature Medicine, 26(3):364-373. DOI: 10.1038/s41591-020-0789-4. 定义 HiRID 数据集和 circEWS 范式,570+ 引用。
- Yèche et al. (2021) — “HiRID-ICU-Benchmark — A Comprehensive Machine Learning Benchmark on High-resolution ICU Data.” NeurIPS 2021 Datasets and Benchmarks Track. arXiv:2111.08536. HiB 基准论文:6 任务 × 7 模型系统评估。
- Faltys et al. (2021) — “HiRID, a high time-resolution ICU dataset (version 1.1.1).” PhysioNet. DOI: 10.13026/nkwc-js72. v1.1.1 数据集发布。
- Goldberger et al. (2000) — “PhysioBank, PhysioToolkit, and PhysioNet: Components of a new research resource for complex physiologic signals.” Circulation, 101(23):e215-e220. PhysioNet 平台引用(HiRID 托管平台)。
§8.7 生态快照
| 资源 | 类型 | 链接 | 为什么值得关注 |
|---|---|---|---|
| HIRID-ICU-Benchmark | 基准代码 | https://github.com/ratschlab/HIRID-ICU-Benchmark | HiB 官方仓库,含完整端到端 Pipeline(conda + gin configs) |
| ratschlab/circEWS | 官方代码 | https://github.com/ratschlab/circEWS | Nature Medicine 原论文代码,含预处理流水线 |
| ratschlab/hirid | 数据集文档 | https://github.com/ratschlab/hirid | HiRID 官方 GitHub 仓库,最新文档 |
| hirid.intensivecare.ai | 官方网站 | https://hirid.intensivecare.ai | 变量参考表、数据结构文档、入门 Notebook |
| YAIB | 多数据集基准 | https://github.com/rvandewater/YAIB | 统一 ICU 基准框架,支持 HiRID + MIMIC + eICU + AmsterdamUMCdb 多数据集比较 |
| PPICU | 迁移学习 | 社区项目 | HiRID→儿科 ICU 迁移,死亡率预测 AUROC 0.72 |
§9 相关资源与引用
§9.1 数据集官方网站
- HiRID 数据集门户:https://hirid.intensivecare.ai
- PhysioNet 页面 (v1.1.1):https://physionet.org/content/hirid/1.1.1/
- GitHub 代码仓库:https://github.com/ratschlab/hirid
§9.2 必读文献
- Hyland, S.L., Faltys, M., Hüser, M., Lyu, X., Gumbsch, T., Esteban, C., Bock, C., Horn, M., Moor, M., Rieck, B., Zimmermann, M., Bodenham, D., Borgwardt, K., Rätsch, G., & Merz, T.M. (2020). Early prediction of circulatory failure in the intensive care unit using machine learning. Nature Medicine, 26(3):364-373.
- Yèche, H., Kuznetsova, R., Zimmermann, M., Hüser, M., Lyu, X., Faltys, M., & Rätsch, G. (2021). HiRID-ICU-Benchmark — A Comprehensive Machine Learning Benchmark on High-resolution ICU Data. NeurIPS Datasets and Benchmarks Track.
- Faltys, M., Zimmermann, M., Lyu, X., Hüser, M., Hyland, S., Rätsch, G., & Merz, T. (2021). HiRID, a high time-resolution ICU dataset (version 1.1.1). PhysioNet. DOI: 10.13026/nkwc-js72.
§9.3 引用格式
数据集:
Faltys, M., Zimmermann, M., Lyu, X., Hüser, M., Hyland, S., Rätsch, G., & Merz, T. (2021).
HiRID, a high time-resolution ICU dataset (version 1.1.1). PhysioNet.
https://doi.org/10.13026/nkwc-js72
主论文:
Hyland, S.L. et al. (2020). Early prediction of circulatory failure in the
intensive care unit using machine learning. Nature Medicine, 26(3), 364-373.
https://doi.org/10.1038/s41591-020-0789-4
HiB 基准:
Yèche, H. et al. (2021). HiRID-ICU-Benchmark — A Comprehensive Machine Learning
Benchmark on High-resolution ICU Data. NeurIPS 2021 Datasets and Benchmarks Track.
§10 AI 使用声明卡
§10.1 使用的 AI 模型
| 模型 | 用途 |
|---|---|
| GLM / Claude / DeepSeek 系列 | 页面内容撰写(初稿生成 + 结构编排) |
§10.2 AI 参与范围
AI-assisted — AI 负责撰写初稿并整理文献数据,人工负责事实核查与质量审核。
§10.3 输入来源
- Hyland et al. (2020), “Early prediction of circulatory failure in the intensive care unit using machine learning”, Nature Medicine 26(3):364-373
- Yèche et al. (2021), “HiRID-ICU-Benchmark — A Comprehensive Machine Learning Benchmark on High-resolution ICU Data”, NeurIPS 2021 Datasets and Benchmarks Track
- HiRID 官方网站:https://hirid.intensivecare.ai(数据详情、结构文档、变量参考)
- PhysioNet HiRID 页面:https://physionet.org/content/hirid/1.1.1/(数据集 v1.1.1 元数据)
- GitHub: ratschlab/HIRID-ICU-Benchmark(HiB Pipeline 文档)
- OpenAlex / Google Scholar(引用计数)
§10.4 人工校验机制
| 内容模块 | 审核者 | 审核方式 | 审核状态 |
|---|---|---|---|
| §2 医学背景 | 千方病案医学编辑部 | 交叉审核 | ✅ 已通过 |
| §3 数据规格 | 千方病案医学编辑部 | 与 PhysioNet 官方文档交叉比对 | ✅ 已验证 |
| §4 DAIMS 数据字典 | 千方病案医学编辑部 | 与 HiRID 官网 schema 文档交叉比对 | ✅ 已验证 |
| §6 代码示例 | 千方病案医学编辑部 | 逻辑审查 | ✅ 已通过 |
| §7 偏倚与质量 | 千方病案医学编辑部 | 与 Nature Medicine 论文方法论交叉比对 | ✅ 已通过 |
| §8 基准排行榜 | 千方病案医学编辑部 | 与 HiB 论文 Table 2-7 交叉比对 | ✅ 已验证 |
§10.5 AI 生成章节
AI 参与生成全部章节的初稿。§7.7 DAIMS 评估表中具体评分值和 §8.1 排行榜数值均来自人工验证的原始论文数据。
§10.6 最后审核日期
2026-07-27
页面状态:published(全部内容已完成审核并发布)
