非高斯冲激干扰下基于Softplus 函数的核自适应滤波算法*

2021-01-28 08:14火元莲王丹凤龙小强连培君齐永锋
物理学报 2021年2期
关键词:高斯滤波器线性

火元莲 王丹凤 龙小强 连培君 齐永锋

1) (西北师范大学物理与电子工程学院, 兰州 730000)

2) (西北师范大学计算机科学与工程学院, 兰州 730000)

1 引 言

传统的线性自适应滤波算法对于线性系统具有良好的跟踪能力, 但是在解决诸如语音回声消除、系统识别、时间序列预测等非线性输入输出的实际应用时算法跟踪性能会变差[1].最初对于非线性问题的处理是将多个线性自适应滤波器进行串联, 其中最为经典的例子是Hammerstein-Wiener模型[2], 但是这种处理模式实质上仍然是单个滤波器的线性处理, 无法对更一般化的非线性系统进行有效跟踪.1968 年, Gabor[3]曾利用Volterra 序列来避免非线性滤波所面临的问题, 然而Volterra序列在实际应用中计算复杂度随阶数以指数级运算量增长并且在脉冲噪声环境下性能显著下降[4].

极端学习机通过将输入映射到高维空间, 使输入数据在高维空间具有线性特性[5], 据此, 研究者们注意到了核方法是一种将线性算法扩展到非线性层面的一种有力工具, 因此核方法在非线性自适应滤波领域受到了极大重视.核方法的核心思想是将输入数据通过所对应的核函数映射到高维空间(希尔伯特空间), 然后采用核评价的方法去计算内积.一般线性滤波算法在滤波过程中需要进行内积运算, 这与核方法有一定的相似之处, 因此将线性滤波算法的内积操作使用核变换到高维空间并在高维空间中使用核函数来代替内积运算操作, 这极大地降低了计算复杂度.最早将核方法应用于自适应滤波算法的是弗里班德·哈里森(Frieband Harrison)[6].而Liu 等[7]于2008 年成功将核方法应用于最小均方算法并提出了核最小均方误差(kernel least-mean-square algorithm, KLMS)算法, 该算法结构简单易于实现, 并且在解决非线性实际应用问题时比线性自适应滤波算法性能更优.之后Engel 等[8]将递归最小二乘法扩展到非线性领域提出了核递归最小二乘(kernel recursive least squares, KRLS)算法.Liu 等[9]又对KRLS 算法进行了改进, 提出了扩展的KRLS 算法, 首次实现了线性空间中的广义非线性状态模型[10−14].关于复杂系统的建模问题, 分数阶微积分模型比整数阶微积分模型更加准确, 同时还能包含系统的遗传和记忆效应[15].Gao 和En[16]充分考虑了 α 稳态噪声分布, 提出了一种基于分数低阶统计准则的核最小均方p 次幂(kernel least mean p-power, KLMP)算法.但上述算法都是基于均方误差准则假设在高斯环境下得出的一般性结论, 而实际在非高斯冲激干扰下均方误差准则会出现严重下降甚至可能失效, 于是研究者们又提出了各种改进算法, 用以解决核自适应滤波算法在非高斯冲激干扰下稳定性不足的问题.Dai 和Jin[17]提出的核仿射投影p 范数(kernel affine projection p-norm algorithm, KAPP)滤波算法利用最小波散(minimum dispersion, MD)准则和仿射投影(affine projection, AP)算法实现,进一步提高了α 稳定分布噪声环境下的非线性自适应滤波性能.李群生等[18]在核学习自适应滤波算法基础上提出了一种基于惊奇准则的多尺度核学习仿射投影滤波算法(multi-scale kernel learning affine projection based on surprise criterion, SCMKAPA), 用于提高非线性信号的噪声消除能力.

