独立分量分析算法

2024-07-02

独立分量分析算法(精选7篇)

独立分量分析算法 篇1

摘要:文本特征提取的正确高效直接影响聚类结果准确率,针对文本特征提取中文本数据的高维、高噪声问题,提出采用独立分量分析作为文本特征词的提取技术。采用TF-IDF方法形成文本特征的数字描述矩阵--向量空间模型,使用独立分量分析算法实现对矩阵的关键特征词提取,使用非负矩阵分解及其扩展算法对矩阵进行聚类分析,实现聚类。

关键词:文本聚类,向量空间模型,独立分量分析,非负矩阵分解,特征提取

0 引言

在文本聚类的过程中,通常涉及到两个关键问题,一是文本的预处理,二是选择合适的文本聚类算法模型。对文本预处理主要包括分词、去停用词处理和特征词提取等几个过程。北京大学计算机语言研究所在中文分词领域做了很多工作,提出了中文分词的有效方法[1];词频/倒文档频率方法是筛选特征词的有效方法,康乃尔大学的萨尔顿(Salton)多次写文章、写书讨论TF/IDF在信息检索中的用途。

文本聚类算法目前常用的则有分层法、分割法、密度法、网格法、基于模型的方法、基于模糊的方法等等。但这些算法多数都对文本特征矩阵的维度有较为苛刻的要求,一旦维度增大,则聚类效果会急剧下降。由于原始文本数据的复杂性,经处理形成的文本特征矩阵维度仍然相当大,出现了“维度灾难”问题[2]。这种不平衡问题导致许多聚类算法不能直接在文本特征数据上有效应用。在文本特征矩阵中还存在着冗余、词语多义和噪声等问题。为了克服这些缺点,本文提出将独立分量分析(ICA)用于特征词提取,目的是,在聚类之前,减少冗余数据和噪声数据的影响,以得到一个更为理想的聚类结果。

文本聚类过程如下:先通过数据清洗、分词过滤等处理过程构建出向量空间矩阵(Vectro-space Model,VSM);然后,采用独立分量分析(Independent Component Analysis,ICA)算法选出m个特征词构成的矩阵Y;进而,应用非负矩阵分解(NMF)、稀疏非负矩阵分解(SNMF)等算法对选出的数据集聚类,得出聚类结果。处理流程如图1所示。

1 文本的向量空间模型

本文采用向量空间模型(VSM)[3]来表示文本数据。其基本思想是:假设词与词之间是不相关的,以向量来表示文本,从而简化了文本中关键词之间的复杂关系,使得模型具备了可计算性。

在VSM中,将文档看成是相互独立的词条组(T1,T2,T3,…,Tn)构成,对于每一个词条Ti,根据其在文档中的重要程度赋予一定权值Wi,并将(T1,T2,T3,…,Tn)看成是一个n维坐标系中的坐标轴,(W1,W2,W3,…,Wn)为对应的坐标值。这样由(T1,T2,T3,…,Tn)分解得到的正交词条矢量组就构成了一个文档向量空间[4]。常用[0,1]区间内的实数来表示某个特征词在文档中的权重,权重主要根据词频tf、倒文档频率idf、规格化因子来计算。

目前应用效果比较好的权值函数是改进的TF-IDF公式,如式(1)所示。

t f(T):词T在整个文本集中的总频数,log(N/df(T)):为词T的倒文档率,

df(T):包含词T的文本数,N:整个文本集中的文本数。

采用该算法计算各文本筛选出来的每个特征词的权重Wi,构成向量空间模型矩阵X,如式(2)所示。设T={t1,…,tp}表示某文本中所有特征词组成的一个词条组,其中ti(1≤i≤p)表示一个特征词,表示全部特征词的个数。设S={s1,…,sn}表示由文本所构成的样本集合,其中表示样本数量,每一个样本si(1≤i≤n)表示在某文本中所有特征词的权重向量,即si(1≤i≤n)是一个p维空间向量,且。

2 文本特征提取过程

上述文本特征矩阵X仍然具有较高的维度,且数据具有典型的非高斯性,不仅要抽取数据的线性(二阶)统计信息,而且要注重数据的非线性(高阶)统计信息。

2.1 独立分量分析算法

独立分量分析(ICA)是主分量分析(PCA)的一种扩展[5],它已被用于声音信号的分离以及生物信息的处理等领域,并取得了很好的效果。PCA作为一种有用的无监督统计方法用来找出一致特征样本,其特点是只对二阶统计信息敏感。而在对文本特征数据作分析时,很多重要的信息是含在样本的高阶关系之中。独立分量分析(ICA)可以克服这一缺陷,其主要任务是使得变换后的信号尽可能地相互独立,这意味着数据的高阶相关性可以由ICA来去除。实验中,我们分析了一系列的独立分量(ICs)的数目和所选特征词的数量,旨在找出可以得到最大聚类正确率的最小特征词数。

设有n×p的矩阵X,其行表示变量(对于文本特征数据来说表示文本样本),其列表示个体(对于文本特征数据来说表示特征词),则矩阵的ICA模型可以记为式(3):

式(3)中,S是源矩阵,A是n×n维的混合矩阵。S的各列sk是统计独立的,称作矩阵S的独立分量ICs。X的各列是ICs的线性混合。我们将混合矩阵作如式(4)的转换:

ICA算法就是寻找合适的权矩阵W,从特征词矩阵X中提取独立的特征样本U(S的拷贝),以使U的各列尽可能地统计独立。

2.2 Fast-ICA算法

目前,已经提出了很多的独立分量分析算法[6]。由于Fast-ICA所具有的快速计算性及处理海量数据的能力,我们用该算法对特征词矩阵数据进行分析处理,在Fast-ICA中[7],各分量间的互信息是用近似计算公式(5)来表示的:

其中,G是任意的非二次函数,ζ是均值为0、方差为1的高斯分布的变量。ICA在分离变量的幅值和顺序上存在一定的不确定性,为消除不确定性,通常假定分离变量的方差为1。

Fast-ICA算法处理过程如图2所示,样本的快照ri看作是一系列相互统计独立的特征样本si的线性叠加。ICA算法就是要寻找合适的权矩阵W,从文本特征数据X中提取独立的特征样本U。在这个模型中,每一个快照ri看作一个随机变量,其中的每个文本各特征词权重组成的向量看作是随机变量的一个取值。

用ICA算法来估算矩阵W,使得矩阵U的各行统计独立,然后就可以用这些独立的特征样本(U的各行)来表示各个样本的快照ri。如式(6)所示,一个文本样本ri可以用独立的特征样本U和与之对应的坐标ai来表示。

这些坐标实际上就是混合矩阵A=W-1的各个行。

3 实验分析

为验证上述方法的有效性,于2011年11月从新浪网(www.sina.com.cn)上采集了中文文本数据集。数据集有400例样本。这400例样本分别属于4类:财经、社会、科技、体育。实验中,采用了评估文本分类经常使用的指标--召回率进行结果正确率评价。

在运行关键特征词选择程序时,独立分量的个数z值从1至10分别取10个不同的值,对于每个值,试验了50个不同的m值(1≤m≤p)。为了论证我们所用方法的有效性,对每个所选出的数据集,都分别应用NMF、SNMF、NMFSC进行聚类。使用召回率来表述聚类正确率[8],召回率计算公式如式(7)。

其中若样本ji的聚类正确,则I(ji)值为1,否则为0,n为样本数。

表1给出了对应不同关键特征词数NMF,SNMF和NMFSC算法对所选出的数据集聚类时的聚类正确率,其中,对于ICA,独立分量(ICs)数值z=7,对于NMF,SNMF和NMFSC,k=4。由以上结果可以看出,对于此数据集,ICA算法提取特征词可以有效改善聚类效果。

4 总结

本文提出了将独立分量分析方法用于文本特征词的提取。文中通过选择用ICA抽取的独立分量的个数和关键特征词的个数,找到了利用不同聚类算法得到最大聚类正确率的最少关键特征词数。至于关键特征词选择对于聚类稳定性的影响,并没有发现明显的规则。今后,应在更多的数据集上针对ICA算法与其他聚类算法的协作问题以及聚类稳定性等问题作更深入的研究。

参考文献

[1]北京大学计算语言学研究所.[EB/OL].http://icl.pku.edu.cn,2011.9.20

[2]West M.Bayesian factor regression models in the'large p,small n'paradigm[J].Bayesian Statistics,2003(7):723-732.

[3]王秀娟.文本检索中若干问题的研究[D].北京:北京邮电大学,2006.

[4]沈斌.基于分词的中文文本相似度计算研究[D].天津:天津财经大学,2006.

[5]Shahnaz F,Berry M,Pauca P,et al.Document clustering using nonnegative matrix factorization[J].Journal on Information Processing&Management,2006,42(2):373-386.

[6]HyvarinenA,Oja E.Independent component analysis:algorithm and applications[J].IEEE Transactions on Neural Networks,2000(13):411-430.

[7]HyvarinenA.Fast and robust fixed-point algorithms for independent component analysis[J].IEEE Transactions on Neural Networks,1999(10):626-634.

[8]刘务华,罗铁坚,王文杰.文本聚类技术的有效性验证[J].计算机工程.2007,33(l):209-211.

独立分量分析算法 篇2

