盲源分离之极大似然ICA算法 

更新时间:2023-11-15 14:31:02 阅读量: 教育文库 文档下载

说明:文章内容仅供预览,部分内容可能不全。下载后的文档,内容与下面显示的完全一致。下载之前请确认下面内容是否您想要的,是否完整无缺。

极大似然独立成分分析算法

一、似然度

极大似然估计可以解释为:采纳那些使观测向量具有最大概率的估计参数

?值。

设px(x)是对观测向量x的概率密度px(x)的估计,源信号的概率密度函数为

ps(s),根据线性变换下两个概率密度函数之间的关系,观测数据x的概率密度函数的估计px(x)与源信号概率密度函数ps(s)满足

?ps(A?1x) px(x)?detA? 对于给定的模型,观测数据x的似然函数是模型参数A的函数,定义为

L(A)?Elog2px(x)??px(x)log2ps(A?1x)dx?log2detA

??? 当模型参数为分离矩阵W?A?1时,对数似然函数为

1TL(W)???log2ps(Wx(t))??log2detW

Tt?1

式中,T为独立同分布观测数据的样本数,最大化此似然函数就可获得关于

参数W的最优估计。 二、Infomax算法

Infomax算法即为信息传输极大化算法。

x1x2Wy1u1g(·1)y2u2g(·2)un独立性判据xn. . .图1 Infomax算法框图

. . .gn(·). . .. . .yn

由图1可知,Infomax算法是一种基于信息论的前向反馈自组织神经网络的

算法,其中x为多路观测信号向量,它是由n个独立源线性混合而成,网络输出

u?Wx是对真实源s的逼近。g(?)?(g1(?),g2(?),,gn(?))T为可逆单调非线性函

数,非线性输出为y?(y1,y2,,yn)T。独立性判据为最大信息传输准则,即通过

对分离矩阵W (神经网络的连接权值矩阵)的调整寻找优化的W,使网络输出y和输入x之间的互信息I(x;y)达到最大。由信息论可知

I(x;y)?H(y)?H(y|x)

式中,H(y)为网络联合输出熵;H(y|x)为输出的条件熵。若系统存在噪声

N,即y?g(u)?N?g(Wx)?N,有H(y|x)?H(N),则上式可表示为

I(x;y)?H(y)?H(N)

于是,y和x之间的互信息I(x;y)最大等价于网络联合输出熵H(y)最大(噪

声N与系统无关)。以网络输出的联合熵H(y)作为目标函数,由信息熵理论可知

H(y)?H(y1)?H(y2)?

?H(yn)?I(y1,y2,,yn)

式中,H(yi)为非线性输出的边缘熵;I(y1,y2,,yn)为非线性输出之间的互

信息,其值总是非负的,只有当非线性输出yi之间彼此相互独立时,

I(y1,y2,,yn)?0。由互信息可知,单调可逆非线性映射对互信息没有影响,所

以I(y)取最小值0时,I(u)也同时达到最小值零,于是各成分间相互统计独立,ICA问题得以解决。此时

H(y)?H(yi)?H(y2)??H(yn)??E?In(py(y))?

式中,py(y)为输出y的概率密度函数,因此最大化H(y)包含了最大化边缘

熵和最小化互信息两个内容。选择熵作为目标函数是因为熵是一个随机变量无序性的度量及信息量大小(不确定信息的多少)的测度,y的各成分统计独立性越高则相应的y熵H(y)越大,所含信息也越多。可以证明,当非线性函数gi(?)为源

的概率密度函数的积分——累积分布函数时,边缘熵H(yi)最大。由于在系统中

y?g(u)?g(Wx),所以

py(y)?

px(x) J其中,J为分离矩阵W的雅克比行列式的绝对值,即

????J?det????????y1?x1?y2?x1?yn?x1?y1?x2?y2?x2?yn?x2?y1??xn???y2?n?y??xn?(detW)?i

?i?1?ui???yn??xn?? 得到

H(y)?E?InJ??E?In(px(x))?

由上式可知,当x已知时,H(y)的大小随E?InJ?而变,即随权值矩阵而变,

将J代入上式并求梯度,可得

n?y?H????W??InJ?InW?In?i (1)

?W?W?W?Wi?1?ui

对于(1)式的第一项,将权值W按行i展开为W??wiAii,Aii为对应元素的