近年来, 抗脉冲干扰的鲁棒性自适应滤波算法得到了广泛的研究, 文献[19]是在KLMP 基础上提出的一种基于分数低阶统计误差准则[20]的抗非高斯冲激噪声的核分式低次幂(kernel fractional lower power, KFLP)算法, 但KFLP 算法存在收敛速度慢的问题.为了改进KFLP 算法的收敛速度,本文提出了一种基于Softplus 函数的核自适应滤波算法(SP-KFLP)应用于非高斯噪声环境,该算法将Softplus 函数与核分式低次幂准则相结合, 利用输出误差的非线性饱和特性通过随机梯度下降法更新权重.在系统辨识环境下将本文算法SP-KFLP 与KFLP, KLMS, S 型核分式低次幂 (sigmoid kernel fractional lower algorithm,S-KFLP) 算法、核最大相关熵(kernel maximum correntropy criterion, KMCC)算法进行比较, 用伯努利高斯信号和非高斯冲激干扰作为输入信号的仿真结果表明, 本文算法对脉冲干扰的鲁棒性优于KFLP 和KLMS 算法, 与S-KFLP 算法相比,SP-KFLP 算法收敛速度更快, 达到的稳态偏差也更小.

2 核分式低次幂自适应算法(KFLP)

2.1 系统识别模型

考虑如图1 所示的非线性系统识别问题, 在时刻n 处一般序列 un经过未知非线性系统, 假设未知系统系数和输入信号被表示为wo=[w0,w1,wL−1]T和 un=[u1,un−1,··· ,un−L+1]T, 其中L 为滤波器长度.由于实际系统本身存在一定的噪声干扰, 假定观测到的期望信号 d (n) 被 附加噪声 v (n) 破坏,其中 v (n) 是具有零均值和方差的额外背景噪声.本文采用核自适应滤波器控制滤波, 其中 φ (n) 是核映射函数.则未知系统和自适应滤波器的输出之间的估计误差为e(n)=d(n)−其 中wn=[wn,0,wn,1,··· ,wn,L−1]T表示自适应滤波器在n 时刻的抽头系数.

图1 系统识别模型Fig.1.System identification model.

2.2 KFLP 算法

核方法是一种寻找隐藏在未知非线性系统中的非线性关系的有效方法[19].核自适应滤波器的输入信号是将一般的信号数据经过再生核变换到高维空间, 根据这个非线性映射得到了一种以线性方式跟踪非线性系统的滤波方法.核方法的本质是一个内积运算, 因此将算法表示为内积形式时, 可以直接用核函数代替内积计算.Mercer 定理表明任意再生核 κ (u,u′) 可以扩展如下[21]:

其中, ξi指的是相关特征值, φi指的是映射值, u 指的是一般性输入信号在n 时刻的值, u′为下一时刻的输入信号.利用(1)式即可将输入信号u 进行变换产生 φ (u) , 且给定新的输入序列φ(u)Tφ(u′)=κ(u,u′)[22].给定输入序列 un以及期望序列 dn, 基于文献[16]的核分式低次幂代价函数:

给 定 φ (un) = φ (n) 作为核自适应滤波器的输入,e(n) 为系统的输出误差, wT(n)=w(n)T为核自适应滤波器权重, p 为误差低次幂.根据随机梯度下降法, 将代价函数对抽头系数求梯度可以得到KFLP 算法的权重更新公式为:

其中 µ 为步长.那么对于给定系统, 滤波器输出表示为:

3 基于Softplus 函数的核自适应算法原理及性能

3.1 算法原理

本文提出的基于Softplus 函数的核自适应滤波算法是将Softplus 函数与核分式低次幂算法的代价函数相结合从而构造一个新的代价函数, 一方面理论研究已经表明误差的低次幂可以抑制误差变化较大引起的算法性能降低, 另一方面Softplus函数作为神经网络的激活函数, 其理论表达式为log(1+ex), 利用此函数对x 求微分, 那么Softplus函数的导函数是 1 /(1+e−x) , 这与Sigmoid函数是一致的并且该函数呈对数变化, 计算速度相较于Sigmoid 函数更快.经过以上启发定义Softplus 函数为并将其与核分式低次幂代价函数结合, 构造的新的代价函数为

根据(5)式, 当有冲激噪声干扰时该代价函数的梯度是趋于0 的, 这就有效地抑制了算法权重更新过程, 使本文算法的抗冲激性能在低次幂的基础上进一步增强.然后将基于Softplus 函数的核自适应代价函数根据最速下降法对权重向量 ω 求导得到:

因此, 利用负随机梯度下降法可以得到算法的权重更新公式