21世纪是信息时代, 信号处理一直在科学技术的发展中扮演着十分重要的角色。盲信号处理是目前信号处理中最热门的新兴学科之一, 盲源分离是盲信号处理的重要分支。所谓盲源分离就是在对信源和通道先验知识甚少的情况下, 仅由观察信号推断信源和通道的特性, 最终恢复或提取独立的各个源信号的方法[1]。盲信号分离被广泛应用于通信、生物医学、图像处理、语音识别等众多领域, 有着非常广阔的应用前景, 己经成为信号处理学界和神经网络学界共同感兴趣的热点研究课题之一。

1 独立分量分析的基本概念

独立分量分析就是从多维观测信号中发现隐含在其中的独立分量或因素, 是利用高阶统计工具和信息论的知识来分析信号的统计独立性, 实现信号的盲源分离。独立分量分析算法在很多文献中以不同的名字被提及, 独立分量分析理论和盲源分离很接近, 通过独立分量分析问题的解就可以在盲源分离中恢复出源信号, 反之也可以用盲源分离的算法来找到独立分量分析问题的解。但是, 独立分量分析理论具有更强的通用性。独立分量分析通过最大化一个基于高阶累计量的分离准则, 有的文献称之为对照函数, 使得互累积量为零。在此情况下寻找一个新的矢量坐标系, 使得混合信号在该坐标系下的投影是相互独立的, 并且与原始信号相对应, 从而实现信号的分离[2]。

2 ICA的主要准则

2.1 信息传输最大化准则和最大化负熵

信息量的大小代表了信号中不确定信息的多少, 而度量信息量是通过熵来测量。冗余量描述了数据的内在顺序和结构, 同样冗余量也可以测量数据的信息量大小。从互信息的定义可知, 由I (x|y) 可测量系统输出和输入的关系, 当两者的冗余量信息最少时, I (x|y) 达到最小值。A.T.Bell和T.J.Sejnowski提出最小化I (x|y) 来减少系统输出y和输入x之间的冗余量[3]。

P.Commonls证明最大化系统的输出负熵也能导致信号的分离[4]。负熵是从熵概念中引申出来的, 输出y的负熵定义为:

J (y) =Η (yf) -Η (y) (1)

式中:yf是与y具有相同协方差矩阵的高斯随机变量。负熵的特点是对y的线性变换保持不变, 而且总是非负的, 只有当y是高斯分布时才为零。基于这些特点, 负熵是一个很好的目标函数。由此可以推出负熵和互信息的关系为:

Ι (y|[y1, y2, , ym]) =J (y) -i=1mJ (yi) +12lnπCiidetC (2)

式中:Cy的协方差矩阵;Cii是矩阵的对角元素。当y的各个元素不相关时, 式 (2) 右边第三项为零, 式 (2) 变为:

Ι (y|[y1, y2, , ym]) =J (y) -i=1mJ (yi) (3)

根据负熵的特点, 输出y和元素的最小互信息等价于最大化元素的负熵的和。因此基于负熵的目标函数为:

Θj=j=1mJ (yj) (4)

最大化式 (4) 就能实现盲源分离。

2.2 最小互信息准则

盲源分离的目的是使输出信号尽可能的独立, 而KL散度或互信息则是测量统计独立的最好信息量。观测数据经过分离矩阵W后, 如果输出y的各个元素相互独立时, 则输出y与各个分量的互信息为零。

y的互信息为准则的目标函数定义为:

Ψml=ΚL (p (y) , i=1mp (yi) ) =p (y) lnp (y) p (y1) p (y2) p (ym) dy (5)

最小化目标函数Ψml就可减少y中各个元素的相互依赖性。当Ψml=0时, y的各个元素是相互独立的。由互信息和熵的关系, 式 (5) 可写为:

Ψml=H (y1) +H (y2) +…+H (ym) -H (y) (6)

2.3 极大似然准则计算法

盲源分离中惟一知道的信息就是观测数据, 因此极大似然估计就是比较自然的选择。对于给定的模型, 观测数据的似然函数是模型参数的函数。若假定源信号的概率密度函数为p (s) , 当混合系统定义为x (k) =As (k) , y (k) =Wx (k) 时, 观测信号x的概率密度函数p (x) 与源信号的概率密度函数p (s) 之间满足:

p (x) =p (W-1x) |detW| (7)

则观测数据的对数似然函数定义为:

Ψml=E[lnp (x) ]=lnp (x) p (x) dx= (lnp (W-1x) -ln|detW|) p (x) dx=p (x) lnp (W-1x) dx-ln|detW| (8)

当仅获得数据的T个独立同分布的样本时, 对数似然函数近似为:

Ψml=1Τi=1Τ (lnp (Wx (t) ) +ln|detW|) (9)

最大化对数似然函数式, 可以获得关于W的最佳估计。

3 衡量盲源分离算法性能的方法

(1) 利用信噪比来衡量盲源分离算法的性能, 为:

SΝR (y) =10lg[E[|s|2]E[|y-s|2]] (10)

信噪比越高, 说明分离性能越好。

(2) 盲源分离算法的性能也可通过矩阵P=WA来衡量, 如果P的每一行每一列有一个元素远大于其他元素, 说明算法能很好地恢复源信号。令P=[p1, p2], 由于p1和p2都是非单位矩阵, 这意味着分离出的源信号的幅度和列顺序发生了变化, 因此说明了盲源分离存在着信号幅度和恢复次序的不确定性。

4 常见的ICA算法

ICA算法的基本原理就是依据等独立性度量的准则来建立目标函数, 使分离出的独立分量最大程度地逼近各个源信号。不同ICA算法的研究主要体现在独立性度量准则的选取和对目标函数的优化准则上的不同。

ICA算法的目标函数很多, 主要有最大化非高斯性、最小化互信息、Infomax和极大似然估计。虽然建立不同目标函数的基础和出发点不尽相同, 但是许多目标函数都有相同的形式, 在一定条件下它们是等价的[5]。

ICA算法的实现大致分为两条:批处理 (Batch Processing) 和自适应处理 (Adaptive Processing) 。批处理的含义是指依据一批已经取得的数据来进行统计学处理, 尽管这些数据可以反复使用, 但是却需要大量的存储空间来存储, 而且统计处理无法快速适应变化的数据, 属于离线处理, 如FastICA算法;自适应处理的含义是指随着数据的不断输入作递归式迭代处理, 其无需大量的数据存储空间, 输入一个数据就处理一个, 所以数据的整个处理过程也被称为实时处理或在线处理。前者适宜于非实时数据处理的场合, 但收敛速度较快;后者适合于实时信号处理的场合, 但收敛速度较慢, 并且算法的收敛性能与步长的选择有关。

4.1 Infomax算法 (最大熵法)

Infomax[6]算法是基于信息最大化判据导出的一种新的优化算法。这个算法是由Bell和Sejnowski于1995年提出的一种单层前馈神经网络算法。Informax算法的处理流程如图1所示。

在图1中, xm路观测信号向量, 它是由n个独立源信号线性混合而成。网络输出为u=Wx, 是对真实源信号的逼近, g (·) 为可逆单调非线性函数, 非线性输出为yi

Infomax算法的处理过程的特点是:经W解混后, 对输出y的每一个分量yi分别用一个可逆的单调非线性函数g (yi) 加以处理, 在给定合适的g (yi) 后, 通过调节W使g (y) 的综合信息熵H (g (y) ) 最大。使用随机梯度下降优化算法, 用瞬时或随机梯度代替真实梯度, 即得到随机梯度算法为:

ΔW=μ[W-Τ-g (y) xΤ] (11)

式中:μ为步长;g (·) 为给定的非线性函数, g (y) 是将向量y的每个成分执行给定的标量函数g (·) 。

对于一个单层线性前馈神经网络, 简单的最大化将使输出熵H (y) 发散至无穷。Bell提出在线性神经网络的输出端引入非线性环节:

y=g (u) =g (Wx) (12)

由于非线性函数是单调可逆函数, 因此由yi相互独立必然能得出ui相互独立, 从而实现独立源的盲信号分离。这样将线性网络的信息极大传输问题转变为非线性网络的信息传输极大问题, 采用统计梯度算法对神经网络连接权值进行调整。即算法中只对分离矩阵W进行调整。在低噪声的情况下, 可较好地实现多路线性混合信号的盲源分离。

该算法对所有的超高斯源都采用了相同的非线性函数, 也得到了非常理想的盲源分离效果。这说明了非线性函数选择条件不一定非要严格满足。只要非线性函数逼近源信号的累积分布函数就可以得到较好的分离效果。通常, 采用统一而固定的非线性sigmoid函数, 即:

yi=gi (u) =1/ (1+e- (au+b) ) (13)

式中:参数a的大小决定着sigmoid函数上升沿和导函数的陡峭度;b为波形位置偏移参数。

Infomax算法可有效地分离多个超高斯分布的源信号, 结合Amari等提出的自然梯度和极大似然估计法, 对其进行了推广, 使该算法能够分离超高斯和亚高斯分布的混合信号。主要缺点是:收敛速度慢, 同时由于涉及分离矩阵W的求逆, 一旦W在更新过程中条件数变差, 算法就可能发散。

4.2 互信息极小法

互信息是盲源分离算法中的一个规范的代价函数, 因为它表达了独立源的关键性质。不同的ICA算法中包含不同的代价函数, 但是一般都是以输出信号的互信息最小为最终目的。

对于盲分离问题的估计信号y, 它的互信息量为:

