APP下载

基于多层神经网络和PReLU函数的后非线性BSS算法

2020-03-02张亚丽薛青松

绵阳师范学院学报 2020年2期
关键词:概率密度函数梯度波形

陈 曦,李 炜,张亚丽,薛青松

(1.安徽工程大学检测技术与节能装置安徽省重点实验室,安徽芜湖 241000; 2.安徽工程大学电气工程学院,安徽芜湖 241000)

0 引言

盲信号处理(Blind Source Separation, BSS)是指在源信号和传输信道均未知的情况下,仅仅从观测信号恢复和提取源信号的一种信号处理方法.近些年,相关课题的研究已经引起了广泛的关注,并在概率信号的处理、面部识别和医学图像处理等领域有了重大突破.BSS信道混叠模型主要包括线性瞬时混叠、线性卷积混叠和非线性混叠.由于非线性模型更能真实地模拟信号传输过程,但其理论和传输信道较为复杂,不能够完全分离源信号,所以一般会对非线性模型进行简化.非线性混迭模型主要有三种:后非线性模型(PNL)、LNL层混叠模型以及Momo非线性混叠模型.从理论上来说,PNL是可能完全分离的,因其结构是最简单、抗干扰能力最强,且能够估计出弱信号的排列和平均值.正因如此,现在大部分有关非线性BSS算法的研究主要是针对PNL模型.

Bell等首次提出了以信息最大化准则来建立目标函数的方法,随后又提出一种基于随机梯度的最大化熵BSS算法,但是由于随机梯度的计算量较大而且容易出现局部最优化的解[1].根据这一局限,日本学者Amari提出了稳定、快速的自然梯度算法,该算法的收敛性和稳定性优于其它的算法;传统的自然梯度算法都是选择单一步长,但其不能很好的平衡收敛速度与系统稳定性[2-3].季策等人提出了将自然梯度算法用来解决在非平稳条件下的瞬时盲信号处理难题,首先利用系统上的波动对代价函数进行自适应约束并加以调整,同时引入变步长来控制自然梯度算法,使其更具稳定性,此算法可以解决分离过程中严重的稳态误差[4].欧世峰等人在解混矩阵的公式中添加动量项,通过控制滑动参数和动量因子来选取最优步长,结合了两个参数的优势,进一步平衡了收敛速度和稳定性的关系,以此分离混合信号,该方法优化了收敛速度与稳定性之间的关系,但由于该算法需要两个参数同时控制,所以会使算法变得复杂[5];马志阳等人通过构造非线性单调函数,使得步长与动量因子可以自适应调节,从而可以在平衡收敛速度和稳定性的条件下选择参数,该算法可以有效地缓解固定值对算法性能的约束,并且在噪声环境下同样有较好的分离效果[6].赵峰等人以tanh函数作为多层神经网络的激活函数,并通过其来估计任意的概率密度函数,从而给出信号的代价函数,该算法不需要源信号的任何先验条件、收敛速度快且可以用非线性函数代替代价函数,但是容易造成梯度消失[7].

本文针对后非线性盲源分离问题提出了一种基于多层神经网络的分离算法,该方法选用PReLU函数作为多层神经网络的激活函数,进而对概率密度函数进行自适应估计,利用最小互信息准则构建目标函数,并通过优化后的自然梯度算法对目标函数进行迭代寻优.

1 后非线性混合-解混系统

后非线性混合-解混系统如图1所示,左边是混合系统,右边为解混系统.首先,将源信号通过混合矩阵An×n进行线性混合,得到中间变量V(t)=[v1(t),···,vN(t)]T,其表达式为:

V(t)=AS(t)

(1-1)

图1 后非线性混合-解混系统Fig.1 Post Nonlinear Mixing-Demixing System

将V(t)通过含待测参数的线性函数f(·):RN→RN进行线性混合,求得映射非线性混叠函数的逆f(·)之后,通过奇异线性分离矩阵Wn×n,得出Y(t),再选择恰当的目标函数来测试信号之间的独立性,以此来判断输出信号矢量是否满足信号源的统计独立要求.

令其混合模型如下:

X(t)=f(A×S(t))+N(t)

(1-2)

