Trinity-wang / Dynamic-Brain-Network-Modularity

Temporal Stability of Modular Brain Network Organization - and its Relationship with Individual Differences (e.g., in General Intelligence)

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

Dynamic-Brain-Network-Modularity

Temporal Stability of Modular Brain Network Organization - and its Relationship with Individual Differences (e.g., in General Intelligence)

The following text provides a detailed description of the analysis pipeline used in the paper “Temporal Stability of Functional Brain Modules Associated with Human Intelligence” coauthored by Kirsten Hilger, Makoto Fukushima, Olaf Sporns, and Christian Fiebach (doi: coming soon after publication). The scripts in this repository can be used to replicate the analyses of the paper or more generally, to study associations between individual differences (e.g., in intelligence) and the temporal dynamics of modular brain network organization, operationalized as standard deviation of modularity over time. Further the scripts allow to determine for each subject the number of extreme modularity states (states of particularly high or low modularity), their potential relation with individual differences, and the localization of network stability effects in certain regions of the brain (by computing stability of node-specific coclassification values representing another operationalization of brain network stability). Further, this repository contains additional scripts to investigate the temporal dynamics of the modular partition itself (operationalized with measures from information theory) and the temporal stability of the network’s biggest module (measure of network integration). Finally, the scripty contain also analyses code for the investigation of brain network modularity in static networks and potential relations with individual differences.

If you have questions or trouble with the scripts, feel free to contact me: hilger@psych.uni-frankfurt.de.

1. Data

In our study we used data acquired by the Nathan S. Kline Institute for Psychiatric Research (NKI) and released as part of the 1000 functional connectomes project (1).

Data can be downloaded from: http://www.nitrc.org/ir/app/template/XDATScreen_report_xnat_projectData.vm/search_element/xnat:projectData/search_field/xnat:projectData.ID/search_value/nki_rockland

For more detailed information see: http://fcon_1000.projects.nitrc.org/indi/pro/nki.html

We used the fast sampling (TR = 645ms) task-free fMRI data to investigate temporal dynamics of high temporal resolution.

2. Preprocessing

For fMRI data preprocessing we recommend the Connectome Computation System pipeline (CCS; ref. 2), which was also used in our study (default settings). CCS is freely available to the public via GitHub (https://github.com/zuoxinian/CCS) and via laboratory website (http://lfcd.psych.ac.cn/ccs.html).

3. Software Requirements

All graph-theoretical analyses were conducted in Matlab (Version 2018a, Mathworks, Inc., Natick, MA, USA). To run the Matlab scripts specified below, I recommend to use the same version. Furthermore you will need some additional functions, which you can find in the folder “functions”, and also some functions from the Brain Connectivity Toolbox (BCT) that can be downloaded under the following link: https://sites.google.com/site/bctnet/Home/functions, but are also deposited in this repository for convenience (folder: “BCT_functions”).

4. Graph Construction

We used the 114 regions of the Yeo atlas for node parcellation (ref. 3) but note that also every other parcellation can be used when adapting the scripts accordingly. However, as analyses are computationally very intense and time consuming, too great numbers of nodes (e.g., voxel-wise parcellations) may be problematic. To model weighted edges on the basis of Pearson correlation coefficients between nodal BOLD time series across the entire duration of the functional scan (for analysis of static, i.e., time-averaged, network properties) you can use the script: A_FCmatrices_Static.m, which calls also the function get_slide_window_conMats.m (should be located in the same folder). For modelling weighted edges within tapered sliding time windows (here of length ≈ 100 s, 156 time points, for analysis of dynamic network properties) we recommend to use the script: B_FCmatrices_Dynamic_sliding_windows_tapered.m. Note that in principle also the script A_FCmatrices_Static.m together with the function get_slide_window_conMats.m allows to model sliding window connectivity matrices and can be used for both, i.e., the computation of static and dynamic graphs, but when you would like to use also tapering (like we did in our study and recommend to increase sensitivity), you need to use the script B_FCmatrices_Dynamic_sliding_windows_tapered.m to compute the dynamic matrices. We computed windows that were shifted across the BOLD time series by 10 time points, which resulted in our case in a total of 70 (partially overlapping) windows, but scripts can easily be adapted to other window lengths. The script B_FCmatrices_Dynamic_sliding_windows_tapered.m contains also a nice small line of code to shows the connectivity matrices over time as a short video clip.

5. Static Multi-Resolution Modularity

The script C_MultiRes_Modularity_Static.m provides code for the computation of subject-specific modular partitions (plus number of modules and average module size) on different spatial resolution levels (gamma). We used 60 spatial resolution levels (0 < gamma ≤ 6; 0.1 steps), but you can adapt the code to play around with different gamma ranges. Community (modularity) detection relies on Fisher Z-transformed correlation matrices (using BCT function: fisherZTransform.m) and the Louvain algorithm as implemented in the BCT (function: community_louvain.m) and described in Blondel et al. (ref. 8). We recommend performing always multiple runs of Louvain, because multiple runs of this partially iterative algorithm can lead to slight changes in modular partitions. The script (C_MultiRes_Modularity_Static.m) contains two options to select the final partition from the e.g., 100 partitions, resulting from multiple runs: a) based on the Louvain run that maximizes Q (CI vector) and b) based on a consensus partition (using functions consensus_und.m and agreement.m) over all partitions (CI2 vector). As in our case both served nearly similar results, we used CI for simplicity. However, both resultant community assignment vectors (CI and CI2) are provided and saved by the script and we recommend to have a closer look at both options. Finally, the results of this computationally intense community detection are saved for further analyses steps under “mod_data_static.mat”.

