PyHealth
PyHealth 是一个专为医疗健康领域打造的深度学习 Python 工具包,旨在降低临床数据分析和医疗 AI 模型开发的门槛。它主要解决了医疗数据格式复杂、预处理繁琐以及深度学习模型复现困难等痛点,让研究人员和开发者能够更专注于算法创新而非底层数据清洗。
无论是从事医疗人工智能研究的学者,还是希望将深度学习应用于临床场景的工程师,PyHealth 都能提供强有力的支持。其核心亮点在于内置了多种主流医疗数据集的标准加载器,支持从原始电子病历到标准化张量的快速转换;同时封装了大量前沿的临床预测模型(如疾病风险预测、药物推荐等),并提供了统一的训练与评估接口。此外,PyHealth 强调可复现性,配套了丰富的教程、Google Colab 示例及视频教程,帮助用户轻松上手。通过加入其活跃的社区,用户还能及时获取最新功能更新并与全球同行交流。如果你希望在医疗 AI 领域高效开展实验或构建应用,PyHealth 将是一个值得信赖的开源伙伴。
使用场景
某三甲医院的数据科学团队正试图利用电子病历(EHR)中的时序数据,构建一个深度学习模型来预测重症患者的败血症发病风险。
没有 PyHealth 时
- 数据清洗耗时极长:研究人员需手动编写大量脚本将非标准化的原始病历数据转换为模型可接受的张量格式,极易出错且难以复用。
- 算法复现门槛高:想要对比不同的医疗专用模型(如 GRU-D 或 Transformer 变体),必须从零阅读论文并重新实现底层逻辑,开发周期长达数周。
- 评估标准不统一:缺乏针对医疗场景的标准化评估模块,团队需自行定义指标计算逻辑,导致实验结果难以与其他研究进行公平对比。
- 协作与维护困难:由于代码高度定制化且缺乏文档,新成员加入后难以快速理解数据流向,模型迭代效率低下。
使用 PyHealth 后
- 数据处理自动化:直接调用 PyHealth 内置的数据加载器,一键完成从原始 EHR 到标准化数据集的转换,将数据准备时间从数天缩短至几小时。
- 模型调用模块化:通过简单的 API 即可加载预实现的多种前沿医疗深度学习模型,无需重复造轮子,能快速开展多模型对比实验。
- 评估流程标准化:利用工具自带的医疗专用评估指标(如早期预警评分、死亡率预测准确率等),确保实验结果的可复现性和学术严谨性。
- 生态协作更顺畅:依托 PyHealth 清晰的架构和活跃社区,团队成员能基于统一框架快速迭代算法,显著提升了从原型到临床验证的速度。
PyHealth 通过将复杂的医疗数据工程与前沿算法封装为标准化模块,让研究人员能从繁琐的代码工程中解放出来,专注于提升临床预测模型的准确性与落地价值。
运行环境要求
未说明
未说明

