时间序列ARMA模型在海表温度中的应用

更新时间:2024-02-26 10:04:01 阅读量: 综合文库 文档下载

说明:文章内容仅供预览,部分内容可能不全。下载后的文档,内容与下面显示的完全一致。下载之前请确认下面内容是否您想要的,是否完整无缺。

时间序列ARMA模型在海表温度中的应用

作者

摘要:时间序列分析是概率统计学中应用性较强的一个分支,其在海表温度的预测等领域也有着广

泛应用。海表温度(SST)是海洋与大气之间相互作用的关键因素,本文在对海表温度SST分析的基础上,展示海表温度在一定时期内的变动过程,从中寻找和分析事物的变化特征、发展趋势和规律。获得海表温度随时间过程的演变特性与规律,进而预测海表温度的未来发展。本文在时间序列ARMA模型的基础上,利用AIC准则对模型进行定阶,并对时间序列随机项利用Daniel进行平稳性检验以及残差利用Ljung-Box检验进行白噪声检验。

关键词:海表温度;ARMA模型;AIC准则;Daniel检验;Ljung-Box检验 中图分类号: 文献标识码:A 文章编号:

1 引言

海表温度不仅是用于描述海洋表层热状况的主要指标,其异常还是海洋影响大气环流和气候变化的重要因子,在海气相互作用研究中,海表温度一直是人们观测、研究和预报的重要对象

[1]。海

洋约占地球表面积的70%,全球海洋吸收的太阳辐射量约占进入地球大气的总太阳辐射量的70%左右,对大部分存储在海洋表层。这些被存储的能量将以潜热、长波辐射和热交换的形式传输给大气,驱动大气运动。海洋热状况的变化将对大气运动的能量发生重要影响,从而引起全球气候和环境变化。由此可见,海洋是全球气候系统的组成部分,是调节和制约气候异常的重要因素

[2]。海表温度

是海洋的主要物理参数之一,在大气与海洋间热量、动量及水汽交换中扮演着重要角色。他是决定海气相互作用及气候变化的重要因素

[3]。海表温度数据已经被广泛的运用到多个海洋研究领域。例

[4]如,海表温度是控制生物种群分布、洄游和繁殖的基本量实际生活中有着极其重要的作用。

。因此海表温度数据集的研究、预测在

一个时间序列,展示了被研究对象在一段时间内发展变化过程。所谓时间序列方法,就是指在所研究对象的一组实测时间序列基础上,通过各种数学的分析处理手段,寻找序列变化特征、发展趋势与规律,进而对未来某时刻研究对象的状态作出估计。这样,就把影响研究对象的一切因素由“时间”综合起来描述了

[5]。ARMA模型理论已被证明是实现平稳时间序列建模的有效工具之一,

可用于谱估计、预测、控制、故障诊断等领域,具有广阔应用前景。滑动自回归(ARMA)模型不

1

仅与它以前时刻的响应有直接关系,而且还与它以前时刻的进入系统的扰动存在着一定的相关关系。这种模型与其他预测方法,具有以下特点:ARMA模型预测只考虑预测序列本身历史数据反映和包容的信息,几乎不直接考虑其他相关指标的信息;ARMA预测方法主要用于短期预测;由于ARMA预测模型不直接考虑其他相互因素的变动,预测方法比较简明,适合于指标数量不大但预测频度较高的预测工作[6]。

