Git Product home page Git Product logo

mmml-alzheimer-diagnosis's Introduction

Explainable Ensemble Learning for Alzheimer's Disease Diagnosis

This project aims to develop an explainable multi modality machine learning tool for the diagnosis of the Alzheimer's Disease. Data for this project was collect from the ADNI initiative (http://adni.loni.usc.edu).

We use two types of data:

  1. Tabular data containing neuropsychological exams of a patient
  2. Tabular data containing demographic information of a patient
  3. 3D images of Magnetic Resonance Scans of the brain of a patient

We integrate each data type through separate preprocessing and machine learning pipelines, and join all of them in a final classifier. The name ensemble learning is due to the fact that more than one classifier is used to make intermediate and final predictions.

We provide explanations for predictions at patient level (local explanations) and at the population level (global explanation).

Steps to Run Experiments:

  1. Download ADNIMERGE.csv file from http://adni.loni.usc.edu.

  2. Preprocess ADNIMERGE.csv file.

    Run cognitive_tests_preprocessing.py. Outputfile will be COGNITIVE_DATA_PROCESSED.csv

  3. Preprocess metadata from potential MRIs and ADNIMERGE.csv (metadata_preprocessing.py)

    Run metadata_preprocessing.py and outputfile will indicate the right MRIs files to download and preprocess.

  1. Download MRIs from selected classes and subjects at http://adni.loni.usc.edu. MACRO_GROUPs used were AD,CN and MCI.

  2. Preprocess MRIs (mri_preprocess.py).

  3. Process MRIs (3D to 2D+Augmentation - mri_preparation).

  4. Train/Validate/Test CNNs generating prediction probabilities (mri_train.py).

  5. Train/Validate/Test ML models with cognitive tests (cognitive_train.py).

  6. Train/Validate/Test Ensemble models with cognitive tests (ensemble_train.py).

  7. Results Report

mmml-alzheimer-diagnosis's People

Contributors

lucasthim avatar

Stargazers

Noah Syrkis avatar  avatar  avatar Leticia Croffi avatar MingyaoLI 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.