实验 2:FastICA 算法
一.算法原理:
独立分量分析(ICA)的过程如下图所示:在信源
( )s t
中各分量相互独立的假设下,由
观察
( )x t
通过结婚系统
B
把他们分离开来,使输出
( )y t
逼近
( )s t
。
图 1-ICA 的一般过程
ICA 算法的研究可分为基于信息论准则的迭代估计方法和基于统计学的代数方法两大
类,从原理上来说,它们都是利用了源信号的独立性和非高斯性。基于信息论的方法研究中,
各国学者从最大熵、最小互信息、最大似然和负熵最大化等角度提出了一系列估计算法。如
FastICA 算法, Infomax 算法,最大似然估计算法等。基于统计学的方法主要有二阶累积量、
四阶累积量等高阶累积量方法。本实验主要讨论 FastICA 算法。
1. 数据的预处理
一般情况下,所获得的数据都具有相关性,所以通常都要求对数据进行初步的白化或球
化处理,因为白化处理可去除各观测信号之间的相关性,从而简化了后续独立分量的提取过
程,而且,通常情况下,数据进行白化处理与不对数据进行白化处理相比,算法的收敛性较
好。
若一零均值的随机向量
� �
T
M
ZZZ ,,
1
��
满足
� �
IZZE
T
�
,其中:
I
为单位矩阵,我
们称这个向量为白化向量。白化的本质在于去相关,这同主分量分析的目标是一样的。在 ICA
中 , 对 于 为 零 均 值 的 独 立 源 信 号
�� �� ��
� �
T
N
tStStS ,...,
1
�
, 有 :
� �
� �
� �
jiSESESSE
jiji
��� 当,0
,且协方差矩阵是单位阵
� �
IS �cov
,因此,源信号
��
tS
是白色的。对观测信号
��
tX
,我们应该寻找一个线性变换,使
��
tX
投影到新的子空间后变
成白化向量,即:
�� ��
tXWtZ
0
�
(2.1)
评论1