趋势性、周期性、突变性是时间序列的基本特征,同样海表温度SST也有其相应的性质。而在做ARMA模型前,我们需对时间序列判断并剔除趋势项、周期项,从而得出随机项。目前国内外对ARMA模型的研究已相对较为完整,因此,在ARMA模型的处理方法中比较具有针对性。在对随机项做ARMA模型,首先需要对其进行平稳性检验,通过平稳性检验的随机项才能够用来建立ARMA模型。本文给出了观察时序图、自相关图检验、单位根检验以及Daniel检验法四种方法,并Daniel检验法对本文中随机项序列进行平稳性检验;平稳性检验通过则进行下一步,否则进行差分处理非平稳随机序列,本文对各海域大量的时间序列集做一阶差分,发现所有不平稳随机序列在一阶差分后达到平稳;在ARMA模型中,本文主要考虑的是对模型进行定阶,模型定阶目前主要有三种方法:一、对于平稳序列的自相关函数及偏自相关函数具有很好的截尾性特征的模型,可根据其截尾点来定阶,而对于ARMA模型的ACF与PACF都具有拖尾性,此种方法并不适用。二、残差方差图定阶法只能给出模型定阶的一个粗略的判定,因此本文不作过多考虑。三、在日本学者赤池(Akaike)提出的AIC准则基础上,我们给定阶数的范围从中寻找最优阶数,此种方法精确度相对较高可行,被本文所采用[7];在ARMA模型阶数确定的基础上,本文求出残差,并利用Ljung-Box检验法对残差进行白噪声检验,证实模型的可靠性。

2 模型建立与分析

滑动自回归(ARMA)模型在预测模型着起着重要的作用,利用其对时间序列海表温度随机项进行定阶,从而进行短期预测,对于海表温度的分析以及海表温度测试的准确性等,具有重要的现实意义。

2.1 ARMA模型介绍

如果时间序列Xt是独立的,没有任何相关关系,这样的资料所揭示的统计规律是事物独立的随机变动,系统无记忆能力,对于这样的问题可用多元统计分析进行研究;而如果时间序列Xt之间有一定联系,我们需找出其运动规律,并根据这个规律建立模型,对系统未来的发展进行预测与控制。

而如果一个系统在时刻t的响应Xt不仅与它以前时刻t-1,t-2,??的响应Xt?1,Xt?2,??有直接关系,而且还与以前时刻t-1,t-2??进入系统的扰动?t?1,?t?2??存在一定的相关关系,那么此类系统为滑动自回归(ARMA)模型。数学模型如下:

2

?Xt??0??1Xt?1????pXt?p??t??1?t?1???q?t?q???p?0,?q?0 ?2?E(?t)?0,Var(?t)???,E(?t?s)?0,s?t?E(?X)?0,?s?tts?其中:Xt--随机过程 ?t--白噪声过程

特别的,当?0?0时,称为中心化ARMA(p,q)模型,引进延迟算子,则可记为:

?(B)Xt??(B)?t

其中,?(B)?1??1B??2B????pB为p阶自回归系数多项式 ?(B)?1??1B??2B????qB为q阶滑动平均系数多项式

因此,在平稳时间序列建立模型时,可先拟合一个ARMA(p,q)模型,然后根据其参数值

2q2p?1,?2,??p和?1,?2,??q是否显著为0这一信息来寻找较为合理的模型,再拟合相应模型检验其适

应性

[7]。

根据ARMA模型的性质,给出ARMA模型定阶的流程图,如图1:

3

给出时间序列 时间序列数据白噪声检验 Y N 判断趋势性 Y 剔除趋势项 N 判断周期性 Y 剔除周期项 N 得到随机项 平稳性检验 Y N 差分 利用AIC准则对ARMA模来定阶、同时求出残差 残差进行白噪声检验 Y 建模结束 N 模型重选

图1:ARMA模型定阶流程图

4

2.2 预处理及分析

在ARMA模型是定阶以及实现过程前,需对海表温度时间序列数据集进行处理。我们知道,时间序列具有加法模型[8]:

Xt?Mt?St?Yt

其中,Xt:原始数据项;Mt:趋势项;St:周期项(季节项);Yt:随机项。

因此,在进行ARMA模型定阶预测前,我们需对时间序列进行趋势项检验剔除以及周期项检验剔除。这里,对海表温度数据集趋势项、周期项的检验与剔除不一一详述。

2.3 白噪声检验 2.3.1 白噪声定义

