阶段五 · 前沿专题 · 模块 8 · 第 28 课 / 共 28 课

试次间相干(ITPC)

ERP 平均的是电位,ITPC 平均的是相位。最后一课补上"相位锁定"这块拼图, 然后把 28 课的地图摊开,聊聊接下来往哪里走。

🕐 45 分钟🎯 难度:高阶✅ 前置:模块 4

🎯 本节学习目标

  • 说清 ITPC 的含义:同一时间-频率点上试次间相位的一致程度
  • 区分 ITPC、ERP 幅值与 ERD/ERS 各自在衡量什么
  • 能用复 Morlet 小波卷积独立实现单频率的 ITPC 曲线
  • 理解试次数偏倚,会用 Rayleigh 检验与平衡试次数的组间比较
  • 带着完整的 28 课知识地图,规划自己的下一步方向

一、ITPC 是什么:试次间的"相位一致度"

想两条公交线路:一条每天 8:00 整点发车(相位锁定),一条忽早忽晚(相位随机)。 ITPC(inter-trial phase clustering,试次间相干 / 试次间相位聚集)量的就是"班车准点率"—— 它不关心车开多快(幅值),只关心是否准点(相位一致)

📖 概念:ITPC(试次间相干)

在同一个时间-频率点上,把每个试次的瞬时相位表示成单位向量后求平均,平均向量的长度就是 ITPC:0 = 相位完全散乱,1 = 所有试次同相位。

注意与模块 6 的 PLV 区分:PLV 衡量通道之间(或两个信号之间)的相位锁定, ITPC 衡量试次之间的相位锁定——一个是"空间上谁和谁同步", 一个是"时间上每次是否同一时刻出发"。计算骨架几乎一样,所以学起来格外快。

二、ITPC、ERP 与 ERD/ERS:三兄弟的分工

指标对什么做平均衡量什么典型问题
ERP 幅值试次电位直接平均锁时锁相成分的净贡献"平均之后有多大"
ITPC试次的单位相位向量相位锁定程度"各试次是否同一时刻同相位出发"
ERD / ERS试次的幅值(功率)能量的增减"能量变多还是变少"

三者的关系值得细品:ERP 幅值主要来自相位锁定成分—— 非锁相的活动在平均中互相抵消。所以一个增大的 ERP 可能来自"更多试次锁相了"(ITPC 升高), 也可能来自"每个锁相试次更强了"(幅值升高),还可能两者兼有。 ITPC 是把 ERP 背后的机制单独拿出来量的更细的显微镜: ITPC 高 + 幅值增 = 真增加;ITPC 不变 + 幅值增 = 非锁相的诱导性活动。 与 ERD/ERS(模块 4)合在一起,幅值与相位两条证据链就齐了。

三、计算直觉:单位向量与圆上的平均

每个试次在每个时间点都有一个相位角。把它画成单位圆上的一个箭头, 然后把所有试次的箭头画在同一个圆上:聚成一束 → ITPC 接近 1; 均匀撒开 → 接近 0。平均向量的长度是 ITPC, 方向是平均相位。

一个关键细节:先把复数单位化再平均。 直接平均复系数会让幅值大的试次主导结果——那量的是功率不是相位。 除以自身的模,每个试次只投"方向"一票。

四、Matlab 实现:复小波卷积完整代码

Matlab
% ---- 复 Morlet 小波卷积:逐试次求相位,再算 ITPC ----
% epoch: 通道 x 时间点 x 试次(模块 2 分好的段)
fs = 500;  f0 = 8;  nCyc = 6;
s  = nCyc / (2*pi*f0);                             % 小波时宽(秒):决定时频权衡
tw = -4*s : 1/fs : 4*s;
wav = exp(2i*pi*f0*tw) .* exp(-tw.^2 / (2*s^2));   % 复小波 = 复指数 x 高斯包络
wav = wav / sqrt(sum(abs(wav).^2));                % 能量归一化:不同频率间可比

[nCh, nT, nTr] = size(epoch);
zSum = zeros(nT, 1);                               % 单位相位向量的累加器
for tr = 1:nTr
    c = conv(squeeze(epoch(1, :, tr)), wav, 'same');  % 'same':输出与信号等长对齐
    zSum = zSum + c ./ max(abs(c), eps);           % 单位化:只留相位,去掉幅值权重
end
zMean = zSum / nTr;
itpc  = abs(zMean);                                % 平均向量长度 ∈ [0,1]
mPh   = angle(zMean);                              % 平均相位(锁定时才有意义)

figure; plot(times, itpc, 'LineWidth', 1.5); ylim([0 1.05]);
xlabel('时间 (ms)'); ylabel('ITPC');
title(sprintf('%g Hz 试次间相干(%d 试次)', f0, nTr));
💡 epoch 的边缘也要留余量

卷积在 epoch 两端不可靠,与模块 4 时频分析同理:分段时窗口前后多留一点(比如前后各多 500ms),画图与统计时只报告感兴趣的时间窗。想画整张时间-频率 ITPC 图,把 f0 换成频率列表、外面再套一层循环即可——骨架完全不变。

