AOMIC — 阿姆斯特丹开放 MRI 集合 AI-Ready Wikipedia

三队列 1,370 名健康被试的多模态 3T MRI 开放集合

来源 University of Amsterdam (阿姆斯特丹大学) url: https://nilab-uva.github.io/AOMIC.github.io发布时间: 2026-09-13最后更新: 2026-09-25 阅读 56
AOMIC — 阿姆斯特丹开放 MRI 集合 AI-Ready Wikipedia

信息速览

数据集名称AOMIC — 阿姆斯特丹开放 MRI 集合 AI-Ready Wikipedia
数据类型约 408GB BIDS NIfTI,1,370 名健康被试,CC0 开放获取,7 类 fMRI 任务,fmriprep 预处理衍生
规模1,370 名健康志愿者
接入方式University of Amsterdam (阿姆斯特丹大学) url: https://nilab-uva.github.io/AOMIC.github.io
AI 就绪度

数据集封面

AOMIC(阿姆斯特丹开放 MRI 集合) — 健康人脑多模态影像 AI-Ready Wikipedia

INFOBOX

字段 内容
数据集名称 AOMIC(阿姆斯特丹开放 MRI 集合)
英文全称 Amsterdam Open MRI Collection
别名/简称 AOMIC;AOMIC-ID1000;AOMIC-PIOP1;AOMIC-PIOP2
疾病分类(ICD-11 编码+中文名) 不适用(健康志愿者数据集,无疾病诊断标签;相关研究概念映射见 §2.1)
SNOMED CT 不适用(健康样本);测量概念级映射见 §2.1b
数据模态 T1w 结构 MRI、DWI、静息态与任务态 fMRI、呼吸/心脉生理记录、人口学与心理测量变量
AI 任务类型 个体差异回归与分类、脑年龄/性别预测、行为预测、功能连接与 ICA 方法学、伪影校正基准
样本总数 1,370 名健康被试(ID1000:928;PIOP1:216;PIOP2:226)
数据大小 约 53 GB 原始数据 + 约 355 GB 衍生数据(合计约 408 GB)
数据格式 BIDS(NIfTI/GIfTI/TSV/JSON)
许可证 CC0 1.0(数据);论文 CC BY 4.0
访问级别 开放(无需注册,S3 匿名下载)
DUO 标签 NRES(无限制使用);官方许可为 CC0,无额外使用限制
语言 英语(元数据、文档与事件文件标签)
首发日期 2020-05-08(PIOP1 v1.0.0 上线 OpenNeuro)
最后更新 2020-07-21(PIOP1/PIOP2 v2.0.0 快照);ID1000 最新为 v1.2.1
发布机构 阿姆斯特丹大学(University of Amsterdam)
官方主页 nilab-uva.github.io/AOMIC.github.io
下载地址 OpenNeuro ds003097 / ds002785 / ds002790
DOI 10.1038/s41597-021-00870-6(论文);数据集 DOI 10.18112/openneuro.ds003097.v1.2.1 等
AI 就绪度评分 ⭐⭐⭐⭐(4/5)— BIDS 规范、原始+预处理双版本、QC 指标齐全、代码公开;扣分项:无官方机器学习划分、衍生数据基于 2020 年 fmriprep v1.4.1、部分模态存在被试间维度不一致
页面状态 published

§0 审核与可信度声明

医学审核:[千方病案医学编辑部] 交叉审核:§2 医学背景(健康人群定位、ICD-11 与 SNOMED CT 概念映射、个体差异研究范式)、§7 偏倚分析(WEIRD 样本、年龄窄化、自选择偏倚)。

数据工程审核:[千方病案医学编辑部交叉审核] 医疗 AI 数据工程师,审核范围:§4 DAIMS 数据字典、§5 数据划分策略、§6 预处理 Pipeline 和坑点。

审查日期:2026-09-05

本页面的三大章节(§4 数据结构、§6 AI 就绪指南、§7 DAIMS 评估)的每一项结论都可回溯到 §10.3 所列的一手来源;对来源之间不一致的信息(例如不同镜像页面对版本快照日期的记录差异),一律以 OpenNeuro 官方页面为准并在正文注明。

医疗免责声明:本页面提供的医学信息仅供研究和教育目的,不构成医疗建议、诊断或治疗方案。数据集的医学描述基于公开发表的文献,未经逐一临床验证。任何基于该数据集训练的 AI 模型在应用于临床决策前,必须经过独立的临床验证和监管审批。

技术免责声明:本页面的代码示例、预处理建议和基准性能数据基于公开资料整理,不保证在特定环境下的准确性和适用性。使用者应自行验证代码安全性和数据预处理流程的正确性。千方病案医数集不对因使用本页面信息而导致的任何直接或间接损失承担责任。

数据使用合规:使用本页面描述的数据集前,请务必阅读并遵守数据集原始许可协议。AOMIC 以 CC0 1.0 发布,法律上几乎无使用限制,但官方要求使用者引用数据论文(Snoek et al., 2021, Scientific Data)。本页 DUO 标签仅供参考,具体使用限制以数据集官方协议为准。


§1 数据集概览

§1.0 📌 30 秒速览

这是什么? AOMIC(Amsterdam Open MRI Collection,阿姆斯特丹开放 MRI 集合)是阿姆斯特丹大学心理学系一次性开放的三套多模态脑影像数据集。三个子数据集共纳入 1,370 名健康被试,每人都有 T1 加权结构像、扩散加权像、静息态或任务态功能 MRI,任务扫描时还同步记录了呼吸与心搏的生理信号,外加一份相当详尽的问卷与心理测量表(人格、焦虑、智力测验等)(AOMIC 官网)。

为什么重要? 脑影像研究的可重复性危机反复证明:样本太小就无法可靠地把大脑结构与行为联系起来。AOMIC 的三个队列里,ID1000 有 928 名 19–26 岁被试、教育水平按荷兰总体人口校准,是目前少数可用于"个体差异"(individual difference)分析的大样本开放资源之一,且数据论文本身按 COBIDAS 框架完整报告了采集与质控细节(Snoek et al., 2021)。

我能用它做什么? 训练从脑影像预测人口学与心理特质的回归/分类模型(脑年龄、性别、人格维度)、开发功能连接或 ICA 方法学、研究呼吸与心搏噪声对 fMRI 的影响、或者把 AOMIC 当作"脏数据"基准来评测伪影校正算法——官方刻意保留低质量数据不剔除,让使用者自行决策(论文 Technical Validation 章节)。

§1.1 技术摘要

AOMIC 由 ID1000(N=928,2010–2012 年采集、代表荷兰总体人口)、PIOP1(N=216)与 PIOP2(N=226,两批大学生样本)三个数据集组成,全部在同一台(经升级的)飞利浦 3T 扫描仪上采集。数据经 bidsify 包转为 BIDS(v1.2.2 规范),解剖像用 pydeface v1.1.0 去脸,随后以 fmriprep v1.4.1(结构+功能)、MRtrix3 + FSL(DWI)、FreeSurfer 6.0.0(形态学)、FSL(VBM 与 dual regression)生成了一整套衍生数据;每个功能 run 都同步记录呼吸带与脉搏血氧信号,经 scanphyslog2bids 转为 BIDS 兼容的生理文件(Snoek et al., 2021)。任务态 fMRI 覆盖自然视觉、情绪感知、工作记忆、面孔感知、认知冲突/控制与反应抑制六类稳健范式,事件文件逐试验标注。原始(约 53 GB)与衍生(约 355 GB)数据均以 CC0 许可发布于 OpenNeuro,组级地图发布于 NeuroVault。

对 AI 工程而言,三个工程事实决定了使用方式:数据是"BIDS 双版本"(raw 与 derivatives 并存,多数 ML 场景可直接消费衍生);体量是"选择下载"(全集合约 408 GB,官方推荐 awscli 按模态过滤);队列是"健康人"(无诊断标签,标签工程完全取决于你选的表型列)。本页 §6 按此组织成可直接运行的流水线,§6.5 沉淀了 8 个该数据集特有的失败模式。

§1.2 战略价值

个体差异研究的公共基准。 神经影像的"脑—行为"关联需要大样本才能稳定估计,而能满足这一要求的开放数据集屈指可数。AOMIC 同时提供结构、扩散、功能三种模态和丰富的心理测量变量,使得"从影像预测人格/智力/焦虑"这类多变量建模可以直接落地,不必自行组织采集。对 AI 团队而言,它是构建和比较特征工程(体素、连接组、表面形态学)的天然基准场。

方法学与生理噪声研究的稀缺素材。 与绝大多数开放 fMRI 数据集不同,AOMIC 的每个功能 run 都有同步呼吸与心搏记录,且官方保留了未经质量剔除的原始数据与逐被试 QC 指标(MRIQC、eddy 指标)。这使其成为生理噪声回归(RETROICOR、RVT/HRV)、伪影校正算法与质控流程评测的珍贵素材——这类"故意不清洗"的大样本在开放社区中极少见(论文 Data anonymization 与 Technical Validation)。

零门槛工程沙盒与教学资产。 CC0 许可免除了注册、DUA 与审批流程,配合 BIDS 标准与 OpenNeuro 的多平台生态(NEMAR、CBRAIN、Neurodesk、Brainlife.io),AOMIC 可以被直接挂载进 CI 流水线作为冒烟测试数据;官方同步发布全部转换与预处理代码(bidsify、scanphyslog2bids、AOMIC-common-scripts),使"数据 + 管道 + 报告"三位一体,非常适合作为教学课程与容器化 BIDS App 的标准输入。

跨队列域移研究的天然试验台。 三个子集协议高度一致(同一扫描仪平台、同一预处理管道)而人群构成不同(一般人口青年 vs 大学生),且 ID1000 与 PIOP 系列的采集年代与格式转换软件不同——这种"受控差异"恰好是研究数据集偏移、域自适应与联邦式训练的理想素材,无需引入多中心数据的协议混乱即可研究"纯人群域移"。

§1.3 同类数据集横向对比

数据集 规模 模态 标注/表型 差异化定位
AOMIC(本页) 1,370 名健康被试(3 队列) T1w + DWI + 静息态/任务 fMRI + 呼吸/心脉生理 人格、焦虑、智力测验、任务行为 任务范式最多(6 类)、生理同步记录、CC0 零门槛、保留未剔除 QC 数据
Human Connectome Project S1200 约 1,200 名健康被试 T1w/T2w + DWI + 静息态/7 任务 fMRI + MEG 子集 行为与遗传全面表型 扫描协议更豪华但许可带使用条款限制,采集设备为定制的连接组扫描仪
NKI-Rockland 约 1,000 名参与者 T1w + DWI + 静息态/少任务 fMRI 人口学、医疗与认知随访 纵向重测设计,年龄跨度更宽
ABIDE I+II 约 1,100 名(含自闭症与对照) T1w + 静息态 fMRI 诊断标签 + 行为量表 临床对照设计,适合诊断分类,但多为小站点拼接
UK Biobank 影像子集 目标 10 万名(已释放数万) T1w/T2-FLAIR + DWI + 任务/静息 fMRI + 心脏/腹部影像 超大规模表型与结局随访 队列规模最大但需申请且部分用途受限,AOMIC 可作为零门槛的预研沙盒

注:对比数字为各项目公开资料中的约数,用于定位参考;跨数据集采集协议不同,性能数值不可直接迁移比较。

选型记忆点:要"任务最全 + 生理最全 + 零门槛"选 AOMIC;要"协议最豪华 + 遗传"选 HCP;要"纵向重测 + 年龄跨度"选 NKI-Rockland;要"诊断标签"选 ABIDE;要"超大样本 + 结局"选 UK Biobank。五者在个体差异研究上高度互补,而非互替。

§1.4 版本时间轴

时间 事件
2010–2012 ID1000 数据采集(992 人入组,928 人数据入库)(论文)
2020-05-08 PIOP1(ds002785)v1.0.0 上线 OpenNeuro(OpenNeuro 版本页)
2020-05-12 PIOP2(ds002790)v1.0.0 上线 OpenNeuro(OpenNeuro 版本页)
2020-07-21 PIOP1 v2.0.0 与 PIOP2 v2.0.0 快照发布(补全衍生数据)
2020-08-28 ID1000(ds003097)v1.0.0 初始快照,其后迭代至 v1.2.1(brainlife 镜像 CHANGES)
2021-03-19 数据论文发表于 Nature Scientific Data(DOI 10.1038/s41597-021-00870-6,PMID 33741990)

时间轴解读:三个数据集在论文发表前约一年即完成 OpenNeuro 上线(2020 年 5–8 月),衍生数据经两轮快照补全;论文发表(2021-03)后未再有数据层面的更新,说明集合已进入"稳定态"——引用版本号即可获得长期不变的快照,这对复现性是好消息,但也意味着新的 fmriprep 版本与 BIDS 规范演进不会自动反映到官方衍生中(坑点 8 的根源)。

§1.5 典型应用场景

  1. 脑年龄与性别预测:以 ID1000 的 T1w(原始或 FreeSurfer/VBM 衍生)训练回归器,跨 PIOP1/PIOP2 做外部验证。
  2. 从功能连接预测心理特质:静息态预处理数据 + participants.tsv 中的人格/焦虑量表,构建"连接组→特质"的多变量模型。
  3. 任务态解码与组级分析:利用逐试验事件文件(工作记忆、停止信号、情绪匹配等)做 MVPA 或 HGLM,再对照 NeuroVault 组级地图。
  4. 生理噪声方法学:原始生理文件 + 未剔除的"脏"数据,评测 RETROICOR/RVT 回归、ICA-FIX 等去噪策略对效应量的真实提升。
  5. 教学与容器化流水线验证:CC0 许可 + BIDS 标准 + 多平台托管(NEMAR、CBRAIN、Neurodesk、Brainlife),适合作为 BIDS App 的标准测试输入。
  6. QC 算法与伪影校正基准:利用官方"不按质量剔除"的原始数据与随附 MRIQC/eddy 指标,评测自研质控模型或校正算法在真实脏数据上的增益。

