大家好,这里是 “茗创科技” 。 上一篇给大家讲解了近红外脑功能成像原理。对于近红外课程感兴趣的朋友,可以点击下面这条链接报名。

首届茗创科技近红外脑功能数据处理班学习班

这次给大家带来一篇与核磁数据分析有关的经典文章的解读。

想必熟悉核磁数据处理的同学对ROI这个名词一定不陌生吧。ROI分析(Region of interest analysis,直译为对感兴趣区域的分析)是核磁数据分析的常用方法。本文主要讲述了为什么做ROI分析和怎么做ROI分析。

先来看一下本文的思维导图~

摘要

fMRI统计的第一个目标几乎总是创建一个阈值统计图,显示在某个特定阈值水平下哪些区域被“激活”了。如果研究者仅仅想做一些简单的比较,通常做完这一步并简单地报告“激活”结果后,他们的分析就可以结束了。但是,很多时候都需要对特定感兴趣区域(ROI) 展开进一步研究。有鉴于此,我们将概述ROI分析的适用情景、常用方法,并讨论每种方法的优缺点。

为什么要做ROI分析?

首要原因,是为了进一步探索研究数据。在复杂的设计如多水平实验设计中,研究者通常很难从总激活图(overall activation map)中解析各条件的活动模式,因此可用的解决办法就是:把某个感兴趣区内每个实验条件的激活信号显示出来,或者将某实验条件的信号与其他变量的关系展示出来。第二个原因是通过“仅仅对少数几个ROI进行统计检验”这一手段来控制I类错误。第三个原因是将统计检验限制在根据其他一些信息所定义出的功能区里,例如通过独立的“定位”扫描(如FFA脑区,ToM脑区)或实验条件来定义功能区。

为探索数据而使用ROI分析

ROI分析首要用途是简单地探寻全脑体素(voxels)分析背后所隐藏的信号。在这种分析里,研究者通常不会提前就统计分析的公正性提出假定;他们的目的就是去描绘各条件的信号模式。如上所述,这种分析在多条件复杂实验设计中特别有用,例如因素设计。探索性ROI分析最常见的方法是以激活簇块(cluster)的峰值为中心创建体积较小的ROI(通常是球体);如果激活簇块体积过大,我们可以以局部最大峰值为中心创建ROI以探索该激活簇块内的多个分区的激活模式。为了确保球体只包含真正被激活的体素,这些球体通常基于阈值激活图来选择。特别需要注意的是,我们不能在对比某些实验条件(如face vs. house)确定ROI后,对该感兴趣区域内同样那批实验条件(face 和 house)进行ROI分析并作出统计结论。因为在全脑分析中该区域已经表现出了统计显著性,所以在对同样那一批实验条件所进行的ROI分析中该区域理所当然地会表现出显著结果。(编者理解这里要表达的意思是:根据条件比较后的thresholdedactivation map选择了一个ROI,那么这个ROI在条件间有显著的激活差异不能说明什么,因为它是经过全脑激活检验的)。尽管如此,这种方法对于探索各条件的活动模式非常有用。

尽管ROI分析常常被用来分析激活,研究者也可以用它分析全脑分析中某区域没有出现显著结果的原因。例如,Poldrack实验室进行过一项fMRI研究,有些脑区他们觉得应该表现出fmri-行为数据的高相关,但在全脑相关分析中他们却没有观察到这些脑区的显著激活。随后他们对这些区域进行了ROI分析(通过结构像ROI方法选取小球体),最终发现了这些脑区缺乏激活的原因:有一个被试出现了极端值。尽管整个组内其他人的数据表现出显著的fmri-行为相关,但加入了该被试的极端值后,显著相关就消失了。这种情况下,使用鲁棒性统计(robust statistics)会特别有用,因为它们可以减少异常值的影响。

为统计控制而使用ROI分析

另一种用途是预先指定一组结构像ROIs,然后对这些区域进行统计分析。这样做通常是为了降低对多次检验进行的统计校正的严格程度(即对重复测量的校正);这样研究者仅仅需要对少量ROIs,而不需要对全脑大量体素的统计分析来进行多重校正。

