Towards Data Science

How Many EEG Channels Do You Actually Need?

7.1内容质量

TL;DR · AI 摘要

How Many EEG Channels Do You Actually Need? Towards Data Science Neuroscience How Many EEG Channels Do You Actually Need...

核心要点

  • 主题聚焦:How Many EEG Channels Do You Actually Need?
  • 来源:Towards Data Science,建议结合原文判断细节。
  • AI 分析暂不可用,本条为保底评分与摘要。
#AI#安全
打开原文

你实际需要多少个EEG通道?| Towards Data Science

神经科学

你实际需要多少个EEG通道?

测试传感器减少、特征排序和对未见被试的泛化能力

Renish Joshi

2026年10月19日

11分钟阅读

在Google上推荐我们

分享

将19通道EEG系统减少到更小的子集以实现跨被试分类。

传感器减少与泛化

机器学习流程通常从一个简单假设开始:如果有更多测量数据,就应该使用更多数据。这一假设在基于传感器的系统中尤其昂贵。每个额外的EEG通道都会增加另一个电极、另一个信号流、另一个设置复杂性来源,以及在推理时必须处理的另一个特征块。

本研究基于我之前工作中使用的方法论,当时研究了在训练数据中完全排除整个被试并仅用于测试时对EEG分类器性能的影响。这揭示了验证方法对性能结果的重要影响。现在方法论已经建立,下一步将采用更实际的方法,因为模型必须能够泛化到完全未知的被试。原始19个EEG通道中有多少是必需的?

该分析测试了在公共心理算术数据集中,所有19个头皮EEG通道是否对跨被试分类都是必要的。原始19通道表示被减少到12、8、4、2和1通道,同时保持相同的预处理流程、频谱特征、模型家族和被试保留评估。核心问题是实际性的:当传感器数量减少时,预测性能保留了多少?

第一个结果很直接。通道数量的大幅减少对未见被试的性能影响相对较小。第二个结果更具信息量。在几乎所有训练折叠中,有几个电极排名接近顶部,但这些看似重要的通道在测试保留被试时并未优于随机选择的通道子集。因此,实验变得不再关注识别所谓的最佳EEG电极排列,而是更关注一个更广泛的机器学习问题:稳定的特征重要性并不一定意味着更好的样本外实用性。

数据集与特征提取

分析使用了来自PhysioNet [1,2]的EEG During Mental Arithmetic Tasks (EEGMAT)数据集。该数据集包含36名被试,每名被试有一个背景记录和一个在连续心理算术任务期间收集的记录,总共72个EDF文件。因此,本次分析的分类目标是记录条件——背景与心理算术——而不是经过验证的普遍认知负荷度量。

保留了19个头皮EEG通道:Fp1、Fp2、F3、F4、F7、F8、T3、T4、C3、C4、T5、T6、P3、P4、O1、O2、Fz、Cz和Pz。耳参考差分通道和ECG通道被排除。信号经过1至40Hz的滤波,并分成非重叠的四秒窗口。

使用Welch的方法[3]估计功率谱密度。对每个通道和窗口,在四个频段计算相对功率:theta(4-8Hz)、alpha(8-13Hz)、beta(13-30Hz)和低伽马(30-40Hz)。因此,每个通道贡献了四个特征,每个窗口产生19×4=76个特征。

最终的特征矩阵包含2,134个窗口:36名参与者中有1,594个背景窗口和540个算术窗口。所有特征值均无NaN或无穷大值。这种紧凑且可解释的表示形式在整个通道缩减实验中被刻意保持不变,以便将性能变化归因于传感器数量和通道选择,而非特征工程的改变。

核心预处理和频谱特征提取通过以下脚本实现:

python

