独立成分分析(ICA)降噪应用时存在哪些问题?

article/2025/11/9 5:34:47

关注“心仪脑”查看更多脑科学知识的分

关键词:降噪、ICA

对经常处理脑电信号的朋友来说,降噪是必不可少的环节。眼动、眨眼、肌肉运动、脉搏等噪声会严重污染脑电,严重影响脑电的后续分析。2001年提出的FastICA算法使ICA可以真正稳定地分析数据。独立成分分析(Independent Component Analysis, ICA)发展至今广泛地被用于脑电降噪,利用ICA去除脑电信号中的眼电、心电噪声是很成熟的技术。不过在实际应用ICA算法时会碰到各种问题,比如应用时如何确定独立源个数、如何识别哪些是噪声、反过来如何识别哪些是脑电等等。本文想讨论ICA存在问题,并引出解决部分问题的另一个算法,准确来说是另一类算法,即联合盲源信号分离。本文不会介绍联合盲源信号分离,只是提供一种思想。下面将讨论,上面提出的三个问题。

01如何确定独立源个数。

想必这是使用ICA时最初碰到的问题。因为ICA要求要有多个观测信号才能做盲源分离,对少数电极(一般不超过8个)的脑电信号来说,使用ICA降噪时可能会把脑电成分也同时去除。其实,对于大量电极(一般大于64个)的脑电来说,如何确定独立源个数也是很头疼的问题。如果读者手上有128导通道的脑电数据的话,可以尝试一下将独立成分个数设定为128个。那么很有可能会碰到解混矩阵不收敛的情况,所以说假定独立源个数等于观测信号个数是很鲁莽的。这是为什么呢?其实,脑电信号并没有那么多的独立源,经验上笔者在使用时常常将独立源个数设定为20-30个,而且只去除可以肯定的噪声。我们来深入思考一下,ICA目标是利用信号的不同统计特征,寻找一组混杂信号中原始的或者说独立产生信号的信号发生源。我们可以确定的噪声源,比如眼动的噪声包括眨眼和眼动,也就一个源的两种信号产生模式。再比如心电,只有一个源并且通常在一定时间内维持一个稳定的信号产生模式。这种具备可解释的、可预知的、稳定的独立源是适合做盲源分离的。眼电和心电信号有自己特有的统计特征,这才是可分离、可识别的基础,也为自动识别提供了可能性。当然有些人的心电信号不稳定,也确实不好识别。除此之外,都是不确定的、随机的独立信号源,需要人为经验式的一一确认。如果强行设定很多个独立源,也很有可能ICA会分解出相同的独立成分,或者将本来应该是一个独立成分的信号分解到多个成分上。噪声源个数难以确认,脑电源个数也是难以确认的,为了不让脑电成分分离到噪声成分上,也不建议设定多数的独立源。

02如何识别哪些是噪声。

使用过ICA的读者肯定有这样一个体验,ICA分离的结果每次都不一样,比如眼电可能是正的也可能是负的,或者眼电通道的位置也在改变。这个是ICA算法的不确定性。在计算解混矩阵时通常使用梯度下降来求解,就算每次初始化一样的解混矩阵也可能解出不同的数值,因为梯度下降的方向是不可控的,每次细微的数值变化都会让梯度下降方向发生改变。ICA的不确定性给噪声识别带来很大麻烦,很多噪声根本无法非人为的识别,而且每次计算的结果也不一致难以找到统一的指标。在1)中提到,很多噪声是随机的、短时的,如果脑电信号记录的时间很长,远长于噪声持续时间,一些噪声会淹没在信号当中难以分离出来。对于短时噪声来说,本来就不存在全局意义上的解混矩阵分离出来,识别就更不用说了。

03如何识别哪些是脑电成分。