快速开始
欢迎来到 PyHealth!
.. note::
此 README 可能已过时。 如需最新文档、教程和 API 参考,请访问我们的官方文档网站:pyhealth.readthedocs.io <https://pyhealth.readthedocs.io/en/latest/>_。
.. important::
- 加入我们的 PyHealth Discord 社区! 我们正在积极寻找贡献者,并希望更好地了解我们的用户!
点击此处加入 Discord <https://discord.gg/mpb835EHaX>_ - 注册我们的邮件列表! 我们会通过邮件通知您即将发生的任何重要 PyHealth 更新!
点击此处订阅 <https://docs.google.com/forms/d/e/1FAIpQLSfpJB5tdkI7BccTCReoszV9cyyX2rF99SgznzwlOepi5v-xLw/viewform?usp=header>_
.. image:: https://img.shields.io/readthedocs/pyhealth?logo=readthedocs&label=docs&version=latest :target: https://pyhealth.readthedocs.io/en/latest/ :alt: 文档
.. image:: https://img.shields.io/badge/Discord-Join-5865F2?logo=discord&logoColor=white :target: https://discord.gg/mpb835EHaX :alt: Discord
.. image:: https://img.shields.io/badge/Mailing%20List-Subscribe-blue?logo=gmail&logoColor=white :target: https://docs.google.com/forms/d/e/1FAIpQLSfpJB5tdkI7BccTCReoszV9cyyX2rF99SgznzwlOepi5v-xLw/viewform?usp=header :alt: 邮件列表
.. image:: https://img.shields.io/pypi/v/pyhealth.svg?color=brightgreen :target: https://pypi.org/project/pyhealth/ :alt: PyPI 版本
.. image:: https://img.shields.io/github/stars/sunlabuiuc/pyhealth.svg :target: https://github.com/sunlabuiuc/pyhealth/stargazers :alt: GitHub 星标
.. image:: https://img.shields.io/github/forks/sunlabuiuc/pyhealth.svg?color=blue :target: https://github.com/sunlabuiuc/pyhealth/network :alt: GitHub 分支
.. image:: https://static.pepy.tech/badge/pyhealth :target: https://pepy.tech/project/pyhealth :alt: 下载量
.. image:: https://img.shields.io/badge/Tutorials-Google%20Colab-red :target: https://pyhealth.readthedocs.io/en/latest/tutorials.html :alt: 教程
.. image:: https://img.shields.io/badge/YouTube-16%20Videos-red :target: https://www.youtube.com/playlist?list=PLR3CNIF8DDHJUl8RLhyOVpX_kT4bxulEV :alt: YouTube
.. image:: https://github.com/sunlabuiuc/PyHealth/workflows/CI/badge.svg :target: https://github.com/sunlabuiuc/PyHealth/actions :alt: CI 状态
引用 PyHealth :handshake:
PyHealth 2.0 (2026):
Wu, John, Yongda Fan, Zhenbang Wu, Paul Landes, Eric Schrock, Sayeed Sajjad Razin, Arjun Chatterjee, Naveen Baskaran, Joshua Steier, Andrea Fitzpatrick, Bilal Arif, Rian Atri, Jathurshan Pradeepkumar, Siddhartha Laghuvarapu, Junyi Gao, Adam R. Cross, and Jimeng Sun. 2026. "PyHealth 2.0: A Comprehensive Open-Source Toolkit for Accessible and Reproducible Clinical Deep Learning." arXiv preprint arXiv:2601.16414.
.. code-block:: bibtex
@misc{wu2026pyhealth20comprehensiveopensource,
title={PyHealth 2.0: A Comprehensive Open-Source Toolkit for Accessible and Reproducible Clinical Deep Learning},
author={John Wu and Yongda Fan and Zhenbang Wu and Paul Landes and Eric Schrock and Sayeed Sajjad Razin and Arjun Chatterjee and Naveen Baskaran and Joshua Steier and Andrea Fitzpatrick and Bilal Arif and Rian Atri and Jathurshan Pradeepkumar and Siddhartha Laghuvarapu and Junyi Gao and Adam R. Cross and Jimeng Sun},
year={2026},
eprint={2601.16414},
archivePrefix={arXiv},
primaryClass={cs.LG},
url={https://arxiv.org/abs/2601.16414}
}
PyHealth 1.0 (2023):
Yang, Chaoqi, Zhenbang Wu, Patrick Jiang, Zhen Lin, Junyi Gao, Benjamin P. Danek, and Jimeng Sun. 2023. "PyHealth: A Deep Learning Toolkit for Healthcare Applications." In Proceedings of the 29th ACM SIGKDD Conference on Knowledge Discovery and Data Mining, 5788–89. KDD '23. New York, NY, USA: Association for Computing Machinery.
.. code-block:: bibtex
@inproceedings{pyhealth2023yang,
author = {Yang, Chaoqi and Wu, Zhenbang and Jiang, Patrick and Lin, Zhen and Gao, Junyi and Danek, Benjamin and Sun, Jimeng},
title = {{PyHealth}: A Deep Learning Toolkit for Healthcare Predictive Modeling},
url = {https://github.com/sunlabuiuc/PyHealth},
booktitle = {Proceedings of the 27th ACM SIGKDD International Conference on Knowledge Discovery and Data Mining (KDD) 2023},
year = {2023}
}
PyHealth 是一个全面的深度学习工具包,用于支持临床预测建模,专为 机器学习研究人员和医疗从业者 设计。我们可以让您的 医疗 AI 应用程序 更容易开发、测试和部署——更加灵活且可定制。 [教程] <https://pyhealth.readthedocs.io/>_
主要特性
- 针对医疗 ML 的模块化五阶段流水线
- 以医疗为中心:医学编码和临床数据集(MIMIC、eICU、OMOP)
- 33+ 种预构建模型以及生产就绪的训练器和指标
- 支持 10+ 种医疗任务和数据集
- 快速(比 pandas 快约 3 倍)的数据处理,便于快速实验
[新闻!] 我们正在不断将优秀的论文和基准测试整合到 PyHealth 中,请查看 [计划列表] <https://docs.google.com/spreadsheets/d/1PNMgDe-llOm1SM5ZyGLkmPysjC4wwaVblPLAHLxejTw/edit#gid=159213380>_。欢迎从列表中选择一篇,向我们提交 PR,或将更多有影响力的新论文添加到计划列表中。
.. image:: figure/poster.png :width: 810
..
- 安装 :rocket:
Python 版本要求
PyHealth 2.0 需要 Python 3.12 或 3.13(>=3.12,<3.14)。这一版本要求能够实现最佳的并行处理、内存管理,并与我们现代依赖项兼容。
推荐安装方式(最新版本)
从 PyPI 安装最新的 PyHealth 2.0 版本:
.. code-block:: sh
pip install pyhealth
此版本包含显著的性能提升、动态内存支持、并行化处理、多模态数据加载器以及许多新功能。
旧版
较旧的稳定版本(1.16)仍然可用,以确保向后兼容性,并支持 Python 3.9 及以上版本:
.. code-block:: sh
pip install pyhealth==1.16
面向贡献者和开发者
如果您正在为 PyHealth 做贡献,或需要最新的开发功能,请从 GitHub 源代码安装:
.. code-block:: sh
git clone https://github.com/sunlabuiuc/PyHealth.git
cd PyHealth
pip install -e .
注意: PyHealth 2.0 会自动安装 PyTorch 和其他深度学习依赖项。Alpha 版本包含了所有基于神经网络模型所需的库。
- 简介 :book:
pyhealth 提供以下功能(我们仍在丰富部分模块):
.. image:: figure/overview.png :width: 770
您可以独立使用以下功能:
- 数据集:
MIMIC-III、MIMIC-IV、eICU、OMOP-CDM、EHRShot、COVID19-CXR、SleepEDF、SHHS、ISRUC、自定义电子健康记录数据集等。 - 任务:
基于诊断的药物推荐、患者住院及死亡率预测、再入院预测、住院时长预测、睡眠分期等。 - 机器学习模型:
RNN、LSTM、GRU、Transformer、RETAIN、SafeDrug、GAMENet、MoleRec、AdaCare、ConCare、StageNet、GRASP、SparcNet、ContraWR、Deepr、TCN、Dr. Agent等。
使用PyHealth构建医疗AI流水线,代码量可短至10行。
- 构建机器学习流水线 :trophy:
我们包中的所有医疗任务都遵循一个五阶段流水线:
.. image:: figure/five-stage-pipeline.png :width: 640
..
我们尽力确保每个阶段尽可能独立,以便用户仅使用我们的数据处理步骤或机器学习模型即可自定义自己的流水线。
模块1: <pyhealth.datasets> """"""""""""""""""""""""""""""""""""
pyhealth.datasets为数据集提供了一个干净的结构,与具体任务无关。我们支持MIMIC-III、MIMIC-IV、eICU、OMOP-CDM等数据集。其输出(mimic3base)是一个多级字典结构(见下图)。
.. code-block:: python
from pyhealth.datasets import MIMIC3Dataset
mimic3base = MIMIC3Dataset(
# 数据集的根目录
root="https://storage.googleapis.com/pyhealth/Synthetic_MIMIC-III/",
# 原始CSV表名
tables=["DIAGNOSES_ICD", "PROCEDURES_ICD", "PRESCRIPTIONS"],
# 将这些表中的所有NDC编码映射到CCS编码
code_mapping={"NDC": "CCSCM"},
)
.. image:: figure/structured-dataset.png :width: 400
..
模块2: <pyhealth.tasks> """"""""""""""""""""""""""""""""""""
pyhealth.tasks定义了如何将每位患者的数据处理成用于特定任务的一组样本。在本包中,我们提供了多个任务示例,如药物推荐、死亡率预测和再入院预测。您可以按照我们的 模板 <https://colab.research.google.com/drive/1r7MYQR_5yCJGpK_9I9-A10HmpupZuIN-?usp=sharing>_ 轻松自定义自己的任务。
.. code-block:: python
from pyhealth.tasks import ReadmissionPredictionMIMIC3
mimic3sample = mimic3base.set_task(ReadmissionPredictionMIMIC3())
mimic3sample[0] # 显示第一个样本的信息
from pyhealth.datasets import split_by_patient, get_dataloader
train_ds、val_ds、test_ds = split_by_patient(mimic3sample, [0.8, 0.1, 0.1])
train_loader = get_dataloader(train_ds, batch_size=32, shuffle=True)
val_loader = get_dataloader(val_ds, batch_size=32, shuffle=False)
test_loader = get_dataloader(test_ds, batch_size=32, shuffle=False)
模块3: <pyhealth.models> """"""""""""""""""""""""""""""""""""
pyhealth.models提供了多种机器学习模型,它们的参数配置非常相似。
.. code-block:: python
from pyhealth.models import Transformer
model = Transformer(
dataset=mimic3sample,
)
模块4: <pyhealth.trainer> """"""""""""""""""""""""""""""""""""
pyhealth.trainer可以指定训练参数,如轮数、优化器、学习率等。训练器会自动保存最佳模型,并在最后输出模型路径。
.. code-block:: python
from pyhealth.trainer import Trainer
trainer = Trainer(model=model)
trainer.train(
train_dataloader=train_loader,
val_dataloader=val_loader,
epochs=50,
monitor="pr_auc_samples",
)
模块5: <pyhealth.metrics> """"""""""""""""""""""""""""""""""""
pyhealth.metrics提供了若干常用评估指标(请参阅文档 <https://pyhealth.readthedocs.io/en/latest/api/metrics.html>_以了解可用指标)。
.. code-block:: python
# 方法1
trainer.evaluate(test_loader)
# 方法2
from pyhealth.metrics.binary import binary_metrics_fn
y_true、y_prob、loss = trainer.inference(test_loader)
binary_metrics_fn(y_true、y_prob、metrics=["pr_auc"、"roc_auc"])
- 医疗编码映射 :hospital:
pyhealth.codemap提供了两项核心功能。该模块可独立使用。
- 用于在单一医疗编码系统内进行编码本体查询(例如,名称、类别、子概念);
.. code-block:: python
from pyhealth.medcode import InnerMap
icd9cm = InnerMap.load("ICD9CM")
icd9cm.lookup("428.0")
# `充血性心力衰竭,未特指`
icd9cm.get_ancestors("428.0")
# ['428'、'420-429.99'、'390-459.99'、'001-999.99']
atc = InnerMap.load("ATC")
atc.lookup("M01AE51")
# `布洛芬,复方制剂`
atc.lookup("M01AE51"、"drugbank_id")
# `DB01050`
atc.lookup("M01AE51"、"description")
# 布洛芬是一种非甾体抗炎药(NSAID),来源于…
atc.lookup("M01AE51"、"indication")
# 布洛芬是最常用且最常被处方的NSAID。它在临床上非常常见……
- 用于在两个编码系统之间进行编码映射(例如,ICD9CM到CCSCM)。
.. code-block:: python
from pyhealth.medcode import CrossMap
codemap = CrossMap.load("ICD9CM"、"CCSCM")
codemap.map("428.0")
# ['108']
codemap = CrossMap.load("NDC"、"RxNorm")
codemap.map("50580049698")
# ['209387']
codemap = CrossMap.load("NDC"、"ATC")
codemap.map("50090539100")
# ['A10AC04'、'A10AD04'、'A10AB04']
- 医疗编码分词器 :speech_balloon:
pyhealth.tokenizer用于在基于字符串的标记和基于整数的索引之间进行转换,基于整体标记空间。我们提供了灵活的函数来对1D、2D和3D列表进行分词。该模块可独立使用。
.. code-block:: python
from pyhealth.tokenizer import Tokenizer
# 示例:我们使用ATC3编码列表作为标记
token_space = ['A01A'、'A02A'、'A02B'、'A02X'、'A03A'、'A03B'、'A03C'、'A03D'、\
'A03F'、'A04A'、'A05A'、'A05B'、'A05C'、'A06A'、'A07A'、'A07B'、'A07C'、\
'A12B'、'A12C'、'A13A'、'A14A'、'A14B'、'A16A']
tokenizer = Tokenizer(tokens=token_space、special_tokens=["<pad>"、"<unk>"])
# 2D编码
tokens = [['A03C'、'A03D'、'A03E'、'A03F']、['A04A'、'B035'、'C129']]
indices = tokenizer.batch_encode_2d(tokens)
# [[8、9、10、11]、[12、1、1、0]]
# 2D解码
indices = [[8、9、10、11]、[12、1、1、0]]
tokens = tokenizer.batch_decode_2d(indices)
# [['A03C'、'A03D'、'A03E'、'A03F']、['A04A'、'<unk>'、'<unk>']]
# 3D编码
tokens = [[['A03C'、'A03D'、'A03E'、'A03F']、['A08A'、'A09A']]、\
[['A04A'、'B035'、'C129']]]
indices = tokenizer.batch_encode_3d(tokens)
# [[[8、9、10、11]、[24、25、0、0]]、[[12、1、1、0]、[0、0、0、0]]]
3D解码
indices = [[[8, 9, 10, 11], [24, 25, 0, 0]], \
[[12, 1, 1, 0], [0, 0, 0, 0]]]
tokens = tokenizer.batch_decode_3d(indices)
# [[['A03C', 'A03D', 'A03E', 'A03F'], ['A08A', 'A09A']], [['A04A', '<unk>', '<unk>']]]
..
- 教程 :teacher:
.. image:: https://colab.research.google.com/assets/colab-badge.svg :target: https://pyhealth.readthedocs.io/en/latest/tutorials.html
..
我们提供以下教程,帮助用户快速上手我们的 pyhealth。请耐心等待我们更新关于如何使用 PyHealth 2.0 的文档。
教程0:pyhealth.data简介 <https://colab.research.google.com/drive/1y9PawgSbyMbSSMw1dpfwtooH7qzOEYdN?usp=sharing>_ [视频] <https://www.youtube.com/watch?v=Nk1itBoLOX8&list=PLR3CNIF8DDHJUl8RLhyOVpX_kT4bxulEV&index=2>__
教程1:pyhealth.datasets简介 <https://colab.research.google.com/drive/1voSx7wEfzXfEf2sIfW6b-8p1KqMyuWxK?usp=sharing>_ [视频(PyHealth 1.16)] <https://www.youtube.com/watch?v=c1InKqFJbsI&list=PLR3CNIF8DDHJUl8RLhyOVpX_kT4bxulEV&index=3>__
教程2:pyhealth.tasks简介 <https://colab.research.google.com/drive/1kKkkBVS_GclHoYTbnOtjyYnSee79hsyT?usp=sharing>_ [视频(PyHealth 1.16)] <https://www.youtube.com/watch?v=CxESe1gYWU4&list=PLR3CNIF8DDHJUl8RLhyOVpX_kT4bxulEV&index=4>__
教程3:pyhealth.models简介 <https://colab.research.google.com/drive/1LcXZlu7ZUuqepf269X3FhXuhHeRvaJX5?usp=sharing>_ [视频] <https://www.youtube.com/watch?v=fRc0ncbTgZA&list=PLR3CNIF8DDHJUl8RLhyOVpX_kT4bxulEV&index=6>__
教程4:pyhealth.trainer简介 <https://colab.research.google.com/drive/1L1Nz76cRNB7wTp5Pz_4Vp4N2eRZ9R6xl?usp=sharing>_ [视频] <https://www.youtube.com/watch?v=5Hyw3of5pO4&list=PLR3CNIF8DDHJUl8RLhyOVpX_kT4bxulEV&index=7>__
教程5:pyhealth.metrics简介 <https://colab.research.google.com/drive/1Mrs77EJ92HwMgDaElJ_CBXbi4iABZBeo?usp=sharing>_ [视频] <https://www.youtube.com/watch?v=d-Kx_xCwre4&list=PLR3CNIF8DDHJUl8RLhyOVpX_kT4bxulEV&index=8>__
教程6:pyhealth.tokenizer简介 <https://colab.research.google.com/drive/1bDOb0A5g0umBjtz8NIp4wqye7taJ03D0?usp=sharing>_ [视频] <https://www.youtube.com/watch?v=CeXJtf0lfs0&list=PLR3CNIF8DDHJUl8RLhyOVpX_kT4bxulEV&index=10>__
教程7:pyhealth.medcode简介 <https://colab.research.google.com/drive/1xrp_ACM2_Hg5Wxzj0SKKKgZfMY0WwEj3?usp=sharing>_ [视频] <https://www.youtube.com/watch?v=MmmfU6_xkYg&list=PLR3CNIF8DDHJUl8RLhyOVpX_kT4bxulEV&index=9>__
以下教程将帮助用户构建自己的任务流水线。
流水线1:胸部X光片分类 <https://colab.research.google.com/drive/18vK23gyI1LjWbTgkq4f99yDZA3A7Pxp9?usp=sharing>_ [视频] <https://www.youtube.com/watch?v=GGP3Dhfyisc&list=PLR3CNIF8DDHJUl8RLhyOVpX_kT4bxulEV&index=12>__
流水线2:医学编码 <https://colab.research.google.com/drive/1ThYP_5ng5xPQwscv5XztefkkoTruhjeK?usp=sharing>
流水线3:医疗转录分类 <https://colab.research.google.com/drive/1bjk_IArc2ZmXGR6u6Qzyf7kh70RdiY9c?usp=sharing>
流水线4:死亡率预测 <https://colab.research.google.com/drive/1b9xRbxUz-HLzxsrvxdsdJ868ajGQCY6U?usp=sharing>
流水线5:再入院预测 <https://colab.research.google.com/drive/1h0pAymUlPQfkLFryI9QI37-HAW1tRxGZ?usp=sharing>_
我们提供高级教程,以满足各种需求。
高级教程1:将您的数据集适配到我们的流水线中 <https://colab.research.google.com/drive/1UurxwAAov1bL_5OO3gQJ4gAa_paeJwJp?usp=sharing>_ [视频] <https://www.youtube.com/watch?v=xw2hGLEQ4Y0&list=PLR3CNIF8DDHJUl8RLhyOVpX_kT4bxulEV&index=13>__
高级教程2:定义您自己的医疗保健任务 <https://colab.research.google.com/drive/1gK6zPXvfFGBM1uNaLP32BOKrnnJdqRq2?usp=sharing>
高级教程3:将自定义模型引入pyhealth <https://colab.research.google.com/drive/1F_NJ90GC8_Eq-vKTf7Tyziew4gWjjKoH?usp=sharing>_ [视频] <https://www.youtube.com/watch?v=lADFlcmLtdE&list=PLR3CNIF8DDHJUl8RLhyOVpX_kT4bxulEV&index=14>__
高级教程4:将您自己处理好的数据加载到pyhealth中,并尝试我们的机器学习模型 <https://colab.research.google.com/drive/1ZRnKch2EyJLrI3G5AvDXVpeE2wwgBWfw?usp=sharing>_ [视频] <https://www.youtube.com/watch?v=xw2hGLEQ4Y0&list=PLR3CNIF8DDHJUl8RLhyOVpX_kT4bxulEV&index=13>__
- 数据集 :mountain_snow:
我们为以下开放的电子健康记录(EHR)数据集提供了处理文件:
=================== ======================================= ======================================== ========================================================================================================
MIMIC-III pyhealth.datasets.MIMIC3Dataset 2016 MIMIC-III临床数据库 <https://physionet.org/content/mimiciii/1.4//>_
MIMIC-IV pyhealth.datasets.MIMIC4Dataset 2020 MIMIC-IV临床数据库 <https://physionet.org/content/mimiciv/0.4/>_
eICU pyhealth.datasets.eICUDataset 2018 eICU协作研究数据库 <https://eicu-crd.mit.edu//>_
OMOP pyhealth.datasets.OMOPDataset 基于OMOP-CDM模式的数据集 <https://www.ohdsi.org/data-standardization/the-common-data-model/>_
EHRShot pyhealth.datasets.EHRShotDataset 2023 小样本EHR基准测试数据集 <https://github.com/som-shahlab/ehrshot-benchmark>_
COVID19-CXR pyhealth.datasets.COVID19CXRDataset 2020 COVID-19胸部X光图像数据集
SleepEDF pyhealth.datasets.SleepEDFDataset 2018 Sleep-EDF数据集 <https://physionet.org/content/sleep-edfx/1.0.0/>_
SHHS pyhealth.datasets.SHHSDataset 2016 睡眠心脏健康研究数据集 <https://sleepdata.org/datasets/shhs>_
ISRUC pyhealth.datasets.ISRUCDataset 2016 ISRUC-SLEEP数据集 <https://sleeptight.isr.uc.pt/?page_id=48>_
=================== ======================================= ======================================== ========================================================================================================
- 机器学习/深度学习模型 :airplane:
深度学习模型
================================== ====== ============================================================================================================ 模型 年份 关键创新 ================================== ====== ============================================================================================================ RETAIN 2016 面向临床决策的可解释注意力机制 GAMENet 2019 用于药物推荐的记忆网络 SafeDrug 2021 基于分子图的安全药物组合方法 MoleRec 2023 子结构感知的药物推荐 AdaCare 2020 尺度自适应特征提取 ConCare 2020 基于Transformer的患者建模 StageNet 2020 疾病进展阶段建模 GRASP 2021 用于患者聚类的图神经网络 MICRON 2021 基于循环残差网络的用药变化预测 ================================== ====== ============================================================================================================
基础模型
================================== ====== ============================================================================================================ 模型 年份 描述 ================================== ====== ============================================================================================================ Transformer 2017 基于注意力机制的序列建模 RNN/LSTM/GRU 2011 用于序列的循环神经网络 CNN 1989 用于结构化数据的卷积网络 TCN 2018 时间卷积网络 MLP 1986 用于表格数据的多层感知机 ================================== ====== ============================================================================================================
专用模型
================================== ====== ============================================================================================================ 模型 年份 专长领域 ================================== ====== ============================================================================================================ ContraWR 2021 生物信号分析(脑电图、心电图) SparcNet 2023 癫痫发作检测与睡眠分期 Deepr 2017 电子健康记录 Dr. Agent 2020 用于临床决策的强化学习 ================================== ====== ============================================================================================================
- 请查看基准EHR预测任务的交互式地图 https://pyhealth.readthedocs.io/en/latest/index.html#benchmark-on-healthcare-tasks。
- 研究计划 :microscope:
PyHealth研究计划是一项全年开放的研究项目,汇聚来自不同背景的优秀人才,共同开展医疗AI领域的前沿研究。
参与方式:
- 加入我们的
Discord服务器 <https://discord.gg/mpb835EHaX>_ - 向
PyHealth仓库 <https://github.com/sunlabuiuc/PyHealth>_ 提交高质量的代码合并请求 - 查阅
文档 <https://pyhealth.readthedocs.io/en/latest/research_initiative.html>_ 获取更多详情
该计划近期的研究成果已发表在包括ML4H 2025在内的顶级会议上。
- 关于我们 :busts_in_silhouette:
我们是伊利诺伊大学厄巴纳-香槟分校的SunLab <http://sunlab.org/>_ 医疗健康研究团队。
当前维护者:
吴振邦 <https://zzachw.github.io/>_ (UIUC博士生)约翰·吴 <https://jhnwu3.github.io/>_ (UIUC博士生)高俊毅 <http://aboutme.vixerunt.org/>_ (爱丁堡大学博士生)孙继明 <http://sunlab.org/>_ (UIUC教授)
联系我们:
Discord社区 <https://discord.gg/mpb835EHaX>_ (响应最快)GitHub问题 <https://github.com/sunlabuiuc/PyHealth/issues>_邮件列表 <https://docs.google.com/forms/d/e/1FAIpQLSfpJB5tdkI7BccTCReoszV9cyyX2rF99SgznzwlOepi5v-xLw/viewform?usp=header>_
版本历史
v2.0.12026/04/01v2.0.02026/03/23v1.1.62024/03/07v1.1.42023/05/31v1.1.32023/01/24常见问题
相似工具推荐
openclaw
OpenClaw 是一款专为个人打造的本地化 AI 助手,旨在让你在自己的设备上拥有完全可控的智能伙伴。它打破了传统 AI 助手局限于特定网页或应用的束缚,能够直接接入你日常使用的各类通讯渠道,包括微信、WhatsApp、Telegram、Discord、iMessage 等数十种平台。无论你在哪个聊天软件中发送消息,OpenClaw 都能即时响应,甚至支持在 macOS、iOS 和 Android 设备上进行语音交互,并提供实时的画布渲染功能供你操控。 这款工具主要解决了用户对数据隐私、响应速度以及“始终在线”体验的需求。通过将 AI 部署在本地,用户无需依赖云端服务即可享受快速、私密的智能辅助,真正实现了“你的数据,你做主”。其独特的技术亮点在于强大的网关架构,将控制平面与核心助手分离,确保跨平台通信的流畅性与扩展性。 OpenClaw 非常适合希望构建个性化工作流的技术爱好者、开发者,以及注重隐私保护且不愿被单一生态绑定的普通用户。只要具备基础的终端操作能力(支持 macOS、Linux 及 Windows WSL2),即可通过简单的命令行引导完成部署。如果你渴望拥有一个懂你
stable-diffusion-webui
stable-diffusion-webui 是一个基于 Gradio 构建的网页版操作界面,旨在让用户能够轻松地在本地运行和使用强大的 Stable Diffusion 图像生成模型。它解决了原始模型依赖命令行、操作门槛高且功能分散的痛点,将复杂的 AI 绘图流程整合进一个直观易用的图形化平台。 无论是希望快速上手的普通创作者、需要精细控制画面细节的设计师,还是想要深入探索模型潜力的开发者与研究人员,都能从中获益。其核心亮点在于极高的功能丰富度:不仅支持文生图、图生图、局部重绘(Inpainting)和外绘(Outpainting)等基础模式,还独创了注意力机制调整、提示词矩阵、负向提示词以及“高清修复”等高级功能。此外,它内置了 GFPGAN 和 CodeFormer 等人脸修复工具,支持多种神经网络放大算法,并允许用户通过插件系统无限扩展能力。即使是显存有限的设备,stable-diffusion-webui 也提供了相应的优化选项,让高质量的 AI 艺术创作变得触手可及。
everything-claude-code
everything-claude-code 是一套专为 AI 编程助手(如 Claude Code、Codex、Cursor 等)打造的高性能优化系统。它不仅仅是一组配置文件,而是一个经过长期实战打磨的完整框架,旨在解决 AI 代理在实际开发中面临的效率低下、记忆丢失、安全隐患及缺乏持续学习能力等核心痛点。 通过引入技能模块化、直觉增强、记忆持久化机制以及内置的安全扫描功能,everything-claude-code 能显著提升 AI 在复杂任务中的表现,帮助开发者构建更稳定、更智能的生产级 AI 代理。其独特的“研究优先”开发理念和针对 Token 消耗的优化策略,使得模型响应更快、成本更低,同时有效防御潜在的攻击向量。 这套工具特别适合软件开发者、AI 研究人员以及希望深度定制 AI 工作流的技术团队使用。无论您是在构建大型代码库,还是需要 AI 协助进行安全审计与自动化测试,everything-claude-code 都能提供强大的底层支持。作为一个曾荣获 Anthropic 黑客大奖的开源项目,它融合了多语言支持与丰富的实战钩子(hooks),让 AI 真正成长为懂上
ComfyUI
ComfyUI 是一款功能强大且高度模块化的视觉 AI 引擎,专为设计和执行复杂的 Stable Diffusion 图像生成流程而打造。它摒弃了传统的代码编写模式,采用直观的节点式流程图界面,让用户通过连接不同的功能模块即可构建个性化的生成管线。 这一设计巧妙解决了高级 AI 绘图工作流配置复杂、灵活性不足的痛点。用户无需具备编程背景,也能自由组合模型、调整参数并实时预览效果,轻松实现从基础文生图到多步骤高清修复等各类复杂任务。ComfyUI 拥有极佳的兼容性,不仅支持 Windows、macOS 和 Linux 全平台,还广泛适配 NVIDIA、AMD、Intel 及苹果 Silicon 等多种硬件架构,并率先支持 SDXL、Flux、SD3 等前沿模型。 无论是希望深入探索算法潜力的研究人员和开发者,还是追求极致创作自由度的设计师与资深 AI 绘画爱好者,ComfyUI 都能提供强大的支持。其独特的模块化架构允许社区不断扩展新功能,使其成为当前最灵活、生态最丰富的开源扩散模型工具之一,帮助用户将创意高效转化为现实。
markitdown
MarkItDown 是一款由微软 AutoGen 团队打造的轻量级 Python 工具,专为将各类文件高效转换为 Markdown 格式而设计。它支持 PDF、Word、Excel、PPT、图片(含 OCR)、音频(含语音转录)、HTML 乃至 YouTube 链接等多种格式的解析,能够精准提取文档中的标题、列表、表格和链接等关键结构信息。 在人工智能应用日益普及的今天,大语言模型(LLM)虽擅长处理文本,却难以直接读取复杂的二进制办公文档。MarkItDown 恰好解决了这一痛点,它将非结构化或半结构化的文件转化为模型“原生理解”且 Token 效率极高的 Markdown 格式,成为连接本地文件与 AI 分析 pipeline 的理想桥梁。此外,它还提供了 MCP(模型上下文协议)服务器,可无缝集成到 Claude Desktop 等 LLM 应用中。 这款工具特别适合开发者、数据科学家及 AI 研究人员使用,尤其是那些需要构建文档检索增强生成(RAG)系统、进行批量文本分析或希望让 AI 助手直接“阅读”本地文件的用户。虽然生成的内容也具备一定可读性,但其核心优势在于为机器
LLMs-from-scratch
LLMs-from-scratch 是一个基于 PyTorch 的开源教育项目,旨在引导用户从零开始一步步构建一个类似 ChatGPT 的大型语言模型(LLM)。它不仅是同名技术著作的官方代码库,更提供了一套完整的实践方案,涵盖模型开发、预训练及微调的全过程。 该项目主要解决了大模型领域“黑盒化”的学习痛点。许多开发者虽能调用现成模型,却难以深入理解其内部架构与训练机制。通过亲手编写每一行核心代码,用户能够透彻掌握 Transformer 架构、注意力机制等关键原理,从而真正理解大模型是如何“思考”的。此外,项目还包含了加载大型预训练权重进行微调的代码,帮助用户将理论知识延伸至实际应用。 LLMs-from-scratch 特别适合希望深入底层原理的 AI 开发者、研究人员以及计算机专业的学生。对于不满足于仅使用 API,而是渴望探究模型构建细节的技术人员而言,这是极佳的学习资源。其独特的技术亮点在于“循序渐进”的教学设计:将复杂的系统工程拆解为清晰的步骤,配合详细的图表与示例,让构建一个虽小但功能完备的大模型变得触手可及。无论你是想夯实理论基础,还是为未来研发更大规模的模型做准备