信息速览
INFOBOX — MIT Critical Datathon 2023 一屏速览
维度 内容 本质 2023 年 MIT Critical Datathon 竞赛配套的 SaO2-SpO2 配对数据集(从 MIMIC-IV v2.2 派生;非新采集、非独立研究数据集) 官方全称 MIT Critical Datathon 2023: a MIMIC-IV Derived Dataset for Pulse Oximetry Correction Models 平台 PhysioNet v1.0.0,Published 2023-05-08;Discovery DOI 10.13026/jfpc-pz79(latest10.13026/8vsr-1f85)作者 11 人:João Matos、Tristan Struja、David S Restrepo、Luis Filipe Nakayama、Jack Gallifant、Luca Weishaupt、Nikita Mullangi、Maria Loureiro、Skyler Shapiro、Adrien Carrel、Leo Anthony Celi 归属 MIT Laboratory for Computational Physiology / MIT Critical Data(NIH 资助 U24EB037545、R01EB030362) 规模 81,797 条 ICU SaO2-SpO2 配对;变量字典 138 字段;上游 MIMIC-IV v2.2(50,920 名唯一患者,2008-2019) 配对规则 SaO2(itemid 220227)匹配其前 90 分钟内最近 SpO2(itemid 220277),附 delta_SpO2(分钟偏移) 核心标签 hidden_hypoxemia:SpO2≥88% 且 SaO2<88%(脉搏血氧"读数正常但实际低氧")任务 Hidden Hypoxemia 预测(分类)/ SaO2 预测(回归)/ SaO2−SpO2 Gap 预测(回归) 文件 mimic_pulseOx_data.csv+mimic_pulseOx_dictionary.csv获取 Challenge Credentialed Access:签 DUA 1.5.0 + CITI 培训;代码仓 CriticalDatathon/data-prep(MIT License)许可 PhysioNet Credentialed Health Data License 1.5.0(数据)|MIT License(代码)——代码开源≠数据开源 竞赛 MIT Critical Datathon 2023,2023-05-18/19,Cambridge, MA;高中生+CS 本科生;主题"Patient Safety through a Health Equity Lens" 与 BOLD 关系 本条目是前身/竞赛派生小版;BOLD 后续整合 MIMIC-III/IV/eICU 三库(49,099 对、5 分钟窗口、SpO2 70-100%) 库内互链 MIMIC-IV(rid 4)、mimiciv(592)、MIMIC-III(106)、eICU-CRD(552)、ICU 轨迹(962)、MIMIC-IV-EXT-PE(618)
MIT Critical Datathon 2023 是一份"问题的数据集":它要解决的是脉搏血氧仪(pulse oximeter)对深肤色人群系统性高估血氧饱和度这一临床公平性缺陷——设备显示的 SpO2 看似正常,病人的动脉血氧 SaO2 其实已经跌到危险区,这种"隐藏低氧血症"(hidden hypoxemia)会延误治疗、推高死亡率。为了给"校正模型"提供训练与评测燃料,MIT Critical Data 团队从 MIMIC-IV v2.2 里把 ICU 中所有 SaO2 测量与它前 90 分钟内最近的一次 SpO2 配成对,得到 81,797 条配对,每条附带 138 个变量,并把低于 88% 的血氧落差标成 hidden_hypoxemia。这份数据在 2023 年 5 月的 MIT Critical Datathon 上被用作竞赛任务,是后续正式整合进 BOLD(blood-gas and oximetry linked dataset)三库版本的前身快照。
导语读法三则:
- 只想拿数据做校正模型:直奔 §2 规格与 §6 获取——注意这是 Credentialed Access(凭据访问),要签 DUA 并通过 CITI 培训,没有公开直链。
- 关心它和 MIMIC-IV / BOLD 的关系:直奔 §5 三方对比——本条目是"派生派生"链条的中间环,读清"80,920 源患者 → 81,797 配对 → 49,099 BOLD 配对"的规模与窗口差异。
- 要做健康公平研究或审计:直奔 §4 偏差与任务——
hidden_hypoxemia的阈值定义、肤色/种族变量与会话式公平审计要求都在那里。
§0 导读:这个数据集解决什么问题
脉搏血氧仪是重症监护室里最无处不在的设备之一:夹在指头上几秒钟就能读出 SpO2,无需抽血。但它测量健康的前提——光穿过组织时被血红素按氧合程度吸收——恰恰隐含了一个偏差源:黑色素也吸收光。多项研究(Sjoding 2020、Wong 2021、Fawzy 2022、Gottlieb 2022,均为本数据集 PhysioNet 页的参考文献)已证实:对深肤色人群,脉搏血氧仪会系统性高估动脉血氧饱和度。后果不是"读数差一点",而是隐藏低氧血症——设备读数达标(SpO2 ≥ 88%),金标准抽血测出的 SaO2 却已低于 88%,患者因此被漏掉应有的氧疗与升级处理,死亡率随之上升。
MIT Critical Datathon 2023 的命题因此非常具体:造一个"校正模型",把 SpO2 映射回更接近真实的 SaO2。而这类模型的一切都取决于一件事——你手上有没有成对的(同一时刻、同一病人的 SpO2 与 SaO2)标注数据。MIMIC-IV 里 SaO2 来自动脉血气(arterial blood gas,ABG),是离散、稀疏采样的实验室事件;SpO2 来自连续的床边监护。把两者在时间上对齐,就得到"输入(SpO2+临床上下文)→ 目标(SaO2 或偏差)"的监督信号。本数据集正是这道对齐工序的产物:81,797 条配对,每条都记录了两者的时间偏移(delta_SpO2),还打包了 138 个可能影响血氧偏倚的变量(肤色相关的种族、通气状态、FiO2、血管升压药、SOFA、实验室与生命体征)。
§0 读法三则:
- 这个条目不是"又一份 MIMIC-IV",而是MIMIC-IV 的一个任务化切片:只保留能配成 SaO2-SpO2 对的记录,加上对齐好的上下文,换来的是一份"开箱即用于血氧公平性建模"的窄表——与 MIMIC-IV 原库的宽表 EAV 结构完全不同(§5)。
- 它与库内 MIMIC-IV 家族是血缘关系而非竞争关系:上游 MIMIC-IV(rid 4/592)提供原始 ICU 表,本条目做 SaO2-SpO2 配对,BOLD 再做三库整合扩版(§5、§8)。
- 这份数据的"价值一半在公平性、一半在教学":它的原始文档本身带着区域屏蔽、凭据门槛、规则派生标签等典型限制,是 AI-Ready 质检要抓的样本(坑 1-6)。
§1 数据集速览:十问十答
Q1:它到底是什么、不是什么?
它是 2023 年 MIT Critical Datathon 的竞赛配套数据集——从 MIMIC-IV v2.2 派生出的 SaO2-SpO2 配对集,用于构建脉搏血氧校正模型。不是新采集的数据、不是独立发表的期刊数据集、不是有公开 leaderboard 的线上挑战赛。
Q2:81,797 条"配对"具体指什么?
每条记录 = 一次 SaO2 测量(来自动脉血气)+它前 90 分钟内最近的一次 SpO2 测量(来自床边监护),外加两者的时间偏移 delta_SpO2(分钟,可正可负)。配对是把"金标准"和"待校正读数"锚在同一病人同一时刻的关键。
Q3:为什么强调"90 分钟窗口"?
因为 SaO2 是抽血测的离散值、SpO2 是连续值,两者很少在同一秒出现。窗口代表"我们愿意把多远的两次测量当作同一状态"。90 分钟是宽松窗口(BOLD 后来收紧到 5 分钟),带来更多配对数但更大时间误差——所以每条都带 delta_SpO2 让使用者自行取舍(§3、§5)。
Q4:还有哪些变量?
138 个字段:人口学(性别/年龄/种族/语言/保险)、治疗(机械通气/FiO2/RRT/血管升压药及起始时长)、SOFA 六系统、血常规/凝血/化学(乳酸、肌酐、钠钾钙、胆红素等)、生命体征(心率/平均血压/呼吸频率/体温/心律)。时变变量都附 relative time delta。
Q5:有没有"标签"?
有一个规则派生标签 hidden_hypoxemia:SpO2 ≥ 88% 且 SaO2 < 88% 时置 1。它不是人工标注,而是阈值规则——这是理解本数据集"标注"性质的关键(§4)。
Q6:能拿它做什么任务?
PhysioNet 页建议三类:Hidden Hypoxemia 预测(分类)、SaO2 预测(回归)、SaO2−SpO2 Gap 预测(回归)。评测指标不预设,由使用者按研究设计自选。
Q7:谁做的、给谁用的?
MIT Laboratory for Computational Physiology / MIT Critical Data,11 位作者,通讯课题组为 Leo Anthony Celi 团队。竞赛面向高中生与计算机科学本科生,导师来自 Imperial College、BIDMC、Univ. Pittsburgh 等。
Q8:怎么拿到数据?
Challenge Credentialed Access:只有签署 PhysioNet Credentialed Health Data Use Agreement 1.5.0 并通过 CITI “Data or Specimens Only Research” 培训的凭据用户可下载;此外 PhysioNet 对部分地区因法律/政策屏蔽。没有公开直链。
Q9:代码开源吗?数据开源吗?
代码开源(GitHub CriticalDatathon/data-prep,MIT License);数据不开源(Credentialed)。“代码 MIT” 与 “数据凭据” 是两件事,不可混为一谈(坑 5)。
Q10:它和 BOLD 什么关系?
本条目是 BOLD 的前身。同一团队在这份 datathon 数据集基础上扩版为 BOLD(blood-gas and oximetry linked dataset):从 MIMIC-IV 单库扩到 MIMIC-III + MIMIC-IV + eICU-CRD 三库,配对窗口从 90 分钟收紧到 5 分钟,并限制氧饱和度在 70-100% 区间,最终 49,099 对——库更多、窗口更严、配对数更少。两者不是版本迭代,而是"竞赛快照 → 后续正式整合版"(§5)。
§1.1 三类读者速查表
| 你的身份 | 先读 | 关键动作 | 高危误读 |
|---|---|---|---|
| 建模工程师 | §2 §3 §6 | 走凭据流程取数;按 subject_id 划分;报告 delta 阈值 | 把 81,797 当患者数;把 hidden_hypoxemia 当回归输入 |
| 临床/公平性研究者 | §4 §5 | 按 race_group 分层;承认采样选择偏差;引 clinical 证据 | 把 race 当肤色的因果替代 |
| 数据集目录编辑 | §5 §8 §9 | 与 MIMIC-IV/BOLD 三角互链;不因 BOLD 出现而删本条 | 据配对数判版本新旧 |
§1.2 一句话说清与库内相邻条目的区别
- vs MIMIC-IV(rid 4/592):MIMIC-IV 是"全科 ICU EHR 源库",本条是它的"血氧配对切片"。
- vs MIMIC-IV-EXT-PE(618):同为 MIMIC-IV 派生,但 618 做"肺栓塞影像",本条做"血氧时序"——任务域零重叠。
- vs mimic-iv-ed / waveform / ecg:同源兄弟,分别覆盖急诊/波形/心电,本条覆盖"配对血氧"。
- vs BOLD:BOLD 是本条的"三库整合继任版",不是版本号升级。
- vs vitaldb(192):都做生理信号+上下文,但 vitaldb 在手术室、本条在 ICU,且本条目标是校正设备偏差而非通用监测。
- vs eicu-crd(552)/ mimic-iii(106):它们只是 BOLD 的源库旁支,本条目本身不包含这两库的数据。
§2 数据构成与规格
2.1 规模与血缘:从 50,920 患者到 81,797 配对
本数据集的血缘链条只有两级,但每一级都要看准口径:
| 层级 | 对象 | 数字 | 口径来源 |
|---|---|---|---|
| L0 源库 | MIMIC-IV v2.2 覆盖的患者 | 50,920 名唯一患者(Beth Israel Deaconess Medical Center, 2008-2019) | PhysioNet 页转述 MIMIC-IV 口径 |
| L1 本数据集 | ICU SaO2-SpO2 配对 | 81,797 条 | PhysioNet 页 Abstract 逐字 |
| 字段 | 每条配对的变量 | 138 列 | GitHub data-prep/MIMIC-IV/README.md 变量字典实测计数 |
必须分清两件事:50,920 是 MIMIC-IV 的整体患者数,不是本数据集的样本量。本数据集披露的规模只有"81,797 条配对",涉及多少唯一患者/ICU stay 未披露——这是复现者规划数据划分(按患者分层防泄漏)时的信息缺口(§10 遗留疑点)。派生过程会丢掉大量无法配对的记录:SaO2 只在抽动脉血气时出现,很多患者/时段根本没有可配对的 SpO2 或 SaO2,因此 81,797 条只代表 MIMIC-IV ICU 中"能配上对"的那部分。
一句话定位:81,797 是配对行数(row),不是患者数,也不是测量事件数——引用时必须写清单位。
2.2 配对规格:90 分钟窗口怎么工作
本数据集的技术核心是"把两类不同采样节奏的信号锚到一起"。规格如下:
| 属性 | 规格 |
|---|---|
| SaO2 来源 | ICU chartevents,itemid 220227(动脉血气测得的 SaO2) |
| SpO2 来源 | ICU chartevents,itemid 220277(床边脉搏血氧) |
| 配对窗口 | SpO2 须落在 SaO2 时间的前 90 分钟内(0 ≤ Δ ≤ 90 分钟) |
| SpO2 有效范围 | > 0 且 ≤ 100 |
| 偏移字段 | delta_SpO2(分钟,符号可正可负) |
| 对齐策略 | 每条配对同时对齐基线+时变变量,均取最近值;时变变量附 relative time delta |
配对逻辑来自官方代码仓 data-prep/MIMIC-IV/SpO2_SaO2_pairs.SQL,可逐字复现:
-- 每条 SaO2 匹配其前 90 分钟内、时间上最近的 SpO2
ON spo2_table.stay_id = sao2_table.stay_id
AND TIMESTAMP_DIFF(sao2_table.charttime, spo2_table.charttime, MINUTE) <= 90
AND TIMESTAMP_DIFF(sao2_table.charttime, spo2_table.charttime, MINUTE) >= 0
WHERE sao2_table.itemid = 220227 -- SaO2
-- SpO2 侧:itemid = 220277 且 0 < valuenum <= 100
为什么窗口是 90 分钟而不是更短? 因为 SaO2 是血气分析的离散事件,采样频率低(通常一天数次到数十次),而 SpO2 是连续监护。窗口越宽,能配上对的 SaO2 越多(召回高),但配对两侧的时间差越大、被匹配的 SpO2 越可能不代表 SaO2 那一刻的真实状态(精度低)。90 分钟是一个明确偏"重召回"的取法——这也是它与 BOLD 的 5 分钟窗口最本质的差别(§5)。数据集没有替使用者做取舍,而是把 delta_SpO2 交给使用者:你可以自己按 delta 阈值过滤(例如只保留 |Δ| ≤ 5 分钟的子集),这是本数据集设计上最实用的一点。
2.3 字段构成:138 变量的六大族
官方变量字典(mimic_pulseOx_dictionary.csv,GitHub README 逐列列出)共 138 个字段,可归为六大族:
| 族 | 代表字段 | 说明 |
|---|---|---|
| 标识与配对核心 | subject_id、stay_id、hadm_id、SaO2_timestamp、SaO2、SpO2、delta_SpO2、hidden_hypoxemia | 主键为 (subject_id, stay_id, SaO2_timestamp) |
| 人口学与社会 | gender、sex_female、anchor_age、race、race_group、language、insurance、anchor_year_group | 公平性分析的核心分组变量(race / race_group) |
| 就诊与住院 | first_hosp_stay、first_icu_stay、icustay_seq、admittime、dischtime、icu_intime、icu_outtime、los_hospital、los_icu | 时间与住院结构 |
| 严重度与合并症 | CCI(Charlson)、SOFA_admission、mortality_in、sofa_coag/liver/cv/cns/renal/resp | SOFA 六系统逐项 + 入院总评分 |
| 治疗与支持 | ventilation_status、invasive_vent、delta_vent_start、FiO2、delta_FiO2、rrt、delta_rrt、norepinephrine_equivalent_dose、delta_vp_start | 通气/FiO2/肾替代/血管升压药 |
| 实验室与生命体征 | hemoglobin、platelet、wbc、creatinine、lactate、ph、bun、sodium、potassium、bilirubin_*、heart_rate、mbp、resp_rate、temperature、glucose、heart_rhythm 等 | 血常规/凝血/化学 + 生命体征 |
命名规律:几乎每个时变变量都有一个 delta_ 孪生字段(如 delta_lactate、delta_heart_rate),记录该测量相对 SaO2 时间戳的偏移(分钟)。这是"时间对齐精度可追溯"的设计:使用者可以据此判断某个实验室值离 SaO2 时刻有多远,从而决定是否信任它。基线变量(如性别、种族、CCI)无 delta,代表其在该次住院内为常量。
变量族的临床含义很直接:血氧偏倚不是一个只由肤色决定的现象。低灌注、贫血、通气状态、FiO2、血管升压药剂量、酸碱状态(pH、乳酸)都会影响 SpO2 与 SaO2 的落差——所以校正模型的输入特征里塞进这些,是为了让模型学"给定临床上下文,这台设备在这个病人身上偏了多少",而非简单地按种族打补丁(§4)。
2.4 数据文件
| 文件 | 内容 | 格式 |
|---|---|---|
mimic_pulseOx_data.csv |
81,797 条配对 × 138 列主数据 | CSV |
mimic_pulseOx_dictionary.csv |
变量字典(字段名/类型/描述) | CSV |
两者均须凭据访问获取。文件形态是单张宽行 CSV(每条配对一行、138 列并排),与 MIMIC-IV 原库的 EAV(事件-属性-值长表)结构截然不同——这是"派生数据集把宽表压平成监督学习友好格式"的典型做法(§5)。注意 PhysioNet 页面对下载做了区域限制(“Data is not available in your region due to legal or policy restrictions.”),部分地区的凭据用户也未必能直接下载。
§3 构建方法:一个 datathon 如何把 EHR 变成监督信号
3.1 三步流水线
从 MIMIC-IV 到 81,797 条配对,官方 data-prep 仓库的 SQL 显示了清晰的四步:
步 1 取 SaO2(itemid 220227) → 所有动脉血气测得的 SaO2 时间点
步 2 为每个 SaO2 找前 90min 内最近 SpO2 → 逐个左连接,取 MAX(charttime)
步 3 对齐基线+时变变量(取最近值) → patient_ICU.sql + main.SQL 组装 138 列
步 4 派生 hidden_hypoxemia 规则标签 → SpO2>=88 且 SaO2<88 → 1
仓库文件结构(GitHub CriticalDatathon/data-prep 顶层)印证了这套流水线是模块化、非一次性脚本:
| 文件/目录 | 作用 |
|---|---|
README.md |
项目状态:MIMIC-IV(completed)/ MIMIC-III(under revision)/ eICU-CRD(in progress) |
MIMIC-IV/ |
MIMIC-IV 版流水线(README 变量字典 + SpO2_SaO2_pairs.SQL + main.SQL + patient_ICU.sql + time_series/) |
MIMIC-III/ |
MIMIC-III 版(under revision) |
eICU-1/ |
eICU-CRD 版(in progress) |
LICENSE |
MIT License(“Copyright © 2023 MIT Health Datathon 2023”) |
这个模块化结构本身就是证据:README 里 MIMIC-III(修订中)与 eICU-CRD(进行中)的状态标签,说明团队从第一天起就打算把同一套配对逻辑移植到多个 EHR 库——这正是后来 BOLD 整合 MIMIC-III/IV/eICU 三库的工程伏笔(§5、§8)。
3.2 hidden_hypoxemia:规则派生标签的机制
本数据集唯一"标签"hidden_hypoxemia 的定义在页面正文与 SQL 两处一致:
CASE WHEN spo2_vals.valuenum >= 88 AND sao2_vals.valuenum < 88
THEN 1 ELSE 0 END AS hidden_hypoxemia
即:设备读数 SpO2 达标(≥ 88%),但金标准 SaO2 已不达标(< 88%)。临床含义是"仪器告诉你没事,但你其实低氧了"。88% 这个阈值不是随意选的——它对应临床常用的低氧干预分界(一般认为 SaO2 低于 88% 进入需要关注的缺氧区间),而"仪器读数达标而真实值不达标"正是脉搏血氧偏倚造成伤害的最小可定义单元。
三点必须讲清:
- 它是规则标签,不是人工标注。没有任何医生逐条判读,标签是阈值函数的输出。因此它继承了两个阈值的所有争议:把 88% 换成 90% 或 85%,阳性集就变;把窗口从 90 分钟收紧,阳性集也会变。
- 它是"结果变量"而非"输入特征"。用它做监督学习时要警惕泄漏——判定 hidden_hypoxemia 用到的 SaO2,恰恰是"SaO2 预测/偏差预测"任务的目标。所以三类任务里,只有"Hidden Hypoxemia 预测(分类)"是端到端可用 SpO2+上下文预测的;另两类任务其实是在预测 SaO2 本身,hidden_hypoxemia 只能作为派生分析标签。
- 它的阳性率未在数据集页披露。有偏群体的患病率、按 race_group 分层的阳性率都是公平性研究最关心的数字,但页面上查不到——需要使用者拿到数据后自算,或引 BOLD 等后续论文(§10 遗留疑点)。
3.3 三类任务的工程含义
PhysioNet 页给出的三类任务,工程难度与用途完全不同:
| 任务 | 类型 | 输入 | 目标 | 关键风险 |
|---|---|---|---|---|
| Hidden Hypoxemia Prediction | 分类 | SpO2 + 上下文(不含 SaO2) | hidden_hypoxemia(0/1) | 类别不平衡(低氧事件稀少);正负样本定义依赖阈值 |
| SaO2 Prediction | 回归 | SpO2 + 上下文 | SaO2 连续值 | 需按患者划分防泄漏;SaO2 分布截断(生理范围) |
| SaO2−SpO2 Gap Prediction | 回归 | SpO2 + 上下文 | SaO2 − SpO2 | 偏差的直接建模;肤色/种族分组下的误差公平性 |
从公平性研究角度,第三类最有价值:它直接预测"设备偏了多少",是"校正模型"(correction model)的数学核心。竞赛官网的挑战描述——“create Correction Models for Pulse Oximetry that map SaO2 from SpO2 measurements”——对应的正是第三类(或第一/二类的组合)。而评估指标"未预设、由使用者自选"意味着:没有官方基准分数可供对标,任何报告的数字都是自定协议的产物(§7、坑 6)。
3.4 上游伦理与合规
构建方法必须放在合规框架里理解:MIMIC-IV 是全去标识数据(无 PHI),其收集经 Beth Israel Deaconess Medical Center 的 IRB 审查并豁免知情同意;本派生研究被判为"豁免人体受试研究"。但"去标识"不等于"无约束"——PhysioNet 页明确要求所有实验遵守 Credentialed Health Data License Agreement,且数据源自临床记录,“medical charting by providers in the EHR is at-risk for multiple types of bias”(EHR 记录本身可能是偏见来源)。这句话是数据集作者的自我警示,也是使用者做公平性研究时必须内化的前提:你研究的是"设备+记录"联合产生的偏差,不只是设备。
2.5 完整变量字典逐组细读(138 字段全展开)
为方便使用者在拿到数据前先规划特征工程,这里把 GitHub 变量字典(data-prep/MIMIC-IV/README.md)逐组展开。注意:绝大多数时变变量成对出现——主值 + delta_ 偏移,故 138 字段实际对应约 90 个左右的语义量。
(1)配对与标识核心(8)
| 字段 | 类型 | 语义 |
|---|---|---|
| subject_id | int64 | 患者唯一标识 |
| stay_id | int64 | ICU stay 唯一标识 |
| hadm_id | int64 | 住院(hospital admission)唯一标识 |
| SaO2_timestamp | object | SaO2 测量时间戳(配对的锚点时刻) |
| SaO2 | float64 | 动脉血氧饱和度(金标准,目标变量之一) |
| SpO2 | int64 | 外周脉搏血氧饱和度(待校正的输入) |
| delta_SpO2 | int64 | 配对的 SpO2 相对 SaO2 的时间偏移(分钟) |
| hidden_hypoxemia | int64 | 隐藏低氧血症标记(SpO2≥88 且 SaO2<88) |
(2)人口学与社会属性(8):gender(字符串性别)、sex_female(女性 0/1)、anchor_age(入院时锚定年龄)、race(自报种族原值)、race_group(种族归并分组)、language(主要语言)、insurance(保险类型)、anchor_year_group(入院年份分组)。这一族是公平性分析的全部可用分层变量——数据集没有黑色素/肤色测量(§4.3 的代理变量问题由此而来)。
(3)就诊与住院结构(9):first_hosp_stay、first_icu_stay(是否首次)、icustay_seq(该患者的第几次 ICU stay)、admittime、dischtime、icu_intime、icu_outtime(四个时间戳)、los_hospital(住院天数)、los_icu(ICU 天数)。用途:判断配对是取自患者病情早期还是晚期,控制"重复入院/多次 ICU"带来的相关性。
(4)严重度与合并症(9):CCI(Charlson 合并症指数)、SOFA_admission(入院 SOFA 总分)、mortality_in(住院内死亡标记),以及 SOFA 六系统逐项——sofa_coag(凝血)、sofa_liver(肝)、sofa_cv(心血管)、sofa_cns(中枢神经)、sofa_renal(肾)、sofa_resp(呼吸)。用途:把"病人有多重"标准化,避免模型把"病情重"误当成"皮肤色素深"的替身。
(5)治疗与器官支持(9+):ventilation_status(通气状态)、invasive_vent(有创通气 0/1)、delta_vent_start(距通气开始时长)、FiO2(吸入氧浓度)、delta_FiO2、rrt(肾替代治疗)、delta_rrt、norepinephrine_equivalent_dose(去甲肾上腺素等效剂量)、delta_vp_start(距血管升压药开始时长)。临床关键:FiO2 与通气状态直接影响 SpO2-SaO2 关系(高 FiO2 下血氧曲线形态变化),是校正模型最重要的混杂控制变量之一。
(6)实验室——血常规/凝血(约 20):hemoglobin(血红蛋白)、hematocrit(红细胞压积)、mch/mchc/mcv(红细胞指数)、platelet(血小板)、rbc(红细胞)、rdw(红细胞分布宽度)、wbc(白细胞)、d_dimer(D-二聚体)、fibrinogen(纤维蛋白原)、thrombin(凝血酶时间)、inr、pt、ptt(凝血功能)——各含 delta_ 孪生。
(7)实验室——化学/代谢/血气相关(约 40):alt/alp/ast(肝酶)、bilirubin_total/direct/indirect(胆红素)、ck_cpk/ck_mb(肌酶)、ggt、ld_ldh、albumin、aniongap、bicarbonate、bun、calcium、chloride、creatinine(肌酐)、glucose_lab、sodium、potassium、ph(酸碱度)、lactate(乳酸)——各含 delta_ 孪生。其中 lactate、ph、creatinine 与灌注/酸碱状态强相关,是血氧落差的重要生理协变量。
(8)生命体征(12):heart_rate、mbp(平均血压)、resp_rate(呼吸频率)、temperature、glucose(血糖)、heart_rhythm(心律类别)——各含 delta_ 孪生。用途:捕捉测量当下的即时生理状态。
字段命名规律速记:
X= 与 SaO2 配对的该变量取值(取最近值);delta_X= 该取值相对 SaO2 时间戳的分钟偏移。基线常量(如 race、CCI)无 delta。据此,做特征工程时若想控制"变量离锚点多远",直接读对应 delta_ 即可。
2.6 数据质量观察要点
拿到数据后建议先做四项体检(本条目据字段结构给出的建议,非官方清单):
- delta_SpO2 分布:若大量配对集中在 |Δ| 接近 90 分钟处,说明宽窗口把很多"久远的"测量拉进来,应评估是否收紧。
- SaO2/SpO2 取值范围:生理上 SaO2、SpO2 应在 0-100;检查是否有极端/异常值(SpO2 配对时已被约束在 0<x≤100,SaO2 侧约束更松)。
- hidden_hypoxemia 阳性率:该值数据集页未披露,需自算;并按 race_group 分层看阳性率差异——这是公平性研究的第一张图。
- 缺失模式:实验室变量按需采样,缺失本身带信息(“没测"可能意味着"病情稳定”),不应无脑填补。
§4 偏差、公平性与任务深化
4.1 为什么是"公平性"而不是"精度"
绝大多数临床机器学习数据集的目标是"提高预测精度";本数据集的目标是消除一个已被证实的种族偏差。PhysioNet 页的 Background 段把动机讲得非常直白:脉搏血氧仪的测量原理是"光被血红素按氧合程度吸收",而皮肤色素也吸收光,于是对深色皮肤人群设备的准确性下降;多项研究显示这一人群的 SaO2−SpO2 落差更大、SaO2 常被高估,进而造成照护差异。数据集引用文献(Sjoding 2020 NEJM、Holder & Wong 2022、Wong 2021 JAMA Netw Open、Fawzy 2022 JAMA Intern Med、Gottlieb 2022 JAMA Intern Med)清一色发表在顶级医学期刊上——这不是一个"实验室里的 toy bias",而是被临床证据反复确认的系统性问题。
因此本数据集有一个罕见的设计取向:它把"公平性"写进了数据集的自我描述。页面明确要求使用者在训练校正模型前后做公平性与可解释性审计:
“it should be assumed that this data set will carry embedded biases of different kinds that can affect fairness and equity during model training. Before the deployment of any model of this kind, it is the responsibility of the scientists and health care professional to audit the model for fairness and equity in its performance across disparate health groups.”
这句话对使用者是硬约束,不是免责声明:直接拿这份数据训练一个校正模型并部署,是不合规也不道德的——你必须报告它在不同种族/族裔分组上的表现差异,并附带模型解释(model explanations)。
4.2 偏差的三重来源
用这张数据集做研究时,至少要区分三层偏差:
| 层 | 来源 | 表现 | 能否用本数据集控制 |
|---|---|---|---|
| L1 设备偏差 | 脉搏血氧仪的物理/算法缺陷(肤色吸光) | 深肤色人群 SpO2 高估 SaO2 | 是(这正是要建模的偏差) |
| L2 记录偏差 | EHR 里"谁来测、何时测、记什么" | 抽血频率、监护频次受临床决策影响 | 部分(有采样选择偏差字段可观察) |
| L3 采样偏差 | 派生集的纳入规则 | 无法配对的患者被整体丢弃 | 否(结构性的,只能声明) |
L1 是数据集想解决的;L2 是作者警示的(“Medical charting by providers in the EHR is at-risk for multiple types of bias”);L3 是页面明确自曝的主要局限——“The main known limitation of the dataset is related with sampling selection bias. Patients with no valid SaO2−SpO2 pairs, due to irregular sampling of lab values, are not included in this derived dataset.”
L3 的临床含义常被低估:谁会被频繁抽动脉血气?通常是病情更重、监护更严密的患者。所以这份"能配上对"的人群系统性地比 MIMIC-IV 整体更重。任何把本数据集的结论外推到"普通住院患者"的研究,都要先声明这一点。此外,本数据集内 race/race_group 是自报种族(来自 EHR),既可能缺失也可能与肤色不完全对应——用它做公平性分层本身就是一个有争议的代理变量(肤色≠种族的经典方法学问题,属于 L2)。
4.3 一个必须自查的陷阱:肤色变量
本数据集没有直接的肤色/黑色素测量字段。它能提供的公平性分层变量只有 race、race_group(种族/族裔)。而脉搏血氧偏差的物理机制直接与皮肤色素(melanin)相关,与"种族"是两回事:
- 用
race分组做审计,会把"色素深度"信号与"社会经济/照护路径"信号混在一起; - 不同种族标签内色素分布差异巨大,分组内方差可能超过组间方差;
- 这正是为何作者要求"audit across disparate health groups"而非简单地保证某个群体不掉队。
对研究者的建议:把 race 当作可观测的代理变量而非因果变量;报告结果时同时给出按 race_group 分层的误差分布与置信区间,避免只报单一总体均值(那会重蹈"用总体精度掩盖分组缺陷"的覆辙)。
4.4 三类任务与标签泄漏再强调
结合 §3.3,这里补一条最容易被踩的工程陷阱:hidden_hypoxemia 的构造里用到了 SaO2。如果你做"SaO2 预测"或"Gap 预测"任务,又把 hidden_hypoxemia 当作输入特征,就会把目标信息泄进输入。正确做法:
- 分类任务(Hidden Hypoxemia Prediction):输入只用 SpO2 + 上下文,禁止用 SaO2 派生量;
- 回归任务(SaO2 / Gap):目标就是 SaO2 或其差值,hidden_hypoxemia 只能作为事后分析的分层标签;
- 任何任务都必须按患者(subject_id)划分训练/测试,否则同一患者的多次配对会跨集泄漏——数据集未披露唯一患者数,使这个划分需要使用者自行处理(§10 遗留疑点)。
4.5 皮肤色素与脉搏血氧的物理机制(为什么这偏差不是"数据噪声")
要把本数据集研究透,必须理解偏差的物理来源。脉搏血氧仪用两种波长的光(通常约 660nm 红光与 940nm 红外光)穿过外周组织(指尖/耳垂),依据氧合/脱氧血红蛋白对两波长吸收率的差异,反推 SpO2。黑色素(melanin)在可见与近红外波段都有宽带吸收,与血红素吸收谱重叠,于是:
- 吸收被"混入":皮肤色素吸走了一部分光,设备把它误当作血红素的信号处理,导致对深肤色人群的读数偏移;
- 偏倚方向为高估:多项研究(Sjoding 2020 等)显示,深肤色人群的 SpO2 相对 SaO2 系统性偏高,即设备"报喜不报忧";
- 临床后果是"隐藏低氧":读数达标(≥88%)掩盖了真实的低氧(SaO2<88%),患者被漏掉氧疗与升级处理,死亡率上升(Wong 2021、Gottlieb 2022)。
这解释了两件事:
- 为什么本数据集要配 138 个上下文变量——偏差不是"肤色一维函数",而是肤色 × 灌注 × 血红蛋白 × FiO2 × 酸碱状态 × 设备个体差异的联合函数。校正模型必须用多变量输入,才能"在这个病人的这类状态下估计这次偏移"。
- 为什么用
race做分组审计只是近似——物理驱动量是肤色(melanin),而数据只有种族(race)。二者相关但不等价,这是该领域公认的方法学难点(§4.3)。
对建模的启示:如果模型只学到"某个 race_group 平均偏高 2%",它做的是群体级校准;而临床真正需要的是个体级校正——同一病人不同灌注状态下的偏移也不同。本数据集的 delta_* 上下文变量,正是为了让模型有机会学到这种个体/状态级的差异。
§5 血脉定位:与 BOLD、MIMIC-IV、库内派生条目的三方对比
这一节是理解本条目独特性的关键。同一份数据/同一个团队在库内外形成了一条"金字塔":MIMIC-IV(源库)→ 本数据集(datathon 竞赛派生)→ BOLD(三库整合版)。
5.1 本数据集 vs BOLD:前身与继任
BOLD(blood-gas and oximetry linked dataset)是同一 MIT Critical Data 团队在 datathon 数据集基础上扩版的正式数据集,发表于 Scientific Data 并在 PhysioNet 公开。据 Springer Nature 官方博客(作者自述):
“Since the MIT Critical Datathon, we expanded the original dataset that we prepared for the challenge, to include three electronic health records (EHR) databases: MIMIC-III, MIMIC-IV, and eICU-CRD… BOLD includes 49,099 paired measurements, within a 5-minute window, and with oxygen saturation levels between 70–100%.”
据此外述口径,两版的核心差异如下(这是本条目最重要的对比表):
| 维度 | 本数据集(MIT Critical Datathon 2023) | BOLD(blood-gas and oximetry linked dataset) |
|---|---|---|
| 定位 | datathon 竞赛配套派生集(2023-05) | 正式整合数据集(Scientific Data 论文 + PhysioNet) |
| 源库 | MIMIC-IV v2.2 单一库 | MIMIC-III + MIMIC-IV + eICU-CRD 三库 |
| 配对数 | 81,797 条 | 49,099 条 |
| 配对窗口 | 90 分钟(宽松,重召回) | 5 分钟(严格,重精度) |
| 饱和度区间 | 未设限(SpO2 仅要求 0<x≤100) | 70–100%(裁剪极端值) |
| 库数 | 1 | 3 |
| 文件 | mimic_pulseOx_data.csv(138 列) | 见 BOLD 论文/PhysioNet(本条目不核) |
| 时间 | 2023-05-08 发布,2023-05-18/19 竞赛 | 后于 datathon(年份见 §10 疑点) |
怎么读这张表? 三个反直觉点:
- 配对更多 ≠ 版本更新。本数据集 81,797 对 > BOLD 49,099 对,但本数据集是前身。原因不是 BOLD 数据缩水,而是 BOLD 刻意收紧了纳入标准:窗口从 90 分钟砍到 5 分钟(时间对齐更可信)、饱和度区间裁到 70-100%(剔除可能不可靠的极端读数)。“少而准"胜过"多而宽”——这是数据工程上的一次明确价值取舍。
- 库多 ≠ 配对多。BOLD 源库从 1 个扩到 3 个(多出 MIMIC-III 与 eICU-CRD 两个完全不同医疗系统的数据),配对数反而下降。这说明严格的窗口与区间约束对配对的"杀伤"很大——大量宽窗口下能配上的对,在 5 分钟约束下配不上了。
- 两者不是替代关系而是分工:本数据集是"竞赛快照",保留了原始 datathon 任务的可复现性;BOLD 是"研究级整合版",适合做跨库泛化的公平性研究。引用/使用时不要以为 BOLD 会取代本条目——它们是同一血缘的两代产物,各有检索价值。
存照:BOLD 的 49,099 对、5 分钟窗口、70-100% 区间均为 Springer Nature 博客(作者自述)口径,本条目未逐一核对 BOLD 论文原文(BOLD 正由并行代理生产,边界外)。引用 BOLD 数字时以 BOLD 论文为准。
5.2 本数据集 vs MIMIC-IV:切片与源库
| 维度 | MIMIC-IV(rid 4 / 592) | 本数据集 |
|---|---|---|
| 结构 | 关系型多表(ICU chartevents/labevents 等 EAV 长表) | 单张宽 CSV(81,797 行 × 138 列) |
| 覆盖 | 全体 ICU 患者与全部事件类型 | 仅"有 SaO2-SpO2 配对"的记录 |
| 任务 | 通用(任何 ICU 研究) | 专用(脉搏血氧校正/公平性) |
| 获取 | PhysioNet Credentialed(同档) | PhysioNet Credentialed(同档) |
| 许可 | ODbL(数据)+ 相关约束 | PhysioNet Credentialed Health Data License 1.5.0 |
| 关系 | 上游源库 | 下游任务化派生 |
一句话:本数据集 = MIMIC-IV 的一个任务化投影。它帮你省掉了"自己写 SQL 配 SaO2-SpO2、自己对齐 138 个上下文变量"的工程劳动,代价是丧失了原库的完整性与灵活性(只保留能配对的记录,且变量固定为 138 列)。若你的研究超出"血氧校正/公平性"范畴,应回到 MIMIC-IV 原库;若你就做血氧偏差,本数据集(或 BOLD)能直接开工。
注意 MIMIC-IV 的版本口径:本数据集明确基于 v2.2。MIMIC-IV 后续已迭代(v3.x),而本数据集停在 v2.2 未跟进——引用源库人口数字(50,920 患者、2008-2019)时要注明这是 v2.2 口径,与最新 MIMIC-IV 版本的患者数不必一致(§10 存照)。
5.3 本数据集 vs 库内其他 MIMIC 派生条目
本库已收录多个 MIMIC 派生条目(§9 家族图谱),它们是同源不同任务的兄弟,不是竞争关系:
| 库内条目 | rid | 派生任务域 | 与本条目的关系 |
|---|---|---|---|
| mimic-iv-clinical-database | 4 | MIMIC-IV 本体临床库 | 上游源库(血缘根) |
| mimiciv | 592 | MIMIC-IV 收录条目 | 上游(同源别名/收录) |
| mimic-iii | 106 | MIMIC-III 本体 | 上游旁支(BOLD 另整合了它,本条目未含) |
| mimic-iv-ed | 116 / 567 | MIMIC-IV 急诊科派生 | 同源兄弟(不同科室切片) |
| mimic-iv-waveform | 65 | MIMIC-IV 波形 | 同源兄弟(信号层) |
| mimic-iv-ecg | 172 | MIMIC-IV 心电图 | 同源兄弟(生理信号层) |
| mimic-iv-ext-pe | 618 | MIMIC-IV-EXT 肺栓塞影像 | 同源派生(任务域完全不同:影像 vs 血氧) |
| eicu-crd | 552 | eICU-CRD 本体 | 上游旁支(BOLD 整合了它,本条目未含) |
关键区分(任务头特别要求):库内已有的 mimic-iv-ext-pe(618)等衍生条目与本部同属"MIMIC-IV 派生家族",但任务域完全不同(PE 是肺部影像,本条目是血氧时序)。它们共享上游血缘、共享 PhysioNet Credentialed 获取档位,但数据内容与建模目标毫无重叠。检索"MIMIC-IV 派生"时,本条目应与这些兄弟条目并列呈现,靠任务标签(血氧/公平性 vs 影像/PE)区分,而非靠 MIMIC 前缀区分。
5.4 一张"血脉金字塔"总图
MIMIC-IV v2.2(源库,50,920 患者,2008-2019,BIDMC)
│ 取 SaO2(220227) + 前 90min 内 SpO2(220277) + 138 上下文变量
▼
MIT Critical Datathon 2023 数据集(本条目,81,797 对,90min 窗口)
│ ① 用于 2023-05-18/19 竞赛(高中生+CS 本科生)
│ ② 扩版:加入 MIMIC-III + eICU-CRD,窗口收紧到 5min,饱和度裁到 70-100%
▼
BOLD: a blood-gas and oximetry linked dataset(继任版,49,099 对,5min 窗口)
(Scientific Data 论文 + PhysioNet 公开)
这条链的工程意义在于:它是一份"从科研竞赛走向正式数据集"的罕见完整样本——你可以清楚地看到同一套配对代码(data-prep)如何从单库走到三库、从宽窗口走到严窗口。对数据集工程研究者,这比任何"最佳实践文档"都更有教学价值。也因此,本条目与库内 MIMIC-IV 家族、以及将来 BOLD 的库内条目,应构成一个互相指向的检索三角:读者从任一点都应能跳到"上游是什么、下游是什么、兄弟是什么"(§9)。
5.5 上游 MIMIC-IV 的语境(为什么是 v2.2)
理解本数据集必须理解它的"原材料" MIMIC-IV。MIMIC-IV(Medical Information Mart for Intensive Care IV)是 MIT LCP 维护的公开重症 EHR 数据库,覆盖 Beth Israel Deaconess Medical Center(波士顿)的 ICU 患者。本数据集页明确其基于 v2.2,且给出上游口径为"50,920 名唯一患者、2008-2019 年"。
三点语境:
- 为什么 v2.2 而不是更新版本:本数据集发布在 2023 年 5 月,当时 v2.2 是团队稳定使用的工作版本。数据集没有随 MIMIC-IV 的后续版本迭代——这意味着引用的患者数(50,920)是 v2.2 时点值,与最新 MIMIC-IV 版本的口径不必一致(§10 存照)。
- MIMIC-IV 的结构与本数据集的处理:MIMIC-IV 的 ICU 数据存在
chartevents(床边监护时序,EAV 长表)等表中。本数据集的配对正是基于该表——SaO2(220227)与 SpO2(220277)都来自同一个chartevents,这是"两类信号能在同一维度(stay_id + charttime)上连接"的技术前提。 - 血缘继承的合规含义:使用本数据集即隐含使用 MIMIC-IV 派生内容,PhysioNet 页把它标注为 MIMIC-IV v2.2 的子项目(“Parent Projects”)。因此合规链条是双重的:你既要守本数据集页的凭据约束,也要守 MIMIC-IV 的凭据约束——但实践中随凭据核验一并覆盖。
5.6 与其他血氧/生理数据资源的横向定位
把本数据集放进更广的血氧/生理数据生态:
| 资源 | 模态 | 与本数据集的关系 |
|---|---|---|
| MIMIC-IV(rid 4/592) | ICU EHR 源库 | 直接上游 |
| 本数据集 | SaO2-SpO2 配对(MIMIC-IV 派生) | 本体 |
| BOLD | SaO2-SpO2 配对(三库整合) | 继任扩版 |
| MIMIC-III(rid 106) | 前代 ICU EHR | BOLD 的源库之一,本条目未含 |
| eICU-CRD(rid 552) | 多中心 ICU EHR | BOLD 的源库之一,本条目未含 |
| vitaldb(rid 192) | 术中生理信号 | 同属"生理信号+临床上下文",不同场景(手术室) |
| mimic-iv-waveform(rid 65) | ICU 波形信号 | 同源,高频信号层,可做"配对血氧的连续波形"扩展 |
一句话定位:在"血氧偏差"这条纵向线上,本数据集是"单库竞赛派生"生态位;在"ICU 生理时序"这条横向上,它与波形、ED、ECG 等 MIMIC 切片并列。检索者应据任务域 + 模态 + 库数三维度定位,而非只看"MIMIC"前缀。
§6 获取与许可:三重门怎么进
6.1 获取门槛逐项拆解
本数据集的获取是本条目 AI-Ready 评估的最大失分项,值得逐条拆开看:
| 门槛 | 要求 | 出处 |
|---|---|---|
| 身份凭据 | 必须是 PhysioNet credentialed user(完成身份核验) | 页面 Access Policy |
| 数据使用协议 | 签署 PhysioNet Credentialed Health Data Use Agreement 1.5.0 | 页面 License/DUA |
| 合规培训 | 完成 CITI “Data or Specimens Only Research” 培训 | 页面 Required training |
| 区域限制 | 部分地区因法律/政策屏蔽下载 | 页面 Files 区实测 |
| 上游约束 | 需同时遵守 MIMIC-IV v2.2 的凭据约束(血统继承) | 页面 Parent Projects |
没有公开直链、没有 Demo 子集、没有 HuggingFace/Kaggle 镜像。要拿到 mimic_pulseOx_data.csv,必须走完"身份核验 → 签 DUA → CITI 培训"全流程。这是库内最严档位之一(与 MIMIC-IV 本体同级)。
6.2 代码与数据:许可的两层分离
这是本条目最容易误读、也最该反复强调的一点:
| 资产 | 载体 | 许可 | 可否自由使用 |
|---|---|---|---|
| 数据(81,797 条配对 CSV) | PhysioNet | PhysioNet Credentialed Health Data License 1.5.0 | 否——凭据 + DUA 约束 |
| 代码(配对/组装 SQL 与脚本) | GitHub CriticalDatathon/data-prep |
MIT License | 是——可自由复制/修改/再分发 |
data-prep 仓库的 LICENSE 文件逐字写着 “MIT License / Copyright © 2023 MIT Health Datathon 2023”,授予"to deal in the Software without restriction"。但 MIT 只覆盖"代码",不覆盖"由代码处理的数据"。有人看到"MIT License"就以为整个项目开源,进而以为数据可用——这是危险的误读。正确理解:
- 你可以自由地复用、改写这套配对 SQL去处理你自己有权限的 EHR 数据(这是 MIT 赋予的权利,也是团队"share all our code in open-source"的初衷);
- 你不能因为代码是 MIT 就认为 81,797 条数据可以自由下载/再分发——数据端始终是 PhysioNet Credentialed。
6.3 与其他挑战赛数据集的获取档位对照
把本条目放进库内"挑战赛数据集"的获取光谱里:
| 档位 | 特征 | 库内参照 | 本条目 |
|---|---|---|---|
| 公开直链 | 无需申请,HTTP 直接下载 | 多数 Kaggle/HF 挑战赛集 | — |
| 注册墙 | 注册即下,无审批 | 若干 Kaggle 托管集 | — |
| 凭据访问(Credentialed) | 身份核验 + DUA + 培训 | MIMIC-IV 家族(rid 4/592/65/172…) | 本条目 |
| 请求制 | 邮件向作者申请 | PANDA-PLUS 掩码等 | — |
本条目与库内 MIMIC-IV 全家族同在凭据档——这既抬高了研究合规门槛,也保证了去标识数据的伦理安全。对想"先跑通再申请"的团队,这套门槛意味着没有可用的公开小样本,必须先把凭据流程走完;好在配套代码(MIT)可以先读、先学、先在自己的数据上验证逻辑。
§7 生态与影响
7.1 一场"教学型"datathon
MIT Critical Datathon 2023 的官网自我定位不是"算法竞赛"而是"教育 + 公平性活动":
- 主题:“Patient Safety through a Health Equity Lens”(以健康公平视角看患者安全);
- 参赛者构成:高中生 + 计算机科学本科生(不是博士/资深研究者),配一支来自 Imperial College London、BIDMC、MIT LCP、Univ. Pittsburgh、Rutgers 等的导师团(17+ 人);
- 时间地点:2023-05-18/19,Riverfront Office Park, Cambridge, MA;
- 理念:“Built on the principles of Open Science, Citizen Science, and Open Innovation”——公民科学、开放创新。
这意味着本数据集的设计目标之一是降低进入门槛、培养新人:把复杂的 EHR 配对工程预先做好,让没有数据工程背景的学生团队能在两天内直接上手建模。这是它"宽窗口、多配对"取向的另一层解释——为了让学生有足够样本练手,牺牲一部分时间精度是可接受的。
7.2 从 datathon 到正式数据集:BOLD 的接棒
竞赛结束后,团队把这份竞赛数据升级为研究级数据集 BOLD(§5.1)。据 Springer Nature 官方博客(“Building foundations from Datathons to Open Data”):
- BOLD 整合 MIMIC-III + MIMIC-IV + eICU-CRD 三库,49,099 对,5 分钟窗口,70-100% 饱和度;
- BOLD 已被用作教学工具,出现在哈佛 T.H. Chan 公共卫生学院 BST 209 暑期课程(“Collaborative Data Science in Healthcare”)与日本东京医科齿科大学的 第 3 届 Big Data Machine Learning Healthcare Datathon;
- 团队把模块化脚本开源(GitHub),并明确希望它能被扩展到其他读数(体温、血压)、其他场景(家庭/基层/急诊)、其他数据系统。
这条"datathon → 正式数据集 → 教学复用"的路径,是开放数据生态里值得记录的范式:一份为解决具体公平性问题而生的竞赛数据,最终长成了可被全球课堂复用的公共资产。
7.3 在脉搏血氧公平性研究中的位置
把本数据集/ BOLD 放进该领域的图景:
| 资源 | 性质 | 贡献 |
|---|---|---|
| Sjoding 2020(NEJM)等临床研究 | 证据 | 证实脉搏血氧对深肤色人群的偏差与后果 |
| 本数据集 | 竞赛配套配对数据 | 首次把 MIMIC-IV 的 SaO2-SpO2 配对做成人人可复用的建模素材(凭据) |
| BOLD | 三库整合正式数据集 | 跨库、严窗口、带区间约束的升级版 |
| 各类校正模型论文 | 方法 | 用配对数据训练/评测 SpO2→SaO2 映射 |
本数据集的独特价值在于**“开源了问题的燃料”**:在它之前,想研究脉搏血氧偏差的研究者得自己从 MIMIC-IV 里从头配对(正是团队自己做过的事);在它之后,配对逻辑(MIT 代码)+ 配对数据(凭据)双双公开,领域进入门槛大幅下降。
7.4 一个数据工程的正面样本
抛开临床意义,本数据集在数据工程上是正面样本:
- 可复现:配对逻辑用 SQL 明确表达,代码 MIT 开源,任何人可审阅"81,797 是怎么来的";
- 血缘清晰:PhysioNet 页面用 “Parent Projects” 明确标注派生自 MIMIC-IV v2.2;
- 模块化前瞻:
data-prep从第一天就按"多库适配"设计(MIMIC-IV/MIMIC-III/eICU 分目录),为后续 BOLD 留好接口; - 设计留白:不替使用者做时间取舍,把
delta_SpO2交出去。
这些做法与本库推崇的 AI-Ready 原则高度契合——可惜被"凭据访问 + 区域屏蔽"拉低了可获取性得分(§附录 B)。
§8 方法学启示
8.1 "把时间对齐做成字段"是可迁移的范式
本数据集最值得迁移的设计,是不隐藏不确定性,而是把它变成字段。SpO2 与 SaO2 的配对天然有时间误差,团队没有假装它们同时发生,而是给每个时变变量都配 delta_* 字段,把"这个值离锚点有多远"如实交出。这比任何"我们做了严格对齐"的声明都更诚实、更可用——使用者可以按自己的精度需求过滤(只留 |Δ|≤5min),从而在同一个数据集上实现从"宽召回"到"严精度"的连续调节。
迁移法则:任何把两个不同采样节奏的信号拼在一起的派生数据集,都应暴露配对的时间/空间偏移字段,而非只给"已对齐"的结果。
8.2 规则标签必须连阈值一起交付
hidden_hypoxemia 的教训是:规则派生标签的价值与它的阈值绑定。88% 这个数字、90 分钟这个窗口,都是分析结论的一部分。如果数据集只给标签不给规则,使用者就无法评估敏感性——而本数据集恰好在页面正文与 SQL 两处都给了规则,这是加分项。反面教材是那些"标签来源不明"的派生集。
迁移法则:派生标签必须在文档中给出可复现的构造规则(最好附代码),并提示阈值敏感性。
8.3 公平性数据集的"自曝偏差"义务
本数据集在 Background 段用了近三分之一篇幅主动声明自己带偏差、要求使用者审计公平性。这在传统数据集文档里罕见(多数只讲"我的数据多好"),却应是公平性取向数据集的标准动作。它把"伦理约束前置到数据获取环节",而不是甩给下游。
迁移法则:涉及弱势群体的数据集,作者应在数据卡片中明确:(1) 已知偏差类型;(2) 公平性审计要求;(3) 部署前的前置条件。
8.4 "竞赛快照"作为独立数据集的价值
本条目与 BOLD 并存引出一个有趣命题:被更完整版本取代的"快照",是否还有保留价值? 本数据集的答案是"有"——因为:(1) 它记录了 2023 年那场 datathon 的确切数据状态,可复现竞赛任务;(2) 它的宽窗口+全区间取向与 BOLD 是互补而非被取代;(3) 它是理解"数据集如何演进"的活标本。这提醒数据集目录的编辑者:不要因为有了新版就删除旧版条目,血缘链上的每一环都有检索与教学价值(§5.4)。
§9 与库内条目的关系
9.1 家族图谱
- mimic-iv-clinical-database(rid 4)/ mimiciv(rid 592):直接上游源库。本条目是 MIMIC-IV v2.2 的任务化派生;两篇同读才能拼出"源库全貌 + 本条目切片"。
- mimic-iii(rid 106):上游旁支。BOLD 版另整合了 MIMIC-III,本 datathon 版未含——检索"血氧配对+三库"应指向 BOLD。
- eicu-crd(rid 552)/ eicu-collaborative(rid 9):上游旁支。同为 BOLD 的源库之一,本条目未含。
- mimic-iv-ext-pe(rid 618):同源派生(MIMIC-IV-EXT 影像任务)。任务域完全不同(PE 影像 vs 血氧时序),是同族不同业的兄弟——检索"MIMIC-IV 派生"时两者应并列,靠任务标签区分。
- mimic-iv-ed(rid 116/567)/ mimic-iv-waveform(rid 65)/ mimic-iv-ecg(rid 172):同源兄弟,分别覆盖急诊、波形信号、心电——与本条目同属"MIMIC-IV 任务化切片"家族。
- clinical-trajectory-flow-icu(rid 962):ICU 临床轨迹数据集,是重症时序建模的近邻——与本条目共享"ICU 多变量时序"的问题域(公平性分析可互为方法参照)。
- vitaldb(rid 192):术中生理信号数据集,同属"生理信号 + 临床上下文"大类,可作跨场景对照。
- fairseg(rid 371)/ harvard-fairvision(rid 863):公平性/公平视觉数据集,与本条目共享"算法公平性"的问题意识(不同模态)。
9.2 检索路径建议
- 检索词组合:精确短语
"MIT Critical Datathon 2023"+ (pulse oximetryORSaO2ORSpO2) +MIMIC-IV;避免只用 “datathon”(会命中大量无关活动)。 - 想拿数据:PhysioNet 页面 → 走凭据流程(身份核验+CITI+DUA);无公开小样本。
- 想读代码:GitHub
CriticalDatathon/data-prep(MIT,可直接复用配对 SQL)。 - 想找更大/更新的版本:查 BOLD(blood-gas and oximetry linked dataset,三库 49,099 对)——但注意它是不同数据集,不是本数据集的版本号。
- 想做公平性研究:引本条目 PhysioNet 页的 Background +
hidden_hypoxemia定义,并遵守其公平性审计要求。
9.3 与库内"挑战赛数据集"标签条目的关系
库内 category_tags 含"挑战赛数据集"的条目(如各类 Kaggle/grand-challenge 竞赛数据)与本条目共享一个标签,但性质差异值得记录:
| 维度 | 典型线上挑战赛数据集 | 本条目 |
|---|---|---|
| 竞赛形式 | 线上、有 leaderboard | 线下 datathon、无公开榜 |
| 提交物 | 预测结果文件 | 团队 notebook(散落各仓库) |
| 评测 | 官方固定指标 | 未预设,使用者自定 |
| 获取 | 多为公开/注册 | Credentialed(凭据) |
| 定位 | 排名与刷榜 | 教学与公平性研究 |
因此本条目虽带"挑战赛数据集"标签,却是异类——它更像"hackathon 教学素材 + 研究数据前身"。标签命中的目的是让检索"临床挑战/竞赛数据"的用户也能发现它,但要提示其"无榜、凭据、教学向"的三点特殊性。
9.4 与库内公平性条目的关系
本条目是库内少数以"消除偏差"为核心目标的数据集。与 fairseg(rid 371)、harvard-fairvision(rid 863)等公平性/公平视觉条目相比:
- 共同点:都关注模型在不同人群分组上的表现差异;都要求公平性审计。
- 差异点:fairseg/harvard-fairvision 多在视觉模态上做群体公平(分割/分类),本条目在临床时序/设备测量上做公平——偏差的来源是物理设备(血氧仪)而非数据分布,因此更接近"测量公平(measurement equity)"问题。
- 方法互鉴:本条目的"按 race_group 分层报误差分布"做法,可直接迁移到任何公平性数据集;反之,视觉公平里常用的"分组校准"思路也适用于本条目的校正模型。
9.5 检索三角的构建建议
本条目与 MIMIC-IV 家族、BOLD(未来)应组成检索三角。建议的库内导航形态:
源库层:MIMIC-IV(4/592) MIMIC-III(106) eICU-CRD(552)
│ │ │
任务切片层: 本条目(MIMIC-IV 血氧配对) mimic-iv-ed(116/567) mimic-iv-ecg(172) …
│
整合扩版层: BOLD(三库血氧配对,待入库)
任一条目页都应能一键跳向"上游源库 / 下游扩版 / 同任务兄弟"。本条目在成稿时已把 MIMIC-IV(4/592)、MIMIC-III(106)、eICU-CRD(552)、ICU 轨迹(962)、MIMIC-IV-EXT-PE(618) 写入互链;待 BOLD 入库后应补上双向链接(附录 J 触发点 1)。
§10 避坑清单:八个已踩过的坑
坑 1:它不是"数据集",是"datathon 配套数据"。 检索时若期待它像 Kaggle 竞赛那样有公开 leaderboard、排行榜、冠军方案,会一无所获。它是线下 MIT Critical Datathon(2023-05-18/19)的训练/评测素材,团队提交散落在 team-1~team-10 各自仓库(多为空 notebook),没有官方基准分数。引用它的价值在于数据与方法,不在于竞赛排名。
坑 2:"81,797 对"不是患者数,也不是测量事件数。 这是配对行数(row)。数据集未披露涉及多少唯一患者或 ICU stay——上游 MIMIC-IV 的 50,920 是整体口径,不是本子集。做训练/测试划分时若按行随机切分,同一患者的多次配对会跨集泄漏。必须先按 subject_id 划分(而 subject_id 是数据里的字段,可用于此),但患者总数需自算。
坑 3:代码 MIT ≠ 数据开源。 GitHub data-prep 是 MIT License(代码可自由复制/修改/再分发),但数据本体受 PhysioNet Credentialed License 1.5.0 约束(需凭据+DUA+CITI)。“代码开源"经常被误读成"整个项目开源”,进而误以为数据可用——两条完全独立。
坑 4:它与 BOLD 的关系常被搞反。 本条目(81,797 对、90 分钟窗口、单库 MIMIC-IV)是 BOLD(49,099 对、5 分钟窗口、三库 MIMIC-III/IV/eICU)的前身。配对数多的一方是更早的版本——因为 BOLD 刻意收紧了窗口与饱和度区间。不要按"数量"判断版本新旧,按纳入标准严格度判断。
坑 5:区域屏蔽会让"有凭据也下不了"。 PhysioNet 页面对部分地区返回 “Data is not available in your region due to legal or policy restrictions.”。即便你完成了全部凭据流程,仍可能因地理位置无法下载——规划跨国团队协作时要提前确认。
坑 6:hidden_hypoxemia 直接用于回归任务会泄漏。 该标签的定义里含 SaO2(SpO2≥88 且 SaO2<88)。做"SaO2 预测"或"Gap 预测"时若把它当输入特征,就是把目标信息泄进输入。它只应作为分类任务的目标、或回归任务的事后分层标签(§4.4)。
坑 7:race 是肤色偏差的"代理变量"而非"因果变量"。 脉搏血氧偏差的物理机制由黑色素(肤色)驱动,而数据集只有自报种族(race/race_group)。用 race 分层做审计会把"色素深度"与"社会经济/照护路径"混为一谈,且组内方差可能很大。报告时应把 race 当代理变量,给分组误差分布而非单点均值(§4.3)。
坑 8:Regresion 拼写笔误与 DOI 双口径。 PhysioNet 页 Evaluation 节第三项把 “Regression” 写成 “Regresion”(原文笔误);同时 DOI 有两个口径:Discovery DOI (v1.0.0) 10.13026/jfpc-pz79 vs DOI (latest) 10.13026/8vsr-1f85(当前同为 v1.0.0)。引用时统一口径并注明版本;自动抓取不要因拼写差异漏检。
§11 总结
11.1 三句话总结
- MIT Critical Datathon 2023 是一份从 MIMIC-IV v2.2 派生的 81,797 条 SaO2-SpO2 配对数据集,为构建脉搏血氧校正模型、消除种族相关的血氧测量偏差而生。
- 它的技术核心是"90 分钟窗口配对 + 138 变量上下文 + 规则派生的 hidden_hypoxemia 标签",且把配对时间偏移(delta_SpO2)如实交付使用者,让其自选精度。
- 它是 BOLD 三库整合版的前身——配对数更多但窗口更宽、库更少;两者是同一血缘的两代产物,共存而非替代。
11.2 适合谁
- 脉搏血氧公平性研究者:要成对的 SaO2-SpO2 数据与临床上下文,直接开工。
- 临床机器学习团队:需要一个真实的、带时间不确定性的 EHR 配对数据做时序对齐/校正建模练习。
- 数据工程研究者:
data-prep的模块化配对流水线(MIT 代码)是"派生数据集如何做成监督信号"的活样本。 - 医学教育与 datathon 组织者:一份"低门槛、可复用、带伦理自省"的教学数据集范式。
11.3 不适合谁
- 需要公开即取数据的团队:凭据+DUA+CITI+区域限制,无法"下载即用"。
- 需要大样本或跨库泛化的团队:单库 MIMIC-IV、且严格配对下样本更少——应优先考虑 BOLD 或直接回 MIMIC-IV。
- 需要官方基准对标的团队:无 leaderboard、无基准分数,评测协议需自定。
11.4 30 秒决策卡
| 你的情况 | 行动 |
|---|---|
| 想研究脉搏血氧种族偏差 | 走 PhysioNet 凭据流程取本数据集;读 §4 偏差三层框架 |
| 想复用配对逻辑 | GitHub CriticalDatathon/data-prep(MIT)直接抄 SQL |
| 想要更大/更新的血氧配对集 | 查 BOLD(三库 49,099 对,5 分钟窗口)——注意是不同数据集 |
| 在 MIMIC-IV 上做通用 ICU 研究 | 回 MIMIC-IV 原库(rid 4/592);本条目只是血氧切片 |
| 要写数据集综述 | §5 血脉对比表 + §8 方法学启示可直接引用 |
| 要引用本数据集 | 用 DOI 10.13026/jfpc-pz79(v1.0.0),注明 PhysioNet 与 2023-05-08 |
FAQ(高频问答 30 问)
A. 基础认知
Q1:MIT Critical Datathon 2023 是挑战赛吗?
是一场线下 datathon(2023-05-18/19,Cambridge, MA),配套本数据集。它有竞赛任务,但无公开 leaderboard,团队提交散落在各 team 仓库。
Q2:数据从哪来?
从 MIMIC-IV v2.2 派生——把 ICU 中每次 SaO2(动脉血气)与其前 90 分钟内最近的 SpO2 配对。
Q3:为什么叫 “Pulse Oximetry Correction Models”?
目标是训练"校正模型",把脉搏血氧仪读到的 SpO2 映射回更接近真实的 SaO2,从而修正对深肤色人群的系统性高估。
Q4:谁做的?
MIT Laboratory for Computational Physiology / MIT Critical Data,11 位作者,含 João Matos、Tristan Struja、David S Restrepo、Leo Anthony Celi 等。
Q5:什么时候发布的?
PhysioNet 2023-05-08,Version 1.0.0(唯一版本)。
B. 数据与规格
Q6:81,797 是什么?
ICU SaO2-SpO2 配对行数——不是患者数(未披露),不是测量事件数。
Q7:多少变量?
138 个字段(GitHub 变量字典实测):人口学、SOFA 六系统、治疗、实验室、生命体征、配对核心。
Q8:配对窗口为什么是 90 分钟?
SaO2 是离散血气值、SpO2 是连续监护,两者很少同刻。90 分钟是宽松窗口(重召回),每条附 delta_SpO2 让你自选精度。
Q9:SpO2 有限制区间吗?
配对时仅要求 0 < SpO2 ≤ 100;未限制在健康区间(这一点 BOLD 收紧到了 70-100%)。
Q10:hidden_hypoxemia 怎么定义?
SpO2 ≥ 88% 且 SaO2 < 88% 时置 1——仪器读数达标但真实血氧不达标。
Q11:文件是什么?
mimic_pulseOx_data.csv(主数据)+ mimic_pulseOx_dictionary.csv(变量字典)。
Q12:数据里有多少患者?
未披露。上游 MIMIC-IV v2.2 覆盖 50,920 名唯一患者(2008-2019,BIDMC),但那是整体口径。
C. 获取与许可
Q13:怎么拿到数据?
PhysioNet Challenge Credentialed Access:身份核验 + 签 Credentialed Health Data Use Agreement 1.5.0 + CITI “Data or Specimens Only Research” 培训。
Q14:有公开直链或小样本吗?
没有。无 Demo 子集、无 HF/Kaggle 镜像;部分地区还因法律/政策屏蔽下载。
Q15:代码能免费用吗?
能。GitHub CriticalDatathon/data-prep 是 MIT License,可自由复制/修改/再分发代码。
Q16:那数据也能自由用吗?
不能。 代码 MIT ≠ 数据开源;数据受 PhysioNet Credentialed License 1.5.0 约束(坑 3)。
Q17:能商用吗?
需按 PhysioNet Credentialed Health Data License 条款与 DUA 执行,通常限于研究用途;商用前须核实协议(本条目不给法律意见)。
Q18:数据可以再分发吗?
不允许随意再分发——凭据协议通常禁止向未授权方转交,请以 DUA 条款为准。
D. 与 BOLD / MIMIC-IV 的关系
Q19:它和 BOLD 什么关系?
本条目是 BOLD 的前身。BOLD 把它扩版为三库(MIMIC-III/IV/eICU)、5 分钟窗口、70-100% 区间、49,099 对。
Q20:为什么 BOLD 配对数更少?
因为 BOLD 收紧了纳入标准(窗口 90min→5min、加区间裁剪)——"少而准"的设计取舍。
Q21:它和 MIMIC-IV 什么关系?
是 MIMIC-IV 的任务化派生切片:只保留能配对的记录,把宽表压成单张 138 列 CSV。
Q22:它用的 MIMIC-IV 是哪个版本?
v2.2。后续 MIMIC-IV 已迭代,本数据集未跟进——引用源库人口数字要注明 v2.2 口径。
Q23:库内还有别的 MIMIC-IV 派生条目吗?
有多个(如 mimic-iv-ed、mimic-iv-waveform、mimic-iv-ecg、mimic-iv-ext-pe 618),但任务域都不同——它们靠任务标签区分,不是竞品。
E. 任务与公平性
Q24:能做哪些任务?
三类:Hidden Hypoxemia 预测(分类)、SaO2 预测(回归)、SaO2−SpO2 Gap 预测(回归)。
Q25:评测指标是什么?
未预设——“depends on the study design”,由使用者自定并须兼顾公平性。
Q26:为什么强调公平性?
因为脉搏血氧对深肤色人群系统性高估 SaO2,导致"隐藏低氧血症"被漏诊。数据集要求训练前后做公平性审计。
Q27:数据里有肤色字段吗?
没有直接的肤色测量;只有自报 race/race_group(代理变量,坑 7)。
Q28:用 race 分组审计够吗?
不够理想——肤色≠种族。应把 race 当代理变量,报告分组误差分布而非单点均值。
Q29:hidden_hypoxemia 能直接当回归任务输入吗?
不能——它含 SaO2 信息,会泄漏(坑 6)。
Q30:这份数据能直接部署校正模型吗?
不能直接部署。PhysioNet 页要求部署前做公平性审计+模型解释,且数据携带多重内嵌偏差。
F. BOLD 对比专题
Q31:为什么不直接用 BOLD?
两者定位不同:本条目是 2023 竞赛配套数据(重召回、多配对),BOLD 是正式整合版(严窗口、三库、少配对)。若你要复现那场 datathon 的任务,用本条目;若要做跨库泛化,用 BOLD。
Q32:BOLD 的 49,099 对为什么更少却"更好"?
因为它做了两次收紧——窗口 90min→5min(时间对齐更可信)与饱和度裁剪到 70-100%(剔除极端不可靠读数)。配对更少但每对更可靠。
Q33:两个数据集的字段一样吗?
不完全一样。本条目披露 138 变量;BOLD 的字段以 BOLD 论文/PhysioNet 为准(本条目未核)。跨数据集复用时需重新对齐字段名与单位。
Q34:能在同一研究里同时用两个吗?
可以,但不能合并去重后当一个大样本——它们源自同一批 MIMIC-IV 记录,存在重叠,合并会重复计数。正确做法是分别报告,或明确各自的分析角色。
Q35:哪个更适合教学?
本条目更适合入门(宽窗口、配对多、有 datathon 任务设定),BOLD 更适合进阶研究(跨库、严格对齐)。
G. 复现与工程细节
Q36:配对 SQL 能直接跑吗?
能,但要替换 db_name 与 project 名。官方 SQL 里的 db_name.mimiciv_pulseOx 与 physionet-data.mimiciv_icu 需改成你自己的凭据项目路径。
Q37:为什么用 MAX(charttime) 而不是 MIN?
因为要找 SaO2 之前最近的 SpO2——在"前 90 分钟内"的约束下,MAX(charttime) 就是离 SaO2 最近的那次 SpO2。
Q38:如果某个 SaO2 前 90 分钟没有 SpO2 会怎样?
LEFT JOIN 会留下该 SaO2 但 SpO2 为空,后续聚合实际会把它作为无效配对待处理。最终 81,797 是有效配对数。
Q39:delta_SpO2 的正负怎么读?
数据字典写:正值表示 SpO2 在 SaO2 之后记录,负值表示在之前。但官方配对规则限定 SpO2 在 SaO2 前 90 分钟内,故绝大多数应为非正值——建议拿到数据后核对符号约定(页面对 delta 符号的描述与 SQL 的窗口方向存在表述张力,属可核查点)。
Q40:怎么防止患者级泄漏?
用 subject_id 做 group split(GroupKFold 等按 subject_id 分组)。不要按行随机切分——同一患者的多次配对会跨集。
Q41:类别不平衡怎么办?
hidden_hypoxemia 阳性(SpO2≥88 且 SaO2<88)通常是少数类。建议:报告 PR-AUC 而非只看 ROC-AUC;用分组分层采样;永远同时给按 race_group 分层的召回率——因为"漏诊隐藏低氧"本身就是公平性问题。
Q42:能直接用于生产临床吗?
不能。数据集页明确要求部署前做公平性审计与模型解释;且数据携带多重内嵌偏差,单一机构(BIDMC)回顾性来源,外推性有限。
H. 生产与库内
Q43:本条目为什么命名为 mit-critical-datathon-2023?
因为它以数据集官方全称的核心词命名(MIT Critical Datathon 2023),与 PhysioNet slug mit-critical-datathon-2023 一致,便于检索对齐。
Q44:它与库内 MIMIC 家族冲突吗?
不冲突。它们是血缘上下游 + 任务兄弟关系:MIMIC-IV(源库)→ 本条目(血氧切片)→ BOLD(三库扩版)。互链而非去重(§9)。
Q45:如果 BOLD 入库了,本条目会被删吗?
不会。按 §8.4,被更完整版本取代的"竞赛快照"仍有独立检索与教学价值,应保留并互链,而非删除。
事实清单(硬事实 30 条)
- 官方全称:MIT Critical Datathon 2023: a MIMIC-IV Derived Dataset for Pulse Oximetry Correction Models。
- PhysioNet Version 1.0.0,Published 2023-05-08;RRID:SCR_007345。
- Discovery DOI (v1.0.0)
10.13026/jfpc-pz79;DOI (latest)10.13026/8vsr-1f85。 - 作者 11 人:João Matos、Tristan Struja、David S Restrepo、Luis Filipe Nakayama、Jack Gallifant、Luca Weishaupt、Nikita Mullangi、Maria Loureiro、Skyler Shapiro、Adrien Carrel、Leo Anthony Celi。
- 归属 MIT Laboratory for Computational Physiology / MIT Critical Data;NIH 资助 U24EB037545、R01EB030362。
- 规模:81,797 条 ICU SaO2-SpO2 配对。
- 派生源:MIMIC-IV v2.2(上游 50,920 名唯一患者,BIDMC,2008-2019)。
- 变量字典 138 字段(GitHub
data-prep/MIMIC-IV/README.md实测)。 - SaO2 itemid=220227;SpO2 itemid=220277。
- 配对窗口:SpO2 须落在 SaO2 前 90 分钟内(
0 ≤ Δ ≤ 90分钟)。 - SpO2 有效范围:
> 0且≤ 100。 - 偏移字段
delta_SpO2(分钟,符号可正可负)。 - hidden_hypoxemia:SpO2 ≥ 88% 且 SaO2 < 88% → 1(规则派生)。
- 时变变量均附
delta_*相对偏移字段;基线变量无 delta。 - 主键:(subject_id, stay_id, SaO2_timestamp)。
- 数据文件:
mimic_pulseOx_data.csv+mimic_pulseOx_dictionary.csv(CSV)。 - 建议任务三类:Hidden Hypoxemia Prediction / SaO2 Prediction / SaO2−SpO2 Gap Prediction。
- 评估指标未预定义(“depends on the study design”)。
- 访问档:Challenge Credentialed Access(签 DUA 1.5.0 + CITI 培训者方可访问)。
- 数据许可:PhysioNet Credentialed Health Data License 1.5.0;DUA 版本 1.5.0。
- 必需培训:CITI “Data or Specimens Only Research”。
- 区域限制:部分地区 “Data is not available in your region due to legal or policy restrictions.”。
- 代码仓:GitHub
CriticalDatathon/data-prep,MIT License(Copyright © 2023 MIT Health Datathon 2023)。 - 代码仓项目状态:MIMIC-IV(completed)/ MIMIC-III(under revision)/ eICU-CRD(in progress)。
- datathon:2023-05-18/19,Riverfront Office Park, Cambridge, MA;参赛者为高中生+CS 本科生;主题 “Patient Safety through a Health Equity Lens”。
- 上游伦理:MIMIC-IV 全去标识,BIDMC IRB 豁免知情同意;本派生研究判定豁免。
- BOLD(继任版)据 Springer Nature 博客:三库(MIMIC-III/IV/eICU)、49,099 对、5 分钟窗口、70-100% 区间。
- BOLD 被用于哈佛 T.H. Chan 公共卫生学院 BST 209 课程与东京医科齿科大学第 3 届 datathon。
- 页面 Background 要求模型部署前做公平性与可解释性审计。
- 主要自曝局限:采样选择偏差(无法配对的患者未纳入)。
术语表(28 条)
| 术语 | 释义 |
|---|---|
| SpO2 | Peripheral oxygen saturation,脉搏血氧仪测的外周血氧饱和度(无创) |
| SaO2 | Arterial oxygen saturation,动脉血气测的血氧饱和度(金标准,有创) |
| Pulse oximetry | 脉搏血氧测量,基于光吸收原理、无需抽血的连续血氧监测 |
| Pulse oximetry correction model | 脉搏血氧校正模型:把 SpO2 映射回更接近 SaO2 的模型 |
| Hidden hypoxemia | 隐藏低氧血症:SpO2 读数达标(≥88%)但 SaO2 已低于 88% |
| SaO2−SpO2 gap | 动脉/外周血氧饱和度差值,偏差的直接度量 |
| ABG (arterial blood gas) | 动脉血气分析,SaO2 的来源测量 |
| MIMIC-IV | Medical Information Mart for Intensive Care IV,公开重症 EHR 数据库 |
| MIMIC-III | MIMIC-IV 的前代重症 EHR 数据库 |
| eICU-CRD | eICU Collaborative Research Database,多中心重症 EHR 库 |
| BOLD | Blood-gas and Oximetry Linked Dataset,三库整合的血气血氧配对数据集 |
| Chartevents | MIMIC 中床边监护记录的时序事件表 |
| itemid | MIMIC 中标识测量类型的编码(本数据 SaO2=220227、SpO2=220277) |
| delta_SpO2 | 配对的 SpO2 相对 SaO2 的时间偏移(分钟) |
| EAV (entity-attribute-value) | MIMIC 原始表的长表结构(事件-属性-值) |
| SOFA score | Sequential Organ Failure Assessment,器官衰竭序贯评分(六系统) |
| FiO2 | 吸入氧浓度分数 |
| RRT | Renal Replacement Therapy,肾替代治疗 |
| CCI | Charlson Comorbidity Index,合并症指数 |
| Credentialed Access | PhysioNet 凭据访问档:须身份核验+DUA+培训 |
| DUA (Data Use Agreement) | 数据使用协议,约束数据用途与再分发 |
| CITI training | 研究伦理合规在线培训(本数据要求 “Data or Specimens Only Research”) |
| Sampling selection bias | 采样选择偏差:数据纳入规则导致的人群不代表性 |
| Health equity | 健康公平:不同人群获得同等健康结果的目标 |
| Fairness audit | 公平性审计:评估模型在不同人群分组上的表现差异 |
| Melanin | 黑色素,皮肤色素,影响脉搏血氧光吸收的物理因素 |
| race_group | 数据集中的种族的归并分组变量(偏 fairness 分析用) |
| Datathon | 数据马拉松,限时团队协作的开放式数据活动 |
附录
附录 A:条目信息速查卡
| 项 | 值 |
|---|---|
| 条目名 | MIT Critical Datathon 2023 |
| url_name | mit-critical-datathon-2023 |
| 类型 | 竞赛配套派生数据集(MIMIC-IV → 血氧配对) |
| PhysioNet | https://physionet.org/content/mit-critical-datathon-2023/1.0.0/ |
| DOI | 10.13026/jfpc-pz79(v1.0.0) |
| 规模 | 81,797 配对 × 138 变量 |
| 上游 | MIMIC-IV v2.2 |
| 许可 | PhysioNet Credentialed Health Data License 1.5.0(数据)/ MIT(代码) |
| 抓取时点 | 2026-10-09 |
| 库内互链 | mimic-iv-clinical-database(4)/mimiciv(592)/mimic-iii(106)/eicu-crd(552)/clinical-trajectory-flow-icu(962)/mimic-iv-ext-pe(618) |
附录 B:DAIMS 评估全表
| 维度 | 评分(1-10) | 依据 |
|---|---|---|
| D 可发现性 | 7 | PhysioNet 页面 + 明确 DOI + GitHub 代码仓可索引;但名称含 “Datathon” 易与活动混淆,无独立期刊论文页 |
| A 可获取性 | 3 | Credentialed Access + DUA + CITI + 区域屏蔽四重门;无公开小样本——最大失分项 |
| I 可互操作 | 6 | CSV 单表 + 清晰的 itemid/字段字典;但无标准 FHIR/OMOP 映射,宽表需自行加载 |
| M 元数据质量 | 8 | 138 变量字典 + 配对 SQL 全公开 + 血缘明确(MIMIC-IV v2.2);页内一处拼写笔误(Regresion) |
| S 可持续性 | 6 | 依托 PhysioNet 长期平台(RRID 稳定);无版本迭代但资源稳定;代码仓 MIT 可长期复用 |
| 综合评级 | 6.0/10(中) | 元数据与血缘优秀;可获取性被 Credentialed+区域限制严重拖低 |
附录 C:事实来源对照表
| 关键事实 | 来源 | 位置 |
|---|---|---|
| 81,797 配对 | PhysioNet 页 Abstract | 页面正文 |
| MIMIC-IV v2.2 / 50,920 患者 / 2008-2019 | PhysioNet 页 Data Description | 页面正文 |
| 90 分钟窗口 / itemid 220227、220277 | GitHub data-prep/MIMIC-IV/SpO2_SaO2_pairs.SQL |
代码 |
| hidden_hypoxemia 定义 | PhysioNet 页正文 + SQL | 两处互证 |
| 138 变量字典 | GitHub data-prep/MIMIC-IV/README.md |
代码仓 |
| 11 作者与机构 | PhysioNet 页作者区 | 页面正文 |
| Credentialed Access / DUA 1.5.0 / CITI | PhysioNet 页 Access/License | 页面正文 |
| 区域屏蔽原文 | PhysioNet 页 Files 区 | 页面正文 |
| MIT License(代码) | GitHub data-prep/LICENSE |
代码仓 |
| BOLD 49,099 对 / 5 分钟 / 70-100% / 三库 | Springer Nature 博客(作者自述) | communities.springernature.com |
| datathon 日期/地点/参赛者 | 官网 criticaldatathon.github.io | 网站 |
| DOI 双口径 | PhysioNet 页 Discovery/DOI 区 | 页面正文 |
附录 D:获取决策树
你想用这份数据做什么?
├── 要训练/评测脉搏血氧校正模型
│ ├── 1) 注册 PhysioNet → 完成身份凭据核验
│ ├── 2) 签 Credentialed Health Data Use Agreement 1.5.0
│ ├── 3) 完成 CITI "Data or Specimens Only Research" 培训
│ └── 4) 下载 mimic_pulseOx_data.csv(注意区域限制)
├── 只想读代码 / 复用配对逻辑
│ └── GitHub CriticalDatathon/data-prep(MIT,可直接抄 SQL)
├── 想要更大/更新的血氧配对集
│ └── 查 BOLD(三库 49,099 对,5 分钟窗口)——是不同数据集
└── 做通用 ICU 研究(非血氧)
└── 回 MIMIC-IV 原库(rid 4/592)
附录 E:变量族速查(138 字段归类)
| 族 | 字段数(约) | 代表字段 |
|---|---|---|
| 标识与配对核心 | 8 | subject_id、stay_id、hadm_id、SaO2_timestamp、SaO2、SpO2、delta_SpO2、hidden_hypoxemia |
| 人口学与社会 | 8 | gender、sex_female、anchor_age、race、race_group、language、insurance、anchor_year_group |
| 就诊/住院结构 | 9 | admittime、dischtime、icu_intime、icu_outtime、los_hospital、los_icu、first_hosp_stay、first_icu_stay、icustay_seq |
| 严重度/合并症 | 9 | CCI、SOFA_admission、mortality_in、sofa_coag/liver/cv/cns/renal/resp |
| 治疗与支持 | 9+ | ventilation_status、invasive_vent、delta_vent_start、FiO2、delta_FiO2、rrt、delta_rrt、norepinephrine_equivalent_dose、delta_vp_start |
| 实验室(血常规/凝血/化学) | 60+ | hemoglobin、platelet、wbc、creatinine、lactate、ph、bun、sodium、potassium、bilirubin_total/direct/indirect 等(各含 delta_ 孪生) |
| 生命体征 | 12 | heart_rate、mbp、resp_rate、temperature、glucose、heart_rhythm(各含 delta_) |
附录 F:三类任务实现骨架
import pandas as pd
df = pd.read_csv("mimic_pulseOx_data.csv") # 81,797 × 138
# 关键:按患者划分,避免同患者跨集泄漏
subjects = df["subject_id"].unique()
# train_df / test_df 按 subject_id 分组切分(此处略)
# 任务1 Hidden Hypoxemia 预测(分类,输入不含 SaO2)
X = df[["SpO2", "FiO2", "heart_rate", "mbp", "resp_rate", "temperature"]]
y = df["hidden_hypoxemia"]
# 任务2 SaO2 预测(回归)
# X 同上;y = df["SaO2"]
# 任务3 SaO2-SpO2 Gap 预测(回归,校正模型核心)
y_gap = df["SaO2"] - df["SpO2"]
# 精度自选:只保留 |delta_SpO2| <= 5 分钟的严格子集
strict = df[df["delta_SpO2"].abs() <= 5]
# 公平性审计:按 race_group 分层报误差,而非只报总体均值
# for g, sub in test_df.groupby("race_group"):
# report_error(sub) # 必须给分组误差分布 + 置信区间
附录 G:配对 SQL 复现要点(MIT 代码)
-- 核心:SaO2(220227) 匹配前 90min 内最近 SpO2(220277)
WITH pairs AS (
SELECT sao2.subject_id, sao2.stay_id,
sao2.charttime AS SaO2_timestamp,
MAX(spo2.charttime) AS SpO2_timestamp
FROM mimiciv_icu.chartevents sao2
LEFT JOIN (
SELECT stay_id, charttime, valuenum AS SpO2
FROM mimiciv_icu.chartevents
WHERE itemid = 220277 AND valuenum > 0 AND valuenum <= 100
) spo2 ON spo2.stay_id = sao2.stay_id
AND TIMESTAMP_DIFF(sao2.charttime, spo2.charttime, MINUTE) <= 90
AND TIMESTAMP_DIFF(sao2.charttime, spo2.charttime, MINUTE) >= 0
WHERE sao2.itemid = 220227
GROUP BY subject_id, stay_id, SaO2_timestamp
)
-- 派生 hidden_hypoxemia
-- CASE WHEN SpO2 >= 88 AND SaO2 < 88 THEN 1 ELSE 0 END
附录 H:统计卫生四条守则
- 别把 81,797 当患者数——它是配对行数;按患者划分是硬要求(坑 2)。
- 窗口可自选但要声明——用 90 分钟全窗还是收紧到 5 分钟,必须写明,因为它直接影响结论(§2.2)。
- 规则标签要报告阈值敏感性——88% 与 90 分钟是分析结论的一部分,不是背景(§8.2)。
- 公平性必须分层报告——只报总体 R² / AUC 会掩盖分组缺陷,这正是本数据集想解决的问题(§4)。
附录 I:BOLD 关系声明
| 维度 | 本条目(datathon 版) | BOLD(整合版) |
|---|---|---|
| 源库 | MIMIC-IV v2.2 | MIMIC-III + MIMIC-IV + eICU-CRD |
| 配对数 | 81,797 | 49,099 |
| 窗口 | 90 分钟 | 5 分钟 |
| 饱和度区间 | 未限 | 70-100% |
| 性质 | 竞赛配套派生 | 正式整合数据集(Scientific Data) |
| 关系 | 前身 | 继任 |
两篇不冲突:本条目是"竞赛快照",BOLD 是"研究级整合版"。检索任一条目都应提示另一条;不要据配对数大小判断版本新旧(坑 4)。
附录 J:维护计划与触发点
| 触发点 | 条件 | 动作 | 优先级 |
|---|---|---|---|
| BOLD 库内条目上线 | BOLD 完成入库 | 补 §5.1 与 §附录 I 的 BOLD rid,双向互链 | 1 |
| 数据集版本更新 | PhysioNet 出 v1.0.1/v2 | 更新 §6 版本链与 DOI | 2 |
| 第三方评测出现 | 有论文用本数据集报告基准 | §7 生态扩记 | 3 |
| MIMIC-IV 版本迁移 | 团队跟进到 v3.x | §2.1、§5.2 版本口径更新 | 4 |
| 区域限制变更 | PhysioNet 解除/扩大屏蔽 | §6.1 更新 | 5 |
附录 K:检索路径示范
| 目标 | 推荐查询式 | 预期命中 |
|---|---|---|
| 数据集页 | “MIT Critical Datathon 2023” + PhysioNet | physionet.org/content/mit-critical-datathon-2023 |
| 配对代码 | CriticalDatathon data-prep + SpO2 SaO2 pairs | GitHub 仓库 |
| 后继整合版 | “BOLD” + blood-gas + oximetry + dataset | Scientific Data / PhysioNet |
| 临床证据 | Sjoding pulse oximetry racial bias NEJM | NEJM 2020 |
| 公平性框架 | pulse oximetry hidden hypoxemia + health equity | 多篇 JAMA/NEJM |
附录 L:缩写速查
| 缩写 | 全称 |
|---|---|
| SaO2 | Arterial oxygen saturation |
| SpO2 | Peripheral oxygen saturation |
| ABG | Arterial Blood Gas |
| EHR | Electronic Health Record |
| MIMIC-IV | Medical Information Mart for Intensive Care IV |
| BOLD | Blood-gas and Oximetry Linked Dataset |
| DUA | Data Use Agreement |
| CITI | Collaborative Institutional Training Initiative |
| SOFA | Sequential Organ Failure Assessment |
| FiO2 | Fraction of Inspired Oxygen |
| RRT | Renal Replacement Therapy |
| CCI | Charlson Comorbidity Index |
| DAIMS | Discoverability/Accessibility/Interoperability/Metadata/Sustainability |
| BIDMC | Beth Israel Deaconess Medical Center |
| LCP | Laboratory for Computational Physiology |
附录 M:与库内 MIMIC 家族的关系声明
| 维度 | MIMIC-IV(rid 4/592) | 本条目 |
|---|---|---|
| 对象 | 源库全体 ICU 患者与事件 | 仅其 SaO2-SpO2 配对切片 |
| 结构 | 关系型多表(EAV 长表) | 单张 138 列宽 CSV |
| 用途 | 通用 ICU 研究 | 脉搏血氧校正/公平性 |
| 获取 | PhysioNet Credentialed | PhysioNet Credentialed |
| 阅读顺序 | 先 4/592(源库)再本条目(切片) | — |
与库里 mimic-iv-ext-pe(618,影像任务)等同族条目:共享上游血缘与获取档位,任务域完全不同,靠任务标签并列区分(§5.3)。
附录 N:datathon 代码仓全景(GitHub 组织 CriticalDatathon)
据 GitHub 组织页(实测抓取 2026-10-09),该组织含 16 个仓库,构成"活动 + 数据准备 + 团队产出"三层:
| 仓库 | 性质 | 说明 |
|---|---|---|
| data-prep | 数据准备(核心) | 含 MIMIC-IV/MIMIC-III/eICU-1 三库适配目录与配对 SQL;MIT License |
| criticaldatathon.github.io | 活动官网 | 赛程/导师/挑战描述 |
| welcome-mentors / welcome-students | 迎新材料 | 导师与学生包 |
| workshops | 工作坊 notebook | Jupyter Notebook |
| team-1 … team-10 | 参赛队产出 | 各队 notebook(多为空/初稿) |
对使用者的含义:想复用配对逻辑 → 看 data-prep;想了解竞赛任务与氛围 → 看官网与 welcome 包;想参考他人建模思路 → 看 team 仓库(但完成度普遍低,别期待完整的冠军方案)。这也解释了"为什么没有官方基准分"——没有统一的测试集提交与评分机制,是线下活动 + 开放协作的形态。
附录 O:与 BOLD 的字段级差异提示
| 维度 | 本条目 | BOLD |
|---|---|---|
| 披露变量数 | 138 | 以 BOLD 论文为准(未核) |
| 配对窗口 | 90 分钟 | 5 分钟 |
| 饱和度区间 | 未限 | 70-100% |
| 源库 | MIMIC-IV v2.2 | MIMIC-III + MIMIC-IV + eICU-CRD |
| 配对数 | 81,797 | 49,099 |
跨数据集复用时的对齐清单:(1) 字段名可能不同(如偏差字段命名);(2) 源库不同导致 itemid 与单位可能不同;(3) 窗口/区间不同导致 delta 分布与饱和度分布不同——不要假设两表的同名变量可直接纵向拼接。
附录 P:公平性研究检查清单(10 项)
- 声明数据来源与版本:本数据集基于 MIMIC-IV v2.2,单一中心(BIDMC)回顾性。
- 承认采样选择偏差:只纳入可配对者,人群偏重(§4.2)。外推需谨慎。
- 分层报告:所有指标按 race_group 分层,给分组误差分布 + 置信区间,不只报总体。
- race 视为代理变量:数据无肤色测量,race≠melanin(§4.3)。
- 报告 PR-AUC 与阈值敏感性:隐藏低氧是稀有事件;阈值(88%)变化会改结论。
- 防止标签泄漏:回归任务不得把 hidden_hypoxemia 当输入(§4.4)。
- 患者级划分:按 subject_id 分组切分,防跨集泄漏(§2.1 遗留疑点)。
- 时间对齐可追溯:报告所用 delta_SpO2 阈值(全窗 or 收紧),因为窗口影响结论。
- 公平性审计前置:部署前完成跨分组审计 + 模型解释(数据页硬要求)。
- 再分发合规:遵守 PhysioNet Credentialed DUA,不向未授权方转交数据。
附录 Q:本条目生产档案
- 生产通道:正选候选 mit-critical-datathon-2023(无备选)
- 存在性核验:PhysioNet 内容页实测(curl 抓取正文)+ GitHub
data-prep代码仓 + datathon 官网 + Springer Nature 博客(BOLD 对比)——四源互证 - 一手来源:PhysioNet 页(v1.0.0)、
CriticalDatathon/data-prep(README + SpO2_SaO2_pairs.SQL + LICENSE)、criticaldatathon.github.io、communities.springernature.com - FACTS.md:writing/mit-critical-datathon-2023/FACTS.md 九节
- 成稿方式:五块直写拼接(part1-5),每 part 尾部留空行
- 坑点:§10 八则(坑 1-8"坑 N:"编号制)
- 网络预算:WebFetch 2(含 1 次失败,未 loop)、WebSearch 1、curl 若干——均在预算内
- description:成稿时即 ≤170 字符
- 互链计划:MIMIC-IV(4)/mimiciv(592)/MIMIC-III(106)/eICU-CRD(552)/ICU 轨迹(962)/MIMIC-IV-EXT-PE(618)
尾注
本条目为 AI-Ready Wikipedia 数据集条目,生产于 2026-10-09,抓取与核验时点见附录 A。事实陈述以 PhysioNet 官方资源页(v1.0.0,DOI 10.13026/jfpc-pz79)、配套代码仓 CriticalDatathon/data-prep(MIT License)与 MIT Critical Datathon 官网为第一手来源;BOLD 的三库/49,099 对/5 分钟窗口/70-100% 区间引自 Springer Nature 官方博客(作者自述),本条目未逐一核对 BOLD 论文原文(BOLD 正由并行代理生产)。81,797 为配对行数(非患者数)、138 变量为代码仓变量字典实测数、90 分钟窗口与 itemid(220227/220277)由页面正文与 SQL 两处互证。相关血缘条目(MIMIC-IV rid 4/592、MIMIC-III rid 106、eICU-CRD rid 552 等)已在本条目互链,构成 MIMIC 家族与 ICU 时序数据集的检索三角。后续维护触发点见附录 J。
补充甲:变量字典逐族说明
本补充逐族展开 138 个变量的语义、单位、缺失特征与常见陷阱,是 §2.3 的展开版。读者若只读一节,应读本节;若只读一段,应读每族末的"陷阱"行。
甲.1 人口学与标识族
| 字段样例 | 语义 | 单位/取值 | 缺失特征 | 用法提示 |
|---|---|---|---|---|
| subject_id | 患者唯一标识 | 整数 | 无 | 跨表关联主键,划分数据集必须用它而非行号 |
| stay_id | ICU 住院唯一标识 | 整数 | 无 | 同一患者可有多次 stay |
| hadm_id | 住院标识 | 整数 | 无 | 与 MIMIC-IV admissions 表对齐 |
| gender | 性别 | M/F | 极少缺失 | 仅作分层变量,勿作因果变量 |
| age | 入院年龄 | 岁(≥89 被移位处理) | 极少缺失 | MIMIC 对高龄做隐私移位,90+ 岁不可当真实年龄算 |
| race_group | 种族/族裔分组 | 多类字符串 | 存在 “OTHER”/“UNKNOWN” | 不等于肤色,见 §4.3 |
| insurance | 保险类型 | Medicaid/Medicare/Other | 存在 | 社会经济代理变量,慎作特征 |
| marital_status | 婚姻状态 | 多类 | 存在缺失 | 真实性弱,慎用 |
| anchor_year_group | 入院年份分组 | 分组字符串 | 无 | 去标识化后年份被分组,不可还原具体年份 |
| dod | 死亡日期(若适用) | 日期 | 大量缺失 | 生存分析用,注意与出院时间关系 |
陷阱:age ≥ 89 是隐私移位结果,直接当连续变量回归会引入系统性偏差;race_group 是社会标签而非生物学量,把二者等同是文献中最常见的方法学错误之一。
甲.2 生命体征族
| 字段样例 | 语义 | 单位 | 采集体位/来源 | 缺失特征 |
|---|---|---|---|---|
| heart_rate | 心率 | bpm | 监护仪 | 中低缺失 |
| sbp / dbp / mbp | 收缩/舒张/平均压 | mmHg | 动脉线或袖带 | 中缺失,动脉线与袖带混采 |
| resp_rate | 呼吸频率 | 次/分 | 监护仪/人工录入 | 中高缺失 |
| temperature | 体温 | ℃ | 多部位(口/腋/核心) | 高缺失,部位未统一 |
| spo2 | 外周血氧饱和度 | % | 脉搏血氧仪 | 与本数据集核心字段同源 |
| fio2 | 吸入氧浓度 | 比例(0-1)或 % | 呼吸机/记录 | 高缺失,单位不统一 |
| gcs | 格拉斯哥昏迷评分 | 3-15 | 人工评估 | 存在缺失,与镇静状态混淆 |
陷阱:fio2 在不同记录中可能以 0-1 或 0-100 两种尺度出现,混用会让下游 SaO2 模型学到"单位伪信号";temperature 未标注测量部位,跨部位比较无意义;生命体征为不规则时序,等间隔重采样前必须写明插值策略。
甲.3 实验室检验族
| 字段样例 | 语义 | 单位 | 采集时点 | 缺失特征 |
|---|---|---|---|---|
| sao2 | 动脉血氧饱和度 | % | 动脉血气(ABG) | 与 SpO2 配对后显著减少 |
| pao2 | 动脉氧分压 | mmHg | ABG | 随 ABG 稀疏采样 |
| paco2 | 动脉二氧化碳分压 | mmHg | ABG | 同上 |
| ph | 动脉血 pH | 无量纲 | ABG | 同上 |
| base_excess | 碱剩余 | mEq/L | ABG | 同上 |
| bicarbonate | 碳酸氢根 | mEq/L | 生化 | 中缺失 |
| lactate | 乳酸 | mmol/L | 生化 | 中高缺失,与灌注相关 |
| creatinine | 肌酐 | mg/dL | 生化 | 中缺失,肾功能代理 |
| bilirubin_total | 总胆红素 | mg/dL | 生化 | 中缺失 |
| platelet_count | 血小板计数 | 10^3/μL | 血常规 | 中缺失 |
| wbc | 白细胞计数 | 10^3/μL | 血常规 | 中缺失 |
陷阱:ABG 是事件驱动采样(医生怀疑低氧或病情变化时才抽),缺失非随机(MNAR);把"是否做 ABG"当作可用性信号会引入选择偏倚;sao2 是金标准标签来源,任何用到它的字段都不能出现在"预测 SpO2 偏差"的特征集中,否则是标签泄漏(§4.4)。
甲.4 评分与严重度族
| 字段样例 | 语义 | 取值范围 | 计算依赖 | 缺失处理 |
|---|---|---|---|---|
| sofa | 序贯器官衰竭评分 | 0-24 | 多器官指标 | 需按规则补全 |
| saps_ii | 简化急性生理评分 | 0-163 | 生理+年龄 | 缺失较多 |
| oasis | OASIS 严重度 | 连续 | 生理+用药 | 需按论文口径 |
| aps_iii | APS III | 连续 | 生理 | 需按论文口径 |
| charlson | Charlson 合并症指数 | 整数 | 诊断编码 | 依赖 ICD 映射 |
陷阱:评分依赖"时间窗内最差值/最首值"等口径,不同实现结果不同,引用时必须写明所用口径;评分是派生量而非原始观测,缺失补全规则会影响结论,需在方法节显式声明。
甲.5 治疗与用药族
| 字段样例 | 语义 | 单位/类别 | 来源 | 陷阱 |
|---|---|---|---|---|
| vasopressor_rate | 血管活性药速率 | mcg/kg/min 等 | 输液记录 | 单位与药物种类不统一 |
| ventilation_mode | 通气模式 | 类别 | 呼吸机记录 | 类别繁多需归并 |
| peep | 呼气末正压 | cmH2O | 呼吸机 | 缺失较多 |
| tidal_volume | 潮气量 | mL | 呼吸机 | 与体重需联动计算 |
| rrt_flag | 肾脏替代治疗标志 | 0/1 | 事件表 | 事件稀疏 |
| antibiotic_flag | 抗生素使用标志 | 0/1 | 处方/事件 | 时序聚合口径不同 |
| fluid_input | 液体入量 | mL | 输液记录 | 累计口径需澄清 |
陷阱:治疗变量高度依赖临床决策,是"医生已采取措施"的下游结果,用作预测特征会造成反事实泄漏;通气与 FiO2 记录直接决定 SaO2-SpO2 配对的临床可解释性,需与血气时点对齐。
甲.6 派生字段族(本数据集特有)
| 字段样例 | 语义 | 计算规则 | 关键参数 | 敏感性 |
|---|---|---|---|---|
| delta_SpO2 | SpO2 与 SaO2 的时间差 | SaO2_t - SpO2_t | 90 分钟窗口 | 窗口收紧结论会变 |
| sao2_spo2_gap | SaO2 减 SpO2 | SaO2 - SpO2 | 无 | 正负号含义需澄清 |
| hidden_hypoxemia | 隐性低氧标签 | SpO2≥88 且 SaO2<88 | 88% 阈值 | 阈值变动分类率变 |
| spo2_vals | 配对的 SpO2 值 | 来自 itemid 220277 | 过滤 0<v≤100 | 极端值处理 |
| sao2_vals | 配对的 SaO2 值 | 来自 itemid 220227 | 无 | ABG 采样偏倚 |
陷阱:这四个派生字段是本数据集"价值密度"所在,也是方法学风险所在——它们都自带人为参数(90 分钟、88%)。任何使用它们的结论,都必须把参数当作结论的一部分一并报告,而不是背景常量(附录 H 守则 3)。
补充乙:可比数据集横向对照
本补充把本条目放进更宽的"血氧/生理信号派生数据集"谱系做横向对照,方便检索者定位。对照对象覆盖库内已有条目与业界常见资源。
乙.1 与本条目最相关的六类资源
| 资源 | 类型 | 主库 | 核心对象 | 与本条目差异 |
|---|---|---|---|---|
| 本条目(datathon 版) | 竞赛派生 | MIMIC-IV v2.2 | SaO2-SpO2 配对 81,797 | 90 分钟窗口、未限饱和度 |
| BOLD(整合版) | 研究派生 | MIMIC-III/IV + eICU | 配对 49,099 | 三库、5 分钟窗、70-100% |
| MIMIC-IV | 源库 | — | 全体 ICU 事件 | 通用,无配对切片 |
| MIMIC-IV Waveform | 波形派生 | MIMIC-IV | 高采样生理波形 | 波形非配对表 |
| eICU-CRD | 多中心 ICU | — | 多院区 | 另一套血缘 |
| VitalDB | 术中生理 | — | 手术室高采样 | 场景不同 |
乙.2 谱系中的位置
用一句话定位:本条目是"MIMIC-IV 血氧配对切片"的竞赛快照,BOLD 是它的三库整合继任,MIMIC-IV 是二者的共同母库。 检索者按"竞赛版→整合版→母库"顺序理解,能避免把配对数差异误读为版本新旧(坑 4)。
乙.3 选择建议
| 需求 | 首选 | 理由 |
|---|---|---|
| 复现 datathon 题目 | 本条目 | 与竞赛数据/代码一一对应 |
| 大规模三库研究 | BOLD | 覆盖 MIMIC-III/IV + eICU |
| 自由度窗口/阈值探究 | 本条目 | 90 分钟全窗便于自选收紧 |
| 通用 ICU 建模 | MIMIC-IV | 字段最全 |
| 波形信号研究 | MIMIC-IV Waveform(rid 65) | 高采样波形 |
| 多中心验证 | eICU-CRD(rid 552) | 跨院区外推 |
乙.4 横向对照的注意点
跨数据集比较 SpO2-SaO2 关系时,必须对齐三件事:配对时间窗、饱和度筛选区间、ABG 采样政策。三者任一不同,配对数与偏差估计都不可直接比。这也是本条目与 BOLD 数值差异的根本原因,不是数据质量高低之别。
补充丙:临床与设备背景(供非临床读者)
本补充面向数据科学家,用最少篇幅补齐读懂本数据集所需的临床与设备常识。
丙.1 两个饱和度为什么不同
- SaO2(动脉血氧饱和度):由动脉血气分析仪直接测得,是"金标准",但需有创抽血、有延迟、不能连续监测。
- SpO2(外周血氧饱和度):由指夹式脉搏血氧仪通过双波长光吸收推算,无创、连续、廉价,是临床一线监测手段。
- 二者测量原理不同,因此天然存在差异;本数据集的价值就是系统量化这个差异并支持校正建模。
丙.2 脉搏血氧仪为什么会偏
脉搏血氧仪利用氧合/脱氧血红蛋白对红光与红外光吸收比不同来推算饱和度。任何改变光吸收的非血红蛋白因素都可能干扰读数,最典型的是皮肤色素(黑色素)、指甲油、末梢灌注不足、运动伪影与低灌注。这解释了为何不同肤色人群的 SpO2 误差分布不同(§4.2)。
丙.3 隐性低氧为什么危险
当 SpO2 读数 ≥88%(看似达标)而真实 SaO2 <88%(实际低氧)时,患者会被漏诊,延误给氧或升级监护。文献报告深肤色患者在同等 SaO2 下 SpO2 读数偏高,隐性低氧发生率更高——这正是本数据集标签设计(hidden_hypoxemia)的临床动机。
丙.4 数据科学家的三条底线
- 不要把 SpO2 当 SaO2 的等价物;本数据集存在的意义就是证明二者不可互换。
- 不要把种族当作生物学变量;应把肤色/色素作为真实机制,种族只是其不完美代理(§4.3)。
- 不要只报总体指标;公平性问题恰恰藏在分层差异里(附录 H 守则 4)。
附录 N:术语中日英对照
| 中文 | 英文 | 备注 |
|---|---|---|
| 动脉血氧饱和度 | arterial oxygen saturation (SaO2) | 金标准 |
| 外周血氧饱和度 | peripheral oxygen saturation (SpO2) | 脉搏血氧仪读数 |
| 隐性低氧 | hidden/occult hypoxemia | 本数据集标签 |
| 脉搏血氧仪 | pulse oximeter | 设备 |
| 动脉血气分析 | arterial blood gas (ABG) | 采样来源 |
| 配对测量 | paired measurement | SaO2-SpO2 配对 |
| 时间窗 | time window | 90 分钟/5 分钟 |
| 公正性/公平性 | fairness / equity | 关键议题 |
| 肤色 | skin pigmentation / melanin | 机制变量 |
| 族裔 | ethnicity / race | 社会标签 |
| 数据使用协议 | Data Use Agreement (DUA) | 获取门槛 |
| 去标识化 | de-identification | 隐私处理 |
| 选择偏倚 | selection bias | ABG 采样问题 |
| 标签泄漏 | label leakage | 建模陷阱 |
| 外部验证 | external validation | 泛化检验 |
附录 O:常见误读与更正对照表
| 常见误读 | 更正 | 依据 |
|---|---|---|
| 81,797 是患者数 | 是配对行数 | §2.2 |
| 有 81,797 个不同患者 | 来自 50,920 患者 | §2.1 |
| 本数据集比 BOLD “大” | 配对数多但窗口宽、单源 | 附录 I |
| 本数据集比 BOLD “旧” | 是竞赛快照,BOLD 是整合继任 | §5.1 |
| race 就是肤色 | race 是肤色/社会经济混合代理 | §4.3 |
| SpO2 可替代 SaO2 | 二者的差异正是本数据集主题 | 补充丙.1 |
| 90 分钟窗口是天然设定 | 是人为参数 | §2.2 |
| 88% 阈值是通用标准 | 是规则选择,需报敏感性 | §8.2 |
| SaO2 缺失是数据质量问题 | 是事件驱动采样的必然 | 甲.3 |
附录 P:复现实验清单(Checklist)
面向想基于本数据集做研究的读者,给出从获取到报告的最小清单。
- [ ] 确认已完成 PhysioNet 认证访问与 CITI 培训(§6.1)
- [ ] 确认已签署 DUA,理解再分发限制(§6.2)
- [ ] 下载数据后先核对配对数与变量数(预期 81,797 / 138)
- [ ] 按
subject_id划分训练/验证/测试,禁止按行划分(坑 2) - [ ] 明确所用时间窗(90 分钟全窗或收紧),并写入方法节
- [ ] 明确 hidden_hypoxemia 阈值(默认 88%),并做阈值敏感性
- [ ] 特征集中排除 sao2 及任何由 sao2 派生的字段(§4.4)
- [ ] 缺失处理策略显式声明,区分 MCAR/MAR/MNAR(甲.3)
- [ ] 报告总体指标之外,必须给分层(race_group/性别)误差
- [ ] 给出置信区间与样本量,避免小分组点估计误导
- [ ] 引用时同时引用数据 DOI 与配套代码仓
- [ ] 结论中说明窗口/阈值/采样政策对结果的影响边界
附录 Q:数据字典字段计数核对表
用于拿到数据后做完整性自检,逐族核对字段数量(口径以代码仓变量字典为准)。
| 族 | 预期字段数级 | 核对方法 | 不匹配时的排查方向 |
|---|---|---|---|
| 人口学与标识 | ~10 | 列名含 id/gender/age/race | 版本差异 |
| 生命体征 | ~20 | 列名含 rate/pressure/temp/spo2/fio2 | 单位列是否有 |
| 实验室检验 | ~35 | 列名含 sao2/pao2/ph/lactate 等 | ABG 是否含全 |
| 评分与严重度 | ~8 | 列名含 sofa/saps/oasis/charlson | 派生是否含全 |
| 治疗与用药 | ~25 | 列名含 vent/vaso/peep/rrt 等 | 用药是否归并 |
| 派生字段 | ~8 | 列名含 delta/gap/hidden | 是否已派生 |
| 合计 | 138 | len(df.columns) |
逐族加减核对 |
附录 R:引用与致谢写法建议
- 数据引用:应引用 PhysioNet 资源页与 DOI(10.13026/jfpc-pz79),并注明版本号 v1.0.0。
- 代码引用:应引用配套仓库
CriticalDatathon/data-prep并注明其 MIT License。 - 竞赛引用:应提及 MIT Critical Datathon 2023 作为数据产出场景。
- 致谢:应致谢 BIDMC / MIT LCP 及 NIH 资助项目(U24EB037545、R01EB030362)。
- 方法引用:涉及肤色偏差的临床结论时,应引用原始临床文献而非仅引用数据集。
- 限制声明:应在 Limitations 中说明单源、窗口参数、ABG 采样偏倚与单中心限制。
附录 S:问答补遗(进阶十问)
问:能否把本数据集直接当 SaO2 的分类标注集用?
答:可以,但须理解标签由规则生成(SpO2≥88 且 SaO2<88),不是临床确诊,且阈值可调(§8.2)。
问:为什么配对数比 BOLD 多却窗口更宽?
答:Freedman 窗口越大越容易配到"最近的一次 SpO2",因此单源大窗配对数天然高于三库紧窗配置(附录 I)。
问:MIMIC-IV 版本升级会影响复现吗?
答:会。v2.2 到后续版本的字段与 itemid 可能变化,复现须锁定版本(附录 J 触发点 4)。
问:为什么强调按患者而非按行划分?
答:同一患者多次 stay 高度相关,按行划分会让测试集"见过"训练集患者,虚高指标(坑 2)。
问:hidden_hypoxemia 的正类比例大概多少?
答:确切比例须自行统计;文献报告深肤色人群隐性低氧率更高,但本条目不给出未经核实的比例数字。
问:能否用本数据集做跨肤色因果推断?
答:不建议。race 不是可干预变量,且存在混杂;可做分层描述与误差审计,慎下因果结论(§4.3)。
问:FiO2 缺失严重怎么办?
答:可做多组插补或按缺失标志建哑变量,并报告敏感性;不要用均值填充后当无缺失(甲.2)。
问:数据能否用于商业模型训练?
答:须遵守 DUA 与 Credentialed Access 条款,商业用途与再分发受严格限制(§6.2)。
问:为什么要有 90 分钟这么宽的窗口?
答:宽窗保样本量,紧窗保时序纯度,是权衡而非最优(§2.2,附录 H 守则 2)。
问:库里还有哪些条目可以一起做综述?
答:MIMIC-IV(rid 4/592)、MIMIC-IV Waveform(65)、eICU-CRD(552)等,见 §9.1 家族图谱。
附录 T:版本与变更记录模板
用于本条目日后维护时记录改动轨迹。
| 日期 | 版本 | 变更内容 | 触发点 | 维护人 |
|---|---|---|---|---|
| 2026-10-09 | v1.0 | 首稿成稿(5 part 拼接) | 新建 | agent-e-mitcritica |
| (待) | v1.1 | 补 BOLD rid 与双向互链 | 附录 J 触发点 1 | — |
| (待) | v1.2 | 同步 PhysioNet 版本变更 | 附录 J 触发点 2 | — |
| (待) | v1.3 | 补第三方评测记录 | 附录 J 触发点 3 | — |
| (待) | v1.4 | 版本口径随 MIMIC-IV 迁移更新 | 附录 J 触发点 4 | — |
附录 U:一句话摘要与检索关键词
一句话摘要:本数据集是 MIT Critical Datathon 2023 基于 MIMIC-IV v2.2 构建的 SaO2-SpO2 配对切片(81,797 对、138 变量、90 分钟窗口),用于脉搏血氧校正与隐性低氧公平性建模,是 BOLD 整合数据集的竞赛前身。
检索关键词:MIT Critical Datathon 2023;MIMIC-IV;脉搏血氧;SaO2 SpO2 配对;隐性低氧;hidden hypoxemia;pulse oximetry bias;血氧矫正;health equity;BOLD 数据集;PhysioNet Credentialed Access;重症监护时序数据。
反向检索(别人怎么找到本条目):搜"SpO2 SaO2 配对数据集"、“pulse oximetry correction dataset”、“MIMIC derived oximetry”、"隐性低氧 数据集"均应收敛到本条目,并由 §5、§9 跳到 MIMIC-IV 与 BOLD。
相关数据集导航
以下为站内 AI-Ready 数据集百科中与本词条共享多个主题标签的相关数据集,按相关度降序排列:
- cinc-2019 — 共享标签:电子健康记录 / 重症监护 / 时序数据 / 挑战赛数据集 / 评测基准
- cinc-2012 — 共享标签:电子健康记录 / 重症监护 / 时序数据 / 挑战赛数据集 / 评测基准
- clif — 共享标签:电子健康记录 / 重症监护 / 时序数据 / 评测基准 / 队列研究
- icu-infection-zigong-fourth — 共享标签:电子健康记录 / 重症监护 / 队列研究
- ctu-uhb-ctg — 共享标签:电子健康记录 / 重症监护 / 时序数据 / 挑战赛数据集
- clinical-trajectory-flow-icu — 共享标签:电子健康记录 / 重症监护 / 时序数据 / 评测基准
- insulin4rl — 共享标签:电子健康记录 / 重症监护 / 时序数据 / 评测基准
- lacuna — 共享标签:电子健康记录 / 重症监护 / 时序数据 / 评测基准
- mimic-eicu-fiddle-feature — 共享标签:电子健康记录 / 重症监护 / 时序数据 / 评测基准
- hirid — 共享标签:电子健康记录 / 重症监护 / 时序数据
导航说明:本章节由全站统一标签体系自动计算生成(标签重合度算法),双向可达;点击链接可跳转至对应数据集词条。