时间序列Xt,如果是由一组不相关的随机变量序列构成,及对于所有s不等于t的随机变量Xt与Xs的协方差为0,则为随机过程。对于纯随机过程,若期望和方差均为常数,则称之为白噪声过程。数学模型如下:

如果序列?Xt?满足:E?Xt???,Var?Xt???,Cov?Xt,Xs??0,?t?s

2则称?Xt?为白噪声序列,记为Xt~WN?,??2?

因此,白噪声序列是一组完全无关的时间序列集。在对一组时间序列数据集进行白噪声检验通过时,说明这组序列没有规律,不需要建立任何模型。同时,值得注意,在对ARMA模型残差序列进行白噪声检验时,需通过白噪声检验,上文中ARMA模型定义中可以看出残差序列是白噪声过程。

2.3.2 Ljung-Box白噪声检验

白噪声是纯随机性序列,它具有性质?k?0,?k。因此可以通过检验下列假设来检验序列是否是白噪声:

H0:?1??2????m?0?H1:?k?m,使得?k?0记:

?k????n?k?t?t?k,k?1,2?,m

t2?t?1n?k???t?1其中,?t为残差,m为?t自相关函数的拖尾数。 则统计量为LB(Ljung-Box)统计量

??5

?k2???LB?n(n?2)?k?1??n?k??

??m在原假设成立的条件下,LB近似服从自由度为m-r的卡方分布?(m?r),其中r是估计的模型参数个数,因此LB????m?r?时拒绝原假设。

22

2.3 平稳性检验 2.3.1 平稳性定义

这里的平稳指宽平稳。即如果序列?Xt?满足下列条件,则称为是平稳的: 1.E?Xt???,?t 2.Var?Xt???2,?t

3.Cov?Xt,Xs??Cov?Xt?k,Xs?k?,?s,t,k

2.3.1 平稳性检验

平稳性检验的方法很多,本文给出四种平稳性检验的方法,并使用Daniel检验法通过软件MATLAB来实现。 方法一:观察时序图

根据平稳性的定义,平稳序列具有常数均值和常数方差的性质,因此其时序图应该在一个常数值附近波动,且波动的范围有界;具有明显趋势性和周期性的序列通常不是平稳序列。

方法二:自相关图检验

平稳序列通常只具有短期的自相关,即自相关函数(ACF) 往往很快的衰减到零。因此衰减很慢的序列很可能是非平稳的。

方法三:单位根检验(ADF检验)

ADF检验,在一定的显著性水平下。接受存在一个单位根的原假设,则说明序列是非平稳的。 对于AR(p)过程,如果其特征方程的所有特征根都在单位圆内,则序列?xt?平稳,如果有一个特征根存在且为1,则序列非平稳,且自回归系数之和恰好等于1。证明如下:

???1?如下假设检验:

pp?1?L??p?0?1??1?L??p?0??1??2?L??p?1

??1因此,对于AR(p)过程我们可以通过检验自回归系数之和是否等于1来检验序列的平稳性。作

H0:??0?H1:??0 ???1??2?L??p-1

6

ADF检验统计量:??????为参数?的样本标准差。 ,其中S????S??ADF检验有三种类型,分别为: 无常数均值、无趋势的p阶自回归过程:

xt??1xt?1???pxt?p??t

有常数均值、无趋势的p阶自回归过程:

xt????1xt?1???pxt?p??t

有常数均值、有线性趋势的p阶自回归过程:

xt????t??1xt?1???pxt?p??t

方法四:Daniel检验

这里着重强调Daniel检验法。Daniel检验法建立在Spearman相关系数的基础上。Spearman相关系数是一种秩相关系数。样本秩的概念如下:

设x1,x2?xn是从一元总体抽取的容量为n的样本,其顺序统计量x(1),x(2)?x(n)。若

x(i)?x(k),则称k是x(i)在样本中的秩,记为Ri,对每一个i=1,2,??,n。称Ri是第i个秩统计

量。R1,R2,?Rn总称为秩统计量。例如,对样本数据

