ICA算法的研究可分为基于信息论准则的迭代估计方法和基于统计学的代数方法两大类,从原理上来说,它们都是利用了源信号的独立性和非高斯性。基于信息论的方法研究中,各国学者从最大熵、最小互信息、最大似然和负熵最大化等角度提出了一系列估计算法。如FastICA算法, Infomax算法,最大似然估计算法等。基于统计学的方法主要有二阶累积量、四阶累积量等高阶累积量方法。
1.最大似然估计算法
1.1 目标函数部分
假设信号Si有概率密度函数Ps(t),由于我们假定信号源是相互独立的,其实经过白化处理后就变成独立的了;那么在给定时刻的联合分布函数为:
知道了信号源的联合分布Ps(t),再由分解矩阵S=WX,可以得出信号x的联合分布函数。
其中|W|为W的行列式。
由于没有先验知识,只知道原信号之间特征独立,且最多有一个是高斯分布,所以没有办法确定Ps(t)的分布,所以我们选取一个概率密度函数Ps'(t)来近似估计Ps(t)。
概率密度函数由累积分布函数F(x)求导得到。
F(x)要满足两个性质:1单调递增;2值域在[0 1]范围
我们发现sigmoid函数的定义域是负无穷到正无穷,值域为0到1,缓慢递增的性质。基于sigmoid函数良好的性质,我们用sigmoid函数来近似估计F(x),通过求导得到Ps'(t)。