Search icon CANCEL
Subscription
0
Cart icon
Your Cart (0 item)
Close icon
You have no products in your basket yet
Arrow left icon
Explore Products
Best Sellers
New Releases
Books
Videos
Audiobooks
Learning Hub
Conferences
Free Learning
Arrow right icon
Machine Learning for Healthcare Analytics Projects
Machine Learning for Healthcare Analytics Projects

Machine Learning for Healthcare Analytics Projects: Build smart AI applications using neural network methodologies across the healthcare vertical market

eBook
AU$14.99 AU$28.99
Paperback
AU$35.99
Subscription
Free Trial
Renews at AU$24.99p/m

What do you get with a Packt Subscription?

Free for first 7 days. $24.99 p/m after that. Cancel any time!
Product feature icon Unlimited ad-free access to the largest independent learning library in tech. Access this title and thousands more!
Product feature icon 50+ new titles added per month, including many first-to-market concepts and exclusive early access to books as they are being written.
Product feature icon Innovative learning tools, including AI book assistants, code context explainers, and text-to-speech.
Product feature icon Thousands of reference materials covering every tech concept you need to stay up to date.
Subscribe now
View plans & pricing
Table of content icon View table of contents Preview book icon Preview Book

Machine Learning for Healthcare Analytics Projects

Diabetes Onset Detection

The far-ranging developments in healthcare over the past few years have led to a huge collection of data that can be used for analysis. We can now easily predict the onset of various illnesses before they even happen, using a technology called neural networks. In this chapter, we are going to use a deep neural network and a grid search to predict the onset of diabetes for a set of patients. We will learn a lot about deep neural networks, the parameters that are used to optimize them, and how to choose the correct parameters for each.

We will cover the following topics in this chapter:

  • Detecting diabetes using a deep learning grid search
  • Introduction to the dataset
  • Building a Keras model
  • Performing a grid search using scikit-learn
  • Reducing overfitting using dropout regularization
  • Finding the optimal hyperparameters
  • Generating predictions using optimal...

Detecting diabetes using a grid search

We will be predicting diabetes on a of patients by using a deep learning algorithm, which we will optimize with a grid search to find the optimal hyperparameters. We are going to be doing this project in Jupyter Notebook, as follows:

  1. Start by opening up Command Prompt in Windows or Terminal in Linux systems. We will navigate to our project directory using the cd command.
  2. Our next step is to open the Jupyter Notebook by typing the following command:
jupyter notebook
Alternatively, you can use the jupyter lab command to open an instance of Jupyter Lab, which is just a better version of Notebook.
  1. Once the Notebook is open, we will rename the unnamed file to Deep Learning Grid Search.
  2. We will then import our packages using general import statements. We will print the version numbers, as shown in the following screenshot:

Keras has two options...

Introduction to the dataset

Our next step is to import the Pima Indians diabetes dataset, which contains the details of about 750 patients:

  1. The dataset that we need can be found at https://raw.githubusercontent.com/jbrownlee/Datasets/master/pima-indians-diabetes.data.csv. We can import it by using the following line:
url = "https://raw.githubusercontent.com/jbrownlee/Datasets/master/pima-indians-diabetes.data.csv"
  1. If we navigate to the preceding URL, we can see a lot of raw information. Once we have imported the dataset, we have to define column names. We will do this using the following lines of code:
names = ['n_pregnant', 'glucose_concentration', 'blood_pressure (mm Hg)', 'skin_thickness (mm)', 'serum_insulin (mu U/ml)', 'BMI', 'pedigree_function', 'age', 'class']

As can...

Building our Keras model

We'll now start building our Keras model, which is a deep learning algorithm:

  1. The first thing that we're going to do is import the necessary packages and layers. We will do that by running the following lines of code:
from sklearn.model_selection import GridSearchCV, KFold
from keras.models import Sequential
from keras.layers import Dense
from keras.wrappers.scikit_learn import KerasClassifier
from keras.optimizers import Adam

In the preceding code snippet , GridSearchCV is the function we will use to perform a grid search, and KFold will be used for performing the k-fold cross-validation. KerasClassifier is used as the wrapper. Adam is the optimizer that we will be using for this model; the rest of the functions are all general functions used to define the model:

  1. Let's start by defining the model. We will use a create_model() function, because...

Performing a grid search using scikit-learn

It's now time to prepare our grid search algorithm. We will follow a step-by-step process to make it easier to understand and execute:

  1. The first thing that we will do is copy the create_model() function, which we created in the Building a Keras model section, and paste it into a new cell, as shown in the following screenshot:
  1. Now, we will define a random seed through NumPy. This helps us to create results that are reproducible. We are also going to add random initialization of weights and random divisions of data into different groups. We will set a starting point so that we have the same initialization and the same divisions for all the data. This can be done by adding a few lines of code above the create_model() function, as shown in the following screenshot:
  1. Our next step is to initialize the KerasClassifier that we imported...