-0.8,-3.1,1.1,-5.2,4.2

顺序统计量

-5.2,-3.1,-0.8,1.1,4.2

则秩统计量

3,2,4,1,5

对时间序列的样本X1,X2?Xn,记Xt的秩为Rt?R(Xt),考虑变量对(t,Rt),t=1,2,?,n的Spearman的相关系数qs,有

qs?1?构造统计量

6n(n2(t?R)??1)ti?1n2

T?作如下假设检验

qsn?21?q2s服从自由度n-2的t分布

H0:序列Xt平稳,H1:序列Xt非平稳

7

Daniel检验方法:对于显著水平?,若T?t?(n?2),则拒绝H0,认为序列非平稳。当qs?0时,

2序列有上升趋势,而当qs?0时,序列有下降趋势;T?t?(n?2)时,接受H0,认为序列平稳。

22.4 差分

差分是通过逐项相减消除前后期数据相关性的方法,可继续剔除序列中的一些趋势性,是非平稳序列的均值平稳化处理常用方法。差分运算可用后移算法B或差分因子?以及相应阶数d表示。

1阶差分?Xt?Xt?Xt?1?(1?B)Xt

2阶差分?Xt?Xt?2Xt?1?Xt?2?(1?B)Xt ??

d阶差分?Xt?(1?B)Xt

其中,??(1?B)?1?CdB?CdB???(?1)dd122d?1dd22Bd?1?(?1)dBd为d阶差分算子。

差分后序列可将非平稳序列转化为稳定在常数附近的平稳序列,对差分后的序列拟合ARMA模型进行分析与预测。本文对各个海域海表温度的数据测试时,剔除趋势项与周期项后的个别不平稳序列的随机项进行一阶差分,发现全部平稳。因此,这里我们认为对海表温度数据集随机项进行一阶差分后,可满足平稳性要求,因此可以用来ARMA模型拟合预测。

2.5 ARMA模型定阶

对于平稳序列的自相关函数及偏自相关函数一般具有比较规范的统计特征。对于单纯的AR模型(MA模型),可根据偏相关PACF的截尾性来判定(根据自相关ACF的截尾性)。而对于ARMA模型的ACF与PACF都具有拖尾性,所以通过ACF与PACF的统计特征并不能很好的给ARMA模型定阶。

而残差方差图定阶法[7]只能给出模型定阶的一个粗略的判定,所以本文给出最佳准则函数的定阶法。该函数既考虑了模型的拟合时对原始数据的接近程度,又考虑了模型中所含待定参数个数最简略,建模时按准则函数取值的确定模型的优劣,使准则函数达到极小的就是最佳模型。

日本学者赤池(Akaike)提出了AIC准则[7],其指导思想:一方面是衡量拟合程度的似然函数值;另一方面是模型中未知参数个数。通常似然函数值越大、未知参数个数越多模型拟合精度越高,但又不能单纯的以拟合精度来衡量模型好坏,这样势必会导致未知参数个数较多。因此一个好的模型应该是一个拟合精度和未知参数个数综合最优配置,AIC准则在此考虑下提出,是拟合精度与参数个数的加权函数。ARMA模型的AIC函数如下:

AIC(p,q,?)?Nln??(p,q,?)?2(p?q?2)

其中,??(p,q,?)是残差方差;?是序列均值的待估参数。

8

?2?2因此,选取不同的p、q对时间序列进行拟合,计算相应AIC值,使其达到极小值的模型为最佳模型。选定最佳p、q后,计算模型残差,用来白噪声检验,以检验模型是否适合。

3 模型实现

基于上文提出的模型定阶以及检验等思想。我们通过软件MATLAB作如下实现: 输入:海域海表温度SST数据随机项 输出:ARMA模型阶数与检验是否通过

