请教G1pi控制算法的原理理

君,已阅读到文档的结尾了呢~~
扫扫二维码,随身浏览文档
手机或平板扫扫即可继续访问
《算法原理》(2011秋)试题库
举报该文档为侵权文档。
举报该文档含有违规或不良信息。
反馈该文档无法正常浏览。
举报该文档为重复文档。
推荐理由:
将文档分享至:
分享完整地址
文档地址:
粘贴到BBS或博客
flash地址:
支持嵌入FLASH地址的网站使用
html代码:
&embed src='/DocinViewer-4.swf' width='100%' height='600' type=application/x-shockwave-flash ALLOWFULLSCREEN='true' ALLOWSCRIPTACCESS='always'&&/embed&
450px*300px480px*400px650px*490px
支持嵌入HTML代码的网站使用
您的内容已经提交成功
您所提交的内容需要审核后才能发布,请您等待!
3秒自动关闭窗口实验2:FastICA算法;一.算法原理:;独立分量分析(ICA)的过程如图所示:在信源s(;图1-ICA的一般过程;ICA算法的研究可分为基于信息论准则的迭代估计方;1.数据的预处理;一般情况下,所获得的数据都具有相关性,所以通常都;若一零均值的随机向量Z??Z1,?,ZM?满足E;们称这个向量为白化向量;且协方差矩阵是单位阵cov?S??I,因此,源信;
实验2:FastICA算法
一.算法原理:
独立分量分析(ICA)的过程如图所示:在信源s(t)中各分量相互独立的假设下,由观察x(t)通过解混系统B把他们分离开来,使输出y(t)逼近s(t)!
图1-ICA的一般过程
ICA算法的研究可分为基于信息论准则的迭代估计方法和基于统计学的代数方法两大类,从原理上来说,它们都是利用了源信号的独立性和非高斯性。基于信息论的方法研究中,各国学者从最大熵、最小互信息、最大似然和负熵最大化等角度提出了一系列估计算法。如FastICA算法, Infomax算法,最大似然估计算法等。基于统计学的方法主要有二阶累积量、四阶累积量等高阶累积量方法。本实验讨论FastICA算法。
数据的预处理
一般情况下,所获得的数据都具有相关性,所以通常都要求对数据进行初步的白化或球化处理,因为白化处理可去除各观测信号之间的相关性,从而简化了后续独立分量的提取过程,而且,通常情况下,数据进行白化处理与不对数据进行白化处理相比,算法的收敛性较好。
若一零均值的随机向量Z??Z1,?,ZM?满足EZZT?I,其中:I为单位矩阵,我T??
们称这个向量为白化向量。白化的本质在于去相关,这同主分量分析的目标是一样的。在ICA中,对于为零均值的独立源信号S?t???S1?t?,...,SN?t??T,有:
且协方差矩阵是单位阵cov?S??I,因此,源信号S?t?E?SiSj??E?Si?E?Sj??0,当i?j,
是白色的。对观测信号X?t?,我们应该寻找一个线性变换,使X?t?投影到新的子空间后变成白化向量,即:
Z?t??W0X?t?
其中,W0为白化矩阵,Z为白化向量。
利用主分量分析,我们通过计算样本向量得到一个变换
W0???1/2UT
其中U和?分别代表协方差矩阵CX的特征向量矩阵和特征值矩阵。可以证明,线性变换
W0满足白化变换的要求。通过正交变换,可以保证UTU?UUT?I。因此,协方差矩阵:
EZZT?E??1/2UTXXTU??1/2???1/2UTEXXTU??1/2???1/2???1/2?I
再将X?t??AS?t?式代入Z?t??W0X?t?,且令W0A?A,有
Z?t??W0AS?t??AS?t?
由于线性变换A连接的是两个白色随机矢量Z?t?和S?t?,可以得出A一定是一个正交??????~~~~
变换。如果把上式中的Z?t?看作新的观测信号,那么可以说,白化使原来的混合矩阵A简化成一个新的正交矩阵A。证明也是简单的:
EZZT?EASSTAT?AESSTAT?AAT?I
(2.4) 其实正交变换相当于对多维矢量所在的坐标系进行一个旋转。
在多维情况下,混合矩阵A是N?N的,白化后新的混合矩阵A由于是正交矩阵,其~???~~?~??~~~~
自由度降为N??N?1?/2,所以说白化使得ICA问题的工作量几乎减少了一半。
白化这种常规的方法作为ICA的预处理可以有效地降低问题的复杂度,而且算法简单,用传统的PCA就可完成。用PCA对观测信号进行白化的预处理使得原来所求的解混合矩阵退化成一个正交阵,减少了ICA的工作量。此外,PCA本身具有降维功能,当观测信号的个数大于源信号个数时,经过白化可以自动将观测信号数目降到与源信号维数相同。
FastICA算法
FastICA算法,又称固定点(Fixed-Point)算法,是由芬兰赫尔辛基大学Hyv?rinen等人提出来的。是一种快速寻优迭代算法,与普通的神经网络算法不同的是这种算法采用了批处理的方式,即在每一步迭代中有大量的样本数据参与运算。但是从分布式并行处理的观点看该算法仍可称之为是一种神经网络算法。FastICA算法有基于峭度、基于似然最大、基于负熵最大等形式,这里,我们介绍基于负熵最大的FastICA算法。它以负熵最大作为一个搜寻
方向,可以实现顺序地提取独立源,充分体现了投影追踪(Projection Pursuit)这种传统线性变换的思想。此外,该算法采用了定点迭代的优化算法,使得收敛更加快速、稳健。
因为FastICA算法以负熵最大作为一个搜寻方向,因此先讨论一下负熵判决准则。由信息论理论可知:在所有等方差的随机变量中,高斯变量的熵最大,因而我们可以利用熵来度量非高斯性,常用熵的修正形式,即负熵。根据中心极限定理,若一随机变量X由许多相互独立的随机变量Si?i?1,2,3,...N?之和组成,只要Si具有有限的均值和方差,则不论其为何种分布,随机变量X较Si更接近高斯分布。换言之,Si较X的非高斯性更强。因此,在分离过程中,可通过对分离结果的非高斯性度量来表示分离结果间的相互独立性,当非高斯性度量达到最大时,则表明已完成对各独立分量的分离。
负熵的定义:
Ng?Y??H?YGaus?s?H?Y?
(2.5) 式中,YGauss是一与Y具有相同方差的高斯随机变量,H???为随机变量的微分熵
H?Y???pY???lgpY???d?
根据信息理论,在具有相同方差的随机变量中,高斯分布的随机变量具有最大的微分熵。当Y具有高斯分布时,Ng?Y??0;Y的非高斯性越强,其微分熵越小,Ng?Y?值越大,所以Ng?Y?可以作为随机变量Y非高斯性的测度。由于根据式(3.6)计算微分熵需要知道Y的概率密度分布函数,这显然不切实际,于是采用如下近似公式:
Ng?Y???E?g?Y???E?g?YGauss ???2
(2.7)其中,E???为均值运算;g???为非线性函数,可取g1?y??tanh(a1y),或
这里,通常我们取a1?1。 1?a1?2,g2?y??yexp?y2/2或g3?y??y3等非线性函数,
快速ICA学习规则是找一个方向以便WXY?WX具有最大的非高斯性。这里,
T非高斯性用式(3.7)给出的负熵Ng(WX)的近似值来度量,WX的方差约束为1,对于T
T??T?T?白化数据而言,这等于约束W的范数为1。FastICA算法的推导如下。首先,WX的负熵
的最大近似值能通过对EGWX??T??进行优化来获得。根据
????Kuhn-Tucker条件,在EWTX
?????22?1的约束下,EGWTX的最优值能在满足下式的点上获得。
EXgWTX??W?0
(2.8) 这里,?是一个恒定值, ??????EW0TXgW0TX,W0是优化后的W值。下面我们利用牛????
顿迭代法解方程(3.8)。用F表示式(3.8)左边的函数,可得F的雅可比矩阵JF?W?如下:
JF?W??EXXTg'WTX??I
(2.9) 为了简化矩阵的求逆,可以近似为(3.9)式的第一项。由于数据被球化,EXXT?I,所以,EXXTg'WTX???????????E?XX??E?g'?WX???E?g'?WX??I。因而雅可比矩阵变成了TTT
对角阵,并且能比较容易地求逆。因而可以得到下面的近似牛顿迭代公式:
?W??W?EXgWTX??W/Eg'WTX??W?W/??????????????
(2.10) 这里,W是W的新值,??EWTXgWTX,规格化能提高解的稳定性。简化后就可
以得到FastICA算法的迭代公式:
????W??EXgWTX?Eg'WTXWW?W/??????????
实践中,FastICA算法中用的期望必须用它们的估计值代替。当然最好的估计是相应的样本平均。理想情况下,所有的有效数据都应该参与计算,但这会降低计算速度。所以通常用一部分样本的平均来估计,样本数目的多少对最后估计的精确度有很大影响。迭代中的样本点应该分别选取,假如收敛不理想的话,可以增加样本的数量。
FastICA算法的基本步骤:
1. 对观测数据X进行中心化,使它的均值为0;
2. 对数据进行白化,X?Z。
3. 选择需要估计的分量的个数m,设迭代次数p?1
4. 选择一个初始权矢量(随机的)Wp。
5. 令Wp?EZgWpZ?Eg'WpZW,非线性函数g的选取见前文。
6. Wp?Wp???p?1
j?1T?????T????WTpWjWj。
7. 令Wp?Wp/p。
8. 假如Wp不收敛的话,返回第5步。
9.令p?p?1,如果p?m,返回第4步。
二.MATLAB源程序及说明:
%下程序为ICA的调用函数,输入为观察的信号,输出为解混后的信号
function Z=ICA(X)
%-----------去均值---------
[M,T] = size(X); %获取输入矩阵的行/列数,行数为观测数据的数目,列数为采样点数
average= mean(X')';
X(i,:)=X(i,:)-average(i)*ones(1,T);
%---------白化/球化------
Cx = cov(X',1);
%计算协方差矩阵Cx
[eigvector,eigvalue] = eig(Cx); %计算Cx的特征值和特征向量
W=eigvalue^(-1/2)*eigvector';
%----------迭代-------
Maxcount=10000;
%最大迭代次数
Critical=0.00001;
%判断是否收敛
%需要估计的分量的个数
W=rand(m);
WP=W(:,n);
%初始权矢量(任意)
Y=WP'*Z;
G=Y.^3;%G为非线性函数,可取y^3等
GG=3*Y.^2;
LastWP=zeros(m,1);
W(:,n)=W(:,n)/norm(W(:,n));
while abs(WP-LastWP)&abs(WP+LastWP)&Critical
count=count+1;
LastWP=WP;
%上次迭代的值
% WP=1/T*Z*((LastWP'*Z).^3)'-3*LastWP;
WP(i)=mean(Z(i,:).*(tanh((LastWP)'*Z)))-(mean(1-(tanh((
三亿文库包含各类专业文献、外语学习资料、高等教育、生活休闲娱乐、中学教育、幼儿教育、小学教育、32ICA快速算法原理和程序_图文等内容。 
 ICA快速算法原理和程序 10页 2财富值 ICA人脸识别算法实例matla... 2页 免费 ICA算法介绍 4页 1财富值 ICA 15页 免费 ICA分析与应用 28页 免费如要投诉违规...  erps-using-independent-component-analysis-ica/ 的每个分量都由 的分量线性表示...ICA快速算法原理和程序 10页 5下载券
ICA分析与应用 28页 免费
第四章...  ICA快速算法原理和程序 10页 2财富值 ica 38页 免费 独立成分分析 11页 免费 ICA 15页 免费如要投诉违规内容,请到百度文库投诉中心;如要提出功能问题或意见建议...  文章主要讨论了独立分 量分析的基本原理、 判决条件和算法, 针对快速定点算法( F ast Independent Component Analy sis alg orithm , Fa st ICA) 迭代次数较多和...  其 算法具有很多神经算法里的优点:并行的、分布的、计算简单、要求 内存小。 在《ICA 快速算法原理和程序》一文中,介绍了 Fast ICA 算 法原理,数据的预处理,...  基本算法及程序(理论六) 20页 1下载券 ICA快速算法原理和程序 10页 1下载券...陕西理工学院毕业设计 因果周期锯齿波自卷积算法原理及程序实现【摘要】研究因果...  ICA快速算法原理和程序 10页 2财富值 脑电信号的研究与应用 35页 免费如要投诉违规内容,请到百度文库投诉中心;如要提出功能问题或意见建议,请点击此处进行反馈。 ...  ICA快速算法原理和程序 10页 2财富值 Matlab音乐合成实验报告 21页 免费如要投诉违规内容,请到百度文库投诉中心;如要提出功能问题或意见建议,请点击此处进行反馈。 ...  基于负熵最大化的 FastICA 算法一.算法原理:独立分量分析(ICA)的过程如下图所示:在信源 s (t ) 中各分量相互独立的假设下,由 观察 x(t ) 通过结婚系统 B...

我要回帖

更多关于 神经网络算法的原理 的文章

 

随机推荐