§2 医学背景

§2.1 ICD-11 概念映射表

AOMIC 是健康志愿者数据集,不含任何疾病诊断标签。下表给出其测量内容与 ICD-11 相关章节/编码的研究背景级映射,仅供疾病导向的检索与关联分析定位使用,不构成诊断对齐。

数据集内容 ICD-11 编码/章节 中文名 术语说明
状态-特质焦虑量表(STAI)等焦虑相关变量 6B00(章节 6B0) 广泛性焦虑障碍 焦虑相关研究背景锚点;本数据集为健康自评分数,非临床诊断
人格问卷(大五、BIS/BAS) 6A00-6E7Z(章节) 精神、行为或神经发育障碍 章节级映射:人格维度研究常在该章范围内讨论适应与病理连续体
心脉生理记录(脉搏血氧) BA00-BE2Z(章节) 循环系统疾病 心血管生理信号的研究背景域
呼吸生理记录(呼吸带) CA00-CB7Z(章节) 呼吸系统疾病 呼吸生理信号的研究背景域
结构/功能脑影像 8A00-8E7Z(章节) 神经系统疾病 脑影像研究最常见的对照来源域;AOMIC 数据即"健康对照"素材
BMI 与代谢相关变量 5B80(肥胖相关编码域) 肥胖 participants.tsv 含 BMI 变量,可在代谢健康研究中作连续体协变量

注:AOMIC 与 ICD-11 之间无官方发布的映射表;上表为章节级/示例级映射,用于检索定位。

§2.1b SNOMED CT 概念映射表

数据集内容 ICD-11 参考 SNOMED CT 码 术语(Fully Specified Name)
BMI(participants.tsv 变量) 5B80 域 60621009 Body mass index (observable entity)
心脉生理记录 BA00-BE2Z 364075005 Heart rate (observable entity)
呼吸生理记录 CA00-CB7Z 86290005 Respiratory rate (observable entity)
利手(participants.tsv 变量) — SNOMED CT 存在利手概念族 建议以 participants.json 的取值字典为准,避免概念码误用
MR 影像检查本体 — 无官方逐条映射 影像为 BIDS 组织的研究数据,不落在临床操作编码树上

注:AOMIC 与 SNOMED CT 无官方 cross map;上表仅列出可在观测实体(observable entity)层对齐的少数概念,其余以 “n/a” 与官方数据字典为准。

§2.2 医学背景简介

AOMIC 面向的不是某一种疾病,而是健康人脑的个体差异这一基础医学问题。神经影像研究反复发现:脑结构与功能和行为变量的关联效应量普遍很小,小样本研究得出的关联往往在重复时缩水甚至消失,这就是"脑—行为"文献可重复性危机的核心(论文 Background)。解决路径是"人群影像学"(population imaging):用数百至上千人的样本,配合标准化采集与详尽表型,把个体差异本身作为研究对象。阿姆斯特丹大学过去十年持续运行此类"人群影像"项目,AOMIC 正是其中三个项目的公开版本:ID1000 以 19–26 岁青年为框架、按教育水平校准到荷兰总体人口;PIOP1/PIOP2 是随后在大学生群体中的放大与改进采集。对临床 AI 而言,这类健康大样本的价值在于提供可泛化的健康基线:疾病检测模型的对照池、脑年龄模型的训练底座、以及影像生物标记正常范围的确立。

从测量心理学视角补充一点:AOMIC 的心理测量板块(大五、BIS/BAS、STAI、两类智力测验)都是心理科学中效应结构研究最充分的工具,其与脑影像变量之间的关联也是文献中最常被检验的对象。这意味着在 AOMIC 上做的"影像→心理特质"建模不是在发明新量表,而是在给一批有成熟心理测量学背书的目标变量寻找神经影像预测器——这是它相对于自造表型的健康队列的一个重要优势。

§2.3 临床任务定义

AOMIC 不直接支持疾病筛查/诊断/分级任务,其支持的医学相关建模任务如下:

  • 健康基线建模:在健康人群上建立各影像指标的年龄/性别条件分布,为临床判读提供正常参考。
  • 脑年龄与生物标记发现:以 T1w 或功能连接预测年龄、性别等客观锚点,是影像生物标记可信度的事实标准试金石。
  • 病例—对照研究的对照资源:为精神与神经系统疾病研究提供同域(3T、BIDS)的健康对照数据。
  • 认知任务的神经机制量化:工作记忆、反应抑制等范式有明确的认知科学定义与逐试验行为标注,支持任务效应建模而非临床结局预测。

对几类核心任务范式的操作化定义(供设计矩阵与解码方案参考):

范式(任务名) 认知 construct 典型对比 AI 建模入口
自然视觉(moviewatching) 自然istic 刺激处理 刺激 vs 基线;跨被试同步性(ISC) ISC、编码/解码模型
情绪感知(emomatching) 情绪识别与匹配 情绪条件 vs 中性条件 条件级 MVPA
工作记忆(workingmemory) 负载维持与操纵 高负载 vs 低负载 负载解码、行为耦合
面孔感知(faces) 面孔身份/性别判断 面孔 vs 场景 视腹侧流定位与解码
认知冲突/控制(gstroop) 冲突监测与控制 不一致 vs 一致试次 冲突效应的个体差异
反应抑制(stopsignal) 抑制控制 成功停止 vs go 试次 停止信号行为建模(SSRT 框架)+ 解码

注:各任务的具体条件命名以对应 events.tsv 的 trial_type 取值为准;上表为范式级映射,供检索与方案设计定位。

这些范式的共同特点是效应稳健(均在文献中经过反复验证)且逐试验行为记录完整,因此 AOMIC 的任务态数据不仅能做"条件 A vs 条件 B"的传统 GLM,也支持以试验为样本的机器学习设计(trial-wise decoding)——后者正是大样本健康队列相对小样本临床数据的独特优势:试验级样本量可以达到数十万级,适合训练与评估细粒度的认知状态解码器。

§2.4 被试人群表

子数据集 人群来源 采集时间 年龄 性别与构成 就医类型
ID1000 阿姆斯特丹及周边招募,教育水平校准至荷兰总体人口 2010–2012 19–26 岁 992 人入组、928 人入库;按人口框架分层招募 健康志愿者(非就医人群)
PIOP1 阿姆斯特丹大学社区招募的大学生 AOMIC 发布(2020)前的数年间 成年学生为主 216 名健康被试 健康志愿者
PIOP2 阿姆斯特丹大学社区招募的大学生 AOMIC 发布(2020)前的数年间 成年学生为主 226 名健康被试 健康志愿者

注:PIOP1/PIOP2 的精确采集年份区间未在公开检索材料中逐项列出,仅能确认发布于 2020 年与大学生人群属性,未提供的信息此处不臆测。

被试均为右/左利手自报的荷兰成年居民,招募信息由大学社区与公开招募渠道构成。ID1000 的 992 → 928 的差额属于结构性损耗(中途退出/数据未入库),论文采用"保守入库"策略:除扫描仪伪影、预处理失败、无可用 T1w 与偶然发现四类硬性原因外不做质量剔除,因此 928 人中包含大量带不同程度伪影的数据——这正是其"方法学基准"定位的来源,但也意味着直接把它当作"干净健康对照池"使用前必须先跑自己的 QC 流程。

§2.5 临床与科研价值

对医学 AI 团队,AOMIC 的价值集中在三点:其一,零门槛合规——CC0 许可与匿名化(pydeface 去脸、时间戳移除、ID 随机化、GDPR 合规审查)意味着工程团队可以立即将其纳入流水线而无需法务审查(论文 Data anonymization);其二,健康对照的同源放大——临床站点往往缺对照,AOMIC 提供三个来源一致的健康队列;其三,方法学试金石——保留未剔除数据 + 附带逐被试 QC 指标的设计,使其成为评测"算法在真实脏数据上的稳健性"的罕见资源,这直接对应临床落地前必须回答的鲁棒性问题。

从研究生命周期看,AOMIC 还填补了一个经常被忽视的位置:预研与预注册。临床或认知研究团队在设计自己的采集协议前,可以在 AOMIC 上零成本试跑完整分析流水线(GLM 参数、CV 方案、特征定义、样本量模拟),确认效应量与统计功效后再投入真正的采集经费——官网将数据描述为"个体差异分析"用途,正是这一工作流的官方背书。

§2.6 金标准/标注质量对照表

信息类型 划分方式 标注方式 标注者 性质
任务事件文件(events.tsv) 按被试×任务×run 组织 实验程序在刺激呈现时程序化记录,逐试验标注 onset/duration/trial_type/行为响应 实验控制软件自动生成 + 官方人工校对 客观行为金标准
心理测量变量 每被试一行(participants.tsv) 标准化问卷/测验(大五、STAI、BIS/BAS、瑞文高级推理 APM、智力结构测验等) 被试自评/施测 + 官方整理 自我报告金标准(含缺失编码 n/a)
影像质量控制指标 每模态一份 group_*.tsv MRIQC 自动指标(T1w/BOLD)与 FSL eddy 指标(DWI) 自动化管道 + 官方人工 QC 复核 客观量化 QC,官方不据此剔除
组级统计地图 按数据集组织(NeuroVault) 官方组级 tSNR/任务激活对比图 官方分析管道 探索性参考(非逐病例标注)
生理信号 与功能 run 一一对应(*physio.tsv.gz) 扫描仪系统时钟同步采集(SCANPHYSLOG) 设备自动记录 + scanphyslog2bids 转换 设备级客观信号(采样时钟误差见论文)

对照表的总结论:AOMIC 的"金标准"成色依赖自动化与实验程序记录,可靠性高、主观性低;其短板不在标注质量而在标签覆盖——没有疾病标签、没有专家判读,这决定了它适合"健康基线 + 个体差异"而非"疾病检测"的建模路线。


§3 数据集规格

§3.0 版本/子集抉择矩阵

你的需求 推荐目标 体量级 理由
快速原型/教学演示 PIOP2(ds002790)+ fmriprep MNI 空间衍生 数 GB 级 被试少(226 人)下载快;官网示例命令即以此集演示
个体差异建模(年龄/人格/智力) ID1000(ds003097)raw + participants.tsv 90.71 GB(14,355 文件) N=928 样本最大、表型最全、人口学代表性最好
功能连接/静息态方法学 ID1000 或 PIOP2 的 fmriprep 静息态衍生(MNI152NLin2009cAsym) 单模态选择下载 预处理省时,官网提供对应的 awscli 过滤命令
DWI/白束研究 ID1000/PIOP2 的 dwipreprepc 衍生(MRtrix3+FSL) 单模态选择下载 eddy 指标随附(group_dwi.tsv),QC 可自行设阈
生理噪声方法学 任一子集的 raw func + *physio 生理文件 单模态选择下载 呼吸/心脉原始信号完整保留,需自算 RETROICOR/RVT
泛化/外部验证 用 PIOP1/PIOP2 验证在 ID1000 上训练的模型(或反之) 按需 三队列协议高度一致但招募人群不同,天然构成跨域验证
生理噪声方法学 任一子集的 raw func + *physio 生理文件 单模态选择下载 呼吸/心脉原始信号完整保留,需自算 RETROICOR/RVT(同上一行合并视角)
结构形态学(皮层/皮层下) ID1000/PIOP 的 freesurfer 与 VBM 衍生 单目录选择下载 recon-all 与 FSL VBM 已由官方全队列完成,免本地计算
旧快照兼容 注意 v1.0.0 类早期快照仅含 raw — 引用与复现必须锁定到含衍生的具体版本号

注意:旧快照(如 ds003097 v1.0.0)仅含原始数据,衍生数据在其后的版本补全——引用时请锁定具体版本号。

§3.1 模态详情

模态 内容 说明
T1w 结构像 三子集全覆盖,MPRAGE 已用 pydeface v1.1.0 去脸;ID1000 转换路径为 r2aGUI + 梯度表角度校正
DWI 三子集全覆盖 bval/bvec 齐全;PIOP1/PIOP2 经 dcm2niix 转换;预处理为 MRtrix3 v3.0_RC3 + FSL 6.0.1(eddy)
静息态 fMRI ID1000(task-restingstate)、PIOP1、PIOP2 fmriprep 预处理衍生含 MNI152NLin2009cAsym 空间 preproc BOLD 与 confounds
任务态 fMRI moviewatching(自然视觉)、emomatching(情绪感知)、workingmemory(工作记忆)、faces(面孔感知)、gstroop(认知冲突/控制)、stopsignal(反应抑制)、anticipation(预期) 事件文件逐试验标注;ID1000 功能像做过轴向/冠状裁剪,被试间矩阵尺寸不一致
生理记录 呼吸带 + 脉搏血氧仪,与每个功能 run 同步 原始 Philips SCANPHYSLOG 经 scanphyslog2bids 转 BIDS 兼容格式;论文用 TAPAS PhysIO v3.2.0 估计 RETROICOR 与 HRV/RVT 回归量
人口学/心理测量 年龄、性别、利手、教育、BMI、性取向、社会经济背景、宗教(部分);BIS/BAS、STAI、大五、智力结构测验、瑞文高级推理(APM)等 汇总于 participants.tsv,取值字典见 participants.json,缺失以 “n/a” 编码
场量化/组级 组级 tSNR 图与任务激活对比图 发布于 NeuroVault(collections 7105/7103/7104),非逐被试数据
场图(fieldmap) PIOP2 含 B0 场图(幅值图与相位差图) 已去脸;注意官方 fmriprep 衍生实际采用了 fieldmap-less 校正(见坑点 8)
任务刺激材料 stimuli/ 目录(部分数据集) 事件文件与刺激的呈现时序可交叉核对

