diff --git a/README.rst b/README.rst index 31bd865c4..e12848060 100644 --- a/README.rst +++ b/README.rst @@ -95,25 +95,25 @@ PyHealth is a comprehensive deep learning toolkit for supporting clinical predic **Python Version Requirement** -PyHealth requires **Python 3.12 or 3.13** (``>=3.12,<3.14``). This version requirement enables optimal parallel processing, memory management, and compatibility with our modern dependencies. +PyHealth 2.0 requires **Python 3.12 or 3.13** (``>=3.12,<3.14``). This version requirement enables optimal parallel processing, memory management, and compatibility with our modern dependencies. -**Recommended Installation (Alpha Version)** +**Recommended Installation (Latest Release)** -We recommend installing the latest alpha version from PyPi, which offers significant improvements in performance: +Install the latest PyHealth 2.0 release from PyPI: .. code-block:: sh - pip install pyhealth==2.0a14 + pip install pyhealth -This version includes optimized implementations and enhanced features compared to the legacy version. +This version includes significant performance improvements, dynamic memory support, parallelized processing, multimodal dataloaders, and many new features. **Legacy Version** -The older stable version is still available for backward compatibility: +The older stable version (1.16) is still available for backward compatibility and supports Python 3.9+: .. code-block:: sh - pip install pyhealth + pip install pyhealth==1.16 **For Contributors and Developers** @@ -339,9 +339,9 @@ Module 5: `Tutorial 0: Introduction to pyhealth.data `_ `[Video] `__ -`Tutorial 1: Introduction to pyhealth.datasets `_ `[Video (PyHealth 1.6)] `__ +`Tutorial 1: Introduction to pyhealth.datasets `_ `[Video (PyHealth 1.16)] `__ -`Tutorial 2: Introduction to pyhealth.tasks `_ `[Video (PyHealth 1.6)] `__ +`Tutorial 2: Introduction to pyhealth.tasks `_ `[Video (PyHealth 1.16)] `__ `Tutorial 3: Introduction to pyhealth.models `_ `[Video] `__ diff --git a/docs/install.rst b/docs/install.rst index 965bbd2ff..fb7d7a54b 100644 --- a/docs/install.rst +++ b/docs/install.rst @@ -10,15 +10,15 @@ PyHealth 2.0 requires **Python 3.12 or higher** (up to Python 3.13). This is a h # Verify your Python version python --version # Should be 3.12.x or 3.13.x -**Recommended Installation (Alpha Version)** +**Recommended Installation (Latest Release)** -We recommend installing the latest alpha version from PyPI, which offers significant improvements in performance: +Install the latest PyHealth 2.0 release from PyPI: .. code-block:: bash - pip install pyhealth==2.0a14 + pip install pyhealth -This version includes optimized implementations and enhanced features compared to the legacy version. +This version includes significant performance improvements, dynamic memory support, parallelized processing, multimodal dataloaders, and many new features. **Legacy Version** @@ -26,9 +26,9 @@ The older stable version (1.16) is still available for backward compatibility an .. code-block:: bash - pip install pyhealth + pip install pyhealth==1.16 -**Note:** The legacy version (1.16) should still work for most use cases, but we recommend upgrading to 2.0a14 for better performance and new features. +**Note:** The legacy version (1.16) should still work for most use cases, but we recommend using PyHealth 2.0 for better performance and new features. **For Contributors and Developers** diff --git a/docs/newsletter.rst b/docs/newsletter.rst index ecebb87f7..f0d90eed8 100644 --- a/docs/newsletter.rst +++ b/docs/newsletter.rst @@ -8,6 +8,7 @@ Welcome to the PyHealth Newsletter! Here you'll find regular updates about new f :caption: Newsletter Archive :reversed: + newsletter/2026-01-pyhealth-2.0-release newsletter/2025-12-memory-optimization newsletter/2025-12-research-initiative-call newsletter/2025-11-pyhealth-updates diff --git a/docs/newsletter/2026-01-pyhealth-2.0-release.rst b/docs/newsletter/2026-01-pyhealth-2.0-release.rst new file mode 100644 index 000000000..8a30eeff1 --- /dev/null +++ b/docs/newsletter/2026-01-pyhealth-2.0-release.rst @@ -0,0 +1,79 @@ +PyHealth 2.0 Early Release Announcement +===================================== + +**January 2026** + +Hey everyone, + +The PyHealth team has been really hard at work, trying to modernize much of the codebase and models to leverage our new and improved backend. Seeing as how the majority of our bounties are completed (check out the progress at our `bounties spreadsheet `_), we've decided to do an early full release of PyHealth 2.0! + +What's New +---------- + +The full technical report with comparisons against other frameworks is now available: https://arxiv.org/abs/2601.16414 + +**This means when you use** ``pip install pyhealth``, **it no longer installs the legacy version PyHealth 1.16, but rather the PyHealth 2.0.1 release!** + +Key Features in PyHealth 2.0 +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + +* **Dynamic memory support**: We've finally been able to train a clinical predictive model on MIMIC-IV on a desktop. +* **Parallelized worker usage**: See up to 39x faster ML task processing performance compared to a naive single-threaded pandas solution. +* **Refined API changes**: Enabling streamlined patient data exploration and task customization. +* **Multimodal dataloaders**: Process different data modalities seamlessly. +* **New models**: Expanded model library for various clinical tasks. +* **New datasets**: Support for additional healthcare datasets. +* **New interpretability module**: Better understand your model predictions. + +Future Roadmap +-------------- + +We're still a long way from a fully-mature production-grade research toolkit. There's still a variety of other problems that the PyHealth Research Initiative aims to address through peer-reviewed research and additional contributions to the package. + +Finishing Up Remaining Bounties +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + +We are still actively looking for those who are interested in contributing and joining the community. Please see our `Research Initiative Call `_ for more information. + +Multimodality and Missing Data +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + +One key new benefit of PyHealth 2.0's dataloaders is that they enable processing of any type of modality within a single task given a dataset. However: + +* The number of processors in ``pyhealth.processors`` that directly handle the challenge of missing values is still small. +* The number of models that can take in a wide range of features (time-series, structured EHR, text, etc.) is also limited. + +We're working on expanding both of these areas to better support real-world clinical data challenges. + +Improving the Interpretability Module +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + +We'd like to resolve technical challenges like standardizing the procedure to make PyHealth models compatible with the interpretability module. Currently, it only supports models with access to gradient hooks and input embeddings for continuous values. + +This isn't an easy challenge, but we felt it was worthwhile in looking into better ways of improving the state of interpretability in clinical AI. Ultimately, our goal is to better answer: **What is the best interpretability approach for clinical predictive models?** We aim to do this by enabling interpretability across a wider range of models and methods. + +Robust Distribution Shift and Uncertainty Quantification +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + +Most ML pipelines assume i.i.d. data. Most clinical data is not. + +We're actively building out our conformal prediction approaches towards enabling more robust uncertainty quantification when your calibration set is not necessarily aligned with your test set. The goal here is to: + +* Improve coverage guarantees +* Explore if it's feasible to truly make your models trustworthy to deploy even when model performance is imperfect and prediction sets are necessary + +Get Involved +------------ + +Interested in contributing to PyHealth? Check out: + +* `Research Initiative `_ +* `How to Contribute `_ +* `GitHub Repository `_ + +Thanks for being part of the PyHealth community! + +---- + +**The PyHealth Team** + diff --git a/docs/tutorials.rst b/docs/tutorials.rst index 90ea305ad..68e67fd76 100644 --- a/docs/tutorials.rst +++ b/docs/tutorials.rst @@ -6,9 +6,9 @@ Tutorials `Tutorial 0: Introduction to pyhealth.data `_ `[Video] `_ -`Tutorial 1: Introduction to pyhealth.datasets `_ `[Video (PyHealth 1.6)] `_ +`Tutorial 1: Introduction to pyhealth.datasets `_ `[Video (PyHealth 1.16)] `_ -`Tutorial 2: Introduction to pyhealth.tasks `_ `[Video (PyHealth 1.6)] `_ +`Tutorial 2: Introduction to pyhealth.tasks `_ `[Video (PyHealth 1.16)] `_ `Tutorial 3: Introduction to pyhealth.models `_ `[Video] `_ @@ -29,12 +29,6 @@ For information on how to access and download the datasets supported by PyHealth Additionally, for detailed tutorials on accessing PhysioNet and MIMIC datasets, see the `Getting MIMIC access` section of the `DL4H course instructions `_. -Tutorials on Building Task Pipelines -========================================= - - The following tutorials will help users build their own task pipelines. `[Video] `_ - - `Pipeline 1: Chest Xray Classification `_ `Pipeline 2: Medical Coding `_