Ι (y) =p (y) logp (y) i=1np (yi) dy=p (y) logp (y) dy-i=1np (yi) logp (yi) dyi (14)

可将式 (14) 中的互信息量用微分熵来表示:

Ι (y, W) =i=1nΗ (yi, W) -Η (y, W) (15)

y=Wx可以得到输入信号与输出信号熵之间的关系为:

Η (y, W) =Η (x) +log|W| (16)

式中:H (x) , H (y) 分别是输入信号熵和输出信号熵。

将式 (16) 代入式 (15) 可得:

Ι (yW) =-Η (x) -log|W|+i=1nΗ (yi) (17)

当通过选择W, 使互信息量I (y) 极小, 则得出最小互信息量判据。

该方法的目标函数是使I (y, W) 极小, 因此调节规律是:

ΔW=-μΙ (y, W) W (18)

最后得系数调节公式为:

W (k+1) =W (k) +μk[W-T (k) -φ (y (k) ) xT (k) ] (19)

4.3 固定点算法 (FastICA)

固定点算法是对一组给定数据的递推计算, 属于批处理。首先对观测信号进行预处理, 包括中心化和白化。中心化即观测信号减去它的均值, 变成零均值矢量。白化是通过PCA网络将观测信号线性变换为具有单位方差且各分量互不相关的z。预处理是简化计算。下面对x做进一步处理, 即依据负熵判据来寻找矩阵以实现独立分量的分离。依据牛顿迭代定理, FastICA算法的调整公式为:

W+=E{zg (WΤz) }-E{g (WΤz) }W (20) W*=W+/W+ (21)

式中:W+为某一次牛顿迭代的结果;W*是W+归一化后的更新值。上述过程只估计了一个独立分量, 若要估计n个独立分量, 在每次提取一个分量之后, 要从观测信号中减去该独立分量, 如此重复, 直到所有分量都被提取出来为止。去掉已提取的独立分量的方法为 (设已估计了p个分量) :

Wp+1=Wp+1-j=1pWp+1ΤWj (22) Wp+1=Wp+1/Wp+1ΤWp+1 (23)

与基于梯度的算法相比, 固定点算法不需要选择学习步长或其它参数, 使得这种算法更易使用, 更可靠。由于这个算法一次只提取一个独立分量, 而不是所有的分量, 所以, 如果只要提取某个分量, 又有足够的先验知识, 就可以很快地把它提取出来, 从而减小计算量。此外, 不管是具有正峭度还是负峭度的分量, 采用该算法都能提取出来。

5 结 语

盲源分离技术是近二十年发展起来的一门新型科学, 在各国科学家和研究人员的努力下获得了长足的发展, 但是ICA的研究方兴未艾, 它毕竟是一个涉及面广并且仍处在发展前沿的课题, 在理论上还远没有成熟, 许多问题都有待进一步研究和解决。

(1) 非平稳混合信号的盲源分离算法。

许多情况下源信号可能是非平稳的, 如何利用信号的非平稳特性进行盲源分离, 是摆在广大研究人员面前的一个现实问题。

(2) 带噪混合信号的盲分离问题。

盲信号处理中的未知条件太多, 混合信号含有的噪声情况下的盲源分离问题解决起来是相当困难的。尽管目前已有部分算法对存在噪声的情况表现出了良好的性能, 但由于噪声种类繁多, 因此处理起来仍很棘手。现有的大多数盲源分离或盲解卷积算法都假设不含噪声或者把噪声看作是一个独立的信源信号来处理。

(3) 卷积混合信号的盲源分离算法。

在实际中, 系统接收到的混合输入信号是源信号经过不同的传播途径到达接收器的信号。在这个过程中, 不可避免地存在信号的时延和反射。针对这种情况的盲源分离算法还很不成熟。

(4) ICA的推广应用。

在算法应用方面, ICA可以取得进一步的发展, 如可以在语音识别、图像处理、特征提取、医学信号处理方面作进一步的研究。目前的关键问题是如何将理论算法转化为实际应用, 以及如何建立更加符合实际情况的模型等。

(5) 算法的收敛性。

算法全局收敛性的研究, 可以考虑将遗传算法、混沌算法等具有全局收敛性的优化算法和ICA结合起来, 以提高算法的全局收敛性。

参考文献

[1]杨福生, 洪波.独立分量分析的原理与应用[M].北京:清华大学出版社, 2006.

[2]HYVARINEN A.Survey on independent component analy-sis[J].Neural Computing Surveys, 1999, 2 (4) :94-128.

[3]BELL A J, SEJNOWSKI T J.An information-maximizationapproach to blind separation and blind deconvolution[J].Neutral Compution, 1995, 7 (7) :1129-1159.

[4]COMMON P.Independent component analysis[J].SignalProcessing, 1994, 36 (3) :287-314.

[5]LEE T W, GIROLAMI M, BELL A J, et al.A UnifyingInformation-theoretic framework for independent componentanalysis[J].Computers&Mathematics with Applications, 2003, 1 (11) :1-22.

[6]COMMON P.Independent component analysis:a new con-cept[J].Signal Processing, 1994, 36 (3) :191-235.

[7]杨行峻, 郑君里.人工神经网络与盲信号处理[M].北京:清华大学出版社, 2003.

[8]GARDOSO J F.Entropic contrast for source separation:geometry and stability unsupervised adaptive filtering, volume 1:blind source separation[M].[S.l.]:John Wiley&Sons, 2000:129-189.

[9]AMARI S, CARDOSO J F.Blind source separation-semi-parametric statical approach[J].IEEE Trans.on SignalProcessing, 1997, 45 (11) :2692-2700.

[10]HYVARINEN A, KARHUNEN J, OJA E.Inde pendentcomponent analysis[M].Canada:[s.n.], 2001.

[11]虞晓, 胡光锐.基于统计估计的盲信号分离算法[J].上海交通大学学报, 1999, 33 (5) :566-569.

独立分量分析算法 篇3

目前, PCMA技术的研究重点是非盲分离算法, 它要求通信双方准确估计自身上行信号的各项参数, 以便从接收信号中抑制自身信号, 得到对方发送的有用信号。从信号分离的角度来看PCMA信号的获取, 也就是从单个传感器接收到的PCMA信号中分离出2路上行信号, 即单通道盲分离问题。因为组成PCMA信号的2路上行信号具有完全相同的频率、时隙和符号速率, 且这2路上行信号的功率相当, 这就导致了PCMA信号的盲分离问题不能使用传统的基于不同功率、符号速率、滚降系数等的单通道盲分离算法[2,3,4,5]来解决。文献[6]中提出了基于PSP和Kalman滤波的算法来解决这个问题, 但该算法对参数的变化不敏感, 文献[7]使用粒子滤波算法来实现同频MPSK信号的盲分离, 但算法的计算比较复杂。

本文研究的是非协作通信中PCMA信号的盲分离问题, 即第三方在未知2个卫星地面站发送的上行信号的情况下, 根据接收到的PCMA信号分离出2路上行信号。本文在现有研究的基础上, 结合PCMA信号的特点, 将独立分量分析应用到这类信号的处理中。首先对接收到的单路PCMA信号进行参数估计得出其残余载波频率, 再对其处理得到2路基带混合信号, 最后利用FastICA算法分离出源基带信号。本文提出的算法有效地解决了单通道的欠定问题, 并经过仿真对上述处理方法进行了实际验证。

1 信号模型

PCMA卫星通信系统中, 通信站1和2使用一样的频率、时隙和扩频码来发射上行信号S1和S2。由于PCMA卫星通信系统采用透明转发器, 每个卫星站接收到的下行信号均为自身上行信号和对方上行信号叠加后得到的混合信号, 因此, 在忽略噪声的情况下, 经转发器转发后, 卫星站1和2接收到的信号为S1+S2。其通信示意图如图1所示。

PCMA混合信号的复基带形式表达式如下

式中:y1 (t) 和y2 (t) 为2个不同卫星站发射的上行信号;h1和h2对应y1 (t) 和y2 (t) 的瞬时幅度;Δf1和Δf2对应y1 (t) 和y2 (t) 的残余载波频率;Φ1和Φ2对应y1 (t) 和y2 (t) 的初相, v (t) 是方差为σ2的加性高斯白噪声, x1 (t) 和x2 (t) 为2路基带信号, 表达式如下

式中:sn (i) 为第i路上行信号的第n个信息符号, 其取值与基带数字调制方式有关;Ts为符号周期;τi为第i路上行信号的信道传输时延, 满足-Ts/2≤τi≤Ts/2;本文中基带信号x1 (t) 和x2 (t) 均采用升余弦滚降成型, 因此这2路基带信号采用的成型滤波器的冲激响应函数gi (t) 的表达式为

式中:αi为升余弦滚降系数。

2 基于FastICA算法的PCMA盲分离算法

2.1 基于二阶循环累积量的残余载波频率估计

记2个不同卫星站发射的上行信号yi (t) (i=1, 2) 的实部Re[yi (t) ]为yRi (t) , 计算其二阶循环累积量如下

式中:〈·〉t表示时间平均;hi为第i路上行信号的瞬时幅度;Δfi表示第i路上行信号的残余载波;Φi表示第i路上行信号的初始相位;Rαxi (τ) 为基带信号si (t) 的二阶循环统计量。

记单个传感器接收到PCMA信号y (t) 的实部Re[y (t) ]为yR (t) , 计算其二阶循环累积量如下