§3.2 子集与样本数

子集 N 人群 OpenNeuro 最新版本 任务组合
AOMIC-ID1000 928(992 入组) 荷兰总体人口代表(19–26 岁) ds003097 v1.2.1(14,355 文件,90.71 GB) moviewatching、restingstate 及工作记忆/情绪/停止信号等任务
AOMIC-PIOP1 216 大学生 ds002785 v2.0.0 anticipation、emomatching、gstroop、faces、restingstate、workingmemory
AOMIC-PIOP2 226 大学生 ds002790 v2.0.0 restingstate、stopsignal、workingmemory、emomatching

子集选择的决策要点:追求样本量与人口学代表性选 ID1000——它是三个子集中唯一按人口框架校准招募的,个体差异建模的统计功效最高,但功能像存在裁剪维度问题(坑点 2)且采集年代最早;追求任务覆盖与数据新鲜度选 PIOP 系列——任务组合更丰富、含 fieldmap(PIOP2)、转换路径更标准(dcm2niix),但样本量小一个量级且为便利样本。三个子集的被试互不重叠,可以放心做跨子集外推而无需去重。

§3.3 数据格式

数据对象 格式 说明
容积 MRI(raw 与衍生) NIfTI(.nii.gz) BIDS 规范组织,配 sidecar JSON
表面数据(fmriprep 衍生) GIfTI fsaverage 空间表面输出
表型/事件/QC 表 TSV participants.tsv、events.tsv、group.tsv
元数据 JSON 扫描参数(_bold.json、_T1w.json)、participants.json、dataset_description.json
生理记录 TSV.GZ(BIDS physio) 与 BOLD 同步,含呼吸与心脉通道
数据集组织 BIDS v1.2.2 原始与衍生(derivatives/)均符合 BIDS;经 bids-validator v1.4.3 校验

格式层面几乎不需要任何转换工程:NIfTI/TSV/JSON 是神经影像 ML 生态的母语(nibabel、pandas 原生支持),BIDS 的实体命名规则让 glob 一行即可圈定目标文件——这正是其 4/5 AI 就绪评分的主要加分项。

§3.4 存储大小

对象 大小 来源
全集合原始数据 约 53 GB AOMIC 官网
全集合衍生数据 约 355 GB AOMIC 官网
ID1000 完整包(raw+衍生) 90.71 GB / 14,355 文件 OpenNeuro v1.2.1
单个文件(如 participants.tsv) KB 级 可用 awscli 单文件拉取

大小的工程含义:raw 与衍生一体存放意味着"只要原始数据"也必须用 include 过滤(不能整目录排除 derivatives 后才安心);反过来,"只要衍生"场景(最常见)应排除 sub-*/ 前缀只放行 derivatives/,可再省一半流量。

§3.5 标注方式

  • 行为/事件标注:实验控制程序在刺激呈现与被试响应时程序化生成 events.tsv,逐试验记录 onset、duration、trial_type 与响应时间等;官方对事件文件做过人工核对(论文称"extensively annotated event-files")。
  • 心理测量标注:标准化自评/施测量表,经官方整理进 participants.tsv;属自我报告,非临床评定。
  • 质控标注:MRIQC(T1w/BOLD)与 FSL eddy(DWI)自动指标 + 官方人工 QC,以 group_*.tsv 形式随数据发布;官方采取保守策略,不据 QC 剔除被试。
  • 技术验证分析:官方对任务数据做了第一层级 GLM(nistats/nilearn)与跨被试同步性分析(BrainIAK),产物即 NeuroVault 组级地图,可作为使用者自建分析的对错参照。
  • 元数据标注:每个 NIfTI 配 sidecar JSON(TR、回波、矩阵、翻转角等扫描参数),bidsify 转换时从 Philips PAR/REC 头文件提取;participants.json 提供表型列的取值字典。

§3.6 标注者资质与一致性

事件文件与 QC 由自动化软件产生(dcm2niix/bidsify/fmriprep/MRIQC 均为社区标准工具),人工环节为阿姆斯特丹大学 NILAB 实验室的研究人员(论文致谢研究助理团队参与采集与 QC);心理测量由标准量表施测,无主观自由标注环节,故不存在标注者间一致性系数——这是健康人群自报告数据的普遍属性而非缺陷。

这一"无主观标注"特性对 AI 是双刃剑:好处是标签噪声结构清晰(自评噪声 + 设备噪声,均可用标准方法建模),不会引入"标注者风格"这种难以量化的混杂;代价是数据集不提供任何"专家判断"维度,凡需要专家解释的目标(如"该被试影像是否提示临床关注")都必须外接标注流程,AOMIC 本身帮不上忙。

§3.7 采集周期

ID1000 于 2010–2012 年采集(992 人入组、928 人入库);PIOP1/PIOP2 为其后在大学生群体中的采集项目,三个数据集于 2020 年 5–8 月陆续在 OpenNeuro 完成快照发布;数据论文于 2021-03-19 发表(Snoek et al., 2021)。

时间信息有两点使用注意:其一,文件时间戳已被官方出于隐私移除,无法从文件系统重建采集顺序——任何"按时间分组/滚动切分"的设计都不可行,需按被试分组代替;其二,ID1000 的采集年代显著早于 PIOP 系列(扫描仪软硬经历升级、转换软件从 r2aGUI 换到 dcm2niix),跨子集比较时应把"子集来源"当作域标签而非仅当人群差异。

§3.8 地域覆盖

荷兰阿姆斯特丹单一采集点(阿姆斯特丹大学);被试主要为荷兰居民,ID1000 的教育水平按荷兰总体人口校准。

§3.9 设备与软件规格

项目 规格
扫描仪 飞利浦 3T(三个项目共用同一台,期间经历升级)
生理采集 呼吸带(breathing belt)+ 脉搏血氧仪(pulse oximetry),与 fMRI 同步
转换软件 PIOP1/PIOP2:bidsify v0.3 + dcm2niix v1.0.20181125;ID1000:r2aGUI v2.7.0 + 梯度表角度校正脚本
去标识化 pydeface v1.1.0(T1w 与 PIOP2 fieldmap)
结构/功能预处理 fmriprep v1.4.1(含 FreeSurfer 6.0.1、ANTs v2.1.0;fieldmap-less 畸变校正;未做 slice-time correction)
DWI 预处理 MRtrix3 v3.0_RC3 + FSL 6.0.1(含 eddy)
形态学/VBM/dual regression FreeSurfer 6.0.0;FSL 6.0.1
QC MRIQC(T1w/BOLD 指标);bids-validator v1.4.3
生理回归估计 TAPAS PhysIO v3.2.0(RETROICOR、HRV/RVT)
并行框架 joblib(自定义脚本多核并行);自定义代码为 Python 3.7
容器化 fmriprep/MRIQC/FreeSurfer 以官方 Docker 容器运行
技术验证分析 nistats v0.0.1b2 + nilearn v0.6.2(GLM);BrainIAK v0.10(跨被试同步性)
可视化 FSLeyes v0.32(脑图);seaborn/Matplotlib(统计图)
计算环境 Ubuntu 16.04,56 CPU(Intel Xeon E5-2680 v4),126 GB RAM,Python 3.7,Docker 容器运行 fmriprep/MRIQC/FreeSurfer

§3.10 深度溯源链

原始 Philips PAR/REC →(bidsify/r2aGUI + dcm2niix)→ BIDS raw →(pydeface)→ 去脸解剖像 →(fmriprep 1.4.1 / MRtrix3+FSL / FreeSurfer)→ derivatives/ 各管道输出 →(MRIQC/eddy)→ group_*.tsv QC 指标;生理支路:Philips SCANPHYSLOG →(scanphyslog2bids)→ BIDS physio →(TAPAS PhysIO)→ RETROICOR/HRV/RVT 回归量。全部转换与预处理代码公开于 NILAB-UvA/AOMIC-common-scripts 与各项目仓库,可复现到命令级别(论文 Code availability)。

溯源链的两个薄弱环节值得知道:其一,ID1000 的 r2aGUI 转换路径比 PIOP 的 dcm2niix 路径多一步手动的梯度表角度校正(Matlab 脚本),是整条链上唯一依赖外部脚本的环节;其二,官方衍生的 fmriprep 版本(1.4.1)已多年未随数据集更新,"数据版本"与"管道版本"事实上脱钩——复现官方衍生的精确状态需要回到 2020 年的容器 tag,这也是 §6.10 版本双锁定的由来。


§4 数据结构

§4.0 目录树

以下为单个数据集(以 PIOP1 ds002785 的 sub-0100 为例,官方文档示例)解压后的 BIDS 目录结构预览:

<details>
<summary>展开完整目录树(约 45 行)</summary>

ds002785/                                  # OpenNeuro 数据集根目录
├── dataset_description.json               # 数据集元数据(Name/BIDSVersion/License...)
├── participants.tsv                       # 一被试一行的表型表
├── participants.json                      # participants.tsv 各列的取值字典
├── README
├── CHANGES
├── T1w.json                               # 顶层面 scanning 参数(继承字段)
├── dwi.json
├── task-emomatching_bold.json             # 各任务采集参数
├── task-workingmemory_bold.json
├── sub-0100/                              # 每被试一个目录
│   ├── anat/
│   │   ├── sub-0100_T1w.nii.gz            # 去脸 T1w
│   │   └── sub-0100_T1w.json
│   ├── dwi/
│   │   ├── sub-0100_dwi.nii.gz
│   │   ├── sub-0100_dwi.bval              # 弥散 b 值
│   │   ├── sub-0100_dwi.bvec              # 弥散梯度方向
│   │   └── sub-0100_dwi.json
│   └── func/
│       ├── sub-0100_task-workingmemory_acq-seq_bold.nii.gz
│       ├── sub-0100_task-workingmemory_acq-seq_bold.json
│       ├── sub-0100_task-workingmemory_acq-seq_events.tsv   # 逐试验事件
│       └── sub-0100_task-workingmemory_acq-seq_physio.tsv.gz # 同步生理(呼吸+心脉)
├── derivatives/                           # 官方预处理衍生
│   ├── fmriprep/                          # fmriprep v1.4.1 输出(含 confounds、MNI 空间 preproc BOLD)
│   ├── mriqc/                             # group_T1w.tsv / group_bold.tsv 等自动 QC 指标
│   ├── dwipreprepc/                       # MRtrix3+FSL DWI 预处理(含 group_dwi.tsv eddy 指标)
│   ├── freesurfer/                        # 形态学统计(recon-all)
│   ├── fmriprep_vbm/                      # 基于 FSL 的体素形态学
│   └── ...                                # dual regression 等其他衍生
└── stimuli/                               # 任务刺激材料(部分数据集)

</details>

注:ID1000 的任务文件名使用 task-moviewatching 等实体名;PIOP2 含 fieldmap(magnitude 与相位差图);具体某任务是否存在以各数据集根目录的 *_bold.json 文件为准。

§4.1 DAIMS 字段字典

以 participants.tsv 与 events.tsv 两张核心表为对象(8 列 DAIMS 规范):

字段 类型 说明 示例值 AI 用途 观测误差 信息性缺失编码 取值范围
participant_id string 被试唯一标识(已随机化,非采集顺序) sub-0100 主键;分组 CV 的 group 键 无 — sub-XXXX
age integer 年龄(岁) 23 回归目标/协变量(脑年龄) 自报整数 n/a 19–26(ID1000)
sex string 生物性别 F / M 分类目标/分层变量 自报 n/a {F, M}(以 participants.json 为准)
handedness string 利手 R 协变量(脑不对称分析必控) 自报 n/a {L, R, …}(见字典)
education string/integer 教育水平(ID1000 按荷兰总体校准) 见 participants.json 社会经济协变量 自报 n/a 字典化类别
BMI float 体重指数 22.4 代谢健康协变量 测量误差(身高体重自报/实测) n/a 连续
sexual_orientation / SES / religion string 性取向、社会经济背景、宗教(宗教仅部分子集) 见 participants.json 人口学协变量/公平性分析 自报 n/a 字典化类别
BIS/BAS float 行为抑制/激活系统量表得分 见 participants.json 特质回归目标(动机取向) 自评误差 n/a 量表规定范围
STAI(状态/特质焦虑) float 状态-特质焦虑量表得分 见 participants.json 焦虑相关建模(研究背景锚点,见 §2.1) 自评误差;与人格维度共线 n/a 量表规定范围
大五人格(NEO 系列维度) float 开放性/尽责性/外向性/宜人性/神经质 见 participants.json 人格预测任务的目标变量 自评误差;维度间相关 n/a 量表规定范围
智力测验(智力结构测验 / APM) float 智力结构测验与瑞文高级推理得分 见 participants.json 认知能力回归目标 施测条件误差 n/a 测验规定范围
STAI / 大五 / BIS-BAS / APM float/integer 心理测量量表得分 见 participants.json 预测目标(特质回归) 自我报告误差;量表间共线 n/a 量表规定范围
onset(events.tsv) float 试验起始时间(秒,相对 run 起始) 12.5 GLM/MVPA 设计矩阵构建 时钟精度(毫秒级) 无 [0, run 时长)
duration(events.tsv) float 刺激/试次持续(秒) 1.5 设计矩阵卷积 时钟精度 无 > 0
trial_type(events.tsv) string 试验条件标签 WM_load_2 / correct_stop 分类标签;条件级对比 官方已校对 无 任务特定字典
response_time(events.tsv) float 行为响应时间(秒) 0.62 行为建模/性能滤波 按键设备精度 n/a 连续(可缺失)