i代数余子式,由于

Aii? IndetW??WidetW所以

?(W?)TInW??(WT)?1 ?WdetW式中,W?表示W的伴随矩阵。

对于(1)式的第二项,可以将对数项展开,而对于某一个wi,展开项中只有一个与其相关,令

?p(u)/?u??p(u1)/?u1?(u)?????,p(u)p(u)1??p(un)/?un?,??

p(un)?T 显然,第二项与g(?)有关,这样得到分离矩阵调整算法公式为

?W?(WT)?1??(u)xT

gi(?)可以选择取值在0,1之间的单调递升函数,如Sigmod函数和tanh函数

等。考虑语音信号一般为超高斯信号,采用固定形式为函数的非线性函数

1y?g(u)?

1?e?u参数调节公式为

?W?(WT)?1?(1?2y)xT (2)

W(n?1)?W(n)???W(n) (3)

式中,n为迭代次数;?为学习率(通常是一个小于1的正数)。Infomax算法就按式(2)和(3)进行分离矩阵W的迭代求解,知道算法收敛。采用自然梯度(或相对梯度)对式(2)进行化简,即在其右边乘以WTW,于是式(2)化为

T??W?[(WT)?1?(1?2y)xT]WTW??I?(1?2y)u??W (4)

由于WTW为正定矩阵,并不影响随机梯度下降算法的收敛,同时式(4)避免

了矩阵的求逆过程,因而计算量明显降低,收敛速度加快。

三、扩展Infomax算法

实际观测信号通常是超高斯源和亚高斯源的混合信号,因此在传统Infomax算法基础上采用双概率模型,并在盲分离算法迭代过程中,根据分离结果的统计特性变化,动态切换概率模型,最终实现概率模型与真实源信号概率分布类型的统一,实现最佳的盲分离效果。

图2所示为扩展Infomax算法的原理框图,其中亚高斯概率密度模型为 缺点:由于Sigmod函数的微分所表示的概率分布函数是超高斯的(峰度为正),因此Infomax算法只适用于超高斯源信号的盲分离。

p1(u)?122?N(?,?)?N(??,?)??2? (5)

1?1(u??)21(u??)2???exp?exp2?2??2?22?2?2???信息极大max(H(y))yx分离矩阵u. . 切换准则超高斯模型亚高斯模型

图2 扩展Infomax算法原理框图

令a??/?2,由式(5)及双曲正切函数的定义,可以得到

?(u)??

?exp(au)?exp(?au)?u?p1(u)/?uu???2?a???tanh(u) ?222p1(u)????exp(au)?exp(?au)??令??1及?2?1,则上式可以简化为

?(u)?u?tanh(u)

于是,分离矩阵的更新规则为

TT??W??I?tanh(u)u?uu??W

图2中的单峰超高斯概率密度模型为

p2(u)?pG(u)sech2(u)

式中,pG(u)?N(0,1)为具有零均值、单位方差的高斯密度函数;

sech(u)?2(eu?e?u)?1

同理,可计算出非线性函数?(u)为

?(u)??

?p(u)/?u?u?tanh(u)

p(u)因此,分离矩阵的更新规则为

TT??W??I?tanh(u)u?uu??W

引入n维对角矩阵K,称为概率密度切换矩阵,对角元素ki为峰度符号,取

值根据归一化峰度的符号变化来确定。根据峰度的定义,有

E(ui4)ki?sgn(kurt(ui))?sgn(?3),1?i?n 22[E(ui)]

对于高斯信号,ki?0;对于超高斯信号,ki?0;对于亚高斯信号,ki?0。

扩展Infomax算法的分离矩阵的更新规则为

TT??W??I?Ktanh(u)u?uu??W

其中,超高斯信号:ki?1;亚高斯信号:ki??1。 总结,扩展Infomax算法过程如下: 输入:白化矩阵X?(x1,x2,输出:独立成分Y?(y1,y2,具体步骤:

① 对信号进行去均值和白化处理;

② 初始化解混矩阵W (使用单位随机矩阵); ③ 计算u(u?Wx)和?W; ④ 调整W;

⑤ 重复③,④两步直到收敛; ⑥ 得到独立成分Y?WX。

,xn); ,yn);

本文来源:https://www.bwwdw.com/article/2civ.html

Top