%随机项平稳性检验----Daniel检验 n=length(suiji); [xsort,ind]=sort(suiji);%随机项从小到大排序 Rt(ind)=1:n; %计算秩 t=1:n; Qs= 1-6/(n*(n^2-1))*sum((t-Rt).^2); t=Qs*sqrt(n-2)/sqrt(1-Qs^2); %t统计量 t_0=tinv(0.975,n-2); %计算分位点 如果abs(t)>t_0,则序列平稳 否则不平稳,需对序列进行一阶差分 %随机项不平稳----一阶差分 Suiji=diff(suiji) %ARMA模型定阶 这里限定p、q限制在12内 for p = 0:12 for q = 0:12 m = armax(u,[p q]);%用ARMA模型拟合 AIC(p+1,q+1)= aic(m);%用aic准则定阶 end end %求aic最小时的阶数 [m,n]=min(AIC); [a b]=min(m); q=n(b)-1; p=b-1; 输出p、q %残差分析----Ljung-Box白噪声检验 m=armax(u,[p q])%最优ARMA模型 e=resid(m,u)%计算此时下的残差 BZ=lbqtest(e)%白噪声检验

9

4 结果分析

本文通过对ARMA模型研究的基础上,利用AIC准则,并利用Daniel检验法检验平稳性并处理不平稳时使用一阶差分使其平稳,同时使用Ljung-Box检验法对残差进行白噪声检验,一旦白噪声检验通过,及残差序列是白噪声,我们认为模型拟合效果较好,ARMA模型可用。本文在各海域海表温度的基础上,通过测试验证模型拟合效果,结果如下:

东海测试结果: 测试数据序号 1 2 3 4 5 6 7 8 9 10 趋势性检验 0(无) 1 1 1 1 1 0 1 1 1 随机项平稳性检验 0(不平稳) 1 1 1 1 1 0 1 1 1 阶数p、q 1、1 5、5 8、7 8、7 9、5 9、5 1、1 4、4 8、8 8、6 残差白噪声检验 0(白噪声) 0 0 0 0 0 0 0 0 0

南海测试结果: 测试数据序号 1 2 3 4 5 6 7 8 9 10

10

趋势性检验 1 1 1 1 1 1 1 1 1 1 随机项平稳性检验 1 1 1 0 1 1 1 1 0 1 阶数p、q 8、2 2、10 4、1 7、9 10、12 10、12 7、8 11、7 9、3 7、11 残差白噪声检验 0 0 0 0 0 0 0 0 0 0

黄海测试结果: 测试数据序号 1 2 3 4 5 6 7 8 9 10 趋势性检验 1 0 1 1 0 0 0 0 0 0 随机项平稳性检验 0 0 0 0 0 0 0 0 0 0 阶数p、q 11、12 12、12 6、5 6、5 12、10 11、11 12、11 5、9 12、12 11、8 残差白噪声检验 0 0 0 0 0 0 0 0 0 0

渤海测试结果: 测试数据序号 1 2 3 4 5 6 7 8 9 10 趋势性检验 1 1 1 1 1 1 1 1 1 0 随机项平稳性检验 0 0 0 0 0 0 0 0 0 0 阶数p、q 8、7 8、9 9、4 12、7 8、2 8、2 5、8 5、8 5、8 5、8 残差白噪声检验 0 0 0 0 0 0 0 0 0 0 珠江测试结果: 测试数据序号 1 2 3 4 5 6 7 8 9 10

11

趋势性检验 0 0 0 0 0 0 0 0 0 0 随机项平稳性检验 0 0 0 0 0 0 0 0 0 0 阶数p、q 12、12 7、12 5、12 7、10 12、6 4、12 7、7 12、9 5、10 9、5 残差白噪声检验 0 0 0 0 0 0 0 0 0 0 台湾海峡测试结果: 测试数据序号 1 2 3 4 5 6 7 8 9 10 趋势性检验 0 1 1 1 1 1 1 1 0 0 随机项平稳性检验 0 1 1 1 1 1 0 1 0 0 阶数p、q 7、7 9、7 8、12 7、5 8、4 9、9 5、9 7、10 11、10 12、11 残差白噪声检验 0 0 0 0 0 0 0 0 0 0