6. Dynamic Multi-Resolution Modularity

The script D_MultiRes_Modularity_Dynamic_sliding_windows_tapered.m provides code to compute for each subject and each time window modular partitions (plus number of modules and average module size) on different spatial resolution levels (gamma). Also here, we used 60 spatial resolution levels (0 < gamma ≤ 6; 0.1 steps), but you can adapt the code to explore different ranges. Again, modularity detection relies on Fisher Z-transformed correlation matrices (using BCT function: fisherZTransform.m) and the Louvain algorithm as implemented in the BCT (function: community_louvain.m) and described in Blondel et al. (ref. 8). We recommend performing always multiple runs of Louvain, because multiple runs of this partly iterative algorithm can lead to slight changes in modular partitions. Again, also this script D_MultiRes_Modularity_Dynamic_sliding_windows_tapered.m contains two options to select the final partition from the multiple runs: a) based on the Louvain run that maximizes Q (CI vector) and b) based on a consensus partition (using functions consensus_und.m and agreement.m) over all partitions provided by multiple runs (CI2 vector). As in our case both serve nearly similar results, we used CI for simplicity. However, both resultant community assignment vectors (CI and CI2) are provided and saved by the script.

Although not used in the current paper, the script includes also some code (see last section) to compute measures of variability over the modular partitions themselves, i.e., operationalized as mean mutual information criteria (mi) and mean inverse mutual information criteria (vi) across a) partitions from adjacent time windows and b) across all partitions across the whole resting-state run. Finally, also these results of these computationally intense community detection step and metric calculations are saved for further analyses under “mod_data_dynamic_70Wins_tapered_makoto.mat”.

7. Temporal Stability of Modularity and Individual Differences (in Intelligence)

The script E_Temporal_Stability_of_Modularity_IDAnalysis.m contains code for all further analyses steps, i.e., stability of modularity over time and associations with individual differences. More specifically, this script a) determines for all spatial resolution levels of gamma the relation between static modularity and individual differences (e.g., in intelligence), b) finds an optimal spatial resolution level (gamma) for each subject (via highest agreement between static network and Yeo 17-network partition) on which all further analyses are based, c) computes variability (SD) in modularity over time, d) counts number of extreme modularity states in two different ways (states of particular high/low modularity in relation to individual-specific mean modularity and in relation to group-averaged mean modularity), e) serves a node-specific measure of temporal brain network stability via coclassification (and thus also a measure of network-specific stability by aggregating values within canonical standard networks, e.g., from the Yeo atlas), and f) calculates associations (spearman correlation) between all these network characteristics and individual difference (e.g., in intelligence) by controlling for effects of age, sex, hand and mean framewise displacement (FD).

Although not used for the current paper, the script provides also code to study the association between an individual difference measure and the variability in the modular partition itself over time (operationalized as inverse mutual information criteria between adjacent time windows or between all time windows), for investigating the association between an individual difference measure and the size of the biggest module at subject-specific optimal gamma (approximating network integration), and finally to plot mean coclassification matrices for extreme groups of the individual-difference measure (e.g., highest/lowest 30%, 10% of intelligence) and respective difference matrices for visual comparison.

The script E_Temporal_Stability_of_Modularity_IDAnalysis.m requires as input the modular partitions (subject- and gamma-specific community assignment vectors) based on static networks (“mod_data_static.mat”), a matrix containing all behavioral measures (here called “Subjects_N281_Behav_Dyn.mat”), a matrix which specifies the communities in accordance to the canonical standard partition of Yeo (ref. 3; “Yeo_2011_17NW” is also deposited in this repository), and the modular partitions (subject- and gamma-specific community assignment vectors) based on dynamic networks, i.e., for each window (here named: “mod_data_dynamic_70_tapered_Makoto.mat”). Further the script needs the following functions, which should be located in the same folder (or below) but are also deposited in this repository: partition_distance.m, agreement.m, and module_density.m.

8. References

  1. K. B. Nooner, et al., The NKI-Rockland Sample: A Model for Accelerating the Pace of Discovery Science in Psychiatry. Front. Neurosci. 6, 152 (2012).
  2. T. Xu, Z. Yang, L. Jiang, X. X. Xing, X. N. Zuo, A Connectome Computation System for discovery science of brain. Sci. Bull. 60(1), 86–95 (2015).
  3. B. T. Yeo, et al., The organization of the human cerebral cortex estimated by intrinsic functional connectivity. J. Neurophysiol. 106(3), 1125–1165 (2011).
  4. V. D. Blondel, J.-L. Guillaume, R. Lambiotte, E. Lefebvre, Fast unfolding of communities in large networks. J. Stat. Mech. Theory. Exp. 10008, 6 (2008).
  5. L. G. S. Jeub, O. Sporns, S. Fortunato, Multiresolution Consensus Clustering in Networks. Sci. Rep. 8 3259 (2018).

Copyright

Copyright (cc) 2018-2019 by Kirsten Hilger and Olaf Sporns

The files contained in this work are licensed under the Creative Commons Attribution-NonCommercial-NoDerivs 3.0 Unported License. To view a copy of this license, visit http://creativecommons.org/licenses/by-nc-nd/3.0/ or send a letter to Creative Commons, 444 Castro Street, Suite 900, Mountain View, California, 94041, USA.

About

Temporal Stability of Modular Brain Network Organization - and its Relationship with Individual Differences (e.g., in General Intelligence)

License:GNU General Public License v2.0


Languages

Language:MATLAB 100.0%