因此, 只要求出Rαxi (τ) 就能计算出yR (t) 的二阶循环统计量RαyR (τ) 。

xi (t) 的循环谱为

式中:Gi (f) 表示第i路基带信号xi (t) 成型滤波器的冲激响应函数gi (t) 的傅里叶变换;Tc表示这2路基带信号的码元周期。求Sxi (α, f) 的逆傅里叶变换就能计算出第i路基带信号xi (t) 的二阶循环累积量Rαxi (τ)

在估计PCMA信号的残余载波频率时, 令τ=0, 得到:Ryα (0) =Rαy1 (0) +Rαy2 (0) , 由式 (7) 知Rαxi (τ) 仅在循环频率α=0处不等于零, 因此Rαyi (0) , i=1, 2在α分别等于0、±2Δfi时非零, 则当且仅当α等于0、±2Δf1、±2Δf2时Ryα (0) 的值不等于零。此时, 在一定的循环频率取值内, 循环谱图中零频附近两非零谱线处的循环频率就分别对应了2路上行信号y1 (t) 和y2 (t) 的残余载波频率值Δf1与Δf2。

PCMA信号的残余载波频率估计实现步骤如下:

1) 根据单个传感器接收到的PCMA信号的频谱, 初步估算其带宽B^, 这样算法执行过程中循环频率α的取值范围也就随之确定了。

2) 计算PCMA信号实部部分的二阶循环累积量RαyR (τ) , 令τ=0, 当RαyR (τ) ≠0时对应的循环频率α1和α2 (α1, α2均不等于零) 就分别代表了2路上行信号y1 (t) 和y2 (t) 的残余载波频率值Δf1与Δf2。

2.2 FastICA算法

FastICA算法是一种用来解决非欠定盲分离问题的高效算法[8], 其收敛速度与运算速度均比较快。运用FastICA算法有以下4个前提条件:

1) 由于是批处理算法, 要求源信号是平稳的;

2) 用于接收信号的传感器个数不小于源信号个数;

3) 混合矩阵列满秩;

4) 各路源信号在统计意义上相互独立, 并且至多有一个服从高斯分布。

假设有N个相互独立的源信号s1 (t) , s2 (t) , …, sN (t) , 若使用M (M≥N) 个接收天线, 则有M个观测信号x1 (t) , x2 (t) , …, xM (t) 。设M个接收天线同时开始工作, 此时FastICA模型的表达式为

定义:X=[x1 (t) , x2 (t) , …, xM (t) ]T, S=[s1 (t) , s2 (t) , s3 (t) , …, sN (t) ]T。

定义混合矩阵

所以式 (8) 可被写成矩阵形式:X=AS, FastICA算法可实现在缺乏源信号的先验知识的情况下, 得到混合矩阵A的估计值, 再求得分离矩阵这样源信号向量Y=[y1 (t) , y2 (t) , …, yN (t) ]T就能通过Y=WX计算出来。

2.3 算法原理及推导

第i (i=1, 2) 路上行信号可表示为

记为Δfi的估计值, 以为残余载波频率值构造出余弦波信号则

因此

对进行低通滤波, 由于其高频部分不能通过, 那么剩下的低通信号为

同理:对进行低通滤波得到

将上述2路低通信号yd1与yd2写成矩阵形式, 其表达式如下

其中

由式 (14) 可知, 如果可以准确估计2路上行信号y1 (t) 和y2 (t) 的残余载波频率值且Δf1与Δf2数值相等或相差很小时, 矩阵A就可以看作是不变的。此时式 (14) 可以近似等价为

当y1 (t) 和y2 (t) 的载波初相满足Φ1≠Φ2+2kπ, k∈Z的条件时, 矩阵A不可逆。通过上述分析可知, 式 (20) 所描述的即为适定盲分离问题。其中, 矩阵A等效成混合矩阵, X等效成源信号向量, 此时就可以使用FastICA算法来实现源基带信号x1 (t) 和x2 (t) 的分离。

本文算法的算法模型如图2所示, 具体实现步骤如下:

1) 取单个传感器接收到的PCMA信号y (t) 的实部部分yR (t) , 计算其二阶循环统计量得到2路上行信号y1 (t) 和y2 (t) 的残余载波频率

2) 由残余载波频率的估计值构造出余弦波信号

3) 将y (t) 分别乘以, 取所得结果的实部部分, 对其进行低通滤波后产生2路相互独立的低通信号yd1和yd2。

4) 对yd1和yd2应用FastICA算法就可以求出源基带信号x1 (t) 和x2 (t) 的估计值x^1和x^2。

3 仿真实验结果和分析

取单个传感器接收到的PCMA信号作为实验对象, 本实验中源基带信号x1 (t) 和x2 (t) 的成型滤波器选取滚降系数为0.33的升余弦滤波器。发送码元符号数目为50。2路上行信号y1 (t) 和y2 (t) 的参数设置如下:码元速率fd=1×106bit/s, 采样速率fs=1×108Hz, 第一路上行信号y1 (t) 的残余频偏Δf1=1×107Hz, 初相θ1=0.6, 信号的传输信道衰落h1=1, 采样矩形脉冲;第二路上行信号y1 (t) 的残余频偏Δf2=1×107Hz, 初相θ2=1.2, 信号的传输信道衰落h2=1。

图3中, 当循环频率分别取0和2×107时, PCMA信号实部部分的二阶循环累积量出现峰值。而最大值位置处的循环频率的1/2即1×107Hz就是上行信号残余载波频率估计值。

设置信噪比为SNR=15 dB, 图4给出了在该信噪比下的源基带信号x1 (t) 和x2 (t) , 图5给出了使用本文算法分离出的基带信号x^1 (t) 和x^2 (t) , 将图4和图5进行对比就可以发现信号x^1 (t) 和x1 (t) , x^2 (t) 和x2 (t) 的波形十分相似, 本文采用相似系数来衡量信号x^i (t) 与xi (t) 的波形相似程度, 仿真表明此时两路基带信号的相似系数可达到0.974与0.987。

设置信噪比的取值范围为-10~10 d B, 每间隔1 d B进行100次试验, 图6和图7分别给出了利用FastICA算法和联合对角化算法 (Joint Approximative Diagonalization of Eigen-matrix, JADE) 分离出的2路基带信号与源基带信号x1 (t) 、x2 (t) 的波形相似系数随信噪比的变化曲线。可以看出, 2路基带信号的波形相似系数均随着信噪比的提高而增大。当信噪比SNR=-10 d B时, 使用FastICA算法得到信号的波形相似系数可分别达到0.94与0.86以上, 而使用JADE算法得到的2路基带信号波形相似系数仅分别达到0.87与0.83。由此可以看出, 本文算法相较于使用JADE算法, 能适应更低的信噪比, 其抗噪声性能更优。

4 结论

本文提出了一种基于独立分量分析的PCMA信号盲分离算法。本算法首先对接收到的单路PCMA信号进行参数估计得到其残余载波载频率值, 再对其处理得到2路基带混合信号, 最后利用FastICA算法分离出源基带信号。仿真实验表明, 本文算法可以适应较低的信噪比, 且具有分离性能稳定、运行速度快等优点。

然而本文要求构成PCMA信号的2路上行信号的残余载波频率值相等或相差很小, 当2路上行信号的残余载波频率值相差超过一定范围时, 算法的分离效果就会明显下降。

参考文献

[1]姚莳霖, 陈惠民.卫星通信系统成对载波多址技术的应用[J].上海大学学报:自然科学版, 2004, 10 (3) :241-243.

[2]BRANDT-PEARCE M.Signal separation using fractional sampling in multiuser communications[J].IEEE Trans.Communications, 2000, 48 (2) :242-251.

[3]WARNER E S, PROUDLER I K.Single-channel blind signal separation of filtered MPSK signals[C]//Proc.Radar, Sonar and Navigation.[S.l.]:IET, 2003, 150 (6) :396-402.

[4]ZHANG Y, KASSAM S A.Multichannel blind source separation and blind equalisation using fractional sampling[C]//Proc.ICA.[S.l.]:IEEE Press, 2000:285-289.

[5]彭耿, 黄知涛, 姜文利, 等.单通道盲信号分离研究进展与展望[J].中国电子科学研究院学报, 2009, 4 (3) :268-277.

[6]毕琰, 钱良.基于PSP及Kalman滤波的PCMA信号盲分离算法[J].信息技术, 2013 (7) :20-23.

[7]SHILONG T, SHAOHE C, HUI Z, et al.Particle filtering based single-channel blind separation of co-frequency MPSK signals[C]//Proc.2007 International Symposium on Intelligent Signal Processing and Communication Systems.[S.l.]:IEEE Press, 2007:582-585.

基于独立分量分析的谐波检测 篇4

随着电力系统中非线性负荷的大量投用,电力系统中的谐波情况也愈发复杂,不仅存在频率是基频整数次的整数次谐波,而且存在非整数次谐波成份。这些对电力系统的安全、稳定运行造成了极大的危害。而对谐波间谐波进行有效分析治理的基础便是对其准确的检测。

