为了对波形进行预处理以便以后执行独立分量分析(ICA)的正确步骤是什么?我知道怎么做,尽管对此没有进一步的解释,但我对原因更感兴趣。

评论

我不确定为什么需要预处理。有什么特殊原因吗?

@Phonon我遇到过调查人员,他们在对其执行ICA之前已对数据进行了扩展。我只是想知道是否有标准方法。

很有意思。我希望看到一个有建设性的答案。

在对EEG信号进行频谱分析的情况下,人们会变白以减少频谱的$ {1} / {f} $形状的主导作用,这常常会在高频下隐藏有趣的事物。补充材料中至少对此有一点讨论。尤其是在ICA之前,这是否是常见的技巧,尚不确定。您的应用程序是否有EEG / MEG / LFP信号?如果我的预感是正确的,也许做ICA的人可以将其充实为一个完整的答案。有趣的问题-我会继续阅读。

@Gigili这也是问题的一部分。哪些是正常步骤?

#1 楼

独立成分分析(ICA)用于将统计独立且最重要的是非高斯†成分的线性混合物分离为其成分。无噪声ICA的标准模型为

$$ \ mathbf {x} = \ mathbf {As} $$

,其中$ \ mathbf {x} $为观测或数据向量$ \ mathbf {s} $是源信号/原始分量(非高斯),$ \ mathbf {A} $是定义组成信号的线性混合的变换向量。通常,$ \ mathbf {A} $和$ \ mathbf {s} $是未知的。

预处理

ICA中有两种主要的预处理策略,即居中和增白/球形。进行预处理的主要原因是:


算法的简化
减少问题的维数
减少要估计的参数数量。
>均值和协方差不易解释的数据集的突出特征。 。 60,系列A,第一部分,第119-133页,1998年:


离群值,簇或其他种类的组,以及曲线或非平坦表面附近的浓度可能是数据分析师感兴趣的重要功能。通常,仅通过样本均值和协方差矩阵的知识无法获得它们。在这种情况下,最好将均值和协方差矩阵中包含的信息分开,并迫使我们检查数据集的某些方面,而不是那些容易理解的性质。定心和球形化是一种简单直观的方法,它消除了均方协方差信息,并有助于突出显示超出线性相关性和椭圆形状的结构,
,因此通常在探索数据的显示或分析之前进行
/>设置


1。居中:

居中是一个非常简单的操作,只是指减去平均值$ \ mathbb {E} \ {\ mathbf {x} \} $。实际上,您使用样本均值并创建一个新向量$ \ mathbf {x} _c = \ mathbf {x}-\ overline {\ mathbf {x}} $,其中$ \ overline {\ mathbf {x}} $是数据的平均值。在几何上,减去均值等效于将坐标中心平移到原点。总是可以将平均值加到结果的最后(这是可能的,因为矩阵乘法是分布式的)。

2。增白:

增白是一种转换数据的转换,以使其具有恒等协方差矩阵,即$ \ mathbb {E} \ {\ mathbf {x} _c \ mathbf {x} _c ^ T \} = \ mathbf {I} $。通常,您使用样本协方差矩阵

$$ \ widehat {\ mathbf {\ Sigma}} =C。\ mathbf {x} _c \ mathbf {x} _c ^ T $$

其中$ C $只是我懒惰的占位符,用于适当的归一化因子(取决于$ \ mathbf {x} $的尺寸)。创建了一个新的变白矢量,为

$$ \ mathbf {x} _w = \ widehat {\ mathbf {\ Sigma}} ^ {-1/2} \ mathbf {x} _c $$

,将具有$ \ mathbf {I} $的协方差。从几何学上讲,增白是缩放转换。这是Mathematica中的一个小示例:

s = RandomReal[{-1, 1}, {2000, 2}];
A = {{2, 3}, {4, 2}};
x = s.A;
whiteningMatrix = Inverse@CholeskyDecomposition[Transpose@x.x/Length@x];
y = x.whiteningMatrix;
FullGraphics@GraphicsRow[
  ListPlot[#, AspectRatio -> 1, Frame -> True] & /@ {s, x, y}]




第一个图是两个均匀分布的随机向量的联合密度,或者组件$ \ mathbf {s} $。第二个显示乘以转换向量$ \ mathbf {A} $的效果。正方形偏斜并缩放为菱形。通过与增白矩阵相乘,关节密度返回到与原始密度略微旋转的正方形。 {x} _w = \ mathbf {A} _w \ mathbf {s} _w $,$ \ mathbf {A} _w $是一个正交矩阵。这很容易显示:

$$
\ begin {align}
\ mathbb {E} \ {\ mathbf {x} _w \ mathbf {x} _w ^ T \}&= \ mathbb {E} \ {\ mathbf {A} _w \ mathbf {s} _w(\ mathbf {A} _w \ mathbf {s} _w)^ T \} \\
&= \ mathbf {A} _w \ mathbb {E} \ {\ mathbf {s} _w \ mathbf {s} _w ^ T \} \ mathbf {A} _w ^ T \\
&= \ mathbf {A} _w \ mathbf {A} _w ^ T = \ mathbf {I}
\ end {align}
$$

由于$ \ mathbf {s} _i $的统计独立性,因此要进行最后一步,因此正交性条件意味着仅需要估计的参数大约一半。 (注意:尽管在这种情况下是对的,但在我的示例中,$ \ mathbf {A} $不必以正方形开头)。零,则可以安全地丢弃它们,因为它们只是噪声,只会由于“过度学习”而妨碍估计。

3。其他预处理

某些特定应用中可能涉及其他预处理步骤,这些步骤不可能在答案中涵盖。例如,我看过一些使用时间序列日志的文章,以及其他一些过滤时间序列的文章。尽管它可能适合于他们的特定应用程序/条件,但结果并不适用于所有领域。

†我相信,最多可以使用ICA的情况是可以使用ICA,尽管我现在找不到关于它的参考。


为什么叫“ sphering”?

这可能是众所周知的,但有趣的是,在高斯分量来自于由于变白,n维维超椭球体将变为n维维球体。这是一个示例(使用与上面相同的代码,但将{-1,1}替换为NormalDistribution[]



第一个是两个不相关的高斯的联合密度,第二个是在变换和第三是在美白之后。实际上,仅第2步和第3步可见。

评论


$ \ begingroup $
哇,要花些时间我要花点时间,但是谢谢,轻描淡写!
$ \ endgroup $
– jonsca
11年8月23日在7:52

$ \ begingroup $
对不起,我以为我已经接受了。
$ \ endgroup $
– jonsca
11年8月24日在8:42