用途:该技能面向使用 PyHealth 2.x(当前 2.0.2)进行临床机器学习的研究与开发,覆盖从数据加载到模型验证的完整流程,适用于 EHR、生理信号、医学影像与临床文本数据。
主要能力:提供五阶段模块化流程——数据加载(MIMIC-III/IV、eICU、OMOP、睡眠 EEG 等标准化加载器)、任务定义(预定义临床预测任务类或自定义 BaseTask)、模型选择(基线、通用深度学习及 RETAIN、SafeDrug、GAMENet、StageNet、GAT/GCN 等医疗专用模型)、训练(Trainer 支持最佳检查点选择与监控)、验证(校准、共形预测、公平性指标与可解释性)。另含医疗编码工具,可在 ICD-9/10、NDC、RxNorm、ATC、CCS 间转换与分组。2.x 采用 polars 数据层并缓存任务样本,利于大表内存效率。
使用方式:需 Python 3.12 或 3.13,建议独立环境安装:uv venv --python 3.13 .venv-pyhealth;source .venv-pyhealth/bin/activate;uv pip install "pyhealth>=2.0.2"。典型流程为加载数据集并声明所需表、用任务类实例调用 dataset.set_task()、按患者划分数据、构建 DataLoader、初始化模型(仅传 dataset 与超参数,特征与标签由任务 schema 决定)、用 Trainer 训练并评估。注意 2.x 与 1.x API 差异:任务为类实例而非 snake_case 函数;模型不接受 feature_keys/label_key/mode;指标名无 _score 后缀;检查点用 save_ckpt/load_ckpt。
适用场景:ICU 死亡率预测、安全用药推荐、再入院预测、睡眠分期、医疗编码转换、临床文本到 ICD 编码等。
限制:深度学习需数千患者量级数据;MIMIC/eICU 需 PhysioNet 认证与数据使用协议,不得将受限记录复制到协议未覆盖处;模型输出为研究级风险估计,非诊断,临床部署受医疗器械法规约束;建议 GPU 与 16GB 以上内存,数据存储可达数十至数百 GB。文档与示例见 https://pyhealth.readthedocs.io/ 与 https://github.com/sunlabuiuc/PyHealth。