信息极大化(Informax)盲分离算法及matlab源码

信息极⼤化(Informax)盲分离算法及matlab源码
参考⽂献:独⽴分量分析FastICA和Informax算法⽐较研究
1988年Linker提出了Infomax(Information Maximization)原则,即信息传输极⼤原则。可描述为:⽹络的输⼊端和输出端的互信息达到最⼤时,等价于输出端各分量间的冗余信息得到去除。
算法的思路是:对每个观测向量 X(t)先通过线性变换求⼀个中间向量Y=WX(t) 。然后通过⾮线性变换 Zi=g(Yi)求得输出向量Z 。根据互信息的性质可知:分量到分量的⾮线性映射 g(.)对互信息不产⽣任何的影响, I(Z)的最⼩化也意味着I(Y) 的最⼩化。于是针对 Z(t)建⽴⼀个⽬标函数,这⾥选择 Z(t)的熵作为⽬标函数,因为熵是⼀个随机量⽆序性的度量,如果Z(t) 的各分量的统计独⽴性越⾼则相应 Z(t)的熵越⼤,所以只需求得使得⽬标函数达到最⼤的W 即求得了ICA的解。此思路是模仿单层前向神经⽹络,X 和 Z分别⽹络的输⼊与输出。
盲分离框图是电磁屏蔽罩
由概率论知识可知,当⾮线性函数g(y)是⼀个单调可逆的函数时候,输出信号的概率密度可以⽤输⼊信号的概率密度来表⽰,公式为(单信号的信号)
当为多信号的时候,输出的概率密度表达式可表⽰为
式中 |J|是雅可⽐变换的绝对值,其表⽰为一个度导航
⽽其中
故对于盲分离系统,雅可⽐变换可以简化
再则,根据上述论述, Infomax算法的⽬标函数为:
则可知
化简后有
⽤随机梯度法求解可得
⽤随机梯度法求解可得
式中:为概率密度函数。
由于上式需要对 W求逆,很⼤程度上影响了算法的收敛速度。故1996年Amari等⼈提出了⾃然梯度法或者说相对梯度法。相对梯度法是在随机梯度算法求得的等式右乘⼀个 ,即:
因此信息最⼤化算法的matlab如下,可以看出和极⼤似然算法推导的盲分离算法⼀致。
荀果function w=informaxICA(Z,number)
%%
% Z为输⼊的混合信号
% number为信号的个数
% /////去均值和预⽩化处理////////////
[m,n]=size(Z);
% ///////////////////
% 、、、、、、、、、、使⽤⾃然梯度分离信源、、、、、、、、、
%% separate电工工具包
I = eye(number);
W = I;
lamda=0.005;
%%%%%%逐个点的运算---------------------
for sep_t = 1:n柔性触觉传感器
y = W*Z(:,sep_t);
f = diag(y*y').*y;
%f=y-tanh(y);%混合⾼斯函数的刻画函数(亚⾼斯)。y+tanh(y)为修正的双曲正割函数平⽅的激活函数,f=-p'/p其中p'表⽰的是求导数;
g=y';
W = W+lamda*(I-f*g)*W; %这是⽤于在⽆噪条件下的梯度分离
end
%%%------------------------------------------------------
铁氟龙押出机
w=W;

本文发布于:2024-09-23 14:24:47,感谢您对本站的认可!

本文链接:https://www.17tex.com/tex/4/251423.html

版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,我们将在24小时内删除。

标签:算法   函数   输出   梯度
留言与评论(共有 0 条评论)
   
验证码:
Copyright ©2019-2024 Comsenz Inc.Powered by © 易纺专利技术学习网 豫ICP备2022007602号 豫公网安备41160202000603 站长QQ:729038198 关于我们 投诉建议