传统的谐波检测方法大体分为四类。第一类是基于时域坐标变换的瞬时无功法[1,2],如dp0法、pq法等。这些方法是将原三相谐波分量转换成新坐标系下的直流分量,再进行检测。这些方法动态响应速度较快,但拓扑结构复杂。第二类是基于频域下进行谐波分析的FFT算法及其改进算法[3,4]。这类算法一般用于整周期采样,而对于非整周期采样,或对非整数次谐波分析则存在频谱泄漏和栏栅效应现象,影响检测精度。改进算法中应用了加窗及插值的方法,分别用于克服上述两种现象。此外频率域的检测法还包括小波分析法,及现代谱估计法[5~9]。但这些方法需要较复杂的计算,并且存在频谱混叠、对噪声敏感的缺点,因此还要有相关的去混叠及去噪的辅助算法。第三类方法是以数据挖掘技术为基础,典型的是将神经网络、支持向量机技术[10~13]应用到谐波检测当中。这类算法多以正交三角函数集作为特征集的基,将时域信号映射到该域,并通过对权向量的训练最终得到谐波的幅值和相位信息。由于这种算法是建立在神经网络或支持向量机的回归算法之上,故需要大量的训练样本,计算的实时性较差,且算法的收敛无法完全保证。第四类是以自适应噪声对消原理为基础的自适应谐波检测法。这类方法目前也已应用到有源滤波器的谐波检测模块中。其优点是滤波器参数自适应,但其收敛速度和稳定性之间很难平衡,学习参数也不好确定。

本文将电力系统谐波检测的问题归于盲源分离问题BSS(Blind Source Separation),从而将目前该领域广泛使用的独立分量分析法(ICA)应用到谐波检测。不同于一般的盲源分离问题,我们对于谐波干扰的先验知识(如频率和相位)是有一定了解,因此这种盲源分离问题处理起来要简单。实验结果表明,基于ICA的谐波检测法精度较好,同时也可应用到间谐波的检测中。

1 独立分量分析法

1.1 独立分量分析原理

ICA是一种新的盲源分离技术,其定义是:在对源信号未知的情况下,将多个观测信号按照统计独立原则通过优化算法分解为若干独立分量,以获得对源信号的估计。ICA算法可描述为:X1,X2,⋅⋅⋅,Xn为n个观测信号,由m个未知原信号S1,S 2,⋅⋅⋅,Sm线性组合而成(n≥m),用矩阵形式表示为X=[x 1,x 2,x 3,,x n],S=[s1,s2,s3,,sm],A为n×m的混合矩阵[14],即:

图1显示了X与S的线性组合关系

ICA的任务是S及混合矩阵A未知的条件下,从观测信号X中恢复出原信号S。一般ICA的约束条件是各个原信号Si相互独立,且最多只有一个服从高斯分布。令分离矩阵为m×n的矩阵W,则原信号S的估计Y由式(2)得出:

式中:B为球化阵;U为正交系统;白化使得E[z(t)zT(t)]=IN,即要求z(t)中的各分量正交归一。

1.2 Fast ICA算法处理步骤

独立分量分析的关键问题是建立一个能够读两分离结果独立性的目标函数及其相应的分离算法。本文采用由芬兰学者Hyvarinen等提出的基于固定点算法的Fast ICA方法,该方法采用牛顿迭代法,使得收敛更有保证,且收敛速度较快。其框图如图2。

本文中采用Fast ICA算法时的迭代公式为:

式中令f(x)=tan(a1 x),1≤a1≤2,处理步骤为[15]

(1)把原始数据x去均值,再球化,得z;

(2)设m为待提取独立分量的数目,令p=1;

(3)任意取up(0),但要求‖up(0)‖2=1;

(4)迭代:

(7)如up未收敛,回到步骤(4);

(8)令p加1,如p≤m,则回到步骤(3),否则计算结束。

1.3 ICA在谐波检测中的具体应用

在ICA算法模型中要求观测通道数m不少于独立源的个数n,而谐波检测时只有一路观测通道(三相电流或电压观测量相关,故只能取一路)。因此,要应用ICA方法还需要构造至少n-1路虚拟观测信号x2,x 3,x 4,,xn。这样可得到如下n-1个扩充的方程。

式中:sn的基本表达式为

一般情况下,谐波的频率可以通过简单的谱分析获得,但幅值和相位通常是未知的。如果有同步测量的谐波干扰源信号,那么相位幅值估计问题就相对比较简单,否则就比较复杂。为此我们将源Sn的表达式作如下变换:

这样就将原来的相位和幅值估计转化为对Sn1和Sn2的估计。但与此同时,也增加了n-1个独立源,这样就必须再构造n-1个观测源以满足ICA运算前提。当存在随机噪声时需加入噪声虚拟信号,这样可将噪声信号单独分离出来。

2 模拟仿真

2.1 无噪声环境下的谐波检测

通过Matlab模拟一个含有3,5次谐波的待检测信号及4路虚拟通道信号:

进行ICA分析,得到混合矩阵A和解混矩阵W如下:

混合信号波形如下:

将混合信号进行去均值及球化处理,最后用Fast ICA算法对球化信号进行分离。由于ICA分解的不确定性故需对分解信号作误差分析,这可通过将分离信号还原成混合信号,并与实际观测信号作比较,当误差较大时重复进行ICA处理,直至符合误差要求。实验中得到的最终分离信号如图4所示。

2.2 噪声环境下的谐波检测

为分析ICA算法的抗噪性能,在原观测信号的基础上加入随机噪声,并相应构造一个噪声独立源以便将噪声信号分离出来。(原始观测信号的信噪比为15 d B)

加入噪声后的混合信号波形如图5。

经Fast ICA算法分离得到的独立源信号波形如图6。

2.3 间谐波的检测测试

间谐波是频率为基波非整数倍的谐波,主要是由电力系统中的各种波动负荷(如电弧炉)和电力电子变频装置产生。现构造一路含间谐波及高斯噪声的观测信号及4路虚拟观测信号如下(信噪比15 d B):

混合信号及用Fast ICA方法得到的各个独立信号波形如图7、8。

2.4 讨论

在ICA算法中,分离出的估计信号与源信号没有固定的对应关系,因此还需要结合波形及混合矩阵A进行识别。表1为三个测试实验中的具体对应关系。

混合矩阵A的部分元素为负表明对应的波形反相,这可从ICA分离出的各独立源估计量波形中看出。

对三组实验分离出的信号作误差分析,结果见表2。

通过表2可以看出,在混有高斯噪声的条件下本算法对幅值的估计仍有较高精度但相位估计存在较大误差。同时实验3的结果也说明独立分量法对间谐波的检测同样有效。

由于虚拟观测量的建立是以先验知识为基础的,因此准确构建虚拟观测量(建立适当的个数)是能否使用ICA方法分析谐波的前提。本文中为讨论方便仅模拟了含有3次及5次谐波的情况,实际的谐波要复杂的多。为此,可以使用FFT方法从频域上大致的估出主要谐波的个数,再据此构建虚拟观测量。实际上文献中在神经元个数的确定也是跟据这种方式确定的。

3 结束语

独立分量分析算法 篇5

在信号处理中, 将混合在混沌信号中的其他信号分离出来是混沌信号处理领域中的重要课题, 对于混沌在通信、雷达、生物医学等方面的应用有十分重要的意义。在这类分离中, 常规的处理方法是应用小波变换等方法, 利用信号与噪声频谱的差别进行滤波, 以达到分离目的, 但是当信号与噪声的能量分布在同一频带时, 该方法就不再适用。现有的此类信号分离方法一般都要利用各个混沌信号的内在性质以及一定约束。文献[1]利用各个混沌信号之间的互不相关性, 依据重构理论, 重构出源信号, 但只假设信号间互不相关, 且只涉及到数据的二阶统计特性, 并未充分利用包含有实际信号中大部分重要信息的高阶统计特性。本文假设各信号间为更符合实际的相互独立模型, 提出应用独立分量分析法, 利用高阶统计量方法对混合混沌信号进行分离, 实现此类混合信号的盲分离。此处“盲”是指源信号不能被观测;源信号如何混合是未知的[2]。通过仿真实验证实该方法有效可行。

1 基本原理

X= (x1, x2, …, xm) T为m维零均值混沌信号与其他信号的观测混合信号, 它由源信号向量S= (s1, s2, …, sn) T中相互独立的混沌信号、其他信号sj (j=1, 2, …, n) 线性加权组合而成, 此线性混合模型可表示为:

X=AS=j=1najsj, j=1, 2, , n (1)

式中:A= (a1, a2, …, an) 是m×n满秩矩阵, 称为混合矩阵;aj为混合矩阵的基向量。

混合混沌信号分离基本原理图如图1所示。

为确保上述模型可被估计, 需做以下假设和约束:

(1) 源信号中各分量即混沌信号与其他信号是相互统计独立的。

(2) 源信号中各分量sj具有非高斯分布, 且最多只允许一个具有高斯分布。

(3) 混合矩阵A为方阵, 即假设传感器数与混合混沌信号的源信号分量数相等, 即m=n, 此时A为非奇异矩阵, 逆矩阵A-1存在。

利用观测混合信号X和上述条件构建解混矩阵W= (wij) n×n后, 经过W变换后得到n维源信号估计值Y=[y1, y2, …, yn]T, 则ICA的解混模型可表示如下:

Y=WX=WAS=GS (2)

式中:G称为全局 (系统) 矩阵, 若通过学习得G=In×n (n×n 单位阵) , 则y (t) =s (t) , 从而达到分离目的。实际上, 只要G的各行各列只要有一个元素接近1而其他接近零, 则可认为分离成功。由ICA分离得到的各源信号存在两种内在的不确定性:排列顺序不确定;复幅值不确定[3,4,5], 但这并不影响最终对信号的识别。