该方法面临的一个难题是如何测量ROI内部的信号。通常情况下,这种方法指定的感兴趣区域会相对较大(例如整个颞上回),即使该区域非常活跃,这种激活也可能只发生在ROI中的一小部分体素中。这意味着,如果简单地对整个区域进行平均,可能会使那些来自这少量体素的信号被淹没在未激活体素的噪声之中。这种情况下,经常使用的一种应对方法就是对统计图设置阈值并计算每个区域中超过该阈值的体素数量。但是,这种方法可能对特定阈值非常敏感。此外,与信号变化的直接测量相比,体素计数已被证明是一种不可靠的激活测量。此外,这种方法还依赖于所研究区域内不同亚区功能是否同质;例如,如果该区域内同时存在激活和抑制激活的区域,则这些区域的信号可能会相互抵消。

还有另一种方法可以将ROI分析用于统计控制,就是仅仅就某一组ROIs所包含的所有体素进行基于体素的分析,然后对这些体素进行多重比较校正。具体矫正方法包括,对这些ROIs内使用高斯随机场理论进行small volumes correction(可以在SPM中实现),或使用仅限于ROI的随机化测试。这种方法不会遇到与上述方法相同的信号抵消的问题,但它所能够提供的信息比各条件信号激活模式的分析会少一些。

为描述脑区功能而使用ROI分析

ROI的另一个用途是检查一组功能同质的体素内的活动,以检查它们对某些其他实验操作的敏感性。这种方法在视觉处理的fMRI研究中最为普遍,其中“定位器”用于识别功能特定的区域,例如早期视觉皮层中的视网膜组织区域或MT区域中的运动敏感体素。在这些情况下,通常使用与主实验之外的“定位”扫描来确定ROI。然而,我们并不总是非得需要完全独立于主扫描外的定位扫描。弗里斯顿等人认为最好在因素设计中嵌入定位器(编者注:可以理解为基线条件),其中还包括与感兴趣区的比较;这使人们不仅可以观察到“定位器”对其他ROIs的影响,还可以检查“定位器”和其他条件之间的相互作用。其实,学界对ROI分析定义脑区功能的有用性一直存在争论;尽管该方法在某些情况下可能有用,但考虑到分布式表征(distributed representations,编者注:又叫“词向量”,深度学习中的一个概念,是一种数据的表示方式,即一个个体由几个编码单元而不是一个编码单元表示。此处应该是想表达“大脑实现某功能可能是不同脑区协作的结果”。)的潜在重要性,以及现实中很难将某功能归因于基于特定区域,我们应避免仅基于激活来具体化某些区域的功能。

如何定义ROIs

我们可以根据脑区的结构或功能来定义ROIs。结构ROIs通常基于宏观解剖学来定义,例如回旋解剖学。通常最佳的做法是根据每个对象自己的解剖结构为其定义此类ROI。因为在宏观解剖结构中,个体之间可能存在很大差异。自动解剖标记现已能够实现在个体解剖图像中,以最少的人工干预,对皮质和皮质下结构进行可靠的标记。但在操作中,最好根据实际解剖结构确认这些结果。我们需要对以下这种常用做法特别小心:使用基于单个对象解剖模板的ROI,例如 AAL模板或 Talairach模板。由于空间标准化无法完美匹配个体与标准模板,因此任何一组被试与这些标准模板之间都将缺乏重叠。如果一定要使用基于模板的ROI(即ROI不是来自自己的受试者),那么最佳方法是使用基于宏观解剖学概率模板或布罗德曼概率模板的ROI,后者可以在SPM工具箱中找到。

功能性ROIs通常基于对一个被试的数据分析。一种常见的方法是使用单独的“定位器”扫描来识别特定解剖区域中显示特定响应的体素(例如梭状回的FFA,它对面孔刺激的激活相对于其他物体更加敏感);然后探索这些体素以检查它们对其他一些操作的反应。或者,可以使用因素设计中的交互作用来创建功能性ROIs。也可以通过将小球放置在统计图中的局部最大值来创建功能性ROIs;由于这种方法的目标不是统计控制,因此也可以将ROI放置在感兴趣的解剖区域,可以用于检查空结果。然而,再次申明,虽然这种分析对探索有用,但不能用于推理,因为其结果具有很高的偏倚性。

