【神经科学学习笔记】基于分层嵌套谱分割(Nested Spectral Partition)模型分析大脑网络整合与分离的局部指标(二)
前言
1.学习背景
前几天笔者学习使用NSP (Network Segregation and Partnership) 算法计算大脑整合分离的全局指标,现在要在之前学习的基础上再来玩玩局部指标。
局部指标的计算主要在两个层面上进行:第一个层面是针对每个独立ROI的指标计算,这让我们能够精确定位到具体脑区的整合分离特征;第二个层面是针对每个功能子网络的指标计算,这让我们能够从中观层面理解不同功能网络的整合分离模式。
NSP整体指标计算笔记(一)https://mp.csdn.net/mp_blog/creation/editor/143579470
2.参考文献
Wang, R., Lin, P., Liu, M., Wu, Y., Zhou, T., & Zhou, C. (2019). Hierarchical Connectome Modes and Critical State Jointly Maximize Human Brain Functional Diversity. Physical Review Letters, 123(3), 038301. https://doi.org/10.1103/PhysRevLett.123.038301
Chang, Z., Wang, X., Wu, Y., Lin, P., & Wang, R. (2023). Segregation, integration and balance in resting-state brain functional networks associated with bipolar disorder symptoms. Human Brain Mapping, 44(2), 599–611. https://doi.org/10.1002/hbm.26087
3.分层嵌套谱分割(Nested Spectral Partition, NSP)模型
这个方法就像是在玩俄罗斯套娃,通过特征值分解的方法,将复杂的大脑连接矩阵层层拆解。具体来说,NSP首先将整个大脑网络视为一个整体,然后基于功能连接矩阵进行特征分解,利用特征向量的符号特征,像剥洋葱一样逐层将网络划分为更细致的功能模块。是数据驱动的,可以稳定的自然展示组织方式。
在上一篇文章中,笔者详细介绍了如何使用NSP(嵌套谱分割)算法计算大脑网络的全局整合分离指标。我们通过构建功能连接矩阵,进行特征值分解,并利用层级划分的方式,最终得到了反映整个大脑网络特性的三个关键指标:整合度(Hin)、分离度(Hse)和平衡度(HB)。然后可以用这三个指标进行组间比较(t-test,anova),笔者也在自己的数据上玩了一下。虽然没有看到显著差别,但还是有有意思的发现,比如性别对分离整合的影响非常显著!男性的大脑更偏分离,女性更偏整合。
然而,仅仅了解全局指标还不够细致。就像我们不能仅用一个人的平均体温来判断他的健康状况一样,我们还需要深入到每个器官的具体状态。在今天的内容中,我们将在全局分析的基础上,试试复现计算局部指标,这些指标包括每个ROI的整合分离特征,以及各个功能子网络的整合分离模式。
二、区域的分离整合指标数学原理
- H1是第一层的模块度指标
- Hi是第i层的模块度指标
- Uij是第i层特征向量中第j个脑区的分量值
- N是总的脑区数量
区域的平衡指标等于区域的整合指标-区域的分离指标。
三、ROI的分离整合计算
% 计算每个ROI的整合分离指标
input_dir = 'path/to/input';
output_dir = 'path/to/output';if ~exist(output_dir, 'dir')mkdir(output_dir);
endfiles = dir(fullfile(input_dir, '*.mat'));for i = 1:length(files)data = load(fullfile(input_dir, files(i).name));FC = data.processed_FC;eigenvals = data.eigenvalues;eigenvecs = data.eigenvectors;n_rois = size(FC, 1);[H, M, pi_values] = calculate_hierarchical_metrics(eigenvecs, eigenvals, n_rois);roi_integration = zeros(n_rois, 1);roi_segregation = zeros(n_rois, 1);roi_balance = zeros(n_rois, 1);for j = 1:n_roisroi_integration(j) = H(1) * eigenvecs(j,1)^2;seg_sum = 0;for level = 2:n_roisseg_sum = seg_sum + H(level) * eigenvecs(j,level)^2; endroi_segregation(j) = seg_sum;roi_balance(j) = roi_integration(j) - roi_segregation(j);endresults.roi_integration = roi_integration;results.roi_segregation = roi_segregation;results.roi_balance = roi_balance;save(fullfile(output_dir, ['metrics_' files(i).name]), 'results');
end
在上一篇博客中,笔者介绍了计算NSP参数的函数`calculate_hierarchical_metrics`。计算局部指标时沿用了这个函数,:针对每个ROI,取它在第一层特征向量中的贡献(即该ROI对应的特征向量元素的平方乘以H1)作为整合度,而分离度则是把该ROI在第2层到最后一层中的贡献都加起来。最后用整合度减去分离度,就得到了每个ROI的平衡度指标。所有ROI的局部指标加起来等于全脑指标。
四、脑网络的分离整合计算
之前使用Schaefer2018模版,我们大脑皮层划分成了100个感兴趣区域(ROI)。这些ROI根据功能联系可以进一步归类到7个典型的大尺度网络中。只需要将归属于同一网络的ROI局部指标加起来,就能得到默认网络、背侧注意网络、前额-顶叶网络等7个功能子网络的整合度、分离度和平衡度指标。
根据Schaefer2018模版,100个ROI在7个功能网络中的分布如下:
1. 视觉网络 (Visual Network)
- ROI: 1-9, 51-58 (共17个)2. 躯体运动网络 (Somatomotor Network)
- ROI: 10-15, 59-66 (共14个)3. 背侧注意网络 (Dorsal Attention Network)
- ROI: 16-23, 67-73 (共15个)4. 腹侧注意网络 (Salience/Ventral Attention Network)
- ROI: 24-30, 74-78 (共12个)5. 边缘网络 (Limbic Network)
- ROI: 31-33, 79-80 (共5个)6. 控制网络 (Control Network)
- ROI: 34-37, 81-89 (共13个)7. 默认网络 (Default Mode Network)
- ROI: 38-50, 90-100 (共24个)
% 计算7个功能网络的整合度、分离度和平衡度指标
networks = {[1:9, 51:58], % Visual[10:15, 59:66], % Somatomotor [16:23, 67:73], % Dorsal Attention[24:30, 74:78], % Ventral Attention[31:33, 79:80], % Limbic[34:37, 81:89], % Control[38:50, 90:100] % Default Mode
};network_names = {'Visual', 'Somatomotor', 'DorsalAttention', 'VentralAttention', ...'Limbic', 'Control', 'DefaultMode'};% 主要计算逻辑
for i = 1:length(files)data = load(fullfile(input_dir, files(i).name));for net = 1:length(networks)roi_indices = networks{net};integration_data(i, net) = mean(data.results.roi_integration(roi_indices));segregation_data(i, net) = mean(data.results.roi_segregation(roi_indices));balance_data(i, net) = mean(data.results.roi_balance(roi_indices));end
end