2 分离方法

分离过程可分为三个部分:

(1) 观测混合信号的中心化;

(2) 观测混合信号的白化;

(3) 提取源信号。

在分离过程中假设观测混合信号已经过中心化, 其均值为零。

2.1 观测混合信号的白化

白化 (Whitening) 定义为对于观测的混合混沌信号x寻找线性变换V, 使得变换后的信号z:z=Vx是白的。“白的”是指变换后各源信号分量zi是不相关的且具有单位方差。

线性变换V一般可利用协方差矩阵的特征值法 (EVD) 来求得。混合信号的协方差为:

E{xxΤ}=EDEΤ (3)

式中:EE{xxT}的特征向量的正交矩阵;D是相应的特征向量的对角矩阵, D=diag (d1, d2, …, dn) , 则可令线性白化矩阵为:

V=ED-12EΤ (4)

可以证明此时z为白化的:

E{zzΤ}=VE{xxΤ}VΤ=ED-12EΤEDEΤED-12EΤ=Ι (5)

2.2 基于峭度的快速不动点分离法 (FastICA法) [3,6]

极大非高斯性分离定理指出, 混合混沌信号的各源信号是极大非高斯性分量。在对混合混沌信号分离中, 极大化y=wTz的峭度 (z为预处理中经白化后的零均值观测混合信号) , 可以得到混合混沌信号中各分量的估计值。当采用梯度算法极大化峭度的绝对值时有:

|kurt (wΤz) |w=4sign[kurt (wΤz) ]{E[z (wΤz) 3-3ww2} (6)

当令式 (6) 中, 峭度的梯度与w相等, 即可得到:

w∝{E[z (wTz) 3]-3‖w‖2w}, (‖w‖2=1) (7)

由式 (7) 可得不动点迭代算法, 此时可以先计算右面的项, 并将其赋给w作为新值。

wE[z (wΤz) 3]-3w (8)

由此可得不动点的两步迭代算式:

{wiΤ (k+1) =E[z (wiΤ (k) z) 3]-3wiwiΤ (k+1) wi (k+1) wi (k+1) (9)

该算法也被称为FastICA。实际应用时, E[z (wTi (k) z) 3]需用各时刻的统计均值代替, 收敛后得到的wTi是矩阵中的一行, 所以yi (t) =wTiz (t) 就是分离出的混合混沌信号中某一个源信号si (t) 。原理上, 可以多次运行算法而获得多个源信号, 但这并不可靠。要应用极大化非高斯原理, 以估计更多的源信号时利用:在白化空间中, 不同的源信号对应向量wi是正交的。因此, 当估计多个源信号时, 需将上述一元算法运行多遍, 而为了避免不同的向量收敛至同一个极值点, 必须在每次迭代后将w1, w2, …, wm进行正交化。

在正交化时一般采用并行正交化, 其可以使源信号能够并行估计, 同时被分离出来。W的对称正交化可以通过矩阵平方根的方法来实现。

W (WWΤ) -12W (10)

式中: (WWΤ) -12可通过对WWT进行特征值分解得到。

(WWΤ) -12=ED-12E (11)

式中:EWWT的特征向量的正交矩阵, D是相应的特征向量的对角矩阵, D-12=diag (d1-12, d2-12, , dm-12)

3 仿真实验

下面, 应用基于峭度的FastICA分离法对混合混沌信号的分离进行仿真实验。仿真中定义分离性能指标为:

ΡΙ=1n (n-1) i=1n[ (k=1n|gik|maxj|gij|-1) + (k=1n|gki|maxj|gij|-1) ] (12)

分离出的估计信号y (t) 与源信号s (t) 波形完全相同时, PI=0;实际上当PI=10-2时说明算法分离性能已经相当好。

实验1:两个不同模型的混沌信号混合的分离 两个混沌信号分别为logistic map与henon map, 其中:logistic map 映射方程为x (n) =μx (n-1) [1-x (n-1) ], 式中μ=4, 初始值为0.2。henon map 映射方程为x (n) =y (n-1) +1-ax (n-1) 2, y (n) =bx (n-1) ;式中a=1.4, b=0.3。取10 000个观测点, 舍去前3 000个点 (确保系统进入混沌状态) 再取其后连续的150个点进行分离仿真。混合信号中一路观测信号与源信号明显不同, 另一路波形与logistic map相似, 但幅值有明显变化。经11次迭代后收敛, 分离后不影响对信号的最终识别 (见图2) 。该实验分离指数为PI=0.063 4。

实验2:logistic map与均方差为1的高斯白噪声 (GWN) 的混合 在仿真中logistic map采用实验1的映射方程, 式中μ=4, 初始值为0.2, 高斯白噪声的能量为1。同样, 当确保进入混沌状态后, 再取150个连续的点进行仿真。一路混合信号形似噪声, 此时混沌信号被“淹没”在噪声中, 经FastICA法分离, 11次迭代后, 将混沌信号从噪声中“抽取”出来 (见图3) 。分离性能指数为PI=0.050 4, 表明很好地将信号分离出来。

实验3:混沌信号与谐波信号混合的分离 混沌信号为logistic map, 其映射方程为 x (n) =μx (n-1) [1-x (n-1) ], 式中μ=4, 初始值为0.2。谐波信号为Asin (2πft+φ) , 式中A=0.02, 归一化频率f=0.3, 初相位φ=1。混沌信号与谐波信号混合时, 微弱的谐波信号“隐藏”在强混沌信号中, 应用本文的方法可快速有效地将其从中分离出来。此外在强谐波信号背景中, 混沌信号“淹没”在其中时, 也可很好地将混沌信号从中分离出来。同样, 在本实验中经11次迭代后收敛 (见图4) , 分离性能指数为PI=0.074 5, 同样表明, 可以很好地将混合混沌信号分离开来。

将上述实验时FastICA法分离性能列表, 见表1。

4 结 语

本文提出基于独立分量分析的方法对混合混沌信号进行分离, 利用各源信号独立, 基于极大非高斯性原理, 应用FastICA法对此类信号进行分离, 在未知混合情况时, 实现此类信号的盲分离, 通过实验仿真, 分离性能指数均可达10-2, 表明该方法可以很好地将此类信号分离开来。

摘要:现有的混合混沌信号分离方法一般都要利用各个混沌信号的内在性质以及一定的约束。利用混合混沌信号中各源信号的独立性, 依据基本ICA估计原理中的极大非高斯性原理, 采用基于峭度的不动点分离法对此类混合信号进行分离, 实现了此类信号的盲分离。对多种此类混合信号进行分离仿真的结果表明, 该方法可以快速有效地分离出混合混沌信号中的各个源信号。

关键词:混合混沌信号,独立分量分析,盲分离,噪声频谱

参考文献

[1]李雪霞, 冯久超.一种混沌信号的盲分离方法[J].物理学报, 2007, 56 (2) :701-703.

[2]张贤达, 保铮.盲信号分离[J].电子学报, 2001, 29 (12) :1 766-1 768.

[3]Aapo Hyvarinen, Juha Karhunen Erkki Oja.IndependentCcomponent Analysis[M].John Wiley and Sons, 2001.

[4]张发启.盲源信号分离技术[J].现代电子技术, 2004, 27 (20) :81-83.

[5]杨福生, 洪波.独立分量分析的原理与应用[M].北京:清华大学出版社, 2006.

独立分量分析盲信号分离方法研究 篇6

近年来,盲信号处理技术已成为信息处理领域的热门课题,在阵列信号处理、语音处理和通信等领域均显示了诱人的应用前景。盲信号处理涵盖的内容十分广泛,包括信号盲分离、信号盲解卷、信号盲辨识和图像盲恢复等。其中盲信号分离(Blind Signal Separation,BSS)是盲信号处理的一个重要方面,盲信号分离是指从若干观测到的混合信号中恢复出未知的源信号的方法,它可以应用于许多领域,如语音分离与识别、雷达信号处理、声纳信号处理和电子对抗等。根据不同的分类标准,盲信号分离可以分成若干类。从混合通道的个数上分,信号的盲分离可以分为多通道信号分离和单通道信号分离;从源信号的混合方式上分,可将盲信号分离问题分为瞬时混合和卷积混合[1],线性混合和非线性混合等不同种类。

至今,已经发展了许多瞬时混合盲信号分离的算法,这些算法大致可分为以下3种:独立分量分析法、熵最大化法和非线性主分量分析法。其中,独立分量分析方法是近几年才发展起来的一种新的方法,但是由于其大量成功的应用,使得独立分量分析方法在盲信号分离领域尤其是在瞬时混合信号的盲分离上得到了越来越多的关注。

1 盲信号分离的数学模型

盲信号分离(BSS)是指从若干观测到的多个信号的混合信号中恢复出无法直接观测到的原始信号的方法。通常,观测信号来自一组传感器的输出,其中每一个传感器接收到多个原始信号的一组混合。

设有n个信号源和m个传感器,测量信号和源信号之间关系式为:

undefined。

式中,A=(aij)m×n为混合矩阵;undefined是观测信号,它是n个未知源信号undefined的瞬时线性混迭;N(t)是m×1的加性噪声矢量。这里只研究如下无噪声信号混迭模型公式:

undefined。

根据上式,盲信号分离问题可以描述为:在混合矩阵A和源信号矢量S(t)均未知的条件下,求一分离矩阵W,使得W对混合信号矢量X(t)的线性变换:

undefined

为对源信号矢量S(t)或其某些分量的一个可靠的估计,即

undefined,

由于求得的分离矩阵W不会恰好是A-1,因此分离信号与源信号存在不确定性,即和源信号S(t)相比,Y(t)的幅度和排列次序是不确定的,而在实际应用中,只要保持波形的形状不变,这2个不确定性都是可以接受的。

2 非高斯性最大化的ICA算法

用于进行盲信号分离的独立分量分析(Independent Component Analysis,ICA)方法主要有以下几种,非高斯性最大化的ICA算法、最大似然估计的ICA算法[4]、互信息最小化的ICA算法、非线性去相关和非线性主分量分析的ICA算法。其中,非高斯性最大化的ICA算法又包括基于四阶累积量的和基于负熵的非高斯性最大化的ICA算法。主要介绍用四阶累积量度量非高斯性进行瞬时混合盲信号分离的方法。

2.1 四阶累积量判决准则

由中心极限定理可知,一随机量如由许多相互独立的随机量之和组成,只要各独立的随机量具有有限的均值和方差,则不论各独立随机量为何种分布,则该随机量必接近高斯分布。因此可以在分离过程中,通过对分离结果非高斯性的度量来监测分离结果间的相互独立性,当非高斯性度量达到最大时,则表明完成了对独立分量的分离[5]。

首先假设所有的随机变量都是零均值的,这样一随机变量y的四阶累积量记作kurt(y),定义式为:

undefined。

进一步假设y是标准化的,以便其方差为1,这时E{y2}=1。上面的定义式就被简化为:

undefined。

根据信息理论,对于一高斯随机变量y,它的四阶累积量kurt为零;对于大多数非高斯随机变量,它们的四阶累积量kurt一般是非零的。所以,四阶累积量偏离0的程度越大,非高斯性越强。这样,用四阶累积量度量非高斯性的方法可归纳如下:

kurt(y)=0,则y呈高斯分布;

kurt(y)<0,则y呈亚高斯分布;

kurt(y)>0,则y呈超高斯分布。

2.2 预处理

所谓的预处理即对观测信号进行的白化处理。此时的白化处理可去除各观测信号间的相关性,因而简化了后续独立分量提取的过程。信号的白化处理比较简单,用类似主分量分析方法即可实现。设白化后的信号为Z,则Z满足:

E{Z·ZT}=E{(B·X)(B·X)T}=I。

式中,B称为白化矩阵;I为单位矩阵,符号“T”为矩阵(向量)的转置。经白化处理后,观测信号X变为具有单位方差的信号向量Z,且Z中各信号分量相互正交。接下来对白化信号Z进一步处理,即寻找分离矩阵W以实现独立分量的提取。

2.3 基于四阶累积量的快速定点算法

快速定点算法的收敛速度快,并且不存在学习步长选择的问题,因此它比梯度算法更稳定。下面直接给出了基于四阶累积量的快速定点算法:

w←E{Z(wTZ)3}-3w,

w←w/‖w‖。

2.4 降阶正交化和对角正交化

分离一个信号时可直接利用前面给出的梯度算法或快速定点算法。但是如果要分离n个独立源信号,则必须运行前面的某个算法n次,并且为了保证每次所估计的是不同的独立成分,需要在迭代过程后做正交化处理,下面是2种正交化处理的方法。

降阶正交化意味着一个一个地估计独立源信号。假设已经估计出p个源信号,或者说求出了p个分离列向量w1,w2,…,wp,在求第p+1个源信号时,先要用前面的某个算法求出wp+1,再做下面的正交化处理以保证分离的第p+1个信号和前面分离出的p个信号不同:

undefined。

对角正交化是同时估计出n个分离列向量wi,然后令W=(w1,w2,…,wn)T,再做如下处理:

W←(WWT)-1/2W。

式中,(WWT)-1/2可以通过对WWT=Ediag(d1,…,dn)ET进行特征值分解得到:

(WWT)-1/2=Ediag(d1-1/2,…,dundefined)ET。

这样就求出了可以同时分离n个信号的分离矩阵W。此外,还有一种更简单的方法求分离矩阵W:

① W←W/‖W‖;

② W←3/2W-1/2WWTW;

③ 不收敛则返回第②步。

2.5 快速定点ICA算法描述

① 对观测信号X进行去均值处理,使得E(xi)=0,再对X进行去白化处理,使得undefined;

② 令n等于要估计的独立源信号的个数;设置计数器p=1;

③ 随机产生一列向量wp,令wp=wp/‖wp‖;

④ wp←E{Z(wundefinedZ)3}-3wp,wp←wp/‖wp‖;

⑤ 做正交化处理:

undefined;

⑥ 如果wp不收敛,则返回到步骤④;

⑦ 令p=p+1;如果p≤n,则返回到步骤③。

3 仿真结果

现举例说明上述基于四阶累积量的快速定点ICA算法的有效性。

考虑3个传感器接收到来自3个源的混叠信号,这3个源信号为:

s1=sin(600*t+5*cos(60*t)),

s2=sin(60*pi*t),

s3=sin(5*pi*t)。

混叠矩阵A随机选定。分离结果如表1、图1和图2所示。

4 结束语

介绍了一种具体的非高斯性最大化的独立分量分析方法。从度量非高斯性的准则出发,利用四阶累积量进行判决,得到了相应的定点算法。该定点算法收敛速度较快,是二次收敛的,而且不需要选择学习步长,所以使用起来简单方便,并且使用任意非线性函数都可以直接找到非高斯分布的独立分量,而不需像许多算法那样首先要进行概率分布函数的一些估计,再相应选择非线性函数。利用该方法对多个通信信号的混合信号进行了分离[6]。分离结果表明该算法对通信信号的分离能取得较好的分离效果,说明ICA算法在盲源分离方面具有很大的潜力。 

摘要:盲源分离是指从多个相互独立的源信号的混合信号中分离出源信号来。独立分量分析法是盲源分离的一种新方法,由于其在语音信号处理、阵列信号处理、生物医学信号处理、移动通信及图象处理等领域的应用前景,越来越引起人们的关注,成为研究的热点。介绍一种基于四阶累积量的非高斯性最大化的ICA算法解决盲源分离的问题,并给出了该算法分离通信信号的计算机仿真结果,验证了算法的有效性。

关键词:盲信号处理,盲源分离,独立分量分析

参考文献

[1]刘琚,何振亚.盲源分离和盲反卷积[J].电子学报,2002,30(4):570-576.

[2]刘琚,梅良模,何振亚.一种盲信号分离的信息理论方法[J].山东大学学报,1998,33(4):398-403.

[3]COMON P.Independent Component Analysis,A New Con-cept[J].Signal Processing,1994,36(3):287-314.

[4]解静,李艳斌,陈建峰.最大似然估计的独立分量分析法[J].无线电工程,2004,182(34):10-11.

[5]LEE T W.GIROLAMI M,SEJNOWSKI T J.IndependentComponent Analysis Using an Extended Infomax Algorithmfor Mixed Sub-gaussian and Super-gaussian Sources[J].Neural Computation,1998(11):609-633.

独立分量分析算法 篇7

关键词:涡流检测,自然裂纹,缺陷信号,独立分量分析

涡流检测(Eddy Current Testing,ECT)是一种检测导电结构表面和亚表面缺陷的有效技术,具有灵敏度高和不需耦合剂等优点。但是,在实际应用中,被检测工件表面形状变化、探头提离和环境噪声等都会对检测信号产生影响,降低缺陷信号的信噪比,直接影响对缺陷的分析和评价[1]。因此,在对缺陷进行定量评价之前,需要对检测信号进行预处理,除去其中的提离噪声和白噪声等非缺陷信号。常用的信号预处理方法有带通滤波、傅里叶变换和小波变换等。带通滤波和傅里叶变换技术可以有效除去平稳信号中部分由于探头提离变化或表面粗糙度引起的非缺陷信号,但不适用于ECT信号这种随时间变化的非连续信号。小波变换是非平稳信号处理的有力工具,已取得许多成功应用,但当有用信号的特征较弱而噪声较强,或有用信号与噪声的频带交叠严重时,小波降噪方法也不是很有效[2,3,4]。

独立分量分析(Independent Component Analysis,ICA)是一种近年发展起来的盲信号处理方法,许多学者对其进行了研究,提出了一系列算法[5,6,7]。与传统的盲信号分离算法相比,ICA算法基于数据的高阶统计量,分离得到的各分量不仅互不相关,而且高阶统计独立,更能反映数据的本质特征。因此,ICA算法在信号处理和工程领域得到广泛应用[8,9]。但尚未在ECT信号分析中得到应用。本文尝试采用ICA算法对ECT信号进行预处理,目的是从混合信号中提取出有效缺陷信号。

1 独立分量分析原理

独立分量分析是一种基于统计的方法,对于一组相关的混合观测信号,寻求一个数据的非奇异变换,使得变换后的数据分量之间相互独立。

图1所示为ICA方法的简单模型框图,图中S(t)=[S1(t),...,Sn(t)]T是由n个未知信号源构成的向量;A是一个混合矩阵。信源S(t)、矩阵A与n个可观测信号X(t)=[X1(t),...,Xn(t)]T之间有下列关系:

ICA方法可以在X(t)已知,S(t)与A均为未知的条件下,求解一个分离矩阵W,使得X(t)可经过下列变换得到n维输出向量Y(t):

Y(t)=[Y1(t),...,Yn(t)]T中各分量相互独立,可以作为S(t)的有效估计值。

2 基于负熵的FastICA算法

ICA算法在对信号进行处理时通常要进行目标函数的确定、观测数据的预处理和独立分量的提取与算法的实现等过程。目标函数确定的关键在于如何度量结果的独立性。目前独立性的度量准则主要有峭度、负熵和互信息等,通过引入合适的非线性函数来近似地计算负熵时,解ICA问题可以获得较快的收敛速度和较精确的计算结果。FastICA算法就是芬兰学者Aapo Hyvarinen等人提出的一种基于负熵这种非高斯性度量准则,逐次提取独立分量的固定点算法[5]。

2.1 负熵目标函数的确定

设一密度为p(y)的随机向量y的熵定义如下:

在具有相同方差的所有随机变量中,高斯变量具有最大的熵,因此可以将熵作为非高斯性的一种度量。

为了对非高斯性的度量更合理,且对高斯变量其取值为零且非负,定义如下形式的负熵:

式(4)中,yGuss为一高斯随机向量且与y具有相同相关矩阵。由式(4)可知:负熵总是非负的,当且仅当y具有高斯分布时其值为零。y的非高斯性越强,Ng(y)的值越大。从统计学角度来讲,负熵是度量随机变量非高斯性的最优工具之一,可作为度量随机变量非高斯性的目标函数。

为了对涉及到的随机变量概率密度进行有效估算,使用一个非二次函数G,可以将负熵近似为:

式(5)中,yGauss为零均值、单位方差的高斯变量;E()为均值运算,G()为高斯函数,由y=wTX(y为其中一个独立分量,w为分离矩阵W的一行,X为混合矩阵),负熵的近似函数也可表示为

问题转换为求分离矩阵W,使分离出的估计信号y=wTX能使函数Ng(y)达到最大这种无限制条件的优化问题。

2.2 FastICA算法

整个算法的步骤如下:

2.2.1 信号预处理

进行ICA处理之前,为了简化计算,去除观测信号间的相关性,可对采样信号进行中心化和白化等预处理。

a)中心化:是对观测信号进行去均值处理。其处理过程是从观测信号中减去信号的均值即E(X),使得观测信号成为零均值变量。其算法为:

b)白化:对去均值后的观测信号向量X施加一个线性变换B,使得新向量珘X=BX的各个分量间互不相关且具有单位方差,其协方差矩阵是单位矩阵,且满足