将(6)式代入(7)式即可得到SP-KFLP 算法的权重更新公式:

令初始 ω (i)=0 , 经过i 次迭代以后, 给自适应滤波器一个新的输入 u (n) 可以得出滤波器的输出信号, 本文算法选用的核函数为高斯核κ(u,u′)=exp(−h‖u −u′‖2), h 为高斯核的核宽.高斯核类似于一个径向基函数, 可以无限逼近于任一条曲线.本文算法与一般的核自适应滤波算法类似, 不同的是引入了一个Softplus 函数使算法的收敛速度、抗冲激干扰能力进一步增强.

3.2 算法收敛性能分析

本节主要解析描述所提出的SP-KFLP 算法的收敛性能, 首先推导了该算法的能量守恒关系然后给出了均方收敛的一个充分条件.一个非线性回归系统为

其中误差为

将(9)式代入(10)式,得到e (i)=ea(i)+v(i),其中 ea(i)=ŵ(i −1)Tφ(i)为先验误差,ŵ(i−1)是权重估计偏差,ωo(i)为最优权重也就是非线性系统的冲激响应.将(7)式两边同时减去 wo(i) 得到:

定义一个后验误差 ep(i)= ŵ(i)Tφ(i) , 将(11)式代入得到后验误差的表达式为

根据(11)式和(12)式中的相等关系

得到关于 ŵ 的表达式

对(14)式两边利用 L2范数平方, 以及能量守恒关系可以得到:

(15)式为本文算法的能量守恒关系式, 将(12)式代入(15)式得到如下表达式:

对(16)式求期望, 即

通过(19)式得到SP-KFLP 算法的收敛性能在理论上满足的充分条件为

由于式子难以计算, 通常以实验仿真为准.

4 算法仿真

为了进一步说明所提算法在非线性系统应用中的有效性, 将SP-KFLP 算法与KFLP, KLMS,KMCC 和S-KFLP 算法的学习曲线进行比较, 以验证本文算法在收敛速度和抗冲激干扰下的优越性能.在以下的所有实验中将初始权重向量 ω0均设置为0 向量, 令步长 µ =0.5.因为一般地, 对自适应滤波算法而言步长越接近于1 收敛速度会越快, 但同时其稳定性必然也会变差, 而实验发现本文算法步长选择0.5 是非常理想的值, 因此以下的仿真中SP-KFLP 算法步长为0.5, 所有实验性能曲线由归一化均方误(normolized mean square error, NMSE)准则得出.本文实验仿真条件是基于一个由线性模型与非线性模型组合而成的非线性系统, 其中线性模型为 H (z)=1+0.2z−1, 非线性模型为 f (n)=x(n)−0.6x2(n) , 因此该非线性系统的期望输出为 d (n)=x(n)−0.6x2(n)+v(n) , 其中 v (n) 为额外误差, 本文采用高斯白噪声与冲激噪声组合的噪声环境.一般的冲激噪声可以被表示为伯努利-高斯过程[21], 由 q (n)=a(n)c(n) 表示, 其中c(n) 是一个伯努利过程且成功的概率为 pq, a (n) 是一个0 均值的高斯白噪声过程, 且设定高斯核函数的核宽参数 h =0.2.

4.1 误差低次幂p 对SP-KFLP 算法性能影响

为了获得合适的p 值, 首先考察不同的p 值对SP-KFLP 算法性能的影响, 实验假设存在非高斯冲激噪声干扰, 令 pq=0.01.p 分别取0.9, 0.8,0.7, 0.6 时SP-KFLP 算法的归一化学习曲线如图2 所示.

从图2 可以看出, 本文算法随着p 值趋近于1 稳定性能越来越好, 当然偏离1 时收敛性能也随之下降, 因为p 值是基于分式低次幂准则而出现,它本身取值是小于1 的数, 只兼顾了算法的稳定性, 而且 p =0.6 的时候算法已经相对很不稳定了.因此, 本文将0.9 作为理想的p 值, 这在一定程度上减小了收敛速度过慢的问题, 以下的所有仿真实验中p 值都为0.9.

4.2 Softplus 函数的陡度参数 α 对SP-KFLP算法性能影响

