bluehyena / brainAges

examining concordance between brain age models of development

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

brainAges

Examining individual variation in brain age estimates during typical development.

Requirements

Python 3.6.10
Required packages include: numpy, scipy, shap, scikit-learn, nibabel

All installed packages are shown in req.txt To clone environment try: conda create -n new environment --file req.txt

Neuroimaging data

PING data is available from the NIMH Data Archive subject to data use agreement. Study link: https://nda.nih.gov/study.html?id=905 (requires NDAR login)

Analysis

1. run_brain_age_models.py
Load surface data, parcellate and preprocess then train and test brain age models and calculate individual model explanations

Output:

  • Cross-validated model accuracies
  • Age predictions
  • Model explanations

2. run_variance_partition.py
Estimate variance explained in brain age delta by confounding variables

Output:

  • % variance explained in delta by confounds and explanations

3. run_deconfound_data.py
For each model, remove variance associated with confounding variables from delta and model explanations using linear regression (performed within 5-fold cross-validation folds)

Output:

  • Model explanations and brain age delta estimates with variance due to confounds removed

4. run_surrogates.py
Use BrainSMASH to generate random surrogate maps with matched spatial autocorrelation

Output:

  • Surrogate maps (n_subjects x p_features x s surrogates)

5. run_explanation_correlations.py
Measure mean similarity of model explanations within subjects (across train/test folds), mean similarity between each subject and every other and mean similarity between each subject and set of random surrogates

Output:

  • Mean cosine similarity for 'within', 'between' and 'random' comparisons

About

examining concordance between brain age models of development


Languages

Language:Python 100.0%