注:各列的官方取值字典与变量命名以每个数据集根目录的 participants.json 为准;表头列名与论文 Table 6 一致,缺失值一律 “n/a”。

字段字典的使用要点:participants.tsv 是"宽格式一人一行",建模前通常还要与影像路径表(glob 生成的 sub-XXXX → 文件清单)做一次 join——join 的键就是 participant_id,注意两个来源里的字符串格式必须一致(sub-XXXX 前缀有无、零填充位数);events.tsv 则是"长格式一试验一行",与影像的对应关系经由文件名中的 task/acq/run 实体绑定,任何重命名操作都要保持实体串完整。

§4.2 标签分布

AOMIC 没有诊断标签;可作为"标签"使用的变量均为连续或二分表型:年龄(19–26 岁均匀框架,ID1000)、生物性别、利手、教育类别与各心理量表得分。逐变量的分布统计以 participants.tsv 直接读取为准(本页不做未经验证的分布断言)。需要注意 ID1000 招募时按教育水平向荷兰总体人口校准,因此教育类别比例与普通学生样本(PIOP1/PIOP2)显著不同,跨子集建模时必须作为域差异处理。

标签工程的三个建议:① 回归任务优先选择客观锚点(年龄、性别、BMI),量表作目标时要接受自评测量噪声(信度衰减会压低可达到的效应上限);② 类别化要预注册(如按量表中位数二分的阈值必须在看测试集之前冻结);③ 对 928 人的 ID1000,任何"罕见 subgroup 分析"(如按性取向/宗教切分)都要先检查单元格样本量,避免无效统计。

§4.3 关键统计

统计项 数值 来源
总被试数 1,370(928 + 216 + 226) AOMIC 官网
ID1000 文件数/大小 14,355 文件 / 90.71 GB OpenNeuro v1.2.1
任务范式类别 6 类(自然视觉、情绪、工作记忆、面孔、冲突/控制、抑制)+ 静息态 论文摘要
PIOP2 stopsignal 卷数范围 210–250 卷(中位 224,因任务结束即手动停扫) 论文
生理通道 2(呼吸带 + 脉搏血氧),每个功能 run 同步 论文 Measurement(s)
组级地图托管 NeuroVault 3 个集合(7105/7103/7104) 官网
BIDS 校验状态 Valid(1 Warning,bids-validator v1.4.3) OpenNeuro v1.2.1

以上统计的完整性提醒:文件数与大小区分了快照版本,跨版本比较时不可混用(v1.0.0 仅 raw,体积与文件数都显著小于 v1.2.1);1,370 为三个子集去重后的总被试数,不含仅入组未入库的 64 人(992 − 928)。

§4.4 数据层级

层级为:集合(AOMIC)→ 数据集(ds003097/ds002785/ds002790)→ 被试(sub-XXXX)→ run(task-/acq-,每个功能 run 绑定一份 events.tsv 与一份 physio 文件)→ 模态文件(anat/dwi/func)。所有分析聚合(NeuroVault 组级地图)在数据集层级之上单独托管,不与逐被试数据混存。

该层级对 ML 组织的直接含义:被试是天然的数据原子——任何缓存、切分、并行都应以 sub-XXXX 为粒度;run 是生理/事件对齐的原子——生理文件与 events.tsv 只在 run 级有效,跨 run 拼接前要先对齐采样时钟;衍生目录按管道名隔离(derivatives/fmriprep、derivatives/mriqc…),自建衍生必须另立目录名并写 dataset_description.json,避免覆盖官方输出。

这一层级也解释了为什么 AOMIC 组间迁移成本低:所有跨层引用都是文件系统级的相对路径(BIDS 实体命名),不存在数据库主键或私有索引格式,任何被试子集的抽取都是纯目录操作。

§4.5 缺失值与信息性缺失

情形 编码 处理建议
participants.tsv 某变量缺失 字符串 “n/a” 读入后显式替换为 NaN;切勿整列强转数值前不处理
心理量表漏答 “n/a”(官方整理后) 按量表手册计分规则处理或该被试该变量置 NaN
events.tsv 响应时间缺失(未按键/超时) “n/a” 是信息性缺失:漏答本身指示任务表现,可构造 has_response 特征
stopsignal 卷数差异(PIOP2) 无缺失,但 run 长度不同 不算缺失,见坑点 3 的张量组织方案
宗教等变量部分子集未采集 该列在对应子集不存在或整列为 “n/a” 跨子集合并前先做列对齐(union + 缺失标记),并记录哪些列是域特定的
confounds.tsv 早期列缺值(如 tCompCor 预热期) 头部若干行 “n/a” 或空值 用 bfill/截掉前数卷处理;切勿直接 dropna 整行导致时间轴错位

§5 划分与使用建议

§5.1 官方划分

无官方机器学习划分。 AOMIC 发布的是完整队列,官方预期用途为个体差异分析与假设驱动的研究,未提供 train/val/test 文件。这不是疏漏而是学科惯例——统计建模传统里,"划分"由每个研究的分析计划决定(按什么分层、留出多少、要不要外推),官方不越俎代庖。

对 ML 团队,这一空白意味着两件事:其一,你在任何论文里报告的"AOMIC 性能"都必须自带划分协议说明(§8.3 的七项清单),否则不可复现也不可比较;其二,不要试图从被试编号推断划分——sub-XXXX 已被官方随机化(防反查),编号顺序不含任何时间或批次信息,按编号切分虽然技术上可行,但与随机切分等价且没有额外意义。

§5.2 社区惯例与推荐划分

  • 按被试分组的 K 折交叉验证(GroupKFold,group=participant_id)是个体差异研究的默认做法;同一被试的任何两个样本(不同 run、不同模态衍生)绝不可分属不同折。
  • 跨子集外部验证:ID1000 训练 → PIOP1/PIOP2 测试(或反向)。三队列协议一致而人群不同(一般人口 vs 大学生),是最贴近"泛化"检验的天然划分。
  • 预注册式留出集:若做模型比较/竞赛,建议先随机固定 10%–20% 被试为最终测试集,全部调参在训练折内完成。
  • 分半稳定性检验:在开始建模前先做一次"特征分半 ICC"(把 run/时段分成两半各算一次特征),ICC 过低的特征维度直接淘汰——这比在模型层挣扎更省算力也更诚实。

§5.3 泄漏风险(重点)

  1. QC 过滤泄漏:用全样本统计(如 MRIQC 指标的全体均值/方差)定剔除阈值,再做 CV,会把测试折信息泄入训练。QC 规则必须在每折训练集内拟合。
  2. 组级地图泄漏:NeuroVault 的组级激活图由全部被试计算,若将其用作 ROI/特征掩膜再在同一批被试上评估任务解码,属于双重使用(double dipping)。
  3. 特征标准化泄漏:体素/连接特征的 z-score 必须在折内拟合;BOLD 衍生已按被试内标准化,跨被试标准化仍需折内处理。
  4. confound 回归泄漏:以全体被试回归出"去 confound 后的残差"再 CV,同样泄入测试折;confound 模型应在每折训练集内估计。

§5.4 交叉验证建议

回归任务(脑年龄、量表预测)用 GroupKFold(10) + 折内标准化;分类任务(性别)报告 balanced accuracy 与 AUC 并按性别/教育分层校验;跨子集外推时建议同时报告"目标域内 baseline"(目标域常数预测/经典 ML)以量化域移。

折数选择的经验法则:ID1000(N=928)用 10 折,PIOP 系列(N≈220)用 5 折——每折验证集至少要能支撑指标估计的方差(30+ 被试);若做超参搜索,外层 10 折 + 内层 3 折的嵌套结构在千人体量下是算力与偏差的合理折中,更深的嵌套对最终指标的改善通常小于种子方差本身。

§5.5 外部验证建议

与 HCP、NKI-Rockland、ABIDE 等同域开放数据集做跨数据集验证时,务必重训而非直接迁移预处理(不同 fmriprep 版本与空间模板会导致系统性偏移,见坑点 8);生理通道相关模型(呼吸/心搏)因设备参数不同,跨数据集迁移前先核对采样率与通道定义。

§5.6 分组划分参考实现

import pandas as pd
from sklearn.model_selection import GroupKFold, GroupShuffleSplit

# participants.tsv 是唯一事实来源;group 键 = participant_id(见坑点 5 的 na_values 处理)
pheno = pd.read_csv("ds003097/participants.tsv", sep="\t", na_values="n/a")
groups = pheno["participant_id"].values

# 1) 冻结 15% 被试为最终测试集(按组切分,绝不按行切分)
gss = GroupShuffleSplit(n_splits=1, test_size=0.15, random_state=42)
dev_idx, test_idx = next(gss.split(pheno, groups=groups))
dev, test = pheno.iloc[dev_idx], pheno.iloc[test_idx]

# 2) 开发集内 GroupKFold-10 做 CV/调参
gkf = GroupKFold(n_splits=10)
for tr_idx, va_idx in gkf.split(dev, groups=dev["participant_id"]):
    ...  # 每折内完成 QC 阈值拟合、特征选择、标准化(§5.3)

# 3) 跨子集外推:ID1000 训练,PIOP1/PIOP2 各自整体作为外部测试集
#    (不同子集的 participants.tsv 列名以各自 participants.json 对齐)

要点:groups= 参数一个都不能少——被试级分组是 AOMIC 上一切评估方案的前提;测试集只允许触碰一次,且评估完成前不要看它的标签分布。

另外提醒:GroupShuffleSplit 的随机种子应写入实验配置并保持固定——种子变了,测试集就变了,此前的"最终成绩单"全部作废;跨子集外推(第 3 步)没有随机性,天然可复现,是报告泛化能力的首选方案。


§6 AI 就绪指南 ⭐

§6.0 云端/零下载快速启动

  • OpenNeuro 网页:直接浏览文件树并单文件下载(ds003097)。
  • NEMAR:OpenNeuro 官方分析门户,可在线跑分析(OpenNeuro 页面入口)。
  • Neurodesk / CBRAIN / Brainlife.io:OpenNeuro 页面均提供一键跳转,数据以容器/挂载方式提供,适合无本地 GPU 的用户。
  • DataLad:git clone https://github.com/OpenNeuroDatasets/ds003097.git 后可按文件粒度 datalad get,天然避免全量下载。

选型建议:只想"看一眼"数据结构,用 OpenNeuro 网页 + participants.tsv 即可(零下载);要在 Jupyter 里探索,用 Neurodesk(浏览器内容器环境,数据已挂载);要跑严肃批量分析,回到本地 awscli/DataLad 方案(§6.2)。云端方案的共同限制是算力与配额,全队列深度学习训练仍建议本地/自有集群。

§6.1 快速上手

下面代码假定你已用 §6.2 的命令把 ID1000(ds003097)的 participants.tsv 与若干被试的 T1w 下载到 ~/aomic/ds003097(最小可用子集 = 表型表 + 任意被试的去脸 T1w)。data_root 必须指向包含数据集目录(ds003097 等)的父目录,代码中所有路径都从它拼接。

import os
import pandas as pd
from nilearn import plotting

# 目录结构预期(data_root 直接拼接 ds accession 与相对路径):
# ~/aomic/
# └── ds003097/
#     ├── participants.tsv
#     ├── sub-0001/
#     │   ├── anat/sub-0001_T1w.nii.gz
#     │   └── func/sub-0001_task-moviewatching_bold.nii.gz
#     └── derivatives/

data_root = os.path.expanduser("~/aomic")
ds_dir = os.path.join(data_root, "ds003097")

# 1) 表型表:注意缺失值是字符串 "n/a"(见坑点 5)
pheno = pd.read_csv(os.path.join(ds_dir, "participants.tsv"), sep="\t", na_values="n/a")
print(pheno[["participant_id", "age", "sex"]].head())

# 2) 查看一例去脸 T1w(面部特征已被 pydeface 移除,属正常现象)
t1w = os.path.join(ds_dir, "sub-0001", "anat", "sub-0001_T1w.nii.gz")
plotting.plot_anat(t1w, title="AOMIC-ID1000 sub-0001 T1w (defaced)")

§6.2 数据获取

途径 方式 适合
OpenNeuro 网页 浏览器点选下载 单文件/小抽样
AWS S3(匿名) aws s3 sync --no-sign-request 模态级/子集级批量获取(官方推荐)
DataLad clone OpenNeuroDatasets 仓库 按文件惰性获取 + 版本追踪
NEMAR/Neurodesk/CBRAIN/Brainlife 在线平台直接分析 无本地算力/只想试跑

获取流程没有注册、申请或审批环节(CC0 + 匿名 S3),从决定使用到数据落盘只有安装 awscli 的时间成本;--no-sign-request 表示不需要 AWS 账号。四个实操提示:① sync 命令是幂等的,中断后重跑即续传;② include 模式用通配符匹配完整相对路径,写 *T1w* 会连带 derivatives 里的同名文件,务必以 sub-*/ 或 derivatives/ 前缀圈定范围;③ 先拉 participants.tsv 全家桶(participants.tsv + participants.json + 各 *_bold.json)确认内容再下影像;④ 校验下载完整性可用文件数对照 OpenNeuro 页面显示的 14,355(ID1000)。

官方推荐用 awscli 做选择性下载(全集合原始约 53 GB + 衍生约 355 GB,全量拉取不现实):

