Site icon R-bloggers

Announcing the 1.0 Release of healthcareai for Python

[This article was first published on Blog – healthcare.ai, and kindly contributed to R-bloggers]. (You can report issue about the content on this page here)
Want to share your content on R-bloggers? click here if you have a blog, or here if you don't.

Goals of the Rewrite

healthcareai is intended to serve a wide range of users, from the least technical to the most technical. As we worked with users from this entire spectrum, we found that there were some significant gaps and unnecessary pain points. We also took this opportunity to increase the quality and maintainability of the code.

Paying down some of our technical debts will allow us (and already has) to add features more quickly, with less friction, and create a better experience for our team, our contributors in the healthcare machine learning community, and our users.

What This Means for Users

Our users need to revisit our documentation, since the API (the way you interact with healthcareai) has almost completely changed. Enjoy them at our documentation site at ReadTheDocs.

Because the overall code complexity decreased, we have increased the quality of the software tools through unit and integration testing, and improved continuous integration tooling.

We broke our users down into three groupings of increasing technical sophistication:

1. BI Developers & Analysts

Because our goal is to democratize machine learning in healthcare, this is our largest audience, so we spent the most amount of time optimizing our tools for this group.

This group’s main interface to the toolset is the class SupervisedModelTrainer, which abstracts away most of the challenging parts of training machine learning models. When using it to train models, you need to know very little data science and this class will provide all the bells and whistles for you:

The best place to start is by reading the Getting Started document and working through these four example files:

2. Advanced BI Developers & Analysts

Advanced users may want to use different data preparation pipelines, dial in custom hyperparameters, or even create custom ensemble methods. They should use AdvancedSupervisedModelTrainer, which does not modify your data upon creation of a trainer. See the example_advanced.py script for more details.

It is also important to note that an advanced user can start out with the simpler SupervisedModelTrainer class and easily access more advanced functionality by using the SupervisedModelTrainer.advanced_features property which returns the underlying AdvancedSupervisedModelTrainer class.

Advanced users should start by using and understanding the example scripts mentioned above.

3. Data Scientists & Machine Learning Engineers

There is a small segment of our users who want to leverage some of the tool’s helper methods, data pipeline chunks, and other utilities without directly using either of the Trainer classes.

To facilitate this, we factored out as much functionality as possible into common modules that the Trainer classes access, so that you advanced users can reach inside and use all the sharp tools directly. This did have a nice side effect of making the code easier to understand by breaking up the massive functions into smaller, more testable modules.

We also hope that this new architecture will allow advanced users to be able to contribute more algorithms, data pipelines and other great ideas to the tools so we can continue our dream of improving healthcare outcomes with machine learning.

Other improvements of note:

What This Release Means for Developers and Engineers

Engineers know that smaller functions make for better code for a lot of reasons:

An easy way to get up to speed on our new architecture design is to skim our concise Architecture Overview For Developers document before jumping into the source code.

The Bright Future of healthcareai

With this rewrite under our belts, we are stoked about the future of this toolset. The next major features on our roadmap are adding in multi label classification and a few simple neural nets for tabular data.

We invite all of you to install the latest version and try the new examples. Please join our Slack channel to get help if you are stuck and to discuss ideas for using healthcare.ai to improve healthcare outcomes!

The post Announcing the 1.0 Release of healthcareai for Python appeared first on healthcare.ai.

To leave a comment for the author, please follow the link and comment on their blog: Blog – healthcare.ai.

R-bloggers.com offers daily e-mail updates about R news and tutorials about learning R and many other topics. Click here if you're looking to post or find an R/data-science job.
Want to share your content on R-bloggers? click here if you have a blog, or here if you don't.