| name | identity-trap-eeg-foundation-models |
| description | EEG基础模型的身份陷阱诊断审计框架。FMScope协议用于诊断EEG基础模型是否陷入身份陷阱(subject identity shortcut),提供五项诊断指标分离真实生物标志物与身份特征。 |
| version | 1.0.0 |
| author | Jun-You Lin, Ying Choon Wu, Tzyy-Ping Jung |
| arxiv_id | 2606.06647 |
| submission_date | 2026-06-04T00:00:00.000Z |
| categories | ["neuroscience","machine-learning","eeg","foundation-models"] |
| tags | ["identity-trap","eeg-foundation-model","fmscope","shortcut-learning","diagnostic-audit","subject-variance","aperiodic-1f","cross-subject-validation"] |
| activation_keywords | ["身份陷阱","EEG基础模型","shortcut learning","subject identity","frozen representation","FMScope","variance decomposition","aperiodic 1/f","cross-subject marker"] |
| setup_needed | false |
The Identity Trap in EEG Foundation Models: A Diagnostic Audit
概述
本技能提取自 arXiv:2606.06647 (2026-06-04),论文标题 "The Identity Trap in EEG Foundation Models: A Diagnostic Audit"。该论文首次发现并诊断了EEG基础模型的"身份陷阱"问题——模型可能通过学习被试身份特征而非真实生物标志物来达到高准确率。
核心问题
EEG基础模型在临床静息态EEG上报告了高准确率,但在被试不交叉的交叉验证下,高准确率可能是:
- 真实生物标志物:反映真实临床病理特征
- 身份陷阱:学习与标签相关的被试身份特征
论文提出问题:能否在微调前从表示层面诊断身份陷阱?
关键发现
1. 身份陷阱普遍存在
- 冻结被试方差显著:12/12实验对中,冻结被试方差是随机零模型的13-89倍
- 微调放大身份特征:微调后所有12个实验对中被试方差增加10-63个百分点
- 身份主导是线性轴:可通过线性轴消除来改善标签解码
2. Aperiodic 1/f 是身份载体之一
- LaBraM 和 CBraMod:移除 aperiodic 1/f 信号后被试探针下降9-19个百分点
- REVE 不同机制:REVE饱和被试身份但无可测量的aperiodic依赖
- 生理基础:aperiodic 1/f 具有可测量的生理成分
3. 微调效果依赖于标记存在
- 真实标记存在:微调仅在文献已建立的跨被试标记存在的实验中放大标签方差
- 无真实标记:纯身份特征不转化为真实的临床效用
- 增益来源区分:FMScope分离生物标记增益与身份增益
4. 身份轴消除改善性能
- 被试内标签变化时改善:移除身份轴在被试内标签变化的实验中改善+6-12个百分点
- 外部队列改善:在外部队列中改善+4-27个百分点
- 线性轴可消除:身份特征是可移除的线性结构
FMScope 协议
FMScope 是冻结表示协议,包含五项诊断:
1. 方差分解 (Variance Decomposition)
分析表示方差分解:
- 被试方差 vs 标签方差
- 冻结表示方差比
- 量化身份主导程度
方法:
subject_variance = compute_variance_across_subjects(representation)
label_variance = compute_variance_across_labels(representation)
ratio = subject_variance / null_model_variance
诊断标准:
- ratio > 13:显著身份主导
- ratio < 5:低身份主导
2. 被试轴消除 (Subject-Axis Erasure)
消除被试身份轴:
- 识别被试线性轴
- PCA分解提取主成分
- 移除被试相关主成分
方法:
pca = PCA(n_components=k)
components = pca.fit_transform(representation)
subject_components = identify_subject_axis(components, subject_ids)
representation_cleaned = representation - subject_components