pip install awscli

# 仅下载 PIOP2 全部原始 T1w(--exclude "*" 先全排除,再按 include 放行)
aws s3 sync --no-sign-request s3://openneuro.org/ds002790 /your/output/dir \
  --exclude "*" --include "sub-*/anat/*T1w.nii.gz"

# 仅下载 fmriprep 预处理的静息态 BOLD(MNI152NLin2009cAsym 空间)
aws s3 sync --no-sign-request s3://openneuro.org/ds002790 /your/output/dir \
  --exclude "*" \
  --include "derivatives/fmriprep/sub-*/func/*task-restingstate*space-MNI*desc-preproc_bold.nii.gz"

# 仅下载表型表(KB 级,先拿它再决定下什么)
aws s3 sync --no-sign-request s3://openneuro.org/ds002790 /your/output/dir \
  --exclude "*" --include "participants.tsv"

把命令里的 ds002790 换成 ds003097(ID1000)或 ds002785(PIOP1)即可访问其他子集;include 模式可自由改写(如 *task-workingmemory*events.tsv)。

§6.3 预处理全流程

官方已提供 fmriprep 衍生,多数场景无需重跑管道,重点是"衍生数据 → 机器学习特征"这段:读取 confounds、清洗、提特征。

import numpy as np
import pandas as pd
from nilearn.maskers import NiftiMasker
from nilearn.connectome import ConnectivityMeasure

# 预期路径(raw 与衍生并存于同一数据集树):
# ds_dir/sub-XXXX/func/*_bold.nii.gz                 # 原始
# ds_dir/derivatives/fmriprep/sub-XXXX/func/*task-restingstate*
#        *_space-MNI152NLin2009cAsym_desc-preproc_bold.nii.gz
# ds_dir/derivatives/fmriprep/sub-XXXX/func/*task-restingstate*
#        *_space-MNI152NLin2009cAsym_desc-confounds_regressors.tsv

sub_func_dir = os.path.join(ds_dir, "derivatives", "fmriprep", "sub-0001", "func")
bold = os.path.join(sub_func_dir, "sub-0001_task-restingstate_space-MNI152NLin2009cAsym_desc-preproc_bold.nii.gz")
confounds_file = os.path.join(sub_func_dir, "sub-0001_task-restingstate_space-MNI152NLin2009cAsym_desc-confounds_regressors.tsv")

# 1) confounds 清洗:保留 fmriprep 推荐的运动/CompCor 回归量,"n/a" 显式置 NaN
confounds_raw = pd.read_csv(confounds_file, sep="\t", na_values="n/a")
keep = [c for c in confounds_raw.columns
        if c.startswith(("trans_", "rot_")) or "compcor" in c.lower()]
confounds = confounds_raw[keep].fillna(method="bfill")

# 2) 体素级掩膜 + 去均值/去趋势/标准化(折内拟合,见 §5.3)
masker = NiftiMasker(
    standardize=True, detrend=True, high_pass=0.01,
    mask_strategy="epi", memory="nilearn_cache", memory_level=1)
masked = masker.fit_transform(bold, confounds=confounds)

# 3) 时间序列 → 功能连接矩阵(相关/正切相关)
conn = ConnectivityMeasure(kind="tangent").fit_transform(masked[np.newaxis])
print(conn.shape)  # (1, n_voxels, n_voxels);大样本建议换 ROI atlas(如 Schaefer)降维

若必须自行重跑 fmriprep(新版)而非使用官方 v1.4.1 衍生,注意 ID1000 的裁剪维度问题(坑点 2)与生理通道配置(--me-t1w 无关;生理文件在 func/ 下,新版 fmriprep 可自动纳入 physio 回归)。最小重跑命令示例:

# 官方衍生为 fmriprep v1.4.1;重跑请统一版本并对全部被试执行(坑点 8)
fmriprep ds003097/ out/fmriprep/ participant \
  --participant-label 0001 0002 \
  --output-spaces MNI152NLin2009cAsym \
  --nthreads 16 --mem-gb 32 \
  -w /path/to/workdir

两个工程提示:其一,重跑要给足工作目录(-w)与内存,官方当时以 56 CPU/126 GB RAM 的机器完成全队列;其二,重跑产出与官方衍生的 confounds 列名可能有出入,任何下游脚本都要做列名适配层而非硬编码列集合。

§6.4 PyTorch DataLoader

以"从静息态 BOLD 的 3D 体积(各时间点)预测性别/年龄"为例的完整可运行示例。设计取舍说明:AOMIC 的官方衍生 BOLD 已在 MNI 空间对齐,但 ID1000 原始功能像维度不一致(坑点 2),因此 Dataset 内统一做了 crop + 重采样;标签直接取自 participants.tsv,以 participant_id 为主键与影像路径配对——这是所有 AOMIC PyTorch 工程的共同骨架,换成 T1w 回归或连接组分类只需替换 __getitem__ 内的特征构造。

import os, glob, nibabel as nib, numpy as np, pandas as pd, torch
from torch.utils.data import Dataset, DataLoader
from scipy.ndimage import zoom

# 目录预期:data_root/ds003097/derivatives/fmriprep/sub-XXXX/func/*task-restingstate*
#           *_space-MNI152NLin2009cAsym_desc-preproc_bold.nii.gz
# data_root 与 participants.tsv 的拼接关系同 §6.1
DATA_ROOT = os.path.expanduser("~/aomic/ds003097")

class AOMICVolumeDataset(Dataset):
    """每个样本 = BOLD 的一个时间体积(3D),标签来自 participants.tsv。
    最小可用子集:fmriprep 静息态 preproc BOLD + participants.tsv。"""
    def __init__(self, target="sex", crop=(80, 96, 80)):
        self.crop = crop
        pheno = pd.read_csv(os.path.join(DATA_ROOT, "participants.tsv"),
                            sep="\t", na_values="n/a")
        self.label_map = {"F": 0, "M": 1}
        self.items = []
        for _, row in pheno.iterrows():
            pattern = os.path.join(
                DATA_ROOT, "derivatives", "fmriprep", row["participant_id"], "func",
                f"{row['participant_id']}_task-restingstate*desc-preproc_bold.nii.gz")
            files = glob.glob(pattern)
            if not files:
                continue
            y = self.label_map[row[target]] if target == "sex" else float(row[target])
            self.items.append((files[0], y))

    def __len__(self):
        return len(self.items)

    def __getitem__(self, idx):
        path, y = self.items[idx]
        vol4d = nib.load(path).get_fdata(dtype=np.float32)  # 注意:整文件载入,见坑点 1 的体量提醒
        t = vol4d.shape[3] // 2                # 取中间时间点做演示;训练时应在 __getitem__ 内随机取 t
        vol = vol4d[..., t]
        vol = vol[:self.crop[0], :self.crop[1], :self.crop[2]]  # 统一裁剪,绕开维度不一致(坑点 2)
        vol = zoom(vol, (96 / vol.shape[0], 112 / vol.shape[1], 96 / vol.shape[2]))  # 重采样到统一尺寸
        vol = (vol - vol.mean()) / (vol.std() + 1e-6)
        return torch.from_numpy(vol[None].astype(np.float32)), torch.tensor(y)

loader = DataLoader(AOMICVolumeDataset(target="sex"), batch_size=8, shuffle=True, num_workers=4)
x, y = next(iter(loader))
print(x.shape, y.shape)  # (8, 1, 96, 112, 96), (8,)

两个性能/正确性要点:

  1. 内存与磁盘:get_fdata() 会把整个 4D 文件读入内存,静息态 preproc BOLD 体积可观。生产化时应改用 nib.load(path).dataobj[..., t] 按卷惰性读取,或在预处理阶段一次性切片落盘为 3D 衍生文件(配合 npy/memmap)。
  2. 不要在 __init__ 里做重采样:zoom 每样本调用开销大且会放大 IO 阻塞;统一尺寸的更好做法是借助官方 MNI 空间衍生(网格天然一致)或在 GPU 端做插值。演示代码中的 crop+zoom 只保证"能跑通",不是最优实现。

§6.5 坑点清单(8 个,全部来自官方文档/论文/数据本身的已知失败模式)

以下 8 个坑点按"工作流顺序"排列:先踩到下载与格式(1–3),再是建模方法(4–5),然后是数据本身的性质(6–7),最后是长期维护(8)。每个坑点的"解决"三层中,简单方法保证能跑通,进阶方法是推荐默认,SOTA 方法面向要发表/上线的团队。

⚠️ 坑点 1:全量下载约 408 GB 打爆磁盘与带宽(分类:工程陷阱)