我们也可以基于先前他人研究结果来创建功能性ROIs。尽管可以从单个研究中的激活中获取坐标并将ROI放置在该位置,但更好的做法是从感兴趣的区域或元分析中导出ROI。现在有完善的对功能成像研究进行元分析的方法,并且这些方法可用于生成对噪声不那么敏感的 ROIs。Neurosynth是一个这种功能ROI定位的合适平台。

ROI分析的工具

有许多工具可用于ROI分析。几个常见的软件包(例如 SPM、AFNI、BrainVoyager)都包含用于ROI分析的工具。此外,SPM的 MarsBar 工具和FSL ROI工具箱提供了对来自这些包的数据进行ROI分析的工具。

通常有两种方法可以为ROI分析提取数据。在参数估计提取中,为统计模型中的每个条件提取估计的参数值(例如SPM中的“beta”图像,FSL中的“pe”图像)。这对于理解包含多个条件的对比特别有用(假设每个条件都单独建模,编者注:即与基线0相比),尽管它原则上不提供任何新信息,但可能会降低噪声。

在血液动力学响应提取中,原始数据被用来估计整个ROI对每个条件的血液动力学响应。通常使用有限脉冲响应模型来估计刺激后每个时间点的响应。这种方法通过及时显示整个估计的响应(不对它的形状进行假设),而不是假设的血液动力学响应的拟合,提供了不同的数据视图。应该注意的是,鉴于存在大量参数(血液动力学响应中的每个时间点一个),这种方法可能会过度拟合数据。因此有时可以看到在生理上不合理的估计血液动力学响应,尤其是当样本量较小时。使用约束基组(constrained basis sets)的方法可能有助于更好地估计潜在的血液动力学响应。

总结

进行ROI分析的原因有很多,每个原因都涉及一组特定的假设。探索性ROI分析可以深入了解复杂模型中激活信号的性质,并为诊断模型故障提供有价值的帮助。但至关重要的是,研究者不要使用这些探索性分析进行推理,因为他们的结果会受到ROI选择的影响。使用ROI分析控制I类错误在计算大分为内的信号方面存在困难,并且随着全脑误差控制方法的进步和fMRI研究样本量的增加,ROI分析的功能似乎正在减弱。然而,使用ROIs对小范围的体素进行统计校正是公认可行的。功能定位器的使用在潜在功能可以明确定位的领域中得到了肯定(如在视觉视网膜定位中),但对于更普遍领域,该方法的有用性仍然存在争议。在任何情况下,研究人员都应注意避免将ROI物化,因为功能性神经成像目前尚未建立根据激活标记区域功能的标准。


 读者朋友可以向工程师 MCKJ-zhouyi 或 17373158786 索要原文和工具包~

