GithubHelp home page GithubHelp logo

cdtworkshop_ml4timeseries's Introduction

CDT Workshop ML 4 time-series

The Oxford EPSRC CDT in Health Data Science

HDS-M05: Module - Machine Learning for Time Series
November 8 - 12, 2021

Course designed by:

Dr. Andrew Creagh Dr. Anshul Thakur Dr. Davide Morelli Prof. David Clifton
[email protected] [email protected] [email protected] [email protected]

The Institute of Biomedical Engineering,
Department of Engineering Science,
University of Oxford

Lab Overview

This repository aims to introduce the basics of applying machine learning (ML) to medical time-series data. In this module you will learn how ML for time-series is not immediately similar to traditional image-based or static modelling. You will learn the important pre-processing steps that are appropriate for time-series data, and how to frame the problem and task in time. This workshop will introduce fundamental time-series models, such as Autogresssive (AR) proceess, Markov Chains, and Hidden Markov Models (HMM), right through to Recurrent Neural Networks (RNNs) - staples of time-series data applied to healthcare problems. Later stages of this course cover advanced deep-learning based time-series models, such as Temporal Convolution Neural Networks (TCNN), an understanding of latent embeddings (such as with autoencoders, noisy autoencoders, variational autoencoders, etc.), as well as useful ML techniques, such as data augmentation and transfer leanring in medical time-series settings.

Lecture Materials

  1. ML 4 time-series: Introduction to time-series analysis (lecture slides)
  2. ML 4 time-series: Essential Methodology (lecture slides)
  3. ML 4 time-series: Recurrent Neural Networks (lecture slides)
  4. ML 4 time-series: Advanced Recurrent Neural Networks (lecture slides)
  5. ML 4 time-series: Transformations (lecture slides)
  6. ML 4 time-series: Convolutional Neural Networks (lecture slides)
  7. ML 4 time-series: Getting started with Gaussian processes (lecture slides)
  8. ML 4 time-series: Advanced Gaussian processes (lecture slides)
  9. ML 4 time-series: Introduction to Survival Analysis (lecture slides)
  10. ML 4 time-series: Deep survival Analysis (lecture slides)

Further lecture materials can be found on canvas.ox.ac.uk

Data Access

The accompanying pre-processed data for this module can be downloaded via canvas.ox.ac.uk

Setup instructions on the Virtual Machines

  1. Load and initialize Anaconda. This needs to be done only once (you may not need to run this if you already see (bash) written in front of your prompt).

    module load Anaconda3
    conda init bash

    Exit and re-login so that the above takes effect.

  2. Create an anaconda environment from the provided requirements YAML file:

    conda env create -f ml4timeseries.yml
  3. You are now ready to use the environment:

    conda activate ml4timeseries

    In future logins, you only need to run this last command.

How to run Jupyter notebooks remotely

  1. In your remote machine, launch a Jupyter notebook with a specified port, e.g. 9000:

    jupyter-notebook --no-browser --port=9000

    This will output something like:

    To access the notebook, open this URL:
    http://localhost:9000/?token=
    b3ee74d492a6348430f3b74b52309060dcb754e7bf3d6ce4
  2. On your local machine, perform port-forwarding, e.g. the following forwards the remote port 9000 to the local port 8888:

    ssh -N -f -L localhost:8888:localhost:9000 username@remote_address

    Note: You can use the same port numbers for both local and remote.

  3. Finally, copy the URL from step 1. Then in your local machine, open Chrome and paste the URL, but change the port to the local port (or do nothing else if you used the same port). You should be able see the notebooks now.

cdtworkshop_ml4timeseries's People

Contributors

anshthakur avatar apcreagh avatar morellid avatar

Watchers

 avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.