如果难以识别噪声信号,那么该如何识别脑电信号?在机器视觉、语音处理、自然语言处理等领域,结果的好坏人为就可以判断出来,而在脑电领域这是做不到的。现在可以确定是识别方式是很有限的,比如闭眼时的alpha波段振荡是可以在时域信号中肉眼看出来的,其他大多数脑电也并不知道是什么样。有一个线索可以在一定程度帮助确定什么是脑电。我们知道脑电信号是神经细胞不断地放电产生的,其实在一段时间内的脑电应该是比较稳定的振荡,这是一种假设。在时序分析领域有一个指标叫做自相关(Autocorrelation),是一个信号与自身在不同时间点的互相关。非正式地来说,它就是两次观察之间的相似度对它们之间的时间差的函数,是找出重复模式(如被噪声掩盖的周期信号)的数学工具。自相关系数取值范围在-1到1之间,经验上大于0.9的信号可以被看作周期信号,而一段时间内的脑电就可以看作周期信号(当然长时间来看还是随机信号,只不过神经细胞短时放电可以看作是较规律的)。需注意,一段时间内的心电也是稳定的,同时一段时间内的眼动也是较稳定的(一分钟内的眨眼次数比较固定),这些信号无法使用自相关系数识别出来。

Kanoga, S. , & Mitsukura, Y. . (2017). Review of Artifact Rejection Methods for Electroencephalographic Systems.

有了自相关系数这个数学工具就可以在一定程度去除肌电这种短时的、随机信号,这个算法将在以后的文章中介绍。

全文完结,整理不易,看不完记得收藏,最后希望点赞支持一下!

了解更多,请关注“心仪脑”公众号!


http://chatgpt.dhexx.cn/article/0u1ijiud.shtml

相关文章

因子分析_主成分分析_独立成分分析_斯坦福CS229_学习笔记

Part VIII 因子分析 主成分分析 独立成分分析 在上个部分介绍了EM算法,在此部分因子分析中,我们会再次应用到。 因子分析、主成分分析和独立成分分析都作为对于数据维度进行处理的手段,对于我们理解数据、更好的表示数据都起到或多或少的作用…

Python专栏 | 独立成分分析(ICA)的实例应用:消除伪影信号

关注微信公众号:脑机接口研习社 了解脑机接口最近进展 系列文章目录 Python专栏 | 脑电图和脑磁图(EEG/MEG)的数据分析方法之载入数据 Python专栏 | MNE脑电数据(EEG/MEG)可视化 Python专栏 | MNE数据预处理方法——独立成分分析 持续更新中…… 文章目录 系列文…

【医学信号处理与MATLAB(5)】独立成分分析法-ICA

接着上一节PCA的内容,我们来谈一下ICA为何同样重要。 目录 引入:鸡尾酒会问题独立成分分析法中心极限定理中心极限定理的MATLAB代码实现 测量非高斯程度(Kurtosis峰度)独立成分分析法处理流程使用FASTICA找出独立成分MATLAB代码实现 引入:鸡…

ICA独立成分分析去除EEG伪影

目录 介绍ICA假设方法组件投影实验数据样本移除眨眼和肌肉伪影一些严重污染的脑电数据 本分享为脑机学习者Rose整理发表于公众号:脑机接口社区 .QQ交流群1:903290195(已满,请加群2),群2:941473018 介绍 眼动&#x…

fMRI独立成分分析方法(ICA)工具GIFT

软件下载连接: Software - TReNDS (trendscenter.org)https://trendscenter.org/software/下载完成后,在MATLAB中添加其路径即可。 在MATLAB命令行输入gift。打开窗口页面: 1、点击setup ICA Analysis 新建一个gica文件夹,存储…

《大话脑成像》之:独立成分分析

少年,我看你骨骼精奇,是万中无一的武学奇才,维护世界和平就靠你了,我这有本武林秘籍《九阴真经之万军丛中听声辩位分筋错骨取敌将首级之盲源分离大法》,简称,《独立成分分析》,见与你有缘&#…

独立成分分析(Independent Component Analysis,ICA)模型介绍

独立成分分析ICA模型 1 历史背景2 ICA基本模型3 独立与不相关 \qquad 1 历史背景 \qquad 独立成分分析思想和方法最早源于上世纪八十年代几个法国学者的研究工作,尽管当时他们并没有命名其为ICA;在1986年举行的神经网络计算会议上,法国学者Heraull和Jutt…

【详细版】独立成分分析:算法和应用(一)

独立成分分析:算法和应用 翻译原文自己的理解 原文:Independent component analysis: algorithms and applications 作者:A. Hyvarinen, E. Oja 时间:2000年 注:详细版原文太长,分两篇来写;另外…