code
bands = {
'theta': (4, 8),
'alpha': (8, 13),
'beta': (13, 30),
'gamma_low': (30, 40)
}
raw.filter(l_freq=1.0, h_freq=40.0)
# 4秒非重叠窗口
window_samples = int(4 * raw.info['sfreq'])
# 威尔奇功率谱密度 -> 各频段相对功率
freqs, psd = welch(
channel_signal,
fs=sfreq,
nperseg=int(2 * sfreq)
)

参与者留出验证

窗口化EEG数据包含大量观测值,但仅涉及少量个体。随机划分可能导致同一受试者的窗口同时出现在训练集和测试集中,这与评估模型在新个体上的性能目标相违背。验证的目标是实现跨参与者泛化。因此所有模型评估均采用基于参与者ID的GroupKFold交叉验证,分为6折。每次迭代中使用6名参与者作为测试数据,且测试参与者的所有窗口均未用于训练、归一化或通道选择。

通过分组交叉验证实现的参与者留出验证采用以下脚本:

code
gkf = GroupKFold(n_splits=6)
for train_idx, test_idx in gkf.split(X, y, groups):
X_train, X_test = X[train_idx], X[test_idx]
y_train, y_test = y[train_idx], y[test_idx]
groups_train = groups[train_idx]

考虑了三类模型:加权类别逻辑回归、带径向基函数(RBF)核的支持向量机(SVM),以及包含300棵树的加权类别随机森林。逻辑回归和SVM均在流程中使用StandardScaler。主要评估指标为平衡准确率,因其能反映不同条件窗口数量的不平衡性。ROC-AUC作为补充排序指标。

防信息泄露的通道排序

通道选择会给验证过程带来额外挑战。若在交叉验证前使用所有参与者进行通道选择,留出的参与者将影响所选特征集,导致无法准确评估对真正未见个体的性能。因此通道选择需针对每个训练折单独进行。对每个参与者和每个频谱特征,均从算术值均值中减去背景值均值。通过将差值的绝对均值除以标准差进行归一化,得到差异度量。每个电极的四个频段得分取平均,生成单个通道得分。得分越高表示条件差异越显著且越稳定。

形式上,对参与者s和特征f,条件差异定义为Δ(s,f) = mean(arithmetic) − mean(background)。特征评分为|mean(Δf)| / SD(Δf)。该过程可防止背景窗口数量较多的参与者因窗口数量优势而主导通道选择。

通道排序仅使用训练参与者数据计算:

code
ranked_channels, channel_scores, _ = (
rank_channels_training_only(
X_train,
y_train,
groups_train,
channel_names,
channel_feature_indices
)
)
selected = ranked_channels[:k]
selected_features = np.concatenate([
channel_feature_indices[ch] for ch in selected
])

不同通道数量下的性能表现

主要实验在相同六组参与者保留数据的条件下,比较了选择19、12、8、4、2和1个通道时的性能。结果显示性能曲线比预期更平缓,尤其是在19通道和8通道之间。

逻辑回归的平衡准确率从使用全部19个通道时的0.648下降到使用8个通道时的0.628,差异为0.020。其AUC值从0.699变化到0.697。RBF-SVM的性能与通道数量之间没有单调关系:使用19个通道时平衡准确率为0.602,使用8个通道时为0.608。随机森林在平衡准确率上更接近随机水平,但其8通道AUC值0.686与19通道AUC值0.687几乎相同。

8个通道仅占原始19通道传感器集的42%,对应电极数量减少了58%。结果并未证明8个通道是普遍最优选择,但表明对于该数据集和频谱表示方式,使用所有可用通道并非保持大部分跨参与者性能的必要条件。

通道选择稳定性

还分析了仅使用训练数据的排名在不同折叠中的表现。尽管每个折叠使用的训练参与者不同,但多个通道在多个折叠中反复出现在排名前列。Pz的平均排名为2.00,在所有六个折叠中均位列前四。P4、Fz、F4、P3和O1在每个折叠中均位列前八。

