fooof github现在正在更名为Spectral Parameterization。
是一种快速、高效且具有生理学信息的工具,用于参数化神经功率谱。
功率谱模型将功率谱视为由两种不同的功能过程组合而成的模型:
一个非周期成分,反映 1/f 类特征。
具有一个可变数量的周期成分(推定的振荡),表现为高于非周期成分的峰值。
参考论文将神经功率谱参数化为周期和非周期成分
问题和研究对象:研究脑区活动拟合1/f^a 相关的论文
有的——大量研究表明脑信号在许多脑区和模态下都包含1/fᵃ(即“幂律 / scale-free / aperiodic”)成分,并且该成分的指数(exponent / slope)和偏移(offset)与年龄、任务状态、病理、兴奋/抑制平衡等有关。下面把几类关键工作和实用建议给你,方便你快速上手去检验脑区活动拟合 (1/f^a)。
| α | 含义 | 时间域特性 |
|---|---|---|
| α ≈ 0 | 白噪声 | 无时间相关 |
| α ≈ 1 | pink noise | 长程相关 |
| α ≈ 2 | brown noise | 强平滑、慢漂移 |
Rhythmicity of Time Series
一些噪声的psd形式。
这个背景噪声和波动可以分开来进行讨论。
关键论文(入门必读,按主题)
- 关于“scale-free / 1/f 样式在大脑活动中普遍存在”的综述与概念性讨论:He,Scale-free brain activity: past, present, and future(综述,讨论不同模态与功能学意义)。 (PubMed)
- 与年龄相关的 1/f 指数变化(实证):Voytek et al.,Age-Related Changes in 1/f Neural Electrophysiological Noise(表明随年龄 1/f “变平坦”,并与认知表现相关)。 (PubMed)
- 将功率谱分解为**周期(oscillatory)与非周期(aperiodic, 即 1/f)**两部分的开源方法与论文(FOOOF):Donoghue et al.,Parameterizing neural power spectra into periodic and aperiodic components(Nature Neuro, 介绍 FOOOF 并给出用法与示例)。 (Nature)
- 通过幂律指数推断神经兴奋/抑制(E:I)平衡的模型工作:Gao, Peterson & Voytek,Inferring synaptic excitation/inhibition balance from field potentials(提出指数与局部 E:I 关系的理论/模拟证据)。 (PubMed)
- 与“broadband / 非振荡”信号以及行为/刺激相关变化的实证工作(补充):Miller 等关于 broadband / 1/f 的讨论与 Gyurkovics 等关于刺激诱导 1/f 变化的研究。 (PMC)
常见结论(并给出对应引用)
- 脑信号常包含 1/f-like 的 aperiodic 成分(跨 EEG/MEG/ECoG/fMRI)。(PubMed)
- 不同脑区 / 状态 /个体之间,1/f 指数(a)和偏移量存在系统性差异(例如年龄、任务、疾病会改变指数或 offset)。 (PubMed)
- 把功率谱分成“周期 + 非周期”能避免将 aperiodic 变化误判为振荡幅度变化,这就是为什么现在常用 FOOOF(或类似方法)。 (Nature)
- 幂律指数可能反映底层生理机制(如 E:I 平衡、突触时序等)(理论与模拟支持)。 (PubMed)
如果你想检验“某个脑区是否服从 (1/f^a)”——建议的最小流程
- 从源空间或 ROI 提取时序(或直接用 sensor 信号)。
- 计算功率谱(Welch、multitaper 等),在你关注的频段上(例如 1–100 Hz 或 1–40 Hz)。
- 在对数坐标下做线性拟合(log(power) vs log(freq))——获得斜率即 (−a)(注意:拟合前排除明显的振荡峰段,或直接用下面的 FOOOF)。
- 推荐使用FOOOF(Donoghue et al.)来自动分离 aperiodic(offset, exponent)和 periodic 峰值,这能更稳健地得到 exponent 值。 (Nature)
- 对不同脑区做统计比较(例如在 ROI 间用配对 t-test / 非参数检验或用混合效应模型),并检查与行为/任务变量的相关性。
下面给你一个最小示例(Python + FOOOF),你可以直接套用(伪代码/示例):
# pip install fooof scipy numpyimportnumpyasnpfromscipyimportsignalfromfooofimportFOOOF# x: 时域信号(1D),fs: 采样率f,Pxx=signal.welch(x,fs=fs,nperseg=fs*2)# e.g. 2s window# 选择拟合频段(例如 1-40 Hz)f_fit_mask=(f>=1)&(f<=40)f_fit=f[f_fit_mask]p_fit=Pxx[f_fit_mask]# 使用 FOOOF 拟合fm=FOOOF(peak_width_limits=[1,12])fm.fit(f_fit,p_fit)exponent=fm.aperiodic_params_[1]# [offset, exponent]offset=fm.aperiodic_params_[0]print('exponent=',exponent,'offset=',offset)# fm.get_params('aperiodic_params') 也可取# 若要查看并保存 periodic peaks: fm.report()# Import the model objectfromspecparamimportSpectralModel# Initialize model objectfm=SpectralModel()# Define frequency range across which to model the spectrumfreq_range=[3,40]# Parameterize the power spectrum, and print out a reportfm.report(freqs,psd[10],freq_range)
某个脑区拟合的结果
给你的研究/分析的实用注意事项
- 在做 log-log 拟合前,去除明显振荡峰或用 FOOOF 能避免峰值影响指数估计。 (Nature)
- 频段选择会影响结果(低频拐点、工频噪声、采样限制等要小心)。例如有研究只拟合 1–40 Hz,也有拟合更宽的带宽;要在方法中说明并做敏感性检验。 (PubMed)
- 幂律指数的生理解释不是唯一:它可能反映神经群体活动的统计属性、E:I 比、荧光/血流耦合等,务必谨慎解释并尽可能用多种证据支持结论(模型、发放数据、药理操控等)。 (PubMed)
对比研究病人和健康人差异
有,而且这是 1/fᵃ(aperiodic / scale-free)目前最成熟、用得最多的应用方向之一:比较病人(PD/AD/SCZ/ASD/癫痫等)与健康对照(HC)之间的差异。而且现在主流做法基本都不再只看频段功率,而是显式分离 1/f 成分。
下面我按疾病类型 → 发现 → 方法给你一个“研究版地图”,和你现在做的 MEG/EEG 分析是高度对齐的。
一、最经典、引用最多的方向
1️⃣ 衰老 & 神经退行性疾病(AD / MCI)
核心结论
- 病人 / 老年人:1/f exponent 变小(谱变平)
- 表示神经活动的时间相关性减弱、噪声增加
代表论文
- Voytek et al., 2015, J Neurosci
Age-Related Changes in 1/f Neural Electrophysiological Noise
👉 第一次明确提出:1/f 斜率是可作为生物标志物的指标
延伸
- AD / MCI:前额叶、顶叶 exponent 下降
- 与记忆、执行功能评分相关
📌适合你:ROI-level exponent vs 认知量表
2️⃣ 帕金森病(PD)
核心结论
- PD 患者在β 频段附近功率升高
- 但更底层的是:aperiodic offset / exponent 改变
- 药物(L-DOPA)会调制 1/f 参数
代表思路
- 不只问「β 强不强」
- 而是问:
👉β 的变化是否来自 oscillation,还是 1/f 背景的抬升?
📌与你的 PD–HC、VQ-VAE、MEG 分析直接相关
3️⃣ 精神分裂症(Schizophrenia)
核心结论
- exponent显著变平
- 与兴奋 / 抑制(E/I)失衡强相关
关键论文
- Gao, Peterson, Voytek, 2017, NeuroImage
Inferring excitation/inhibition balance from field potentials
提出:
1/f exponent ≈ E/I balance 的宏观指标
📌 这是机制层面非常强的一条线
4️⃣ 自闭症(ASD)
发现
儿童 / 青少年 ASD:
- exponent ↓ 或 offset ↑
与感觉过敏、局部过度同步有关
意义
- 1/f 成分比传统频带功率更稳定
- 更适合跨被试比较
5️⃣ 癫痫 & 脑损伤
致痫区:
- offset ↑(broadband 抬升)
- exponent 改变
可用于定位病灶 / 手术前评估
二、方法学上的“分水岭”:FOOOF / 参数化功率谱
现在高质量论文几乎都会做这一步:
❌ 直接比较 α / β 功率
✅ 分离:
- aperiodic(1/f exponent + offset)
- periodic(真正的振荡峰)
核心论文
- Donoghue et al., 2020, Nature Neuroscience
Parameterizing neural power spectra into periodic and aperiodic components
这篇之后,大量病人 vs HC 的文章都引用它。
三、一个“标准病人–健康人”分析范式(你可以直接写进论文)
Step 1:ROI / source level PSD
- MEG / EEG source space
- 每个 ROI 一个 PSD
Step 2:FOOOF 拟合
得到每个 ROI:
- exponent(斜率)
- offset(整体能量)
- peak parameters(α / β / γ)
Step 3:统计比较
- PD vs HC
- ROI × group 的混合效应模型
- 或 cluster-based permutation
Step 4:解释层次(非常重要)
| 层次 | 指标 |
|---|---|
| 神经动力学背景 | 1/f exponent / offset |
| 节律活动 | α / β peak |
| 网络层 | exponent 的空间分布 |
| 行为 / 临床 | UPDRS / MMSE / 反应时 |
五、一句话总结
大量研究表明,不同神经疾病患者在脑区层面的 1/fᵃ(aperiodic)参数上与健康人存在系统性差异,这些差异往往比传统频段功率更稳定,并可能反映底层的兴奋–抑制平衡和网络动力学状态。