Python专栏 | MNE数据预处理方法——独立成分分析

关注微信公众号:脑机接口研习社 了解脑机接口最近进展 系列文章目录 Python专栏 | 脑电图和脑磁图(EEG/MEG)的数据分析方法之载入数据 Python专栏 | MNE脑电数据(EEG/MEG)可视化 文章目录 系列文章目录预处理(Preprocessing) 预处理&#x…

学习笔记 | 独立成分分析(ICA, FastICA)及应用

学习笔记 | 独立成分分析[ICA, FastICA]及应用 1 背景说明 2 算法原理 2.1 ICA简介 2.2 形式化表达 3 算法步骤与代码 4 算法改进:FastICA 5 ICA实例与应用 6 小结 概要: 这篇博客和博客学习笔记|主成分分析[PCA]及其若干应用属于一个系列&#xf…

ICA独立成分分析去除脑电伪影

今天分享的这篇利用独立成分分析ICA去除EEG伪影是翻译自jung大神的一篇文章。 目录 1 介绍 2 方法 3 实验数据样本 1 介绍 眼动,眨眼,肌肉,心脏和线的噪音会严重污染脑电图活动,这在脑电解释和分析中会产生非常严重问题。研究…

独立成分分析(ICA)

1.概念 独立成分分析是从多元(多维)统计数据中寻找潜在因子或成分的一种方法.ICA与其它的方法重要的区别在于,它寻找满足统计独立和非高斯的成分。这里我们简要介绍ICA的基本概念、应用和估计原理。 1.1 多元数据的线性表示 统计数据处理及相关领域中的一…

独立成分分析ICA系列2:概念、应用和估计原理.

1.概念 独立成分分析是从多元(多维)统计数据中寻找潜在因子或成分的一种方法.ICA与其它的方法重要的区别在于,它寻找满足统计独立和非高斯的成分。这里我们简要介绍ICA的基本概念、应用和估计原理。 1.1 多元数据的线性表示 统计数据处理及相关领域中的一…

详解独立成分分析

最近在学习数据降维的一些方法(有关数据降维的其他内容请看这篇文章),虽然独立成分分析不算是严格意义上的降维方法,但是它和PCA有着千丝万缕的联系,所以打算专门写一篇文章来学习ICA的相关知识,看了挺多的关于ICA的博文&#xff…

独立成分分析

在已知语音信号方向的情况下,波束形成能明显改善语音质量,提高信噪比;然而在实际环境中,人可能是走动的,即使坐立不动,由于身体的扭曲使得语音到达阵列的方向也是变化的,此时波束形成效果受到限…

独立成分分析(Independent Component Analysis,ICA)原理及代码实现

过程监控中会用到很多中方法,如主成分分析(PCA)、慢特征分析(SFA)、概率MVA方法或独立成分分析(ICA)等为主流算法。 其中PCA主要多用于降维及特征提取,且只对正太分布(高…

清理vdbench后台进程

当我们打开一个终端,用nohup运行vdbench程序。断开连接后,你发现你写的配置文件有误,想关闭已有的vdbench进程。你重新连接上终端,咦,我的jobs命令怎么没有显示我的nohup任务呢?这是因为你的nohup任务的sh进…

Nas性能测试工具-vdbench

版本: vdbench50406 简介: vdbench是一个 I/O 工作负载生成器,用于验证数据完整性和度量直接附加和网络连接的存储的性能。它是一个免费的工具,容易使用,而且常常用于测试和基准测试。 配置参数: 大文…

Linux中vdbench的安装与使用

vdbench是一个 I/O 工作负载生成器,用于验证数据完整性和度量直接附加和网络连接的存储的性能。它是一个免费的工具,容易使用,而且常常用于测试和基准测试。 可以使用vdbench测试磁盘和文件系统的读写性能。 环境:Ubuntu 16.04 …

vdbench和fio测试磁盘性能的对比总结

vdbench和fio测试磁盘性能的对比总结 一、安装 1、安装vdbench,首先安装java:http://www.oracle.com/technetwork/java/javase/downloads/jdk8-downloads-2133151.html 其次下载vdbench安装包并进行安装:http://pan.baidu.com/s/1b7XooY&am…