令S(t)=[s1(t),···,sN(t)]T为N路统计独立源向量,X(t)=[x1(t),···,xN(t)]T为观察得到的N路的混合信号N(t)=[n1(t),···,nN(t)]T,为N维加性高斯白噪声,并且高斯白噪声与信号源的互相关性为0;f(·)为可逆可导的未知非线性函数,W为非奇异正定矩阵,且一般不考虑噪声对模型的影响,则观测信号可以表示为:

(1-3)

其中,aij为正定混合矩阵的标量项.

则非线性的解混模型如下:

(1-4)

2 构建目标函数

2.1 目标函数的选取

若任意一组的联合概率密度函数都可以地分解为qj,其为第jth个源信号的概率密度函数,则这一组信号是独立的.最小化互信息(MMI)的基本思路是:求解混迭矩阵W,使输出Y(t)的各分量之间的互相关性达到最小.

令yi为估计的各个源信号向量,pi(yi)为各个分量的概率密度函数,首先选择一个完全的独立概率密度分布q(y)=∏iqi(yi),并考虑概率密度函数pi(yi)和q(y)之间的KL散度:

(2-1)

其中,py(y)为分离信号y的联合概率密度函数,KL离散度为非负的,当且仅当p=q时,KL散度可以达到它的最小值,并且它与香农互信息是等价的.

(2-2)

在非线性函数条件下的KL散度可以表示为:

KL(p(y)||q(x))=KL[p(f(y))||q(f(x))]

(2-3)

由上式可知,任意可逆的非线性函数都不影响源信号之间的非高斯性,如Z=h(y)=f(x)表示可微映射,则该映射的输入和输出联合分布之间的关系如下:

(2-4)

其中,|J|是变换的雅各布矩阵的行列式.

联合微分熵关于分离矩阵W的表达式为:

(2-5)

使用自然梯度法对熵函数H(Z)求导并得到它的最大化:

(2-6)

由于输出的边际概率密度函数p(y)决定了边际熵,且概率密度函数是变换的,所以将互信息最小化问题转化成概率密度函数与模型参数的最小比值问题.

得出自然梯度迭代法的表达式:

(2-7)

2.2 非线性函数的选取

自然梯度算法的收敛性能和稳定性能取决于步长因子ηt和非线性函数的选择.在盲源分离算法中,对于统计特性未知的信号源来说,若不知源信号的先验分布,仅仅根据经验或是某种信号的统计特性来选择非线性函数的话,会使得源信号的分离不够准确.

所以本文选择以PReLU函数为多层神经网络的非线性函数,有效解决了Sigmoid函数的均值偏移和梯度消失的缺陷,当x≥0时,导数f'(x)=0,所以PReLU函数能够在x≥0时,不会造成梯度消失的问题,并且该函数具有非饱和性,所以能够有效解决均值偏移和神经元在负区间死亡的问题,表达式如下:

(2-8)

其中,i表示不同的通道.

(2-9)

令输入信号的概率密度函数为p(x)时,假如H(x,w)近似为F(x),则神经网络的输出服从max(0,x)均匀分布,得到:

(2-10)

令yim,m=1,2,...,M,Zim,m=1,2,...,M分别为神经网络的输入与输出.

(a)(b)图2 多层神经网络模型(a:输入模型; b:输出模型)Fig.2 Multilayer Neural Network Model (a: The Input Model; b: The Output Model)

如图2所示,构建一个单隐层神经网络,其包含3个神经元,其中单隐层神经元激活函数PReLU(·),当神经网络迭代收敛时,则:

(2-11)

令yi的概率密度函数的表达式为:

(2-12)

在非线性模型中,直接对p(yi)求导或是微分得出一阶导数p'(yi),可能会导致精度不搞,但是多层神经网络能够较好的逼近非线性函数,可以使得p'(y)估计更加准确.

(2-13)

得出:

(2-14)

3 基于神经网络的概率密度估计算法

为了使每个信源被提取出来都是独立分布的,所以对wi(0)每次都赋给不同的数,以保证每次从混合信号里面取出的源信号是不同的.首先对矩阵W进行正交化和白化处理,过程如下:

(1)将有关信号源的数据零均值和中心化处理,使得它的均值等于0;

(2)对数据进行白化处理:x→z;