Reducing overfitting using dropout regularization

We will now use the information we gained in the Performing a grid search using scikit-learn section to optimize other aspects of our model. It looks like we might be overfitting the data a little bit, as we are getting better results on our training data than our testing data. We're now going to look at adding in dropout regularization:

  1. Our first step is to copy the code that is present in the grid search cell that we ran in the previous section, and paste it in a fresh cell. We will keep the general structure of the code and play around with some of the parameters present.
  1. We will then import the Dropout function from keras.layers using the following line:
from keras.layers import Dropout
  1. We will now convert the learning rate into a variable by defining it in the Adam optimizer code block. We will use learn_rate as...

Finding the optimal hyperparameters

We're now going to optimize the weight initialization that we're applying to the end of each of these neurons:

  1. To do this, we will first copy the code from the cell that we ran in the previous Reducing overfitting using dropout regularization section, and paste it into a new one. In this section, we won't be changing the general structure of the code; instead, we will be modifying some parameters and optimizing the search.
  2. We now know the best learn_rate and dropout_rate, so we are going to hardcode these and remove them. We are also going to remove the Dropout layers that we added in the previous section. We will modify the learning rate of the Adam optimizer to 0.001, as this is the best value that we found.
  3. Since we are trying to optimize the activation and init variables, we will define them in the create_model() function...

Optimizing the number of neurons

Let's now move on to tuning the number of neurons in each of these layers. Since we are following the same steps as the preceding sections, we will go through all these steps and do a recap with the code snippet at the end. So, let's get started with the following steps:

  1. We will start by copying the code from the cell used in the Finding the optimal hyperparameters section, and paste it in a new cell. In this new cell, we will play around with the number of neurons by modifying some of the variables.
  2. We will convert the total number of neurons present in each hidden layer into variables, such as neuron1 and neuron2. We will also define these variables in the create_model() function, so that they are called every time we execute it.
  3. We will also change the kernel_initializer and activation values to tanh and normal, since those were the...

Generating predictions using optimal hyperparameters

We know now some optimal hyperparameters for our grid search. We will use these to predict the onset of diabetes for the patients in our dataset. To do this, we will carry out the following steps:

  1. We will predict whether diabetes will occur for every example in the dataset by using the predict() function, as shown in the following code snippet:
# generate predictions with optimal hyperparameters
y_pred = grid.predict(X_standardized)
  1. We will then use the .shape command to see what the predictions look like. The following screenshot shows the output for this step:

From the preceding screenshot, we can see that there are 392 predictions with a numerical value for each.

  1. Let's print off the first five and see what they look like. We get the following output:
  1. We are now going to do a classification report and get an...

Summary

In this chapter, we built a deep neural network in Keras and we found the optimal hyperparameters using the scikit-learn grid search. We also learned how to optimize a network by tuning the hyperparameters. Note that the results that we get might not be the same for all of us, but as long as we get similar predictions, we can consider our model a success. When you start training on new data, or if you're trying to address a different problem with a different dataset, you will have to go through this process again. In this chapter, we also learned about deep learning and hyperparameter optimization and explored how to apply them to the network to predict the onset of diabetes on a huge dataset of patients.

In the next chapter, we will look at how to classify DNA using machine algorithms.

Left arrow icon Right arrow icon
Download code icon Download Code

Key benefits

  • Develop a range of healthcare analytics projects using real-world datasets
  • Implement key machine learning algorithms using a range of libraries from the Python ecosystem
  • Accomplish intermediate-to-complex tasks by building smart AI applications using neural network methodologies

Description

Machine Learning (ML) has changed the way organizations and individuals use data to improve the efficiency of a system. ML algorithms allow strategists to deal with a variety of structured, unstructured, and semi-structured data. Machine Learning for Healthcare Analytics Projects is packed with new approaches and methodologies for creating powerful solutions for healthcare analytics. This book will teach you how to implement key machine learning algorithms and walk you through their use cases by employing a range of libraries from the Python ecosystem. You will build five end-to-end projects to evaluate the efficiency of Artificial Intelligence (AI) applications for carrying out simple-to-complex healthcare analytics tasks. With each project, you will gain new insights, which will then help you handle healthcare data efficiently. As you make your way through the book, you will use ML to detect cancer in a set of patients using support vector machines (SVMs) and k-Nearest neighbors (KNN) models. In the final chapters, you will create a deep neural network in Keras to predict the onset of diabetes in a huge dataset of patients. You will also learn how to predict heart diseases using neural networks. By the end of this book, you will have learned how to address long-standing challenges, provide specialized solutions for how to deal with them, and carry out a range of cognitive tasks in the healthcare domain.