核磁为什么要做ROI分析?相关推荐

  1. [spm操作] 什么是ROI,如何做ROI以及批量提取ROI的%signal change的示例程序

    本帖作为 <用Matlab和SPM批量处理被试的经验总结> 的一部分 目录贴请见 http://home.52brain.com/forum.ph ... =1&extra=#pi ...

  2. [论文阅读] (20)USENIXSec21 DeepReflect:通过二进制重构发现恶意行为(恶意代码ROI分析经典)

    <娜璋带你读论文>系列主要是督促自己阅读优秀论文及听取学术讲座,并分享给大家,希望您喜欢.由于作者的英文水平和学术能力不高,需要不断提升,所以还请大家批评指正,非常欢迎大家给我留言评论,学 ...

  3. 如何对DB2数据库做性能分析?

    如何对DB2数据库做性能分析? 第一步 操作系统级别性能 CPU监控: ps -elf | sort +5 -rn | more 第6列代表CPU使用的计数器 I/O使用率: iostat -D 收集 ...

  4. 实践App内存优化:如何有序地做内存分析与优化

    由于项目里之前线上版本出现过一定比例的OOM,虽然比例并不大,但是还是暴露了一定的问题,所以打算对我们App分为几个步骤进行内存分析和优化,当然内存的优化是个长期的过程,不是一两个版本的事,每个版本都 ...

  5. python可以做计量分析吗_技术分享 - python数据分析(2)——数据特征分析(上)...

    1 分布分析 分布分析能揭示数据的分布特征和分布类型.对于定量数据,欲了解其分布形式是对称的还是非对称的,发现某些特大或特小的可疑值,可通过绘制频率分布表.绘制频率分布直方图.绘制茎叶图进行直观地分析 ...

  6. aspen怎么做灵敏度分析_不会敲代码怎么做智能分析?用奥威商业智能BI

    不会敲代码,怎么学也不会,那怎么做大数据智能分析?说来也简单,用商业智能BI软件就行.拖拉拽就能做报表,点击即可智能分析,即使是没有IT基础,完全不会敲代码的人也能轻松抽取数据做智能分析. 商业智能B ...

  7. php 生存分析,HPA数据库08.做生存分析

    生信论文的套路 ONCOMINE从全景.亚型两个维度做表达差异分析: 临床标本从蛋白水平确认(或HPA数据库),很重要: Kaplan-Meier Plotter从临床意义的角度阐明其重要性: cBi ...

  8. 用Grafana为Elasticsearch做日志分析

    用Grafana为Elasticsearch做日志分析 作者:chszs,未经博主允许不得转载.经许可的转载需注明作者和博客主页:http://blog.csdn.net/chszs Grafana是 ...

  9. 用python做舆情分析系统_如何用Python做舆情时间序列可视化?

    如何批量处理评论信息情感分析,并且在时间轴上可视化呈现?舆情分析并不难,让我们用Python来实现它吧. 痛点 你是一家连锁火锅店的区域经理,很注重顾客对餐厅的评价.从前,你苦恼的是顾客不爱写评价.最 ...

  10. excel两个指标相关性分析_用Excel做相关性分析

    一.概念理解 相关关系:变量之间存在着的非严格的不确定的关系,对它们进行深层次的分析,观察它们的密切程度. 相关性分析:对变量之间相关关系的分析,即相关性分析.其中比较常用的是线性相关分析,用来衡量它 ...

最新文章

  1. IDEA函数调用关系图插件
  2. HTC VIVE SDK 中的例子 hellovr_opengl 程序流程分析
  3. Django 电脑使用管理
  4. Flink EventTime和Watermarks原理结合代码分析(转载+解决+精简记录)
  5. 创建型模式:抽象工厂
  6. antdesignvue upload vue3个人笔记待更新
  7. Struts+DAO框架搭建完成!(源码)
  8. LeetCode 1887. 使数组元素相等的减少操作次数(map)
  9. python爬虫中for循环无法每一段输出_Python入门到掌握只需要这3大,4类,5大,6种,即可,附教程...
  10. JAVA邮件发送的授权码_java实现邮件发送
  11. 使用SPSS进行商业数据分析
  12. windows server2016 如何安装IIS
  13. 谈谈核心网UPF和开放
  14. chrome谷歌浏览器安装yapi插件cross-request
  15. “出轨照”背后的真相:防骗启示录之相册病毒报告
  16. python中一般使用几个空格表示缩进_为什么Python pep-8强烈建议使用标签上的空格来缩进?...
  17. 面试经验之北京掌上先机
  18. 怎么加载网页背景图随浏览器等比例缩放(css)
  19. win10计算机亮度在哪里调,win10电脑怎么调亮度
  20. Day10 空时编码理论之无线信道、分集和复用

热门文章

  1. 大学模电实验合集丨实验二 单管共射放大电路的原理
  2. Multisim仿真:验证性实验-单管共射放大电路
  3. phpexcel 导入数据 Invalid cell coordinate
  4. Sprint周期开发总结
  5. 成年人夜生活的自救! 华熙LIVE·五棵松放大招
  6. python math库
  7. 如何自己更改证件照底色?如何生成蓝底照片电子版?
  8. python三角网格代码_三角剖分算法(delaunay)
  9. java pptx转图_Java 将PPT转换为图片格式
  10. FlinkKafkaProducer源码分析