新阈值函数去噪方法在可降水量预报中的应用
2015-03-28陈晞杜言霞吴勇凯温继昌
陈晞,杜言霞,吴勇凯,温继昌
(泉州市气象局,福建泉州,362000)
1 引言
大气系统是一个非线性系统,大气观测数据必然是非线性时间序列。实际获得的大气观测数据总是不可避免地存在噪声,噪声的存在会淹没信号中的部分细节,给分析和研究带来困难。因此,降噪是时间序列分析的一个重要内容。由于大气观测数据是非线性时间序列,线性滤波方法不仅不能将噪声去除,而且可能使真实信号发生扭曲,从而引入新的噪声。
基于小波变换的非线性滤波却能很好的对这样的非线性序列进行去噪。小波滤波方法与线性滤波方法相比,能够在去除噪声的同时,很好地保留信号的突变部分,而且还不用考虑信号的频带是否重叠[1,2]。由于小波去噪的这些优点,小波去噪方法得到了越来越广泛的应用。
小波去噪的机理是基于信号与噪声的小波系数在尺度上的不同性质,采用相应的规则,对含噪信号的小波系数进行取舍、抽取或切削等非线性处理,以达到去除噪声的目的。Donoho和Johnstone在1994年提出的小波阈值法(WaveShrink)是小波域去噪的主要方法之一。该方法具有非常明显的渐进近似最优性质,可以在均方差意义下取得最优的去噪效果[3,4]。
小波阈值去噪算法中,选取合适的阈值函数是最基本的问题之一,对去噪效果有非常重要的影响[5]。本文首先讨论经典的硬阈值函数(hard shrinkage function)、软阈值函数(soft shrinkage function)和本文提出的新阈值函数,并运用信噪比(SNR)和最小均方误差(MMSE)对这几种阈值函数去噪效果进行衡量。然后将新阈值函数应用于大气可降水量时间序列,运用Kolmogorov熵和神经网络预测对去噪效果进行衡量。
2 小波阈值去噪方法
2.1 基本原理
假设一个一维含噪信号为
其中,fi为真实信号,σ为常数,ei为高斯白噪声,xi为含噪信号。一般情况下,有用信号通常表现为低频信号或是一些比较平稳的信号,而噪声信号则表现为高频信号。小波分析可以将信号多层分解,如图1所示,噪声部分通常包含在d1、d2、d3等高频系数中,利用阈值函数对小波系数进行取舍、抽取或切削等非线性处理,然后对处理后的小波系数进行重构,可以达到去噪的目的[6]。
2.2 小波阈值去噪的步骤
小波阈值去噪过程一般分为3个步骤[7]:
①对含噪信号进行小波变换,得到各层小波系数dj,k;
②利用阈值函数对小波系数dj,k进行处理,在尽可能多的保留小波系数中有用信号部分的同时,尽可能多的除去噪声部分。
在小波去噪的三个步骤中,如何对小波系数进行非线性处理是小波去噪的关键步骤,本文在经典软、硬阈值函数的基础上提出了新阈值函数。
2.3 阈值函数
经典软、硬阈值函数定义如下:
硬阈值函数为
图1 小波分解树图
软阈值函数为
其中dj,k为小波系数,sng(·)为符号函数,d^j,k为处理后的小波系数,tj为第j层的阈值,可根据如下经验公式计算[8]
软、硬阈值函数去噪虽然在实际中得到了广泛的应用,也取得了较好的效果,但它们本身存在着缺点。软阈值方法中,系数的估计和原系数存在着恒定的差值,发生了系数收缩,因而重构时会损失一些有用的高频信息,造成重构信号的信噪比较低,均方误差较大;而硬阈值方法,虽然能够保留原信号中的一些突变成分,但同时也可能产生新的不连续点,且对数据变化反应也很敏感,在重构信号时会出现一定的振荡,导致大的方差[9]。
因此,本文在经典软、硬阈值函数的基础上提出了新阈值函数,定义如下:
式中M为任意正常数,一般取为正整数,本文取M=5,当M趋于无穷时,新阈值函数逼近于硬阈值函数。
从定义可以看出,新域值函数克服可硬阈值函数不连续性的缺点和软阈值函数对大于阈值的小波系数进行收缩而产生较大偏差的缺点。
3 仿真实验
为了比较各种阈值函数去噪的效果,本文选用MATLAB中wnoise函数产生的含噪信号bumps来进行测试。运用信噪比(SNR)和最小均方误差(MMSE)来检验去噪效果的好坏,信噪比和最小均方误差定义为:
其中,Px为原始信号的能量,Px^-x为噪声的能量,N为原始信号的长度。信噪比越高说明信号中的噪声越小;最小均方误差越小说明去噪后信号与原始纯净信号越接近,去噪效果越好。
3.1 确定最优分解层数
为了确定对原始信号分解为多少层时去噪效果最好,本文选用db4小波对bumps信号进行分解,并用新阈值函数对小波系数进行处理处理,表1列出了不同分解层数的去噪结果。从表1可以看出,当分解层数N为5时,信噪比最大,最小均方误差最小,这时的去噪效果最好,因此本文选用的分解层数为5。
3.2 各种阈值函数去噪效果的比较
为了比较上述三种阈值函数的去噪效果,本文用db4小波对bumps信号进行5层分解,并分别用上述三种阈值函数进行处理,重构获得去噪信号。三种阈值函数去噪效果如表2所示。从表2可以看出,软阈值函数去噪的信噪比最小,最小均方误差最大,去噪效果最差;新域值函数去噪的信噪比最大,最小均方误差最小,去噪效果最好。
4 新阈值函数去噪在大气可降水量时间序列中的应用
4.1 基本原理
大气系统是非线性系统,对大气可降水量时间序列的去噪也需要采用非线性去噪方法。前文介绍的新阈值函数在bumps信号去噪中取得了较好的效果,这说明了新域值函数在非线性时间序列去噪中的优越性。本节将把新阈值函数应用于大气可降水量时间序列,检验新阈值函数是否适用于大气可降水量时间序列。
在实际中干净的信号是不存在的,不能像前文一样运用信噪比和最小均方误差来衡量去噪效果的好坏。因此,需要重新寻找一种能够衡量信号去噪效果的物理量。
文献10、11指出Kolmogorov熵表征了系统在n维相空间中的总体膨胀性质,从而给出系统演化过程中可能具有的不可预报性。利用Kolmogorov熵值可以直接分辨系统是规则或是不规则运动。当Kolmogorov熵为0时,运动有序;当Kolmogorov熵趋于无穷时,运动为随即状态,当Kolmogorov熵介于0与无穷大之间时,对应的系统便为混沌运动。Kolmogorov熵值的倒数描写了在一定精度内,使系统原信息仍然有“效”的平均时间尺度,即系统的平均可预报时间[10,11]。
很容易知道噪声会使时间序列的可预报性降低,可预报时间缩短。如果时间序列中含有的噪声较大,则可预报时间较短,Kolmogorov熵较大;如果时间序列中所含噪声较小,则可预报时间较长,Kolmogorov熵较小。因此,本节选用Kolmogorov熵来衡量新阈值函数对大气可降水量时间序列去噪效果的好坏。
表1 不同分解层数时新域值函数的去噪效果
表2 硬阈值函数、软阈值函数和新域值函数的去噪效果
同时,本文还将运用RBF神经网络对去噪前后的可降水量时间序列进行一步预测,观察去噪信号的可预测性是否增强。如果去噪时间序列的预测效果比原始时间序列的去噪效果好,则说明了新阈值函数去噪减小了原始时间序列中的噪声,从而适用于可降水量时间序列的去噪。
Grassberger和Procaccia提出了从时间序列计算吸引子关联维D2的G-P算法[12],并提出通过计算K2熵来逼近Kolmogorov熵的思想[13],但该方法比较非常复杂。赵贵兵,石炎福等在G-P算法的基础上提出用最小二乘法同时从时间序列计算出关联维和Kolmogorov熵的方法,该方法得到了Kolmogorov熵的稳定估计[14]。该方法计算简单,且结果较好,因此,本文直接使用该方法来计算可降水量时间序列的Kolmogorov熵。
4.2 Kolmogorov熵验证可预测性
采用泉州、龙岩等8个地方2012年4月30日00时到2013年4月30日18时每日4次的分辨率为1°×1°的大气可降水量数据,每个地方总共1464个数据点,数据来源为NCEP再分析格点资料。首先,采用新阈值函数对8个地方的原始含噪信号进行滤波,获得去噪信号。然后,采用最小二乘法分别计算这8个地方的原始信号和去噪信号的Kolmogorov熵,结果如表3所示。从表中可以看出,去噪信号与原始信号相比,Kolmogorov熵明显减小,说明去噪信号的平均可预报时间增长,可预报性增强,去噪信号比原始信号相比噪声明显减小。因此,新阈值函数同样适用于大气可降水量时间序列。
4.3 RBF神经网络对可降水量时间序列进行预测
近年来,人工神经网络在气象预报领域获得了较快的发展,并取得了较好的结果,部分成果甚至高于业务预报水平[15]。本文运用RBF神经网络对大气可降水量时间序列进行预测,根据预测结果的好坏来判断去噪时间序列的可预测性是否增强,噪声是否减小。马莎、肖明等在基于混沌RBF网络的地下厂房围岩变形预报一文中详细介绍了RBF神经网络对非线性时间序列进行预报的算法算法[16]。
首先将泉州地区的大气可降水量时间序列运用新阈值函数进行去噪,并将原始时间序列和去噪时间序列归一化到均值为0,幅度为1。然后分别对这两个归一化序列进行处理,前1300个数据点作为训练样本,之后100个数据作为测试序列。为了衡量测试结果的好坏,我们引入了预测绝对误差ERR和最小均方误差MMSE,其定义如下:
测试结果如图2(a)、图2(b)、图2(c)所示。从图可以看出,去噪时间序列的预测误差明显小于原始时间序列的预测误差。计算可得,原始时间序列预测值的最小均方误差为0.00321,去噪时间序列预测值的最小均方误差为0.00097,所以去噪时间序列的可预测性明显增强了。
同样,用RBF网络对其它7个地方的可降水量时间序列及其去噪序列进行预测,其最小均方误差如表4所示。表4显示,这8个地方大气的可将水量时间序列,经新阈值函数去噪后,时间序列的可预测性明显增强,与Kolmogorov熵所得出的结果一致,因此新阈值函数适用于可降水量时间序列的去噪。
5 小结
小波阈值去噪是目前应用最为广泛的一种小波去噪方法,它在去除噪声的同时能较好的保留信号的局部特性。本文在经典软、硬阈值去噪的基础上提出了新阈值函数去噪。测试结果表明,与经典软、阈值函数去噪相比,新阈值函数去噪提高了信号的信噪比,同时降低了最小均方误差。将新阈值函数去噪算法应用于大气可降量时间序列,并运用Kolmogorov熵和RBF神经网络预测对去噪效果进行衡量,结果表明,新阈值函数去噪提高了时间序列的可预测性。因此,新阈值函数更适用于可降水量时间序列等大气观测数据的去噪过程。
表3 泉州等8个地方的Kolmogorov熵
图2 (a)原时间序列中测试序列及其预测结果
图2 (b)去噪时间序列中测试序列及其预测结果
图2 (c)原时间序列和去噪时间序列的预测绝对误差
表4 泉州等地区原始序列和去噪序列预测的最小均方差
[1]潘泉,张磊等.小波滤波方法及应用[M].北京:清华大学出版社,2005:5-9.
[2]Vidakovic B,lozoya C B.On time-dependent wavelet denoising[J].IEEE Trans.Signal Processing,1998,46(9):2549~2551
[3]Donoho D L.De-noising by soft—thresholding[J].IEEE Trans Inform Theory,1995,41(3):613—627
[4]Donoho D L,Johnstone I M.Ideal spatial adaptation by wavelet shrinkage[J].Biometrika,1994,81(3):425-455
[5]Bruce A G,Gao Hongye.Understanding wave shrink:cariance and bias estimation[J].Biometrika,1996,83(4):727—745
[6]孙斌,周云龙等.气液两相流压差波动信号小波去噪中阈值规则的确定[J].信号处理,2006,22(1):96-99
[7]汪同庆,郭子义,刘家兵,叶俊勇.一种基于改进阈值函数的小波域超声信号去噪方法[J].无损检测,2006,29(11):641-643
[8]Ibarra-Castanedo C,Galmiche F,Darabi A,et al.Thermographic nondestructive evaluation:overview of recent progress[J].Proceedings of SPIE,2003
[9]林颖,常永贵等.基于一种新阈值函数的小波阈值去噪研究[J].噪声于振动控制,2008,(1):79-81
[10]朱育峰,严绍瑾,彭永清.从一维气候时间序列直接提取K熵及其可预报时间的估计[J].南京气象学院学报,1994,(1).
[11]林振山.非线性力学与大气科学[M].南京:南京大学出版社,1993:305-310
[12]Grassberger P,Procaccia I.Characterization of strange attractors.Phys Rev Lett,1983,50(5):346-349.
[13]Grassberger P,Procaccia I.Estimation of the Kolmogorov entropy from a chaotic signal.Phys Rev A,1983,28(4):2591-2593.
[14]赵贵兵,石炎福,段文峰,等.从混沌序列同时计算关联维和Kolmogorov熵[J].计算物理,199:16(5):309~315
[15]洪展.一次台风暴雨过程的水汽特征分析.气象研究与应用,2014,35(4).
[16]马莎、肖明等.基于混沌RBF网络的地下厂房围岩变形预报.武汉大学学报,2009.