Who is this book for?

Machine Learning for Healthcare Analytics Projects is for data scientists, machine learning engineers, and healthcare professionals who want to implement machine learning algorithms to build smart AI applications. Basic knowledge of Python or any programming language is expected to get the most from this book.

What you will learn

  • Explore super imaging and natural language processing (NLP) to classify DNA sequencing
  • Detect cancer based on the cell information provided to the SVM
  • Apply supervised learning techniques to diagnose autism spectrum disorder (ASD)
  • Implement a deep learning grid and deep neural networks for detecting diabetes
  • Analyze data from blood pressure, heart rate, and cholesterol level tests using neural networks
  • Use ML algorithms to detect autistic disorders

Product Details

Country selected
Publication date, Length, Edition, Language, ISBN-13
Publication date : Oct 30, 2018
Length: 134 pages
Edition : 1st
Language : English
ISBN-13 : 9781789536591
Category :
Languages :

What do you get with a Packt Subscription?

Free for first 7 days. $24.99 p/m after that. Cancel any time!
Product feature icon Unlimited ad-free access to the largest independent learning library in tech. Access this title and thousands more!
Product feature icon 50+ new titles added per month, including many first-to-market concepts and exclusive early access to books as they are being written.
Product feature icon Innovative learning tools, including AI book assistants, code context explainers, and text-to-speech.
Product feature icon Thousands of reference materials covering every tech concept you need to stay up to date.
Subscribe now
View plans & pricing

Product Details

Publication date : Oct 30, 2018
Length: 134 pages
Edition : 1st
Language : English
ISBN-13 : 9781789536591
Category :
Languages :

Packt Subscriptions

See our plans and pricing
Modal Close icon
AU$24.99 billed monthly
Feature tick icon Unlimited access to Packt's library of 7,000+ practical books and videos
Feature tick icon Constantly refreshed with 50+ new titles a month
Feature tick icon Exclusive Early access to books as they're written
Feature tick icon Solve problems while you work with advanced search and reference features
Feature tick icon Offline reading on the mobile app
Feature tick icon Simple pricing, no contract
AU$249.99 billed annually
Feature tick icon Unlimited access to Packt's library of 7,000+ practical books and videos
Feature tick icon Constantly refreshed with 50+ new titles a month
Feature tick icon Exclusive Early access to books as they're written
Feature tick icon Solve problems while you work with advanced search and reference features
Feature tick icon Offline reading on the mobile app
Feature tick icon Choose a DRM-free eBook or Video every month to keep
Feature tick icon PLUS own as many other DRM-free eBooks or Videos as you like for just AU$5 each
Feature tick icon Exclusive print discounts
AU$349.99 billed in 18 months
Feature tick icon Unlimited access to Packt's library of 7,000+ practical books and videos
Feature tick icon Constantly refreshed with 50+ new titles a month
Feature tick icon Exclusive Early access to books as they're written
Feature tick icon Solve problems while you work with advanced search and reference features
Feature tick icon Offline reading on the mobile app
Feature tick icon Choose a DRM-free eBook or Video every month to keep
Feature tick icon PLUS own as many other DRM-free eBooks or Videos as you like for just AU$5 each
Feature tick icon Exclusive print discounts

Frequently bought together


Stars icon
Total AU$ 157.97
Healthcare Analytics Made Simple
AU$60.99
Data Science Algorithms in a Week
AU$60.99
Machine Learning for Healthcare Analytics Projects
AU$35.99
Total AU$ 157.97 Stars icon
Banner background image

Table of Contents

6 Chapters
Breast Cancer Detection Chevron down icon Chevron up icon
Diabetes Onset Detection Chevron down icon Chevron up icon
DNA Classification Chevron down icon Chevron up icon
Diagnosing Coronary Artery Disease Chevron down icon Chevron up icon
Autism Screening with Machine Learning Chevron down icon Chevron up icon
Another Book You May Enjoy Chevron down icon Chevron up icon

Customer reviews

