In this series of liveProjects, you’ll extend and upgrade basic machine learning techniques like linear regression to build a powerful tool that can make personalized predictions of an individual's COVID-19 infection status. You will apply federated learning techniques to train a machine learning system on a (fictional) dataset of smart phone data. Federated learning is a new ML paradigm used for the collaborative training of models from heterogeneous and distributed data such as audio recordings generated by smartphones. This liveProject series will teach you how to use federated learning techniques to exploit the intrinsic network structure (“contact networks”) between audio recordings in order to learn optimal model parameters for each individual. Federated learning techniques are privacy-friendly as they do not require the sharing of sensitive private data, such as audio recordings of smartphone users.
These projects are designed for learning purposes and are not complete, production-ready applications or solutions.
here's what's included
Project 1 Handling Sensitive Data
In this liveProject, you’ll develop a machine learning model that can make a personalized prediction of whether an individual has COVID-19. You’ll work with a fictional audio dataset of digital footprints from smart phones, applying logistic regression and decision trees to turn this dataset into a COVID-19 predictor. You’ll learn how to formulate a ML problem by identifying data points, and their features and labels, so that you can take advantage of ready-made ML methods.
Project 2 Build Network Models for Pandemics
In this liveProject, you’ll use machine learning to construct a contact tracing network for COVID-19 using location recordings from smart phone data. You’ll read the location of infected individuals, and generate a contact network of individuals who have been within two meters. Once you’ve established this tracing system, you’ll implement a distributed algorithm that can compute the average infection rate for each connected component of the contact network.
Project 3 Personalized Diagnosis of Symptoms
In this liveProject, you’ll apply the federated learning machine learning paradigm to compute a personalized infection risk diagnosis for COVID-19. Federated learning is an ML paradigm that learns from decentralized data via distributed computing environments. The risk diagnosis will come from a tailored classifier that is trained separately for each individual, by combining gradient descent with a network averaging method. You’ll then develop a federate learning algorithm that can be implemented by scalable passing messages over the contact network.
This series of liveProjects is for Python data scientists interested in applying big data analytics to public healthcare. To begin this liveProject you will need to be familiar with the following:
- Intermediate Python
- Basic methods for storing and manipulating numeric arrays using Python package NumPy
- Basic plotting using the Python package matplotlib
- Basic methods for processing geographic coordinates using Python package GeoPy
- Basics of NetworkX for storing and manipulating networked data
- Basics of machine learning
- Basics of data science
you will learn
In this series of liveProjects, you’ll learn to develop powerful and personalized machine learning applications for tracking infections. You’ll also utilize the new federated learning ML paradigm that learns ML models from decentralised data via distributed computing environments.
- Basic flow control in Python
- Create and manipulate figures in Python
- Create and manipulate NumPy arrays to represent matrices and vectors
- Reading in location recordings from a CSV file
- Determining geodesic distances between locations that are specified by a latitude and a longitude
- Implement a simple algorithm that computes a summary statistic of networked data
- Use NetworkX to jointly represent network structured data and models
- Learn the weights of a linear classifier using gradient descent
- Implement a federated learning algorithm by combining gradient descent with a simple averaging scheme