https://github.com/ccs-lab/project_model_based_fmri
Science Score: 13.0%
This score indicates how likely this project is to be science-related based on various indicators:
-
○CITATION.cff file
-
○codemeta.json file
-
○.zenodo.json file
-
✓DOI references
Found 6 DOI reference(s) in README -
○Academic publication links
-
○Academic email domains
-
○Institutional organization owner
-
○JOSS paper metadata
-
○Scientific vocabulary similarity
Low similarity (12.7%) to scientific vocabulary
Last synced: 10 months ago
·
JSON representation
Repository
Basic Info
- Host: GitHub
- Owner: CCS-Lab
- Language: Jupyter Notebook
- Default Branch: main
- Size: 174 MB
Statistics
- Stars: 2
- Watchers: 3
- Forks: 2
- Open Issues: 7
- Releases: 0
Created almost 6 years ago
· Last pushed almost 5 years ago
https://github.com/CCS-Lab/project_model_based_fmri/blob/main/
# project_model_based_fmri**MBfMRI** is a unified Python fMRI analysis tool on task-based fMRI data to investigate brain implementations of latent neurocognitive processes. It combines two fMRI analytic frameworks: *model-based fMRI* and *multi-voxel pattern analysis (MVPA)*. MBfMRI offers simple executable functions to conduct computational modeling (supported by *hBayesDM*[1]) and run model-based fMRI analysis using MVPA. To [install](#Installation). The basic framework of conventional model-based fMRI by O'Doherty et al. (2007)[2] consists of the following steps. 1) Find best fitting parameters of model to behavioral data 2) Generate model-based time series by using the best model-fitting parameters and convolve it with HRF (a.k.a. latent process) 3) Regress model-based time series against task-fMRI data using GLM Upon the more conventional massive univariate approach to model-based neuroimaging, **MBfMRI** extends the framework by adopting MVPA regression models. The MVPA approach (model-based MVPA) has two differences compared to the previous approach: first, MVPA regression models predict cognitive process directly from brain activations, enabling acquisition of *reverse inference* model denoted by Poldrack (2006)[3]; second, instead of being mapped by statistical significance, the brain activation pattern correlated with the latent process is obtained by interpreting trained MVPA regression models. The specific workflow of the model-based MVPA, consists of the following steps:
![]()
1) Generate latent process signals by fitting computational models with behavioral data and convolving time series of latent process with HRF. 3) Generate multi-voxel signals from preprocess fMRI images by allowing ROI masking, zooming spatial resolution, and improving the quality of signals by several well-established methods (e.g. detrending, high-pass filtering, regressing out confounds). 4) Train MVPA models by feeding multi-voxel signals as input (X) and latent process signals as ouput (y), or target, employing the repeated cross-validation framework. 5) Interpret the trained MVPA models to visualize the brain implementation of the target latent process quantified as brain activation pattern attributed to predict the target signals from the multi-voxel signals. Other distinguishing features of the model-based MVPA are that the model-based MVPA is flexible as it allows various MVPA models plugged in and it is free of analytic hierarchy (e.g. first-level anal. or second-level anal.). The package also provides the well-established model-based GLM approach. The process shared with the model-based MVPA approach is **1) Generate latent process signals** to provide parametric modulation of the target signals. The first-level and second-level analysis are done by **NiLearn** modules, [FirstLevelModel](https://nilearn.github.io/modules/generated/nilearn.glm.first_level.FirstLevelModel.html) and [SecondLevelModel](https://nilearn.github.io/modules/generated/nilearn.glm.second_level.SecondLevelModel.html) respectively. Please refer to the links if you'd like to know the details about each step. **MBfMRI** supports Python 3.6 or above and relies on [NiLearn](https://github.com/nilearn/nilearn), [hBayesDM](https://github.com/CCS-Lab/hBayesDM/tree/develop/Python), [py-glmnet](https://github.com/civisanalytics/python-glmnet), and [tensorflow](https://www.tensorflow.org/api_docs/python/tf/keras?hl=ko)(tested on v2.4.0). ### Features of model-based MVPA - Model-based MVPA is based on MVPA regression model. - Model-based MVPA is flexible as it allows various MVPA models plugged in. - Model-based MVPA is free of analytic hierarchy (e.g. first-level anal. or second-level anal.). ### Models implemented in MBfMRI - MBfMRI offers [various MVPA models](https://project-model-based-fmri.readthedocs.io/en/latest/mbfmri.models.html#models) as well as [a massive univariate approach based on GLM](https://project-model-based-fmri.readthedocs.io/en/latest/mbfmri.core.glm.html). # Installation ``` git clone https://github.com/CCS-Lab/project_model_based_fmri.git cd project_model_based_fmri poetry install poetry shell python setup.py install ``` # Tutorial Download the example data from [here](https://drive.google.com/file/d/1nmHwyxgrCfMQ3EhDhdFb3BwToEzMArqN/view?usp=sharing). Download and unzip it under *tutorials*.
![]()
See the [tutorial](https://github.com/CCS-Lab/project_model_based_fmri/blob/main/tutorials/tutorial.ipynb). ## References [1] Ahn, W.-Y., Haines, N., & Zhang, L. (2017). Revealing Neurocomputational Mechanisms of Reinforcement Learning and Decision-Making With the hBayesDM Package. Computational Psychiatry, 1(Figure 1), 2457. https://doi.org/10.1162/cpsy_a_00002 [2] ODoherty, J. P., Hampton, A., & Kim, H. (2007). Model-based fMRI and its application to reward learning and decision making. Annals of the New York Academy of Sciences, 1104, 3553. https://doi.org/10.1196/annals.1390.022 [3] Poldrack, R. A. (2006). Can cognitive processes be inferred from neuroimaging data? Trends in Cognitive Sciences, 10(2), 5963. https://doi.org/10.1016/j.tics.2005.12.004
Owner
- Name: Computational Clinical Science Laboratory
- Login: CCS-Lab
- Kind: organization
- Location: Seoul National University (Seoul, Korea)
- Website: ccs-lab.github.io
- Repositories: 16
- Profile: https://github.com/CCS-Lab