MATLAB神经影像学数据的多模态多元模式分析方法

2023-11-01

在过去的十年中,多变量模式分析的使用在功能磁共振成像 (fMRI) 研究中变得流行。这并不奇怪,因为 MVPA 与传统且更常用的单变量分析相比具有几个优势。首先,MVPA 可以比单变量方法在区分感兴趣的条件方面提供更高的灵敏度,因为它考虑了体素活动的模式,这些模式可能在条件之间表现出微弱但一致的差异。其次,它允许对个体内部和跨个体、成像方式和物种的潜在神经表征进行推断。

虽然 MVPA 已成为 fMRI 的一种流行技术,但很少有报道将其应用于脑磁图和脑电图。M/EEG 数据
得益于比 fMRI 更高的时间分辨率数据,它允许识别神经相关性具有高精度的时间维度。特别是时间泛化方法为研究不同的神经群体,如何随着时间的推移对实验条件进行编码提供了一个明确的途径。

为了解决这一差距,我们提出了一种方法,可用于使用适用于 fMRI 和 M/EEG 数据的 MVPA 来回答假设驱动和数据驱动的神经影像学问题。 它使用简单但功能强大的数据结构和模块化方法,以便可以组合不同的模块来构建复杂的分析管道。 对于数据驱动的方法,它提供了一个通用的探照灯,用于定位跨体素、表面节点、M/EEG 通道、时间间隔和频率间隔的效果,以及它们的组合。 为了防止 1 类错误,它支持最先进的无阈值集群增强和基于蒙特卡洛的置换测试来纠正多重比较。

已经提出的神经影像分析的框架至少应具有以下五个特征:

  • 直观的用户界面
  • 可扩展性
  • 可移植性
  • 开源软件

分析示例

这些示例演示了常见的 MVP 分析,例如分类、相关性、代表性相似性分析和时间泛化方法。 这些示例是基于真实的 fMRI 和 M/EEG 数据。

分类

我们第一个例子的数据来自一个 fMRI 实验,其中一个参与者在不同的区块中按下食指和中指。 该实验进行了四次运行,每次运行每个手指有四个块。 使用 AFNI (Cox, 1996) 中的一般线性模型对数据进行预处理和分析,得到每个块的 t 统计量。 用户必须指定的“成分”是 AFNI 神经影像数据文件的文件名、块(即采集运行编号)和目标(指定在每个块期间按下哪个手指)。 然后,分类分析需要指定交叉验证度量、分类器和分区方案。 对于基于表面的分析,所需的附加信息包括用于描绘灰质的表面和在每个探照灯中选择的体素数量。