杭州湾测试结果: 测试数据序号 1 2 3 4 5 6 7 8 9 10

从表格中可以看出:各大海域海表温度的波动不一,趋势项的表现也不一样,本文对海表温度时间序列集进行趋势项与周期项剔除后所得随机项并不是都趋向平稳。虽然理论上来说,一时间序列集在去除趋势性与周期性后的序列偏向于平稳,但考虑到平稳性检验精确度以及各海域海表温度本身异常值等原因的存在,可能会导致序列平稳性检测不通过,因此,这里我们对不通过平稳性检验的随机项进行一阶差分,并对各海域差分后的随机序列在此进行平稳性检验,结果全部通过。所以,我们认为一阶差分后的随机序列可以满足ARMA模型的要求;同时,从表格中我们可以看出:各大海域所有海表温度时间序列集的残差白噪声检验值为0,即是白噪声。这证实了ARMA模型的合理性。

趋势性检验 0 1 0 0 0 0 0 0 0 0 随机项平稳性检验 0 0 0 0 0 0 0 0 0 0 阶数p、q 9、9 8、11 7、7 5、11 9、12 11、9 10、9 12、12 9、9 8、8 残差白噪声检验 0 0 0 0 0 0 0 0 0 0

12

5 结束语

本文为研究时间序列中常用的ARMA模型对各海域海表温度进行预测,需要对模型进行拟合定阶。在前人研究的基础上,采用了最优准则AIC准则进行模型定阶。但为了确定模型的可靠性以及合理性,我们需要做相应的检验,因此,我们给出了大量的检验方法。在平稳性检验中,本文给出四种方法,并选择了构造t统计量的Daniel检验法通过MATLAB实现;ARMA模型定阶中,本文提出常用的三种模型定阶方法,并比较了其合理性与精确性,最终选择了AIC准则;白噪声检验对模型是否合理起着重要的检验作用,本文选取Ljung-Box检验法对各大海域多组数据进行残差的LB检验,全部为白噪声,证实了模型选取的合理性。

同时,值得注意的是,本文在定阶时,p、q的取值只是给定一定范围,在此范围内进行搜索,通过AIC最优准则取得的极小值来定阶。相应的,这其中p、q的范围给定并没有一个精确的范围要求,理论上来说越大越好,但放至无限大明显会降低效率也没有必要。这样的问题,目前并没有合理的解决方案,其由AIC准则的局部最优性所导致。因此,在使用本文的理论研究过程中,读者可根据实例所需达到的精确度适当增加阶数搜索的范围。

参考文献

[1] 冯琳,林霄沛,1945-2006年东中国海海表温度的长期变化趋势[J].中国海洋大学学报:自然科学版,2009, 39(1):13-18.(FENG Lin,Lin Xiao-pei.Long term trend of the East china sea surface tem perature during 1945-2006[J].Periodical of Ocean University of China,2009,39(1):13-18.(in Chinese))

[2] 范海燕,NOAA/AVHRR卫星数据处理及其网络格式信息系统设计与实现[D].青岛:中国海洋大学,2005:1.

[3] Wentz, F.J., C.Gentemann, D.Smith, D.Chelton. Satellite Measurements of sea Surface Temperature Through Clouds[J].Science,2000,288:847-850. [4] 刘玉光等.2005:卫星海洋学[M].中国海洋大学. [5] 安潇潇,ARMA相关模型及其应用[O]. 2009:10.

[6] 王新军,尉雪波,ARMA模型在经济分析中的应用[J].第十二次全国统计科学讨论会文集: 442. [7] 肖枝红,郭明月,时间序列分析与SAS应用[M]武汉:武汉大学出版社,2012(2): 44-86.

[8] 吕林涛,王鹏,李军怀,吕晖,基于时间序列的趋势性分析及其预测算法研究[J]. 计算机工程与应用.2004,19:173.

13

本文来源:https://www.bwwdw.com/article/6aka.html

Top