(3)用多层神经网络去估计Z的概率密度函数p(z);

(4)设M个待提取的独立分量,从1开始计数;

(5)给wi(0)赋初始值,计算2-范数,并规定||wi(0)||2=1;

(6)将p(z)和wi(k)代入式中即可得到y的概率密度函数p(y),使得f(y)=p(y);

(7)将式wi(t+1)=ηt{I-φ(y(t))yT(t)}wi(t)进行迭代;

(8)将得到的W进行正交归一化处理;

(9)加入wi未收敛,则回到步骤(5);

(10)令C=C+1,判断C是否大于M,如果是,则算法结束,如果不是,则算法转回步骤(4).

本文所有仿真实验皆在Matlab里面完成,利用自然梯度算法和改进后的基于多层神经网络的自然梯度算法分别对混合信号进行分离,并得出仿真图.本文选取了4种源信号,包含了亚高斯信号和超高斯信号,原始信号如下所示:

(3-1)

在(3-1)式中,s1信号是符号信号,s2信号是高频正选信号,s3信号是低频正弦信号,s4信号是调幅信号.本文选用了100个采样点,如图3至图6所示,横坐标代表了采样区间,纵坐标代表了幅度.本文将传统和改进之后自然梯度算法分离所得的信号波形与源信号波形作对比,来验证算法的可行性.

图3 源信号波形Fig.3 Source Signal Model图4 混合信号波形Fig.4 The Hybrid Signal Waveform图5 改进前的分离波形Fig.5 Improved Previous Separation Waveform图6 改进后的分离波形Fig.6 Improved Separation Waveform

由图5、图6可以看出,以PReLU函数作为多层神经网络的激活函数,可以更好地将源信号分离出来.由于盲源分离具有随机性,即与源信号相比,无论是幅度和顺序皆有差异,所以仅从波形是无法准确判断这两种算法的好坏.因此,本文采用了性能指标PI来对算法的分离效果进行评价,以此来分析分离信号与原始信号的相似度.PI曲线越接近横坐标,则相似度越高;当PI=0时,则分离信号与原始信号的波形完全吻合.PI参数定义如下:

(3-2)

在(3-2)式中,B为分离矩阵,则可以得到全局矩阵G=BA,gij为全局矩阵G里的元素,maxi|gij|是G的第i行元素的最大值,maxj|gji|是第i列元素的最小值.

图7 PI性能比较图Fig.7 PI Performance Comparison Diagram

为了比较传统算法与改进算法的分离效率,在相同的环境下,对同一种混合信号进行分离,比较两种算法的收敛速度与稳定性能.如图7所示,改进后的自然梯度算法在收敛速度上比传统的自然梯度算法有明显提高,而且在其趋于平稳阶段,波动性更小,所以稳态误差也相对较小;传统的自然梯度算法在3 500步左右时开始逐步趋于稳定,而改进之后的算法在2 000步左右时也才开始趋于稳定;并且改进之后的算法PI值在0.908附近波动,而传统的自然梯度算法则在1.509的附近波动.综上所示,改进之后的算法在分离混合信号时的收敛曲线更光滑且振幅更小,有效地提升了算法的整体性能,使得信号的分离效果更好.

4 结论

本文提出了一种以PReLU函数为激活函数,并通过多层神经网络来估计任意信号的概率密度函数的后非线性盲源分离算法,该算法是在传统的MMI算法的基础上改进而来,可以有效解决在激活函数在负区间梯度消失的缺陷,仿真实验证明在分离信号的收敛速度和稳定性能上有显著的提高.但本文所研究的后非线性模型的发展并不成熟,源信号是需要知道它的先验分布,并且真实环境中是无法避免的,所以应对这一问题做进一步的研究.

猜你喜欢

概率密度函数梯度波形
幂分布的有效估计*
一个带重启步的改进PRP型谱共轭梯度法
一个改进的WYL型三项共轭梯度法
一种自适应Dai-Liao共轭梯度法
一个具梯度项的p-Laplace 方程弱解的存在性
用于SAR与通信一体化系统的滤波器组多载波波形
已知f(x)如何求F(x)
基于变构模型的概率密度函数的教学探索
Pareto最优稀疏频率雷达波形设计
基于ARM的任意波形电源设计