问题:AOMIC 原始约 53 GB + 衍生约 355 GB,且单个数据集包内 raw 与 derivatives 混放;直接整包同步既慢又占盘,多数分析根本用不到全部衍生。
症状:磁盘写满、S3 传输数天、下载完成后才发现想要的是 derivatives/ 里的单个模态。
解决:

  1. 简单方法:先用单文件命令拉 participants.tsv,确认子集与变量后再定下载范围;官网明确建议不要一次全下。
  2. 进阶方法:aws s3 sync --no-sign-request s3://openneuro.org/ds003097 out/ --exclude "*" --include "derivatives/fmriprep/sub-*/func/*task-restingstate*space-MNI*desc-preproc_bold.nii.gz" 这类 exclude/include 过滤(§6.2),按"数据集 × 模态 × 空间"三轴精确放行。
  3. SOTA 方法:改用 DataLad(git clone https://github.com/OpenNeuroDatasets/ds003097.git)做文件级惰性获取,配合 datalad get 按需落盘,并天然获得版本快照追踪。
    参考:官网下载指南、OpenNeuro ds003097

⚠️ 坑点 2:ID1000 功能像被试间矩阵尺寸不一致(分类:工程陷阱)

问题:为节省磁盘,ID1000 的功能像在轴向/冠状方向被保守裁剪(去除低信号切片),导致不同被试的 BOLD 矩阵维度不同。
症状:np.stack([nib.load(f).get_fdata() for f in files]) 直接报错或静默产出 ragged 数组;批处理脚本在个别被试上崩溃;把 shape 写死为常量的代码产生错位体素对应。
解决:

  1. 简单方法:加载时读取每例实际 shape,统一 crop 到三轴最小公共尺寸后再入批(§6.4 示例即此策略)。
  2. 进阶方法:直接改用 derivatives/fmriprep/ 的 MNI152NLin2009cAsym 空间输出——所有被试已被重采样到同一模板网格,维度天然一致。
  3. SOTA 方法:自建批处理时以模板参考网格为准(nibabel + nilearn.image.resample_to_img),并把"维度一致性检查"写成流水线断言(加载每个被试第一卷即校验 shape)。
    参考:Snoek et al., 2021 论文(裁剪说明)

⚠️ 坑点 3:PIOP2 stopsignal 任务卷数因人而异且未做 slice-time correction(分类:预处理陷阱)

问题:PIOP2 的停止信号任务在被试完成后手动停止扫描,各 run 卷数在 210–250 之间(中位 224);同时官方 fmriprep 预处理刻意未做 slice-time correction。
症状:把全部 run 堆成统一形状张量时报 shape 不匹配;按固定 TR 帧数构造标签序列时尾部错位;对新数据复跑含 slice-timing 的管道后,事件时间与体素时间相位不一致。
解决:

  1. 简单方法:按被试逐例处理 run,模型输入以"变长序列 + mask/截断"组织(torch 的 pack_padded_sequence 或按最后 210 卷截断对齐)。
  2. 进阶方法:以 events.tsv 的 onset 相对 run 起始对齐,逐被试读取实际 NIfTI.shape[3] 确定有效窗口;GLM 用户保持官方"不 slice-time correct"的约定,在第一层级设计矩阵中沿用同一约定即可。
  3. SOTA 方法:变长时间序列统一走 patch/segment 采样框架(每个样本随机采样固定长度窗 + 时间掩膜),既绕开变长问题又可做数据增强;跨管道比较时把 slice-timing 策略作为显式配置项记录。
    参考:论文(卷数范围与停扫说明)

⚠️ 坑点 4:用全样本统计做 QC 剔除或特征选择造成数据泄漏(分类:数据泄漏)

问题:官方把逐被试 QC 指标(mriqc 的 group_T1w.tsv/group_bold.tsv、eddy 的 group_dwi.tsv)随数据发布,很多人用全体被试的分位数定剔除阈值、或用全体被试算出特征方差筛选体素,然后再做 CV——测试折的信息已经泄入训练流程,指标虚高。
症状:CV 分数漂亮但留出集/新数据上骤降;剔除比例在折间不一致导致折间方差异常小;审稿人要求"折内 QC"时无法复现。
解决:

  1. 简单方法:先用固定先验阈值(如 friston24 运动超 0.5 mm 剔除)而非数据驱动分位数,规则与折无关。
  2. 进阶方法:把 QC 剔除与特征选择都放进 Pipeline,在每折训练集内拟合(sklearn 的 Pipeline + GroupKFold),测试折只变换不学习。
  3. SOTA 方法:嵌套 CV(内层选特征/调参,外层报性能)+ 把所有"全样本一次性统计"(包括 confound 模型、组级掩膜)显式列为泄漏审计项,逐一改为折内拟合。
    参考:论文 Technical Validation(QC 指标发布策略)、§5.3

⚠️ 坑点 5:participants.tsv 的 “n/a” 缺失编码(分类:标签理解)

问题:官方明文规定缺失值以字符串 “n/a” 编码(非空单元格、非 NaN),直接 pd.read_csv 后强转数值会得到全列 object 类型或报错,“n/a” 被当类别值混入模型。
症状:df["age"].astype(float) 抛 ValueError;One-Hot 后多出一个 “n/a” 类别且样本量不小;回归中个别被试贡献异常残差。
解决:

  1. 简单方法:pd.read_csv(..., sep="\t", na_values="n/a") 一步到位。
  2. 进阶方法:读入后对每列检查 df[col].isna().mean(),把缺失率写进实验记录;对心理量表列按量表手册核对计分范围再清洗。
  3. SOTA 方法:把"缺失率 + 是否信息性缺失"纳入特征工程(如 events.tsv 中响应时间缺失=未响应,可构造 has_response 指示变量),并使用 sklearn.impute.SimpleImputer 在折内插补,避免跨折统计泄漏。
    参考:论文 Table 6 说明(n/a 编码)、§4.5

⚠️ 坑点 6:解剖像已去脸(pydeface),影响配准、QC 与部分特征(分类:预处理陷阱)

问题:三个数据集的全部 T1w(及 PIOP2 的 fieldmap 幅值/相位差图)都经 pydeface v1.1.0 移除了面部特征(口鼻区域),这是 GDPR 合规的强制处理。
症状:对面部区域敏感的自动 QC/去脸检测报错;基于颅外结构(鼻尖、眼眶)的配准初猜失败;面部特征类预训练模型(如用于年龄估计的 face-based 模型)直接不可用;肉眼对比 HCP 等未去脸数据时感觉"缺了一块"。
解决:

  1. 简单方法:接受去脸现状,配准一律以脑组织模板为参照(fmriprep 衍生已用 OASIS 模板完成颅骨剥离与配准)。
  2. 进阶方法:需要颅外信息时改用其他模态/数据集;或用官方发布的衍生(FreeSurfer 形态学)替代任何涉及面部区域的定制处理。
  3. SOTA 方法:把"输入必为去脸数据"作为数据契约写入 MLOps 校验(加载时检测像素分布断层),防止未来混入未去脸数据导致管线行为漂移。
    参考:论文 Data anonymization

⚠️ 坑点 7:健康年轻 WEIRD 样本,模型外推到临床/老年人群必然失效(分类:偏倚陷阱)

问题:ID1000 被试 19–26 岁(教育水平校准到荷兰总体人口),PIOP1/PIOP2 是大学生便利样本;全部为志愿者、单一扫描仪、单一国家。
症状:脑年龄模型在 AOMIC 内 MAE 很低,外推到老年或患者队列出现系统性偏差;性别分类器学到的是扫描序列伪影而非生物学差异;把 AOMIC 训练的"健康基线"直接用于临床分诊出现大量假阳性。
解决:

  1. 简单方法:在使用文档中明示样本边界(年龄区间、教育构成、健康人群),下游应用声明仅限同类人群。
  2. 进阶方法:跨子集(ID1000 ↔ PIOP1/PIOP2)与跨数据集(HCP/NKI/ABIDE)双重外推评估,报告"相对内部评估的性能衰减"作为泛化证据(§7.8)。
  3. SOTA 方法:域自适应/域不变表征(如 CORAL 对齐特征协方差)+ 分层评估(按教育、性别分层报告),并把"训练分布说明书"与模型 artifact 一起发布。
    参考:论文(样本构成)、§7.1

⚠️ 坑点 8:官方衍生基于 fmriprep v1.4.1(2020),与新版输出混用不可比(分类:评估误用)

问题:官方 derivatives 由 fmriprep v1.4.1 生成(fieldmap-less 畸变校正、未 slice-time correct、FreeSurfer 6.0.1),而当前社区默认是更新版本,输出命名(confounds 列名、entity 规范)与数值均有差异。
症状:新旧行的 confounds.tsv 列名对不上(如 aCompCor 命名变化);同一被试自跑新版与官方衍生连接组特征系统性偏移;论文复现时"数据相同、分数不同"。
解决:

  1. 简单方法:锁定官方衍生版本做主要实验,混用前先核对 confounds 列名集合的交集。
  2. 进阶方法:若需新版管道,对全部被试统一重跑,绝不新旧混用;fmriprep 输出注明版本号于实验记录。
  3. SOTA 方法:用容器(fmriprep 官方 Docker 镜像)+ DataLad 版本追踪把"数据版本 × 管道版本"双锁定,任何重跑都登记到 provenance(BIDS derivatives 的 dataset_description.json 里记录 Sources 与 HowToAcknowledge)。
    参考:论文 Code availability(软件版本清单)、§3.9

§6.6 数据增强

增强 适用 说明
随机时间窗采样(BOLD 取不同卷段) ✅ 安全 变长 run(坑点 3)下尤其合适,等价于免费的重采样
强度抖动/随机 gamma ✅ 安全(小幅度) 模拟 BOLD 强度漂移,保持脑组织相对对比
随机空间裁剪(统一目标尺寸) ✅ 安全 同时解决 ID1000 维度不一致(坑点 2)
左右翻转 ❌ 危险 脑功能高度偏侧化(利手、语言侧化),翻转破坏解剖对应
重采样至各向异性插值链 ⚠️ 谨慎 3D 重采样用样条插值即可;过度旋转/剪切会破坏与 MNI 模板对齐的约定
混合被试特征(Mixup 于体素级) ⚠️ 谨慎 仅在按被试分组划分后、且报告消融时使用,避免伪造不存在的"混合个体"
随机 ROI 置零(连接组 dropout) ✅ 安全 提升连接组模型鲁棒性,等价于特征 dropout
运动伪影样本注入 ⚠️ 谨慎 可合成运动破坏的样本用于鲁棒训练,但需验证合成分布与真实 MRIQC 指标分布一致

增强设计的原则性提醒:脑影像的解剖对应关系是先验知识的一部分,任何改变左右对称性、跨被试混合、或破坏与 MNI 模板对齐的操作,都必须在消融实验中证明净收益后才能进入正式流水线;"增强后训练集指标上升、外部验证下降"是过度增强的典型信号。

增强协议的记录格式建议:把每个启用的增强写成"名称 + 参数范围 + 触发概率 + 依据"四元组,与随机种子一起存档——脑影像增强的复现性对种子极其敏感,不记录种子的增强消融基本无法复现。

§6.7 模型推荐

任务 推荐起点 理由
结构像回归(年龄/BMI/量表) ROI/体素特征 + 弹性网/梯度提升;3D CNN(ResNet 系)作为非线性对照 N≈1,000 时线性/浅层模型常强于深网络,是文献一致结论
性别分类 功能连接特征 + SVM/MLP 连接组特征维度可控,可解释性强
任务解码 GLM(nilearn/Nistats 路线)+ 条件级 MVPA 官方事件文件完备,GLM 是不可绕过的基线
静息态网络分析 ICA(MELODIC)或 Schaefer atlas + tangent 连接 与官方 dual regression 衍生可直接对照
生理噪声研究 TAPAS PhysIO / physiopy 生态工具计算 RETROICOR/RVT 回归量后建模 官方论文即用 TAPAS PhysIO v3.2.0
大规模预训练 在 ID1000 上自监督(掩码重建/对比学习),PIOP 子集微调 跨子集域移可控,是当前脑影像基础模型的常见配方
DWI 白束分析 官方 dwipreprepc 衍生 + MRtrix3 流式追踪 eddy 校正已完成,group_dwi.tsv 供 QC
皮层形态学 FreeSurfer 衍生(厚度/面积/曲率) 官方全队列 recon-all 已完成,特征即取即用

推荐表的共同前提:无论选哪个起点,特征构造与评估协议(§5、§8.3)必须先于模型选择冻结——个体差异研究中"模型排行"的方差远小于"特征与协议选择"的方差,先锁后者才有可比性。

§6.8 硬件需求

场景 最低配置 建议
表型/事件分析、GLM 16 GB RAM,CPU 即可 纯 TSV/nilearn 工作负载
fmriprep 重跑(可选) 16 GB RAM,8 核 官方当时使用 56 CPU/126 GB RAM 完成全队列
深度学习(3D CNN) 1× 24 GB GPU(如 3090/A5000) 3D 体积批训练建议 40 GB 级(A100)以放大 batch
存储 500 GB SSD 按需选择性下载后远小于此;全量 raw+衍生约 408 GB

存储规划的一个细节:衍生数据的体积大头是 fmriprep 的空间标准化输出与 FreeSurfer 的中间产物,若磁盘吃紧,可只保留 desc-preproc_bold、confounds 与统计表面,其余(如 func/ 下的中间文件)用 aws s3 sync --exclude 排除或下载后清理——QC 与溯源信息(JSON/TSV)务必保留,体积极小但复现必需。

§6.9 评估指标代码

个体差异研究的指标选择原则:回归主报 MAE(保留原始量纲,脑年龄场景直接可解释),辅报 R² 与 ICC;分类主报 balanced accuracy(健康样本内性别等类别可能轻度不均衡),辅报 AUC。所有指标必须伴随分组 CV 的折间标准差,且关键结论需在分层子组(性别、教育)上复核一遍——单点平均分数在个体差异场景下几乎不具备决策价值。

import numpy as np
from sklearn.model_selection import GroupKFold, cross_val_score
from sklearn.linear_model import Ridge
from sklearn.pipeline import make_pipeline
from sklearn.preprocessing import StandardScaler
from sklearn.metrics import mean_absolute_error, balanced_accuracy_score

# X: 被试 × 特征(如 ROI 级功能连接或 VBM 特征),groups: participant_id
gkf = GroupKFold(n_splits=10)
pipe = make_pipeline(StandardScaler(), Ridge(alpha=1.0))

mae = -cross_val_score(pipe, X, y_age, cv=gkf, groups=groups,
                       scoring="neg_mean_absolute_error")
print(f"脑年龄 MAE = {mae.mean():.2f} ± {mae.std():.2f} 岁(GroupKFold-10)")

# 性别分类:balanced accuracy(防类别不均);分组同上
# acc = cross_val_score(clf, X, y_sex, cv=gkf, groups=groups, scoring="balanced_accuracy")

# 外部验证(ID1000 训练 → PIOP 测试):在同一特征定义下重用 StandardScaler/模型
pipe.fit(X_train, y_train)
pred = pipe.predict(X_test)
print("外部 MAE:", mean_absolute_error(y_test, pred))

# 分层体检:按性别/教育子组分别报告误差,暴露公平性问题(§7.5)
import pandas as pd
report = pd.DataFrame({"y": y_test, "pred": pred, "sex": sex_test})
print(report.groupby("sex").apply(
    lambda g: mean_absolute_error(g["y"], g["pred"]), include_groups=False))

# 任务态 GLM 的触发向量核对(把 events.tsv 转设计矩阵的起始点)
events = pd.read_csv("ds002790/sub-0001/func/sub-0001_task-stopsignal_events.tsv",
                     sep="\t", na_values="n/a")
print(events["trial_type"].value_counts())  # 各条件试验数:先核对再建模

# ICC(组内相关):重测/跨折稳定性的标准指标,个体差异研究的加分报告项
# 对 k 折中重复估计的同一被试特征(如分半连接组特征)计算 ICC(2,1),
# 或用 pingouin.icc(data, targets="subject", raters="fold", ratings="value")

§6.10 MLOps 笔记

  • 版本双锁定:数据快照(ds003097 v1.2.1 等)与管道版本(fmriprep v1.4.1 或自跑版本)必须同时记录;OpenNeuro 提供 DataLad/Git URL(https://github.com/OpenNeuroDatasets/ds003097.git),可直接作为数据版本锚点。
  • 数据契约:把"去脸 T1w"、“n/a 缺失编码”、"ID1000 维度不一致"写成加载器断言(坑点 2/5/6),CI 中以 2–3 个被试的迷你样本冒烟测试。
  • 缓存策略:nilearn 的 memory= 参数缓存掩膜与中间特征;连接组计算按被试粒度落盘,失败重跑以被试为单位。
  • 合规留痕:CC0 许可下仍应在发布物中附数据论文引用(Snoek et al., 2021)与版本号;这是官方明确要求的唯一"合规动作"。
  • DVC/Datalad 双层管理:数据层用 DataLad(OpenNeuro 原生支持),实验产物层用 DVC 或 MLflow 管理,二者以 participant_id + 快照版本做联合主键。
  • 按被试幂等:所有批处理脚本设计成"单被试单命令"(官方 AOMIC-common-scripts 的做法:除一个目录参数外全部硬编码),上层的并行器(如 joblib)负责编排,失败只重跑单被试。
  • 特征注册表:连接组/atlas 特征的 atlas 名、分辨率、掩膜来源与 fmriprep 版本写入特征元数据;不同特征的分数不可混池比较。

§7 质量评估与局限性

§7.1 已知偏倚

偏倚类型 描述 严重程度 缓解建议
WEIRD/人群偏倚 PIOP1/PIOP2 为大学生便利样本,教育水平偏高;ID1000 为荷兰一般人口青年 高(跨人群外推时) 限定声明适用人群;跨数据集验证(§7.8)
年龄窄化 ID1000 全体 19–26 岁 高(脑年龄等任务) 不用于老年/儿童建模;年龄回归仅作方法学演示
自选择偏倚 志愿参加 MRI 研究的健康人群 中 对照组使用时与病例队列做教育/都市度匹配
设备与时代偏移 单一飞利浦 3T(经升级);ID1000 为 2010–2012 年老数据且转换软件不同 中 把子集来源作为协变量/域标签;不跨子集逐体素混合训练
存活/入库偏倚 992 入组仅 928 入库(非质量剔除原因所致的结构性损耗) 低 官方保守 QC 策略下,QC 相关选择主要留给用户,需自查折内一致性
量表文化偏倚 心理测量工具的荷兰语语境施测,跨语言等价性未验证 中 跨语言/跨文化建模时将量表目标视为"荷兰语境版本"
出版与使用偏倚 健康志愿者研究吸引力分布不均(如某些职业/教育群体更易参与) 低–中 报告招募渠道并做敏感性分析

§7.2 标注质量

任务事件文件由实验程序自动记录并经官方人工校对,行为时间戳精度为按键/呈现级;心理测量为标准量表自评,无标注者一致性问题的同时,也带自评法的固有测量误差;QC 指标为自动化产出(MRIQC/eddy),官方人工复核仅为流程保障而非逐标签审阅。总体上,AOMIC 的"标注"属于高可靠性、低主观性的客观记录类,与临床读片类数据集有本质区别。

对使用者有两个实操推论:其一,任务事件文件是逐试验的客观记录,可以也应该用它来核对实验设计(各条件试验数、时长分布),在建模前发现异常 run;其二,心理量表列的"官方加工"仅到汇总与编码为止,各量表的计分口径、反向题处理等细节需回溯原始量表手册,跨子集合并同一量表前先确认施测版本一致。

§7.3 泛化性

部署场景 失效风险 证据/机制
老年/儿童人群 高 样本年龄 19–26 或成年学生,年龄分布直接不支持
临床(精神病/神经病)人群 高 无患者、无诊断标签;健康基线仅提供对照参考
非荷兰/非西方人群 中–高 单一国家、单一文化量表语境(荷兰语/英语量表)
其他扫描仪/序列 中 单一飞利浦 3T;跨厂商谐波伪影与序列差异未覆盖
新版预处理管道 中 官方衍生为 fmriprep v1.4.1;新版输出需全量重跑对齐(坑点 8)
多回波/高级序列模型 高 AOMIC 无 ME-fMRI 等高级序列,相关方法无法训练只能迁移
生理信号跨设备迁移 高 呼吸带/血氧仪的采样率与信噪特性随设备改变,模型需重新标定

泛化性结论的总结:AOMIC 的"安全使用域"是——成年、健康或以健康为对照、西方高教育语境、飞利浦 3T 类协议、BIDS/fmriprep 工作流。超出该域的每一次外推都需要显式的验证实验来支撑,而非默认成立。

§7.4 伦理与合规

去标识化流程(销毁 PII、pydeface 去脸、移除时间戳、随机化被试 ID)经阿姆斯特丹大学数据保护官与心理学部 data steward 审查,判定符合 GDPR;数据以 CC0 1.0 发布,无注册、无 DUA、无使用限制;官方唯一要求是复用时引用数据论文。心理测量变量(人格、焦虑、智力代理)虽经匿名化,仍属敏感自报告信息,建模与发布衍生结果时应保持对个体可推断性的审慎(论文 Data anonymization)。

工程上的对应要求:不要把 participants.tsv 的原始行在公开报告/附录中整表粘贴(小单元格组合在小样本子集上有重构风险);发布模型与衍生特征时附上去标识化状态说明;CC0 虽不强制,但保留"数据来源 + 版本 + 引用"三要素是社区规范,也是审稿合规的最低要求。

§7.5 公平性

数据集具备教育水平校准的招募框架(ID1000),但性别、教育之外的公平性维度(种族、收入)未系统发布,无法进行细粒度公平性审计;性别二分类变量(F/M)限制了对性别谱系的包容性分析。用于跨群体模型时,建议以"分群体性能报告"替代"整体平均"。

§7.6 数据漂移

三子集天然构成轻度域移(人群构成、采集年代、转换软件),可作为漂移研究的内置压力测试;跨年份复用(2010–2012 老数据 vs 当代采集)存在扫描仪代际与人群世代漂移,长周期部署的模型应定期以新采集数据重校准。

实操监控建议:把"ID1000 训练、PIOP 验证"的特征分布对比(每个特征的均值/方差漂移、PSI)纳入实验报告模板;一旦上线迭代,以 NeuroVault 组级地图作为"参照锚"——新数据重算的组级图与官方地图的相关系数显著下降即触发复核。

§7.7 DAIMS 数据质量评估(24 项)

# 检查项 状态 说明
1 宽格式表 ✅ participants.tsv 一被试一行,全部表型并列
2 唯一标识 ✅ sub-XXXX 主键;官方已随机化(防按编号反查)
3 特殊字符 ✅ BIDS 命名规范强制安全字符,bids-validator v1.4.3 校验通过(1 Warning, Valid)
4 重复行 ✅ 一被试一记录,无重复主键
5 缺失编码 ✅ 统一 “n/a”,论文 Table 6 明文说明
6 标签标识 ⚠️ 无诊断/预测标签;标签语义(trial_type、量表列)依赖 participants.json 字典
7 罕见类分组 ⚠️ 健康样本无疾病类别;量表极端值样本量小,无官方分组指引
8 偏倚评估 ✅ 论文明示招募框架与人群代表性设计(教育校准)
9 数据字典 ✅ participants.json + 各 *_bold.json sidecar 完整
10 信息性缺失解释 ✅ events.tsv 未响应=行为意义缺失,官方事件文件可支持识别
11 设备记录 ✅ 扫描仪型号/参数写入 sidecar JSON;论文报告软件版本链
12 共线性 ⚠️ 心理量表间相关(如 STAI 与大五神经质)未系统发布,需自查
13 编码映射 ✅ 量表取值与 BIDS 实体命名规则明确
14 时间戳处理 ⚠️ 文件时间戳已被官方移除(隐私),导致无法重建采集时序元数据
15 划分建议 ❌ 无官方 train/val/test 划分
16 泄漏讨论 ⚠️ 官方未讨论 ML 泄漏(其目标用户为统计学者);QC/组级地图泄漏需用户自查(§5.3)
17 标签分布 ⚠️ 表型分布需自行从 participants.tsv 统计,官方未发布分布报告
18 测量偏倚 ⚠️ 自评量表与行为测量的方法偏倚未做官方量化
19 外部验证建议 ✅ 三子集构成天然跨域验证设计(一般人口 vs 学生)
20 版本记录 ✅ OpenNeuro 快照版本 + CHANGES 文件 + DOI 逐版本可引用
21 预处理脚本 ✅ 全部转换/预处理代码公开(AOMIC-common-scripts、bidsify、scanphyslog2bids)
22 合规要求 ✅ CC0 + GDPR 审查记录(论文 Data anonymization 章节)
23 多模态对齐 ✅ BIDS 统一组织,生理与 BOLD 同 run 对齐;fmriprep 衍生空间统一
24 去标识化 ✅ pydeface + PII 销毁 + 时间戳移除 + ID 随机化,经 DPO 审查

DAIMS 评分:19 / 24(✅×15 + ⚠️×8×0.5 + ❌×1×0)

评分解读:AOMIC 是开放神经影像数据集中数据治理水准最高的一档:BIDS 双版本(raw+衍生)、字典完备、去标识化流程有 GDPR 级审查、代码与版本全公开。失分集中在"机器学习消费视角"——官方从未提供预测标签体系、分布报告与划分方案,这些是统计研究传统与 ML 传统之间的系统性落差,而非数据本身的缺陷。

对你意味着什么:直接可做的事——用 participants.tsv + 官方衍生立即开始回归/分类实验,QC 指标随取随用;必须自己做三件事——① 设计并冻结被试级划分(无官方划分);② 把 QC 剔除与特征选择全部折内化(防泄漏);③ 自查心理量表间的共线性并决定量表取舍。不该做的事——把 AOMIC 模型直接推向临床或老年场景;期望官方回答任何 ML 工程问题(官方支持面是 BIDS 与统计研究)。

三步行动计划:第一周——下载 participants.tsv 与 5 个被试的 MNI 空间静息态衍生,跑通 §6.1/§6.3 的特征提取;第一个月——在 ID1000 全量 MNI 衍生上完成年龄/性别基线(§6.9 协议),同时完成分半 ICC 特征体检(§5.2);第一个季度——引入量表目标与跨子集外推(§5.6),并在 §8.3 的七项协议下冻结你的评测报告格式。

§7.8 外部验证矩阵

外部数据集/场景 来源机构 评估任务 性能指标 相对内部变化 关键发现
BrainSuite BIDS App 演示(PIOP2 子集) BrainSuite 团队(UCLA) 参与者级 T1w/dMRI/rs-fMRI 处理流程验证 + Dashboard QC 演示 流程可复现性(非性能分数) 不适用 AOMIC 被第三方选作 BIDS App 的标准示例数据,佐证其 BIDS 一致性(BrainSuite 示例仓库)

注:截至 2026-09 审核日,公开检索范围内未发现以"内部/外部性能对比"形式发布、且有同行评审支撑的 AOMIC 基准迁移研究矩阵;本页不虚构此类数字。AOMIC 的定位更接近"方法学基准场",社区验证以可复现性演示与二次分析论文形式存在。


§8 基准性能与生态

§8.1 排行榜与可比较性

AOMIC 没有官方排行榜或统一 SOTA 协议。它的引用生态以"二次分析论文"为主:各研究自选子集、自选特征(体素/连接组/形态学)、自选 CV 方案,数字之间不可直接比较。不可比性的四个来源:① 子集不同(ID1000 928 人 vs PIOP 200+ 人);② 特征不同(体素级 ROI 级连接组级差几个数量级);③ 划分不同(有无分组、折数、有无外推);④ 预处理版本不同(官方 v1.4.1 衍生 vs 自跑新版)。若需在论文中报告"AOMIC 上的性能",建议自行固定协议:数据集版本 + 子集 + 模态 + 特征定义 + 划分种子 + 指标 六要素全披露。可对照的官方技术验证锚点(同源可复现):

分析 官方材料 说明
任务激活组级地图 NeuroVault 7105/7103/7104 各任务对比图可直接下载对照
跨被试同步性(ISC) 论文技术验证章节(BrainIAK v0.10) moviewatching 等自然刺激范式
tSNR 组级图 NeuroVault QC 参考图
生理噪声回归示例 论文(TAPAS PhysIO 输出 RETROICOR/HRV/RVT) 生理去噪实验的官方参照配置
第一层级 GLM 论文(nistats/nilearn 实现) 技术验证级激活图,可用于核对自建 GLM

§8.2 SOTA 总结与选型建议

在公开检索范围内,AOMIC 上不存在"公认 SOTA 模型";成熟做法是以线性/浅层模型 + 组学特征(VBM、FreeSurfer 指标、连接组)作为强基线,再以 3D CNN/Transformer 验证增量。方法学论文(去噪、QC、对齐)则直接以 AOMIC 的"未剔除数据 + 生理记录"组合为卖点。对新团队的建议:先用 ROI 级特征 + GroupKFold 打通全流程,再谈深度模型。

选型时的三步走:第一步用 participants.tsv 的客观锚点(年龄/性别)在官方衍生特征上建立端到端基线——这一步通常数小时内可完成,却能暴露数据获取、特征定义与评估协议的全部工程问题;第二步引入心理量表目标与更细特征(体素级 VBM、高分辨率连接组),观察效应量与基线的差距;第三步才是深度模型与自监督,且必须与第一步的基线同协议对比。文献的一般经验是:在千人体量、自评表型场景下,深度模型的稳定增益主要来自表示学习而非更大的网络。

§8.3 评测协议建议

可复现评测的最小协议清单:

  1. 数据锁定:写明 OpenNeuro 数据集号 + 版本号(如 ds003097 v1.2.1)与下载日期;用 DataLad 的话记录 git hash。
  2. 管道锁定:直接用官方衍生则注明 fmriprep v1.4.1;自跑则给出容器 tag 与命令行参数。
  3. 特征定义:atlas 名/体素化方案、掩膜来源(ePI 掩膜还是模板脑区)、连接类型(Pearson/tangent/partial)。
  4. 划分:GroupKFold 折数 + 随机种子 + 测试集冻结方式;跨子集外推要写明训练/测试子集方向。
  5. 指标:回归 MAE/R²/ICC,分类 balanced accuracy/AUC;均按性别/教育分层附报。
  6. QC 报告:剔除规则(若用)必须在折内拟合;报告剔除前后 N 与效应变化。
  7. 基线:常数预测、年龄/性别单变量回归、经典 ML(弹性网)至少三项基线。

把该清单直接并入实验室的标准报告模板是性价比最高的做法:七项中任何一项缺失,都会在复现请求时以更高代价补课。

数据集 关系 何时换用它
HCP S1200 更豪华采集协议、含遗传数据 需要任务范围最全/双生子遗传设计时
NKI-Rockland 纵向重测、年龄跨度宽 需要重测信度或更宽年龄轴时
ABIDE I/II 病例—对照(自闭症) 需要诊断标签做临床分类时
UK Biobank 超大队列、结局随访 需要疾病终点与超大规模时(需申请)
Spacetop 等新自然主义 fMRI 数据集 更丰富的自然刺激范式 需要超自然istic 视觉计算模型时(论文关联推荐可见)
openneuro 生态内其他 BIDS 数据集 同格式、同托管 需要扩充预训练语料时零转换成本

联合使用提示:AOMIC 与 HCP/NKI 的最大协议差异在序列参数(TR、分辨率、加速因子),跨数据集训练时至少要保留"来源数据集"作为协变量或域标签;与 ABIDE 联合时注意 AOMIC 提供的是健康端(无诊断标签),角色是"纯对照扩充",不能直接拼进病例—对照标签里训练诊断分类器而不做域平衡。

§8.5 关键论文

  1. Snoek, L., van der Miesen, M. M., Beemsterboer, T., van der Leij, A., Eigenhuis, A., & Scholte, H. S. (2021). The Amsterdam Open MRI Collection, a set of multimodal MRI datasets for individual difference analyses. Scientific Data, 8, 85. DOI 10.1038/s41597-021-00870-6 —— 数据集主论文:采集、质控、衍生与去标识化全记录。
  2. Gorgolewski, K. J., et al. (2016). The brain imaging data structure, a format for organizing and describing outputs of neuroimaging experiments. Scientific Data, 3, 160044 —— BIDS 标准,AOMIC 的组织骨架。
  3. Esteban, O., et al. (2019). fMRIPrep: a robust preprocessing pipeline for functional MRI. Nature Methods, 16, 111–116 —— 官方衍生数据的结构/功能预处理管道。
  4. Esteban, O., et al. (2017). MRIQC: Advancing the automatic prediction of image quality in MRI from unseen sites. PLOS ONE, 12(9), e0184661 —— 官方 QC 指标的来源工具。
  5. Kanaan, S.(pydeface 维护者)et al.; pydeface v1.1.0 —— 解剖像去脸工具(GDPR 合规处理的关键环节)。
  6. Kasper, J., et al. (2017). The PhysIO toolbox for modeling physiological noise in fMRI data. PLOS ONE, 12(12), e0189831(TAPAS PhysIO)—— 官方生理噪声回归量的估计工具。
  7. Snoek, L., et al. (2020, bioRxiv 10.1101/2020.06.16.155317) —— AOMIC 预印本版本(OpenNeuro README 所引 “preprint”)。
  8. Nichols, T. E., et al. (2017). Best practices in data analysis and sharing in neuroimaging using MRI (COBIDAS). —— AOMIC 论文遵循的报告框架。
  9. Abraham, A., et al. (2014). Machine learning for neuroimaging with scikit-learn. Frontiers in Neuroinformatics, 8, 14(nilearn 生态)—— AOMIC 官方分析栈的核心库之一。
  10. Finn, E. S., et al. (2015). Functional connectome fingerprinting: identifying individuals using resting-state fMRI. Nature Neuroscience, 18, 1664–1671 —— "连接组可识别个体"的奠基工作,是个体差异分析路线的方法学参照(AOMIC 官网将其目标定位与之呼应)。

§8.6 社区活跃度

官方维护集中在 NILAB-UvA GitHub 组织(AOMIC-common-scripts、bidsify、scanphyslog2bids、各项目仓库);数据托管于 OpenNeuro 并被其生态平台(NEMAR、CBRAIN、Neurodesk、Brainlife.io)自动收录,可直接在线分析;第三方采用案例包括 BrainSuite BIDS App 官方示例(PIOP2)。生理数据处理方向与社区组织 physiopy 的工具生态(生理信号转 BIDS)天然衔接。截至 2026-09,未发现官方年度 release 节奏(最后数据快照为 2020 年),社区支持以 GitHub issue 与 OpenNeuro 论坛为主。

提问渠道建议按序尝试:① 数据内容问题先查论文对应章节(Table 5/6 覆盖绝大多数变量与仓库问题);② BIDS 组织问题查官网 FAQ 与 bids-validator 输出;③ 下载与平台问题走 OpenNeuro 论坛;④ 分析管线问题可在 NILAB-UvA 对应仓库提 issue。论文致谢区确认 OpenNeuro 团队成员直接参与了上传支持,说明数据方与托管方的沟通通道是顺畅的。

§8.7 生态快照

资源 类型 链接 推荐理由
AOMIC 官网 文档/下载指南 nilab-uva.github.io/AOMIC.github.io 选择性下载命令的权威来源
OpenNeuro ds003097 数据(ID1000) openneuro.org/datasets/ds003097 最大子集,90.71 GB/14,355 文件
OpenNeuro ds002785 数据(PIOP1) openneuro.org/datasets/ds002785 任务最多的子集(6 任务)
OpenNeuro ds002790 数据(PIOP2) openneuro.org/datasets/ds002790 停止信号任务 + fieldmap
NeuroVault 7105/7103/7104 组级地图 neurovault.org/collections/7105 官方组级 tSNR/激活图
AOMIC-common-scripts 代码 github.com/NILAB-UvA/AOMIC-common-scripts 全部预处理命令级复现
DataLad 仓库 数据版本 github.com/OpenNeuroDatasets/ds003097 文件级惰性获取

§9 相关资源与引用

§9.1 官方资源

§9.2 BibTeX 引用块

以下条目覆盖数据集论文、三个子集的具体版本 DOI 与核心工具论文,可直接粘贴使用:

@article{Snoek2021AOMIC,
  author  = {Snoek, Lukas and van der Miesen, Maite M. and Beemsterboer, Tinka and van der Leij, Andries and Eigenhuis, Annemarie and Scholte, H. Steven},
  title   = {The {Amsterdam Open MRI Collection}, a set of multimodal {MRI} datasets for individual difference analyses},
  journal = {Scientific Data},
  year    = {2021},
  volume  = {8},
  pages   = {85},
  doi     = {10.1038/s41597-021-00870-6},
  pmid    = {33741990}
}

@dataset{AOMIC_ID1000,
  author = {Snoek, Lukas and van der Miesen, Maite M. and van der Leij, Andries and Beemsterboer, Tinka and Eigenhuis, Annemarie and Scholte, H. Steven},
  title  = {AOMIC-ID1000},
  year   = {2020},
  publisher = {OpenNeuro},
  doi    = {10.18112/openneuro.ds003097.v1.2.1}
}

@dataset{AOMIC_PIOP1,
  author = {Snoek, Lukas and van der Miesen, Maite M. and van der Leij, Andries and Beemsterboer, Tinka and Eigenhuis, Annemarie and Scholte, H. Steven},
  title  = {AOMIC-PIOP1},
  year   = {2020},
  publisher = {OpenNeuro},
  doi    = {10.18112/openneuro.ds002785.v2.0.0}
}

@dataset{AOMIC_PIOP2,
  author = {Snoek, Lukas and van der Miesen, Maite M. and van der Leij, Andries and Beemsterboer, Tinka and Eigenhuis, Annemarie and Scholte, H. Steven},
  title  = {AOMIC-PIOP2},
  year   = {2020},
  publisher = {OpenNeuro},
  doi    = {10.18112/openneuro.ds002790.v2.0.0}
}

@article{Gorgolewski2016BIDS,
  author  = {Gorgolewski, Krzysztof J. and Auer, Tibor and Calhoun, Vince D. and Craddock, R. Cameron and Das, Samir and Duff, Eugene P. and Flandin, Guillaume and Ghosh, Satrajit S. and Glatard, Tristan and Halchenko, Yaroslav O. and others},
  title   = {The brain imaging data structure, a format for organizing and describing outputs of neuroimaging experiments},
  journal = {Scientific Data},
  year    = {2016},
  volume  = {3},
  pages   = {160044},
  doi     = {10.1038/sdata.2016.44}
}

§9.3 引用指南

  • 用数据:引用数据论文(Snoek2021AOMIC)+ 所用子集的具体版本 DOI(如 AOMIC_ID1000),这是官网明确的复用要求。
  • 用官方衍生:请同时引用 fmriprep、MRIQC、FreeSurfer、MRtrix3/FSL 等对应工具论文(清单见论文 Code availability)。
  • 用生理数据:引用 scanphyslog2bids 与 TAPAS PhysIO。
  • 方法比较:标注数据集快照版本号与下载日期,OpenNeuro 各版本 DOI 独立可引。
  • 二次发布:基于 AOMIC 训练的模型或再分发子集时,保留 CC0 传随自由,但建议保留数据论文引用与版本溯源(README 中给出 DataLad/OpenNeuro 链接)。
  • 成果报告:在论文/报告的 Data availability 段落直接给出三要素——数据集名 + 版本 DOI + 访问日期,审稿人可据此精确复现你的数据状态。

§10 AI 使用声明卡

§10.1 本页面生产使用的 AI 模型

  • CodeBuddy Code(fast-model)——结构与初稿生成

模型产出仅覆盖文本与代码层面;页面引用的全部外部数字与链接均可通过 §10.3 来源列表人工复核,页面不包含 AI 生成的实验结果或未经来源支撑的统计数字。

§10.2 AI 参与范围

AI 负责信息检索整合、结构组织、代码示例撰写与文本成稿;全部事实性断言经 §10.3 所列来源交叉核对,医学与数据工程判断经人工审核流程把关。

范围边界说明:AI 未进行任何新的数据分析或数字计算——文中所有数字均直接转录自所列来源(规模、日期、版本号、软件版本、文件数等);AI 生成的内容限于组织、转述、代码示例与建议性文字;凡来源之间存在口径差异处(如官网与论文的子集排列顺序),正文中已按证据优先原则统一并注明出处。

§10.3 输入来源列表

  1. Snoek, L., et al. (2021). The Amsterdam Open MRI Collection, a set of multimodal MRI datasets for individual difference analyses. Scientific Data, 8, 85. DOI 10.1038/s41597-021-00870-6
  2. AOMIC 官网. https://nilab-uva.github.io/AOMIC.github.io
  3. OpenNeuro AOMIC-ID1000(ds003097 v1.2.1). https://openneuro.org/datasets/ds003097/versions/1.2.1
  4. OpenNeuro AOMIC-PIOP1(ds002785 v2.0.0 metadata). https://openneuro.org/datasets/ds002785/versions/2.0.0/metadata
  5. OpenNeuro AOMIC-PIOP2(ds002790 v1.0.1 metadata). https://openneuro.org/datasets/ds002790/versions/1.0.1/metadata
  6. Brainlife.io OpenNeuro/ds003097 镜像页(含 CHANGES 与 License CC0 说明). https://brainlife.io/dataset/OpenNeuro/ds003097/1.0.0
  7. 阿姆斯特丹大学知识库论文全文 PDF(Code availability/Data anonymization/Technical Validation). https://pure.uva.nl/ws/files/88494128/s41597_021_00870_6.pdf
  8. ResearchGate 论文全文镜像(ID1000 裁剪与 PIOP2 卷数说明). https://www.researchgate.net/publication/350192125
  9. medRxiv DOI 引导页(论文元数据与测量类型). https://www.medrxiv.org/lookup/external-ref?access_num=10.1038/s41597-021-00870-6&link_type=DOI
  10. bioRxiv 预印本页(10.1101/2020.06.16.155317,Table 6 与预处理章节). https://tomesphere.com/paper/10.1101/2020.06.16.155317
  11. Bohrium 论文摘要转述(变量与预处理中文概述). https://www.bohrium.com/paper-details/812484850471665666-10696
  12. BrainSuite BIDS App 示例仓库(PIOP2 子集采用案例与 CC0 确认). https://github.com/BrainSuite/BrainSuiteBIDSAppSampleData
  13. 千方病案医数集写作宪法 v1.0 与 MIMIC-III 金标准(结构/格式/免责声明模板)
  14. NeuroVault 官方集合页(7105/7103/7104,经官网转介). https://neurovault.org/collections/7105/

§10.4 人工校验表

内容模块 审核者 审核方式 审核状态
§2 医学背景(人群定位与概念映射) 千方病案医学编辑部 与论文及官网逐条比对 ✅ 已通过
§3/§4 规格与结构(数字、版本、目录) 千方病案医学编辑部 与 OpenNeuro/官网页面逐项核对 ✅ 已通过
§6 AI 就绪指南(代码与 8 坑点) 千方病案医学编辑部(数据工程) 代码逻辑走查 + 坑点溯源确认 ✅ 已通过
§7 质量评估(DAIMS 24 项) 千方病案医学编辑部 逐项对照证据评级 ✅ 已通过
§8–§9 引用与生态 千方病案医学编辑部 链接可达性与 DOI 核对 ✅ 已通过
frontmatter 与 JSON-LD 一致性 千方病案医学编辑部(数据工程) 逐字段比对 schema_org 与 script 块 ✅ 已通过

§10.5 AI 生成章节标注

本页面各章节初稿由 AI 生成,其中 §2.1/§2.1b 的编码映射为 AI 依据公开术语体系整理的概念级映射(已在正文标注"无官方映射");§7.7 DAIMS 评级与 §7.8 外部验证矩阵的"未发现"类结论为 AI 基于检索证据的判断,均经人工复核。

§10.6 最后人工审核日期

2026-09-05

页面状态:published(全部内容已完成审核并发布)


相关数据集导航

以下为站内 AI-Ready 数据集百科中与本词条共享多个主题标签的相关数据集,按相关度降序排列:

  • cam-can — 共享标签:神经科学 / 公共卫生与流行病学 / 脑影像 / 队列研究
  • 1000-functional-connectomes — 共享标签:神经科学 / 公共卫生与流行病学 / 脑影像 / 队列研究
  • ppmi — 共享标签:神经科学 / 公共卫生与流行病学 / 脑影像 / 队列研究
  • healthy-brain-network — 共享标签:神经科学 / 公共卫生与流行病学 / 脑影像 / 队列研究
  • aibl — 共享标签:神经科学 / 公共卫生与流行病学 / 脑影像 / 队列研究
  • abide — 共享标签:神经科学 / 公共卫生与流行病学 / 脑影像
  • nki-rockland — 共享标签:神经科学 / 公共卫生与流行病学 / 队列研究
  • adhd-200 — 共享标签:神经科学 / 脑影像 / 队列研究
  • ADNI — 共享标签:神经科学 / 脑影像 / 队列研究
  • abcd-study — 共享标签:公共卫生与流行病学 / 脑影像 / 队列研究

导航说明:本章节由全站统一标签体系自动计算生成(标签重合度算法),双向可达;点击链接可跳转至对应数据集词条。

返回 AI-Ready 数据集