这种稳定性最初似乎暗示了一个简单解释:或许少量电极携带了大部分有用信息。但这一结论需要控制实验验证。只有当所选通道的排名确实比合理替代方案具有更好的泛化能力时,稳定排名才有价值。

随机通道对照实验

使用逻辑回归增加了随机通道基线。对于每个保留数据的折叠,采样相同大小的随机通道子集,并使用相同的训练和测试参与者进行评估。初始基线每个折叠平均采样50个随机子集。八通道的平均平衡准确率为0.644,四通道为0.635,两通道为0.629,单通道为0.616。这些值并未低于训练排名子集的性能,实际上在每个测试通道数量下都略高。

进一步分析每个折叠采样200个随机子集,并测量排名子集在每个折叠特定的随机分布中的位置。如果排名方法能持续识别出异常强的子集,那么排名解应该明显高于50百分位。但结果并非如此。

图3. 训练排名通道子集未优于随机通道基线。百分位标签显示排名子集在折叠特定随机子集分布中的平均位置。

这一结果改变了对通道稳定性图的解读。Pz、P4、Fz、F4、P3和O1被所选参与者级效应量统计量持续青睐,但这种一致性并未转化为对未见参与者可测量的泛化优势。该排名根据其自身标准是稳定的,但并未被证明对下游分类器具有明显优势。

研究结果解读

code

更关键的观察是,某些电极不相关这一现象并不重要。真正可以得出的结论是,特征重要性与预测效用是两个不同的概念。某个特征的特征重要性可能很高,其单个特征在不同条件下的差异显著且稳定。但与此同时,该特征可能提供的额外信息却非常有限,因为存在许多与该特征高度相关的其他特征。相反,某个特征的边际效应可能相对较小,但由于它与其他所有特征的交互作用,仍可能成为重要的信息来源。

通道曲线呈现平坦形态的可能原因之一是冗余性。关于记录条件的频谱特性信息可能分布在头皮的多个不同位置。因此,可能存在多个通道集合能够产生相同的决策边界。这一解释与随机子集结果吻合良好;然而,当前实验无法确定这一现象背后的生理机制。

排序方法可能与学习算法存在不兼容性。通道排序所使用的评分方式是针对每个特征单独评估参与者条件差异的一致性,然后在每个电极内汇总这些评分。然而,逻辑回归和RBF-SVM算法是以多变量方式优化决策边界的。

## 对基于传感器的机器学习的启示

通道数量结果和通道排序结果支持两种不同的工程结论。首先,要保留大部分观察到的性能并不需要完整的19通道表示。这使得在输入采集存在实际成本时,传感器减少方案值得进行测试。更少的电极意味着更简单的设置、更少的接触故障可能性、更少的数据吞吐量以及更少的特征需要处理。

其次,确定需要保留的具体通道比决定某些通道可以移除要困难得多。当前的排序结果具有可解释性和稳定性,但未能超越随机子集的表现。因此,实际部署研究应直接评估候选电极排列方案,而不是假设特征重要性排序会自动定义最佳的硬件配置。

这一更广泛的启示不仅适用于EEG领域。可穿戴传感器、工业监测系统、多模态流水线以及高维表格模型都会面临同样的问题:对于目标人群而言,哪些输入是真正必要的?答案应来自部署分割下的样本外验证,而不是仅依赖重要性评分。

## 局限性

这是一项聚焦于机器学习的基准测试,而非关于EEG传感器设计的普遍性声明。数据集包含36名参与者和一个背景任务与心算任务的对比。随着人群、任务、记录系统、预处理流程或特征表示发生变化,研究结果可能会发生改变。

频谱表示方式刻意保持简单。每个通道提取了四个相对频段功率特征,因此结论仅适用于该特征家族,而不适用于原始波形深度网络、连接性特征、空间滤波器或源空间表示。不同的表示方法可能会以不同的方式利用空间信息。