% Load AFNI data.
% (Also supported: BrainVoyager, NIFTI, ANALYZE,
and SPM)
data_fn='glm_T_stats_perblock+orig'
targets=repmat(1:2,1,16)'; % class labels: 1 2 1
2 1 2 1 2 1 2 ... 1 2
chunks=ceil((1:32)'/8); % run labels: 1 1 1
1 1 1 1 1 2 2 ... 4 4
ds = cosmo_fmri_dataset('glm_T_stats_perblock+
orig','targets',targets,'chunks',chunks);

为了使用分类器运行交叉验证,交叉验证措施使用了一个取一次用的交叉验证和一个 LDA 分类器。 度量和分类器都使用函数句柄指定; 如其他示例(如下)所示,可以通过指定另一个函数句柄来使用不同的度量或分类器。

表征相似性分析

ds = fmri_dataset('glm_tstats.nii',...
'mask','brain_mask.nii',...
'targets', (1:6)',...
'chunks', 1);
behaviour_dissimilarity = ...
[ 0 0.10 1.05 1.10 1.68 1.75 ;
0.10 0 1.04 1.05 1.70 1.76 ;
1.05 1.04 0 0.39 1.54 1.46 ;
1.10 1.05 0.39 0 1.47 1.40 ;
1.68 1.70 1.54 1.47 0 0.16 ;
1.75 1.76 1.46 1.4 0.16 0 ];

在空间和时间中定位效果

随时间的泛化

数据集结构

数据集维度

数据集操作

分类器

度量

分割

近邻

探照灯

显着性检验和多重比较校正

MATLAB/GNU Octave编程

源代码和示例

详情参阅 - 亚图跨际

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

MATLAB神经影像学数据的多模态多元模式分析方法 的相关文章

  • MATLAB中如何画水平线和垂直线?

    我目前正在尝试在 MATLAB 中绘制简单的垂直线和水平线 例如 我想绘制线 y 245 我该怎么做呢 MATLAB 根据您提供的向量逐点进行绘图 因此 要创建一条水平线 您需要改变x同时保持y对于垂直线恒定 反之亦然 xh 0 10 yh
  • Matlab PARFOR 循环可以通过编程方式打开/关闭吗?

    有一个关于 MATLAB 中 parfor 的简单问题 我想在程序中设置一个标志 以便在 parfor 和常规 for 循环之间进行更改 基本上 我需要此功能 以便我的代码的某些部分可以在 调试 模式下更新图形 然后当关闭该标志时 使用 p
  • 按元素出现的频率对数组元素进行排序

    是否可以在 matlab octave 中使用sort函数根据元素的相对频率对数组进行排序 例如数组 m 4 4 4 10 10 10 4 4 5 应该产生这个数组 5 10 10 10 4 4 4 4 4 5是出现频率较低的元素 位于顶部
  • Matlab Mex文件编译

    我正在尝试编译一个 mex 文件以在 matlab 中使用套接字连接 问题是它总是说我没有安装sdk或编译器 但我已经安装了 Visual Studio 2010 Express Visual Studio 2012 Express Vis
  • Matlab中转换数据类型的有效方法(double vs. im2double)

    我想将真彩色图像转换为双精度 据我所知有两种方法可以做到这一点 double rgb img im2double rgb img 哪一种效率更高 谢谢 他们都是不同的 im2double将图像的范围转换为0 1如果数据类型是uint8 or
  • MATLAB 中最有效的矩阵求逆

    在 MATLAB 中计算某个方阵 A 的逆矩阵时 使用 Ai inv A should be the same as Ai A 1 MATLAB 通常会通知我这不是最有效的求逆方法 那么什么是更有效率的呢 如果我有一个方程系统 可能会使用
  • 在另一列中添加具有特定条件的一列,如 excel 的 sumif

    我有一个像这样的矩阵 A 1 2 2 3 3 4 4 5 5 6 6 8 7 9 8 5 9 4 现在我想添加第二列 条件是如果 limit 0 interval 3 且 limit limit interval 或者换句话说 当第 1 列
  • Matlab:保存后翻转图例顺序和图例重叠图

    我正在尝试根据以下内容反转我的图例条目顺序matlab条形图中图例颜色的逆序 https stackoverflow com questions 31178005 reverse ordering of legend colors in m
  • 在 MATLAB 中重命名文件

    我正在尝试以编程方式重命名工作目录中的文件a temp txt to b hello txt 您建议如何这样做 MATLAB中有一个简单的文件重命名函数吗 我认为您正在寻找 MOVEFILE
  • Matlab没有优化以下内容吗?

    我有一个很长的向量 1xrv 和一个很长的向量w1xs 和一个矩阵Arxs 它是稀疏的 但维度非常大 我期望 Matlab 对以下内容进行优化 这样我就不会遇到内存问题 A v w 但看起来 Matlab 实际上是在尝试生成完整的v w矩阵
  • 如何将二进制值列表转换为int32类型?

    我在 MATLAB 工作区中有一个小端格式的二进制数列表 我想将它们转换为 int32 a是由 0 和 1 组成的双向量 如下所示 a 0 0 0 1 1 0 0 1 1 1 1 0 1 0 1 0 0 0 0 1 1 0 0 0 1 1
  • 在 Matlab 中将 datenum 转换为 datetime 的最快方法

    我在 Matlab 中将 datenum 转换为 datetime 时遇到问题 Given dnum floor now floor now 1 我尝试了以下方法 datenum dnum 但这没有用 我发现有效的方法是 datetime
  • matlab中的排列函数是如何工作的

    这是一个有点愚蠢的问题 但我似乎无法弄清楚排列在 matlab 中是如何工作的 以文档为例 A 1 2 3 4 permute A 2 1 ans 1 3 2 4 到底是怎么回事 这如何告诉 matlab 3 和 2 需要交换 哇 这是我迄
  • 如何使用 MATLAB 的 substruct 函数创建表示使用“end”的引用的结构?

    我想使用substruct http www mathworks com help matlab ref substruct html函数创建一个结构体以供使用subsref 目的是使用索引字符串subsref而不是通常的 符号 因为我正在
  • 理解高斯混合模型的概念

    我试图通过阅读在线资源来理解 GMM 我已经使用 K 均值实现了聚类 并且正在了解 GMM 与 K 均值的比较 以下是我的理解 如有错误请指出 GMM 类似于 KNN 在这两种情况下都实现了聚类 但在 GMM 中 每个簇都有自己独立的均值和
  • 通过 Matlab 访问 Physionet 的 ptbdb 中的数据库

    我首先设置系统 old path which rdsamp if isempty old path rmpath old path 1 end 8 end wfdb url http physionet org physiotools ma
  • 了解 fminunc 参数和匿名函数、函数处理程序

    请多多包涵 问题在最后 我试图找出 fminunc 调用方式的差异 这个问题源于 Andrew Ng 在他的 Coursera 机器学习课程中的第 3 周材料 我正在回答这个问题 Matlab Andrew Ng 机器学习课程中 t cos
  • 如何在 MATLAB 中绘制纹理映射三角形?

    我有一个三角形 u v 图像中的坐标 我想在 3D 坐标处绘制这个三角形 X Y Z 与图像中的三角形进行纹理映射 Here u v X Y Z都是具有三个元素的向量 代表三角形的三个角 我有一个非常丑陋 缓慢且令人不满意的解决方案 其中我
  • MATLAB 列含义的内存分析

    我正在使用 MATLAB 配置文件来使用命令观察内存 profile memory on profile clear my code profile report and i got this table 1 我想问一下什么意思 已分配内存
  • 如何知道Matlab中系统命令执行过程中经过的时间?

    我有一个运行系统脚本的 Matlab 代码 该脚本可能会因命令运行而停止 我想知道是否有一种方法可以让程序知道它是否花费了很长时间并执行其他操作 这是代码 tic status cmdout system iperfcmd The prog

随机推荐

  • python的inspect模块

    http www cnblogs com walkerwang archive 2011 08 03 2125903 html 简介 发现python有个好用的检查模块 inspect 查看源文件发现它提供了不少好用的方法 Here are
  • Proteus中的继电器在哪里

    今天做仿真时候 用到了继电器 但是电路搭建好后发现怎么继电器上电不动作 发现是继电器选错了 然后找了一个最常用的继电器来用一试成功 所以就分享一下Proteus中的继电器在哪里 如图所示 我们先点一下第一步的元器件标志 然后在点一下旁边的标
  • 第三方软件测试环境搭建步骤流程

    在软件测试流程及各项环节中 不可避免的要进行测试环境的搭建 测试环境与开发环境不一样 比如说你要对APP进行功能测试或者性能测试 那就要模拟用户在使用APP时候的真实场景 客户会进行什么样的操作 所以测试环境需要尽可能的贴近真实环境进行 那
  • 智能优化与机器学习结合算法实现数据预测matlab代码清单

    作者简介 热爱科研的Matlab仿真开发者 修心和技术同步精进 matlab项目合作可私信 个人主页 Matlab科研工作室 个人信条 格物致知 更多Matlab仿真内容点击 智能优化算法 神经网络预测 雷达通信 无线传感器 信号处理 图像
  • pandas中drop()函数用法

    函数定义 DataFrame drop labels None axis 0 index None columns None inplace False 删除单个行 import pandas as pd import numpy as n
  • 硬件第一节 三级管电路工作原理及详解

    文章目录 一 三极管辨认 1 1 辨认bce边 1 2 三极管工作状态 1 2 1放大状态 1 2 2 截止状态 1 2 3 饱和状态 二 三极管使用 2 1 三极管作为开关管 三 三极管选型 3 1 参数 3 2 常用三极管参数整理 一
  • rm刷新了我的认知

    大家好 我是良许 创建 删除和修改文件是用户在 Linux 系统中执行的非常常见操作 大家都知道 在 Linux 系统里使用 rm 命令删除单个文件时 几乎一瞬间就完成了 但是如果文件数量很大 那么删除操作就需要很长时间才能完成 你有没想过
  • mdl格式是什么软件生成的_【原创】slx文件与mdl文件的差别

    slx文件是二进制格式文件 mdl文件是文本格式文件 早期Simulink的模型文件为mdl格式 slx格式在Matlab Simulink R2012a版本中引入 旨在取代以前的mdl格式 由于slx被压缩 通常文件大小会比相同的mdl文
  • 2023跨年烟花(浪漫烟花+自定义音乐+雪花飘飘+自定义文字)

    效果 介绍 可以自定义跨年文字 可自定义更换背景音乐 具有雪花效果 项目文件index html gameCanvas 4 0 js script js index html文件
  • SQL select into from 和 insert into from 语句

    在刷笔试题的时候看到一个表的复制的问题 以前没见过 写一下 用于创建表的备份复件 复制表 两条SQL语句 1 insert into tableName2 column name1 column name2 select column na
  • >> << & 操作符总结

    lt lt 符号 扩大多少倍 Integer num 16 num num lt lt 2 System out println num gt gt gt gt gt num gt gt 符号 缩小多少倍 Integer num 16 nu
  • 沈师 PTA 数据库题目及部分解析 第五章

    判断题 1 当主外健不能保证参照完整性和数据一致性时 还可以选择触发器来实现 T 2 域完整性是保证数据完整性的重要约束之一 T 3 当用户违反了参照完整性时 DBMS会采取一些策略加以处理 包括拒绝 级联操作和设置为空值 T 4 参照完整
  • m1 mac安装docker、k8s(成功案例)

    m1 mac安装docker k8s 成功案例 一 安装docker 二 安装kubernetes ps 系统 macos 12 monterey 一 安装docker 1 先要清理旧数据 讲道理这一步重不重要我还真没试过 毕竟在docke
  • 问题 C: 销售排行榜

    题目描述 你的任务是帮助淘宝网店店长整理销售数据 根据累计的销售记录 将所有商品按销售数量降序排列 输入 输入包括多行数据 行数小于100000 每行数据包括4个信息 分别是商品名称 销售数量 单价 成交日期 商品名称由小写字母组成 且不超
  • Android JNI

    选择你的到处路径和名称JAR file 直接Finish 这样的jar包里面只包括编译后的AdMob class 很小很干净 然后打开羽化的Unity工程AdMobTest File gt Open Project 双击UnityAdMob
  • Linux下安装ORACLE(一周成果、全是干货!)

    文章目录 一 安装前言 1 闲聊 2 提前知道的事 二 安装准备 1 Linux发行版本 ret hat7 4 更换yum源 传送门 https blog csdn net qq 42956179 article details 10961
  • 学习笔记:MongoDB命令的基础学习,使用springboot实现mongodb视图创建

    学习笔记 MongoDB命令的基础学习 使用springboot实现mongodb视图创建 创建集合 db createCollection my 查看集合 show collections 删除集合 db my drop 插入一条 没有c
  • Python描述符是什么?

    在Python中 通过使用描述符 程序员可以在引用对象属性时定制要完成的工作 接下来我们一起来聊聊Python描述符相关的知识 本质上 描述符是一个类 但它定义了另一个类中属性的访问模式 换句话说 一个类可以将属性管理全权委托给描述符类 描
  • 计算机视觉各领域前沿算法积累

    目录 一 目标检测 1 SSD 2 PaddleDetection 3 mmdetection 4 mediapipe 二 单目标跟踪 1 pytracking 2 pysot 3 SiamMask 4 siammask e 5 Alpha
  • MATLAB神经影像学数据的多模态多元模式分析方法

    在过去的十年中 多变量模式分析的使用在功能磁共振成像 fMRI 研究中变得流行 这并不奇怪 因为 MVPA 与传统且更常用的单变量分析相比具有几个优势 首先 MVPA 可以比单变量方法在区分感兴趣的条件方面提供更高的灵敏度 因为它考虑了体素