Rating distribution
Full star icon Full star icon Full star icon Half star icon Empty star icon 3.3
(4 Ratings)
5 star 50%
4 star 0%
3 star 0%
2 star 25%
1 star 25%
Elliott0928 Oct 28, 2020
Full star icon Full star icon Full star icon Full star icon Full star icon 5
A useful book in excellent condition with helpful contents and hints
Amazon Verified review Amazon
Cesar C. Jun 30, 2019
Full star icon Full star icon Full star icon Full star icon Full star icon 5
Buen libro
Amazon Verified review Amazon
Amazon Customer Apr 23, 2019
Full star icon Full star icon Empty star icon Empty star icon Empty star icon 2
Print quality of this book is not good.Some printing content is difficult to read.The book is very less of content and I expected more practical examples.
Amazon Verified review Amazon
Amazon Customer Apr 12, 2020
Full star icon Empty star icon Empty star icon Empty star icon Empty star icon 1
Read chapter 1. I might be the only one that has done so. 28 pages in and already numerous screenshots that do not match the text describing them. Multiple instances of the same exact code and output being described as having different results.
Amazon Verified review Amazon
Get free access to Packt library with over 7500+ books and video courses for 7 days!
Start Free Trial

FAQs

What is included in a Packt subscription? Chevron down icon Chevron up icon

A subscription provides you with full access to view all Packt and licnesed content online, this includes exclusive access to Early Access titles. Depending on the tier chosen you can also earn credits and discounts to use for owning content

How can I cancel my subscription? Chevron down icon Chevron up icon

To cancel your subscription with us simply go to the account page - found in the top right of the page or at https://subscription.packtpub.com/my-account/subscription - From here you will see the ‘cancel subscription’ button in the grey box with your subscription information in.

What are credits? Chevron down icon Chevron up icon

Credits can be earned from reading 40 section of any title within the payment cycle - a month starting from the day of subscription payment. You also earn a Credit every month if you subscribe to our annual or 18 month plans. Credits can be used to buy books DRM free, the same way that you would pay for a book. Your credits can be found in the subscription homepage - subscription.packtpub.com - clicking on ‘the my’ library dropdown and selecting ‘credits’.

What happens if an Early Access Course is cancelled? Chevron down icon Chevron up icon

Projects are rarely cancelled, but sometimes it's unavoidable. If an Early Access course is cancelled or excessively delayed, you can exchange your purchase for another course. For further details, please contact us here.

Where can I send feedback about an Early Access title? Chevron down icon Chevron up icon

If you have any feedback about the product you're reading, or Early Access in general, then please fill out a contact form here and we'll make sure the feedback gets to the right team. 

Can I download the code files for Early Access titles? Chevron down icon Chevron up icon

We try to ensure that all books in Early Access have code available to use, download, and fork on GitHub. This helps us be more agile in the development of the book, and helps keep the often changing code base of new versions and new technologies as up to date as possible. Unfortunately, however, there will be rare cases when it is not possible for us to have downloadable code samples available until publication.

When we publish the book, the code files will also be available to download from the Packt website.

How accurate is the publication date? Chevron down icon Chevron up icon

The publication date is as accurate as we can be at any point in the project. Unfortunately, delays can happen. Often those delays are out of our control, such as changes to the technology code base or delays in the tech release. We do our best to give you an accurate estimate of the publication date at any given time, and as more chapters are delivered, the more accurate the delivery date will become.

How will I know when new chapters are ready? Chevron down icon Chevron up icon

We'll let you know every time there has been an update to a course that you've bought in Early Access. You'll get an email to let you know there has been a new chapter, or a change to a previous chapter. The new chapters are automatically added to your account, so you can also check back there any time you're ready and download or read them online.

I am a Packt subscriber, do I get Early Access? Chevron down icon Chevron up icon

Yes, all Early Access content is fully available through your subscription. You will need to have a paid for or active trial subscription in order to access all titles.

How is Early Access delivered? Chevron down icon Chevron up icon

Early Access is currently only available as a PDF or through our online reader. As we make changes or add new chapters, the files in your Packt account will be updated so you can download them again or view them online immediately.

How do I buy Early Access content? Chevron down icon Chevron up icon

Early Access is a way of us getting our content to you quicker, but the method of buying the Early Access course is still the same. Just find the course you want to buy, go through the check-out steps, and you’ll get a confirmation email from us with information and a link to the relevant Early Access courses.

What is Early Access? Chevron down icon Chevron up icon

Keeping up to date with the latest technology is difficult; new versions, new frameworks, new techniques. This feature gives you a head-start to our content, as it's being created. With Early Access you'll receive each chapter as it's written, and get regular updates throughout the product's development, as well as the final course as soon as it's ready.We created Early Access as a means of giving you the information you need, as soon as it's available. As we go through the process of developing a course, 99% of it can be ready but we can't publish until that last 1% falls in to place. Early Access helps to unlock the potential of our content early, to help you start your learning when you need it most. You not only get access to every chapter as it's delivered, edited, and updated, but you'll also get the finalized, DRM-free product to download in any format you want when it's published. As a member of Packt, you'll also be eligible for our exclusive offers, including a free course every day, and discounts on new and popular titles.