六层外部折叠仅能为每种配置提供六个折叠级别的估计值。因此,像0.608与0.602这样微小的差异不应被解读为某种通道数量本质上更优的证据。主要趋势是19到8通道之间性能没有出现显著下降。

随机子集基线方法在每个外部折叠内部采样新的通道组合。这种方法适合测试训练排序子集是否在平均意义上优于任意替代方案,但并不等同于选择一个固定的八电极排列,并将相同硬件配置应用于所有未来参与者。固定排列的评估可以作为有用的后续研究。

最后,效应量排序方法在合并得分前独立评估每个通道。它不会显式优化互补通道组合或惩罚冗余通道。只要每一步选择都限制在训练参与者范围内,嵌套前向选择、正则化嵌入选择或其他多变量方法可能会产生不同结果。

## 可复现性与实现

分析使用Python实现,依赖MNE、NumPy、SciPy、pandas、matplotlib和scikit-learn库。EDF记录通过MNE读取,频谱密度使用scipy.signal.welch估计,所有模型评估均以参与者ID作为分组。核心实现规则是:从数据中学习的预处理选择、特征排序、通道选择、缩放和分类器拟合过程不得使用保留的参与者数据。

完整的通道缩减循环在每个训练折叠内部保持排序和选择:

for fold, (train_idx, test_idx) in enumerate( gkf.split(X, y, groups), start=1 ): ranked_channels, _, _ = rank_channels_training_only( X[train_idx], y[train_idx], groups[train_idx], channel_names, channel_feature_indices ) for k in [19, 12, 8, 4, 2, 1]: selected = ranked_channels[:k] feature_idx = np.concatenate([ channel_feature_indices[ch] for ch in selected ]) model.fit( X[train_idx][:, feature_idx], y[train_idx] ) pred = model.predict( X[test_idx][:, feature_idx] )

code

## 结论

从EEG表示中移除19个传感器中的11个,虽然消除了约58%的传感器,但三个模型类别中的分类性能大多保持稳定。具体而言,逻辑回归的平衡准确率从0.648下降至0.628,RBF-SVM模型从0.602提升至0.608,随机森林模型从0.535下降至0.527。

更有趣的发现出现在通道选择过程之后。虽然存在多个提供稳定训练集排序的通道,但所选子集在新参与者上并未优于随机选择的子集。这一结果区分了两个相关但不同的问题:特征在训练集上是否重要,以及选择该特征是否能提升泛化能力。

因此,对于使用大量传感器的机器学习应用,需要认识到的问题超越了输入简化。传感器、特征和模型评估的选择应针对应用所关注的人群进行测试。排名稳定性可以描述性能,但无法预测性能。

图像来源:本文所有图表和可视化均由作者根据本分析结果制作。

特色图片:由作者创作。

## 参考文献

[1] PhysioNet, “EEG During Mental Arithmetic Tasks,” version 1.0.0. https://physionet.org/content/eegmat/1.0.0/ DOI: 10.13026/C2JQ1P

[2] I. Zyma, S. Tukaev, I. Seleznov, K. Kiyono, A. Popov, M. Chernykh, and O. Shpenkov, “Electroencephalograms during Mental Arithmetic Task Performance,” Data , 4(1), 14 (2019). https://doi.org/10.3390/data4010014

[3] P. D. Welch, “The Use of Fast Fourier Transform for the Estimation of Power Spectra: A Method Based on Time Averaging Over Short, Modified Periodograms,” IEEE Transactions on Audio and Electroacoustics , 15(2), 70-73 (1967). https://doi.org/10.1109/TAU.1967.1161901

[4] S. Varma and R. Simon, “Bias in Error Estimation When Using Cross-Validation for Model Selection,” BMC Bioinformatics , 7, 91 (2006). https://doi.org/10.1186/1471-2105-7-91

数据集:脑电图在心理算术任务期间(EEGMAT),PhysioNet v1.0.0。根据开放数据公共许可署名许可证1.0版(ODC-By 1.0)授权。