则称是白化的。

对观测信号进行白化处理使得ICA算法收敛更快,并能获得更好的稳定性和减少需要估计的参数个数。

2.2.2 独立分量分离

经过白化处理后,观测信号变换为具有单位方差的信号珘X,且珘X中各信号分量相互正交。继而可以寻找合适的解混矩阵W,来实现独立分量信号的分离。

分离的过程是一个迭代逼近的过程,用变量n=1,2,…来表示迭代次数,设yi(n)是Yi(n)中n次迭代后的某一分量,wi(n)为待求解混矩阵W(n)中与yi(n)对应的某一行向量,即

根据所确定的目标函数对yi(n)的非高斯性进行度量,用牛顿迭代法对该目标函数求解并化简,可得FastICA固定点算法迭代公式:

式(10)、式(11)中g()为G()的一阶导数。当调整相邻两次的wi(n)没有变化或变化不大时,即wi(n)/‖wi(n)‖收敛时,可认为yi(n)≈yi,否则依据式(10)重新调整wi(n)。

3 实验研究

3.1 实验构建

首先模拟自然环境制作自然裂纹。选用200 mm长,100 mm宽,8 mm厚的Inconel600合金钢板,在机械装置上固定并使平板两端及中间三点反复受力弯曲,直至产生疲劳裂纹。另外采用施力及酸性液体浸泡相结合的方法使试样产生应力腐蚀裂纹。按这样的方法制作了多块具有疲劳裂纹和应力腐蚀裂纹的试样。然后采用如图2所示的实验装置,用涡流检测仪在多种频率下对裂纹进行扫描以获得尽可能多的ECT信号。探头由一台涡流检测仪激励并由计算机控制的扫描平台进行精确定位,采集的ECT信号经A/D转换后在计算机中存储起来用于分析处理。

在利用ECT方法进行缺陷的实际测量过程中,探头不可避免地受到提离(包括被检测物体表面粗糙度、形状变化)、被检测物边缘影响、环境白噪声等因素的影响,得到的测量信号是几种源信号的混合产物。由于探头扫描主要围绕在试样中心的裂纹附近,所以边缘效应对探头的影响可以忽略;考虑到ECT信号中的缺陷成分、提离和干扰噪声是统计独立的,服从非高斯分布,符合ICA应用的基本要求。尝试利用独立分量分析的方法将缺陷响应信号从被污染的ECT信号中分离出来,从而提高缺陷信号的信噪比。

3.2 基于ICA的ECT信号预处理

3.2.1 疲劳裂纹信号预处理

图3(a)所示是采用同一扁平线圈涡流探头分别在不同激励频率下对同一疲劳裂纹进行扫描得到的三组ECT源信号。其中,横坐标为采样点序号,纵坐标为信号幅度。从图3中可见,缺陷信号很微弱,几乎消失在提离噪声和白噪声信号中。

根据ICA理论,采用FastICA算法对图3(a)中的观测信号进行分离,得到的独立分量成份如图3(b)所示。图3中从上至下依次为疲劳裂纹信号,白噪声和探头提离干扰信号,分离效果较好。

3.2.2 应力腐蚀裂纹信号预处理

由于应力腐蚀裂纹内部结构比疲劳裂纹更为复杂,在各种噪声干扰的影响下,所获得的ECT信号往往背离了实际缺陷的情况。图4(a)所示是同一探头分别在不同频率下对同一应力腐蚀裂纹扫描所获得的三组ECT源信号。从中已经很难判断缺陷的位置和形状。

采用FastICA算法对图4(a)中的应力腐蚀裂纹ECT源信号进行分离得到的各独立分量如图4(b)所示。图中从上至下依次为缺陷信号,探头提离干扰和白噪声信号。可见已将缺陷信号清晰分离出来。

为了验证ICA方法在ECT信号预处理中的效果,同时采用小波分析方法对图3(a)所示的疲劳裂纹ECT源信号进行了处理。将提离等低频噪音分解成逼近信号,而将缺陷信号和高频噪音分解成细节信号。图5(a)所示为小波分析过程,图中最上方波形是源信号,图中其它波形是采用经试验选定的一定阶数Daubechies小波将ECT源信号分解成多个频率级的部分结果。从图中可见低频逼近分量提取出了提离噪声,白噪声被分解成高频细节分量。

小波分解之后,按照表征缺陷信号的分解系数不变而其余的设为零的原则来滤除噪声。这样就除去了低频提离噪声和高频白噪声。得到如图5(b)所示的缺陷信号。

将图5(b)小波分解提取的缺陷信号与图3(b)ICA分离结果进行对比,可以发现,除幅度等有所不同外,信号的其余特征非常相近,说明ICA算法在ECT信号预处理中是有效的,分离出的缺陷信号能够有效反映缺陷位置、形状等特征。

4 结论

针对自然裂纹ECT信号由于受到探头提离和白噪声严重影响而难以有效表征缺陷的问题,提出将ICA算法应用在ECT信号预处理中。利用FastI-CA算法对实验获得的疲劳裂纹和应力腐蚀裂纹ECT信号进行了预处理,取得了良好的缺陷信号分离效果。

同时采用小波分析算法进一步验证了ICA技术是提取ECT信号中缺陷分量的有效方法,具有一定应用前景。

采用ICA分离得到的缺陷信号还明显含有白噪声成分,可进一步采用小波分析等方法去噪。对于实际环境中的ECT信号噪声消除,以及如何对不同种类探头获得的源信号进行ICA分离并获得最佳效果,还需进一步研究。

参考文献

[1] Chen Zhenmao,Janousek L,Yusa N,et al.A nondestructive strategyfor the distinction of natural fatigue and stress corrosion cracks basedon signals from eddy current testing.Journal of Pressure Vessel Tech-nology,2007;129(11):719—728

[2]时振堂,陈德智.涡流检测信号小波除噪与缺陷特征提取.无损检测,2003;25(9):472—493

[3]张思全,陈铁群,刘桂雄.基于智能算法的涡流检测自然裂纹形状重构.华南理工大学学报,2008;36(10):129—134

[4]赵晓燕,李宏男.一种改进的小波分析消噪方法及其在健康监测中的应用.振动与冲击,2007;26(10):137—139

[5] Hyvarinen A,Oja E.A fast fixed-point algorithm for independentcomponent analysis.Neural Computation,1997;9(7):1483—1492

[6] Hyvarinen A.Fast and robust fixed-point algorithms for independentcomponent analysis.IEEE Transactions on Neural Networks,1999;10(3):626—634

[7] Hyvarinen A,Oja E.Independent component analysis:algorithms andapplications.Neural Networks,2000;13(4):411—430

[8]潘城,田社平,颜国正.超定独立分量分析及其在结肠压力信号分析中的应用.上海交通大学学报,2010;(44)11:1595—1599

上一篇:课堂教学转型求实效下一篇:建筑工程质量监督管理