为了找到合适的陡度参数 α 进而使得算法性能更优, 本文在非高斯冲激干扰下(pq=0.03), 令α值分别取1.0, 0.8, 0.5, 0.1 时对比了算法的归一化均方误差性能曲线, 如图3 所示.

从图3 可知, α 取值越大算法的收敛速度越快、稳定性越好, 所以文中所有实验中 α 值均取1.由于代价函数采用误差的低次幂, 需要一个新的参数来改变算法的收敛性能, 而本文算法采用Softplus函数的陡度参数来实现这一改变, 保证了算法具有较快的收敛速度.

4.3 本文算法与其他算法性能比较

将本文算法SP-KFLP 与传统KLMS, KMCC,KFLP 和S-KFLP 算法用于未知系统的追踪, 并就收敛性和抗冲激干扰性能进行如下比较.

1) 5 种算法在高斯分布噪声下的性能对比.实验中假设加性高斯白噪声的均值为0、方差为0.02,5 种算法的NMSE 曲线如图4 所示.从图4 可以看出, 在高斯噪声环境下本文算法与KFLP, SKFLP 算法均可以达到良好的收敛效果, 但本文的SP-KFLP 算法收敛速度比其他几种算法的快,说明本文算法具有更优的收敛性能.

2) 在非高斯冲激噪声中的性能比较.实验中假设存在3%的冲激噪声, 即 pq=0.03.为提高KLMS 算法稳定性, 参数 µ 选择为0.1, 其他同上面实验中参数的选择, 实验结果如图5 所示.从图5可以看出, 本文的SP-KFLP 和KFLP, S-KFLP算法均具有很强的脉冲噪声抑制能力, 但KLMS算法的脉冲噪声抑制能力比较差, 而且SP-KFLP算法的收敛速度比KFLP, S-KFLP 算法快.

图4 KLMS, KMCC, KFLP, S-FKLP 和 本 文SP-KFLP算法的比较Fig.4.Comparison of KLMS, KMCC, KFLP, S-FKLP and SP-KFLP algorithms in this paper.

图5 非高斯干扰下的KFLP, KLMS, S-KFLP 与SP-KFLP算法比较Fig.5.Comparison of KFLP, KLMS, S-KFLP and SPKFLP algorithms under non-Gaussian interference.

图6 在第600 次迭代过程中加入冲激噪声时各算法性能对比Fig.6.Performance comparison of algorithms when impulsive noise is added in the 600th iteration.

3) 在高斯白噪声环境(即 pq=0), 且在第600 次迭代时产生一个冲激噪声的情况下本文的SP-KFLP 和其他算法的性能对比如图6 所示.从图6 中可以发现, KFLP 算法收敛速度是快于KLMS 算法的, 此外在第600 次迭代时产生冲激噪声, KLMS 算法不具有抗冲激噪声的性能, 而本文算法相比于其他算法其收敛速度最快, 并且能有效地避免冲激噪声的干扰.

综上, SP-KFLP 算法在非高斯和非线性环境下具有良好的脉冲噪声抑制能力和较快的收敛速度.

5 结 论

本文提出了一种非高斯噪声环境下基于Softplus函数的核自适应滤波算法, 该算法一方面利用Softplus 函数的非线性饱和特性来抑制冲激噪声,另一方面将误差的倒数作为权重向量更新公式的系数, 保证了在误差突然增大时该系数取值很小,进而利用权重向量不更新的方法来抵制冲激噪声.仿真结果表明所提算法提高了抗脉冲干扰能力的同时加快了彩色输入信号的收敛速度, 也就是很好地兼顾了收敛速度和跟踪性能稳定误差的矛盾, 并且在高斯噪声下的性能也优于传统的核自适应算法.

猜你喜欢
高斯滤波器线性
渐近线性Klein-Gordon-Maxwell系统正解的存在性
线性回归方程的求解与应用
数学王子高斯
天才数学家——高斯
从滤波器理解卷积
二阶线性微分方程的解法
开关电源EMI滤波器的应用方法探讨
基于Canny振荡抑制准则的改进匹配滤波器
基于TMS320C6678的SAR方位向预滤波器的并行实现
从自卑到自信 瑞恩·高斯林