五、统计:偏倚、Rayleigh 检验与组间比较

⚠️ ITPC 有天生的"试次数偏倚"

试次数越少,ITPC 被抬得越高——即使相位完全随机,20 个试次的 ITPC 期望值也有约 0.2。比较两组前必须先让试次数相等,否则"组间差异"可能只是偏倚差异。

Matlab
% ---- 统计:先直面偏倚,再谈组间比较 ----
% 偏倚:全随机相位时 ITPC 的期望值约 sqrt(pi / (4n))
fprintf('%d 试次时随机期望 ITPC ≈ %.3f\n', nTr, sqrt(pi/(4*nTr)));
% n=20 时约 0.198 —— 这个"地板"绝不可忽略

% Rayleigh 检验:H0 = 该时刻相位在试次间均匀分布(无锁定)
% 大样本近似(正式分析建议用 Circular Statistics Toolbox 的 circ_rtest)
Z    = nTr * itpc .^ 2;
pRay = exp(-Z);                                    % 近似 p 值

% 组间比较的两个前提:
%   1) 两组试次数必须相同 → 随机下采样到共同最小值,重复多次取平均
%   2) ITPC 有界 [0,1] → 统计前做 Fisher z 变换
itpcZ = atanh(itpc);                               % 拉伸到实数轴,接近正态
% 之后即可做 t 检验或置换检验;多重比较沿用模块 5 的 cluster / FDR 框架

六、报告规范

  • 试次数:每名被试、每个条件的试次数,两组是否平衡(如何平衡);
  • 小波参数:类型(复 Morlet)、周期数(如 6 个周期)、频率列表、时间窗;
  • 统计:Rayleigh / 置换的具体做法、多重比较校正方法;
  • 呈现:ITPC 曲线或时间-频率图建议与 ERP / 功率结果并排展示,让读者看到相位与幅值两条证据链。

七、收官:28 课的脉络与你的下一步

这是本课程的最后一课。把 28 课时摊开成一张地图,你已经走过:

  1. 模块 1 · 脑电基本原理——信号从哪来、经典成分长什么样;
  2. 模块 2 · Matlab 与 EEGLAB 预处理——从一行代码到批量流水线;
  3. 模块 3 · ERP 时域分析——平均、地形图、测量与统计;
  4. 模块 4 · 时频分析——功率谱、时频图、ERD/ERS;
  5. 模块 5 · FieldTrip 与统计——cfg 驱动的全流程与 cluster 置换;
  6. 模块 6 · 功能连接——PLV 家族、容积导体的坑与网络分析;
  7. 模块 7 · 源定位——正逆问题、偶极子与 sLORETA;
  8. 模块 8 · 前沿专题——微状态、CFC、PCA、非线性、ITPC。

这条路线的内在逻辑是:先把信号洗干净(预处理),再从时域、频域、时频三个尺度描述它,然后问"哪里产生(溯源)、谁和谁对话(连接)、整体处于什么状态(微状态)、各尺度如何嵌套(CFC)、系统有多复杂(非线性)、相位如何组织(ITPC)"。每一课都是一个可独立调用的工具,也是通往文献的钥匙。

📌 结课寄语:接下来往哪里走

四条建议:① 选一个方向做深——挑一篇与你课题相关的论文,把它的全部图表复现一遍,比再看十门课都有用;② 用公开数据集练手——课程数据集页里的数据足够支撑从预处理到前沿专题的完整练习;③ 把流水线脚本化——版本管理、参数记录、一键复现,这是从"会分析"到"能发表"的分水岭;④ 回到方法学文献——Cohen 的《Analyzing Neural Time Series Data》、EEGLAB 与 FieldTrip 的官方教程和 workshop,都是这门课的天然续集。28 课的地图已经摊开,接下来的路,按你的研究方向走。

📌 本节小结

  • ITPC = 同一时间-频率点上试次间相位的一致程度:0 散乱,1 完全锁定
  • ERP 幅值主要来自相位锁定成分;ITPC 是拆解 ERP 机制的更细显微镜
  • 计算骨架:逐试次复小波卷积 → 复系数单位化 → 平均向量长度即 ITPC
  • 试次数偏倚不可忽视(随机期望约 sqrt(pi/4n));组间比较必须平衡试次数并做 Fisher z
  • 幅值(ERD/ERS)与相位(ITPC)两条证据链并排报告,是最有说服力的呈现方式

✏️ 课后练习

  1. 对一份 ERP 数据分别计算 6Hz 与 40Hz 的 ITPC 曲线,比较两个频段锁相的时间窗差异。
  2. 人为删减试次数(保留 80% / 50% / 30%),画 ITPC 随试次数的变化,直观体会偏倚。
  3. 把两条件的 ITPC 做 Fisher z 变换后用置换检验比较(提示:模块 5 的置换框架可直接复用)。