R语言 非平稳序列的随机分析
SAS系统和数据分析非平稳序列的随机分析
第四十二课 非平稳序列的随机分析20世纪70年代,G. P. Box 和G. M. Jenkins 发表了专著《时间序列分析:预测和控制》,对平稳时间序列数据,提出了自回归滑动平均模型ARIMA ,以及一整套的建模、估计、检验和控制方法。
使时间序列分析广泛地运用成为可能。
为了纪念Box 和Jenkins 对时间序列发展的特殊贡献,现在人们也常把ARIMA 模型称为Box-Jenkins 模型。
当我们拟合一个时间序列时,先通过差分法或适当的变换使非平稳序列化成为平稳序列,我们再要考虑的是参数化和记忆特征的有效性,用这种参数方法拟合序列为某种特定的结构,只用很少量的参数,使参数的有效估计成为可能。
相对于一个序列的过去值,可用传统的Box 和Jenkins 方法建模。
实际上,Box-Jenkins 模型主要是运用于单变量、同方差场合的线性模型。
随着对时间序列应用的深入研究,发现还存在着许多局限性。
所以近20年来,统计学家纷纷转向多变量、异方差和非线性场合的时间序列分析方法的研究,并取得突破性的进展,其中Engle 和Granger 一起获得2003年诺贝尔经济学奖。
在异方差场合,Robert F.Engle 在1982年提出了自回归条件异方差ARCH 模型,以及在ARCH 模型上衍生出的一系列拓展模型。
在多变量场合,70年代末,G. E. P. Box 教授和刁锦寰教授在处理洛山矶的环境数据时,提出了干预分析和异常值检验方法。
1987年,C.Granger 提出了协整(co-integration )理论,在多变量时间序列建模过程中“变量是平稳的”不再是必须条件了,而只要求它们的某种组合是平稳的。
非线性时间序列分析也有重大发展,汤家豪教授等在1980年左右提出了利用分段线性化构造门限自回归模型。
一、 ARIMA 模型随着对时间序列分析方法的深入研究,人们发现非平稳序列的确定性因素分解方法(如季节模型、趋势模型、移动平均、指数平滑等)存在一些问题,它只能提取显著的确定性信息,对随机性信息浪费严重,同时也无法对确定性因素之间的关系进行分析。
时间序列分析第五章非平稳序列的随机分析
考察差分运算对该序列线性趋势信息的提 取作用
2020/3/12
时间序列分析
差分前后时序图
原序列时序图
差分后序列时序图
2020/3/12
时间序列分析
例5.2
尝试提取1950年——1999年北京市民用 车辆拥有量序列的确定性信息
2020/3/12
时间序列分析
Green函数递推公式
1 1 1 2 1 1 2 2
j 1 j1 pd j pd j
t
2
,
E(
t
s
)
0,
s
t
Exs t 0,s t
2020/3/12
时间序列分析
ARIMA 模型族
d=0 ARIMA(p,d,q)=ARMA(p,q)
P=0 ARIMA(P,d,q)=IMA(d,q)
q=0 ARIMA(P,d,q)=ARI(p,d)
d=1,P=q=0 ARIMA(P,d,q)=random walk model
差分后序列时序图
一阶差分
二阶差分
2020/3/12
时间序列分析
例5.3
差分运算提取1962年1月——1975年12月平均 每头奶牛的月产奶量序列中的确定性信息
2020/3/12
时间序列分析
差分后差分
2020/3/12
时间序列分析
过差分
足够多次的差分运算可以充分地提取原 序列中的非平稳确定性信息
2020/3/12
时间序列分析
随机游走模型( random walk)
模型结构
解决R语言数据不平衡的问题
解决R语⾔数据不平衡的问题R语⾔解决数据不平衡问题⼀、项⽬环境开发⼯具:RStudioR:3.5.2相关包:dplyr、ROSE、DMwR⼆、什么是数据不平衡?为什么要处理数据不平衡?⾸先我们要知道的第⼀个问题就是“什么是数据不平衡”,从字⾯意思上进⾏解释就是数据分布不均匀。
在我们做有监督学习的时候,数据中有⼀个类的⽐例远⼤于其他类,或者有⼀个类的⽐值远⼩于其他类时,我们就可以认为这个数据存在数据不平衡问题。
那么这样的⼀个问题会对我们后续的分析⼯作带来怎样的影响呢?我举个简单的例⼦,或许⼤家就明⽩了。
假设我们现在需要训练⼀个模型来分辨⼈群中那个⼈是恐怖分⼦。
那么现在给到我们1万个⼈员的数据,在做分析之前其实我们就很清楚,⼀群⼈中恐怖分⼦的⽐例肯定是要远⼩于普通⼈的⽐例的。
那么假如在这1万个⼈中只有⼀个是恐怖分⼦,那么恐怖分⼦与正常⼈的⽐例就是 9999 : 1 。
那么如果我们不进⾏任何处理就直接进⾏有监督学习的话,那么模型只需要将所有⼈数据都分类为正常⼈,模型的准确率就能达到99.99%。
⽽这样的模型显然是没有意义的。
因为基本上说有可能存在的恐怖分⼦的特征基本都被模型给忽略了,这也就说明了为什么要处理数据不平衡问题。
三、常见的数据不平衡处理⽅法以下是⼏种⽐较常见的处理数据不平衡的⽅法:1、⽋采样法(Undersampling)2、过采样法(Oversampling)3、⼈⼯数据合成法(Synthetic Data Generation)4、代价敏感学习法(Cose Sensitive Learning)【注】:本⽂主要以实现为主,因此不对上述⽅法进⾏过多的讲解。
在处理数据之前,我们先看⼀下需要处理的数据分布的情况。
load("C:/Users/User/Desktop/data.RData")table(data$classification)prop.table(table(data$classification))> table(data$classification)-8 1 2 3 4 512 104 497 1158 4817 1410> prop.table(table(data$classification))-8 1 2 3 4 50.001500375 0.013003251 0.062140535 0.144786197 0.602275569 0.1762940741、⽋采样######### ⽅法⼀ #########library(ROSE)# 由于是多分类问题,我们先提取数据中⽐例最⼤的类和⽐例最⼩的类# 进⾏平衡(转化为⼆分类问题)test <- data[which(data$classification == -8 | data$classification == 4),]# 将分类结果转化为因⼦型(不然会报错)test$classification <- as.factor(test$classification)# 进⾏⽋采样# 其中 method = "under" 表⽰采⽤的⽅法为“⽋采样”# N = 40 表⽰最终整个数据集的数量# seed 随机种⼦,为了保留对样本的追踪under <- ovun.sample(classification ~ ., test, method = "under", N = 40, seed = 1)$data # 查看结果table(under$classification)> table(under$classification)4 -828 12######### ⽅法⼆ #########library(dplyr)# 由于是多分类问题,我们先提取数据中⽐例最⼤的类和⽐例最⼩的类# 进⾏平衡(转化为⼆分类问题)test <- data[which(data$classification == -8 | data$classification == 4),]# 提取⼤⽐例类test1 <- test[which(test$classification == 4),]# 将⼤⽐例类的数量降为12个down <- sample_n(test1, 12, replace = TRUE)# 将⽋采样后的类进⾏合并down <- rbind(test[which(test$classification == -8), ],down)table(down$classification)> table(down$classification)-8 412 12【注】:⽋采样是⽆放回的采样。
时间序列分析 第五章-非平稳序列的随机分析
图(1)考虑对该序列进行1阶差分运算,同时考察差分序列的平稳性,在原程序基础上添加相关命令,程序修改如下:图(2)时序图显示差分后序列difx没有明显的非平稳特征。
(2)“identify var=x(1);”,使用该命令可以识别差分后序列的平稳性。
纯随机性和适当的拟合图(6)普通最小二乘估计结果图(8)最终拟合模型输出结果图(9)拟合效果图图(12)带有延迟因变量的回归模型拟合效果图5.8.3拟合GARCH模型SAS系统中AUTOREG过程功能非常强大,不仅可以提供上述的分析功能,还可以提供异方差性检验乃至条件异方差模型建模。
以临时数据集example5_3数据为例,介绍GARCH模型的拟合,相关命令如下:data example5_3;input x@@;t=_n_;cards;10.77 13.30 16.64 19.54 18.97 20.52 24.3623.51 27.16 30.80 31.84 31.63 32.68 34.9033.85 33.09 35.46 35.32 39.94 37.47 35.2433.03 32.67 35.20 32.36 32.34 38.45 38.1732.14 39.70 49.42 47.86 48.34 62.50 63.5667.61 64.59 66.17 67.50 76.12 79.31 78.8581.34 87.06 86.41 93.20 82.95 72.96 61.1061.27 71.58 88.34 98.70 97.31 97.17 91.1780.20 85.12 81.40 70.87 57.75 52.35 67.5087.95 85.46 84.55 98.16 102.42 113.02 119.95122.37 126.96 122.79 127.96 139.20 141.05 140.87137.08 145.53 145.59 134.36 122.54 106.92 97.23110.39 132.40 152.30 154.91 152.69 162.67 160.31142.57 146.54 153.83 141.81 157.83 161.79 142.07139.43 140.92 154.61 172.33 191.78 199.27 197.57189.29 181.49 166.84 154.28 150.12 165.17 170.32;proc gplot data=example5_3;plot x*t=1;symbol1c=black i=join v=start;proc autoreg data=example5_3;model x=t/nlag=5dwprob archtest;model x=t/nlag=2noint garch=(p=1,q=1);output out=out p=p residual=residual lcl=lcl ucl=ucl cev=cev;data out;set out;l95=-1.96*sqrt(51.42515);u95=1.96*sqrt(51.42515);Lcl_GARCH=-1.96*sqrt(cev);Ucl_GARCH=1.96*sqrt(cev);Lcl_p=p-1.96*sqrt(cev);Ucl_p=p+1.96*sqrt(cev);proc gplot data=out;plot residual*t=2 l95*t=3 Lcl_GARCH*t=4 u95*t=3 Ucl_GARCH*t=4/overlay; plot x*t=5 lcl*t=3 LCL_p*t=4 ucl*t=3 UCL_p*t=4/overlay;symbol2c=green i=needle v=none;symbol3v=black i=join c=none w=2l=2;symbol4c=red i=join v=none;symbol5c=green i=join v=none;run;该序列输出时序图如图(13)所示。
第三章非平稳序列的随机分析-课件
q=0 ARIMA(P,d,q)=ARI(p,d)
d=1,P=q=0 ARIMA(P,d,q)=random walk model
ARIMA模型建模步骤
获
得 观 察 值 序
平稳性 检验
N
Y 运算
拟合
ARMA 模型
(1B )xt 10.26B 6 1 0 3 .33 3B 5 4t97
模型检验
模型显著 参数显著
季节模型
简单季节模型 乘积季节模型
简单季节模型
简单季节模型是指序列中的季节效应和 其它效应之间是加法关系
xt St Tt It
简单季节模型通过简单的趋势差分、季 节差分之后序列即可转化为平稳,它的 模型结构通常如下
差分运算的实质是使用自回归的方式提 取确定性信息
d
dxt (1B)dxt (1)iC d ixti i0
差分方式的选择
序列蕴含着显著的线性趋势,一阶差分 就可以实现趋势平稳
序列蕴含着曲线趋势,通常低阶(二阶 或三阶)差分就可以提取出曲线趋势的 影响
对于蕴含着固定周期的序列进行步长为 周期长度的差分运算,通常可以较好地 提取周期信息
差分后序列自相关图
差分后序列偏自相关图
模型拟合
定阶
ARIMA((1,4),(1,4),0)
参数估计
(1 B )1 ( B 4)xt 1 0 .44B 1 7 0 .2 48 6B 4 1t 32
模型检验
残差白噪声检验
参数显著性检验
延迟 阶数
2统 计量
P值
待估 t 统
参数 计量
例3.1
【例3.1】1964年——1999年中国纱年产 量序列蕴含着一个近似线性的递增趋势。 对该序列进行一阶差分运算
《时间序列分析及应用:R语言》读书笔记
《时间序列分析及应用:R语言》读书笔记姓名:石晓雨学号:1613152019(一)、时间序列研究目的主要有两个:认识产生观测序列的随机机制,即建立数据生成模型;基于序列的历史数据,也许还要考虑其他相关序列或者因素,对序列未来的可能取值给出预测或者预报。
通常我们不能假定观测值独立取自同一总体,时间序列分析的要点是研究具有相关性质的模型。
(二)、下面是书上的几个例子1、洛杉矶年降水量问题:用前一年的降水量预测下一年的降水量。
第一幅图是降水量随时间的变化图;第二幅图是当年降水量与去年降水量散点图。
win.graph(width=4.875, height=2.5,pointsize=8) #这里可以独立弹出窗口data(larain) #TSA包中的数据集,洛杉矶年降水量plot(larain,ylab='Inches',xlab='Year',type = 'o') #type规定了在每个点处标记一下win.graph(width = 3,height = 3,pointsize = 8)plot(y = larain,x = zlag(larain),ylab = 'Inches',xlab = 'Previous Year Inches')#zlag 函数(TSA包)用来计算一个向量的延迟,默认为1,首项为NA从第二幅图看出,前一年的降水量与下一年并没有什么特殊关系。
2、化工过程win.graph(width = 4.875,height = 2.5,pointsize = 8)data(color)plot(color,ylab = 'Color Property',xlab = 'Batch',type = 'o')win.graph(width = 3,height = 3,pointsize = 8)plot(y = color,x = zlag(color),ylab = 'Color Property',xlab = 'Previous Batch Color Property')len <- length(color)cor(color[2:len],zlag(color)[2:len])#相关系数>0.5549第一幅图是颜色属性随着批次的变化情况。
用R语言实现对不平衡数据的四种处理方法
用R语言实现对不平衡数据的四种处理方法在对不平衡的分类数据集进行建模时,机器学习算法可能并不稳定,其预测结果甚至可能是有偏的,而预测精度此时也变得带有误导性。
那么,这种结果是为何发生的呢?到底是什么因素影响了这些算法的表现?在不平衡的数据中,任一算法都没法从样本量少的类中获取足够的信息来进行精确预测。
因此,机器学习算法常常被要求应用在平衡数据集上。
那我们该如何处理不平衡数据集?本文会介绍一些相关方法,它们并不复杂只是技巧性比较强。
本文会介绍处理非平衡分类数据集的一些要点,并主要集中于非平衡二分类问题的处理。
一如既往,我会尽量精简地叙述,在文末我会演示如何用R中的ROSE包来解决实际问题。
什么是不平衡分类不平衡分类是一种有监督学习,但它处理的对象中有一个类所占的比例远远大于其余类。
比起多分类,这一问题在二分类中更为常见。
(注:下文中占比较大的类称为大类,占比较小的类称为小类)不平衡一词指代数据中响应变量(被解释变量)的分布不均衡,如果一个数据集的响应变量在不同类上的分布差别较大我们就认为它不平衡。
举个例子,假设我们有一个观测数为100000的数据集,它包含了哈佛大学申请人的信息。
众所周知,哈佛大学以极低的录取比例而闻名,那么这个数据集的响应变量(即:该申请人是否被录取,是为1,否为0)就很不平衡,大致98%的观测响应变量为0,只有2%的幸运儿被录取。
在现实生活中,这类例子更是不胜枚举,我在下面列举了一些实例,请注意他们的不平衡度是不一样的。
1.一个自动产品质量检测机每天会检测工厂生产的产品,你会发现次品率是远远低于合格率的。
2.某地区进行了居民癌症普查,结果患有癌症的居民人数也是远远少于健康人群。
3.在信用卡欺诈数据中,违规交易数比合规交易少不少。
4.一个遵循6δ原则的生产车间每生产100万个产品才会产出10个次品。
生活中的例子还有太多,现在你可以发现获取这些非平衡数据的可能性有多大,所以掌握这些数据集的处理方法也是每个数据分析师的必修课。
非平稳时间序列的随机分析
4、ARIMA模型预测
PPT文档演模板
非平稳时间序列的随机分析
4、ARIMA模型预测
PPT文档演模板
非平稳时间序列的随机分析
预测值:线性最小方差预测原则
•>arima(x = chafen, order = c(0, 0, 1), method =
"ML")
•Coefficients:
•
ma1 intercept
• 0.6710 4.9947
•s.e. 0.1648 2.0139
•sigma^2 estimated as 53.42: log likelihood = -
PPT文档演模板
•平稳性 •检验
•N
•差分 •运算
•Y •白噪声 •检验
•N
•拟合 •ARMA •模型
•Y •分 •析 •结 •束
非平稳时间序列的随机分析
例4.6
n 对1952年——1988年中国农业实际国民 收入指数序列建模
>d=read.csv("shouru.csv",head=F)
>shouru=ts(d,start=1952,end=1988,freq =1)
非平稳时间序列的随机 分析
PPT文档演模板
2021/1/4
非平稳时间序列的随机分析
•4.1 时间序列的分解 •4.1.1 Wold分解定理 •4.1.2 Cramer分解定理
•引 例
PPT文档演模板
非平稳时间序列的随机分析
4.1.1、Wold分解定理(1938)
n 对于任何一个离散平稳过程 它都可以分解为两个 不相关的平稳序列之和,其中一个为确定性的,另 一个为随机性的,不妨记作
非平稳时间序列分析
第二节 平稳化方法
本节介绍三种常用的平稳化方法:差 分、季节差分以及对数变换与差分结合运 用。
• 普通差分
一阶差分 二阶差分 一般地
1 2 2 d X t (1 B) d X t [1 Cd B Cd B B d ]X t
X t X t X t 1
X t (X t ) X t 2 X t 1 X t 2
X t X t 1 at
X t t X t 1 at
其中 是平移项(截距项),t 是趋势项。
设 X 0 0, at
2 iid (0, a ).
Xt 显然对于以上三个模型,当 1 时,
是平稳的,当 1 时,X t 是非平稳的。 若 1 ,统计量 ˆ ˆ t ˆ) s(
第二步,计算均值序列或方差序列的逆序总数。
A Ai
i 1
M
第三步,计算统计量进行检验 在原假设条件下,A具有以下期望与方差
1 E ( A) M ( M 1) 4 M (2 M 2 3M 5) D( A) 72
其中,M为数据个数。
统计量
1 [ A E ( A)] 2 Z D ( A)
渐近服从N(0,1)。
•游程检验法
原理:在原序列与趋势变化的原假设下,原序列的每个 值与序列均值对比后的符号序列的游程不应过小或过多。 过小或过多均表示原序列存在某种趋势。
游程检验步骤: 首先,将原序列每个值与其均值对比,得到第二步,设序列长度为N, 势的原假设条件下,游程总数r服从r分布。
【例】将社会消费品零售总额通过取对数将指数 趋势转化为线性趋势,然后再进行差分消除线性
趋势将其变为平稳的时间序列。
第五章非平稳时间序列的随机分析实验报告
第五章非平稳时间序列随机性分析实验报告下表为1948-1981年美国女性(大于20岁)月度失业率数据表5-1 1948-1981 年美国女性月度失业率1月2月3月4月5月6月7月8月9月10月11月12月1948 446 650 592 561 491 592 604 635 580 510 553 554 1949 628 708 629 724 820 865 1007 1025 955 889 965 878 1950 1103 1092 978 823 827 928 838 720 756 658 838 684 1951 779 754 794 681 658 644 622 588 720 670 746 616 1952 646 678 552 560 578 514 541 576 522 530 564 442 1953 520 484 538 454 404 424 432 458 556 506 633 708 1954 1013 1031 1101 1061 1048 1005 987 1006 1075 854 1008 777 1955 982 894 795 799 781 776 761 839 842 811 843 753 1956 848 756 848 828 857 838 986 847 801 739 865 767 1957 941 846 768 709 798 831 833 798 806 771 951 799 1958 1156 1332 1276 1373 1325 1326 1314 1343 1225 1133 1075 1023 1959 1266 1237 1180 1046 1010 1010 1046 985 971 1037 1026 947 1960 1097 1018 1054 978 955 1067 1132 1092 1019 1110 1262 1174 1961 1391 1533 1479 1411 1370 1486 1451 1309 1316 1319 1233 1113 1962 1363 1245 1205 1084 1048 1131 1138 1271 1244 1139 1205 1030 1963 1300 1319 1198 1147 1140 1216 1200 1271 1254 1203 1272 1073 1964 1375 1400 1322 1214 1096 1198 1132 1193 1163 1120 1164 966 1965 1154 1306 1123 1033 940 1151 1013 1105 1011 963 1040 838 1966 1012 963 888 840 880 939 868 1001 956 966 896 843 1967 1180 1103 1044 972 897 1103 1056 1055 1287 1231 1076 929 1968 1105 1127 988 903 845 1020 994 1036 1050 977 956 818 1969 1031 1061 964 967 867 1058 987 1119 1202 1097 994 840 1970 1086 1238 1264 1171 1206 1303 1393 1463 1601 1495 1561 1404 1971 1705 1739 1667 1599 1516 1625 1629 1809 1831 1665 1659 1457 1972 1707 1607 1616 1522 1585 1657 1717 1789 1814 1698 1481 1330 1973 1646 1596 1496 1386 1302 1524 1547 1632 1668 1421 1475 1396 1974 1706 1715 1586 1477 1500 1648 1745 1856 2067 1856 2104 2061 1975 2809 2783 2748 2642 2628 2714 2699 2776 2795 2673 2558 2394 1976 2784 2751 2521 2372 2202 2469 2686 2815 2831 2661 2590 2383 1977 2670 2771 2628 2381 2224 2556 2512 2690 2726 2493 2544 2232 1978 2494 2315 2217 2100 2116 2319 2491 2432 2470 2191 2241 2117 1979 2370 2392 2255 2077 2047 2255 2233 2539 2394 2341 2231 2171 1980 2487 2449 2300 2387 2474 2667 2791 2904 2737 2849 2723 2613 1981 2950 2825 2717 2593 2703 2836 2938 2975 3064 3092 3063 2991 数据来源:Andrews&Herzberg(1985)。
非平稳时间序列的随机分析
第二节 差分运算
对于随机非平稳序列来说,我们难以直接找 到其变化发展规律,主要是因为非平稳序列通常 都具有某种不稳定的趋势。所以,分析非平稳序 列的第一步是采取有效的手段提取其趋势使序列 变为平稳序列,然后利用平稳序列分析方法来处 理。提取序列趋势的工具主要是差分运算。
kt
t
例如,若
xt a bt t
则对序列 xt 做一阶差分
xt b t
就提取了序列中的确定性趋势信息。
若 xt a bt ct2 t ,则对 xt 做二阶差分
2 x 2c 2
t
t
即可提取序列中的确定性趋势信息。
yt 01yt q 2yt q1 vt
式中,vt 为残差序列。如果我们基于历史信息: ytq , ytq1, 预测 yt 的值,则 vt 可以理解为预测
误差,记 Var(v ) 2(q) ,显然有 2(q) Var( y ) ,
t
v
v
t
且滞后期 q 越大,意味着预测的步长越长,预测
的误差就越大,即2v(q) 越大。
实际上,时间序列中的差分运算类似于函数的 求导运算,如果一个时间序列的确定性趋势是时间 的 d 次多项式,则 d 阶差分后的序列的确定性趋势 就一定是常数,将不会再蕴含时间趋势,从而实现 序列的平稳化。
d
d
tj
j k,
( k 为常数)
j0
而由Cramer分解定理知,方差齐性非平稳序 列都可以分解为如下形式:
y
)t
,说明序列发展的
随机性强,历史信息对现值估计效果差,这时称
序列 yt是随机序列。
例如,对于平稳的ARMA(p,q) 模型:
第6章非平稳序列的随机性分析
ARIMA 模型族
d=0
ARIMA(p,d,q)=ARMA(p,q)
p=0 ARIMA(p,d,q)=IMA(d,q)
q=0
ARIMA(p,d,q)=ARI(p,d) d=1, p=q=0 ARIMA(p,d,q) = random walk model
随机游动模型---Random Walk
若时间序列{Xt}有下列模型,则称{Xt}为随机游动 序列 2
X t X t 1 t , t ~ WN 0,
模型产生典故:
Karl Pearson(1905年7月)在《自然》杂志上提问:假如有个 醉汉醉得非常严重,完全丧失方向感,把他放在荒郊野外, 一段时间之后再去找他,在什么地方找到他的概率最大呢? Lord Rayleigh在1905年8月对此问题做出了解答。
随机游走模型是有效市场理论的核心。
随机游动模型---Random Walk
X t X t 1 t , t ~ WN 0, 2
随机游走过程的均值为零,方差为无限大
X t X t 1 t t t 1 X t 2 t t 1
(1 B) xt (1) C x
p p i 0
p
i p t i
k步差分: k xt xt xt k 1 Bk xt
差分举例
时刻t : 序列xt : xt 1 B xt :
2 3
1 2 3
4
5
6
7
8
9
10
1 4 9 16 25 36 49 64 81 100 / 3 5 7 9 11 13 15 17 19 / / / 2 / 2 0 2 0 2 0 2 0 2 0 2 0 2 0 36
实验五非平稳序列的随机分析
实验五非平稳序列的随机分析一、实验目的:利用arima,autoreg,进行非平稳序列的随机性分析。
对arima 模型,auto-regressive模型及garch模型进行拟合并分析结果。
二、实验内容习题1data example3_1;input x@@;t=_n_;cards;304 303 307 299 296 293 301 293 301 295 284 286 286 287 284282 278 281 278 277 279 278 270 268 272 273 279 279 280 275271 277 278 279 283 284 282 283 279 280 280 279 278 283 278270 275 273 273 272 275 273 273 272 273 272 273 271 272 271273 277 274 274 272 280 282 292 295 295 294 290 291 288 288290 293 288 289 291 293 293 290 288 287 289 292 288 288 285282 286 286 287 284 283 286 282 287 286 287 292 292 294 291288 289;proc gplot data=example3_1;plot x*time=1;symbol v=star c=black i=join;run;得到的时序图如下:由时序图可知,该序列不平稳,是一个非平稳序列。
而差分运算的实质是使用自回归方式提取确定性信息,因此用1阶差分对序列的信息提取,输入如下程序:proc gplot ; plot difx*t;symbol v =star c =black i =join; proc arima ;identify var =x(1) minic p =(0:5) q =(0:5); run ;且data 中输入difx=dif(x); 得到一阶差分时序图如下:x -20-1010time102030405060708090100110该时序图没有明显的非平稳特征。
非平稳时间序列分析(汇编)
非平稳时间序列分析1、首先画出时序图如下:t从时序图中看出有明显的递增趋势,而该序列是一直递增,不随季节波动,所以认为该序列不存在季节特征。
故对原序列做一阶差分,画出一阶差分后的时序图如下:difx140 130 120 110 100 90 80 70 60 50 40 30 20 10 0 -10从中可以看到一阶差分后序列仍然带有明显的增长趋势,再做二阶差分:80 - 70 - 60 - 50 - 40 - 30 - 20 - 10 - 0 - -10 - -20 - -30 - -40 - -50 --60 - -70 - -80 - -90 - -100 - -110 -做完二阶差分可以看到,数据的趋势已经消除,接下来对二阶差分后的序列进行19451950dif2x90 - 1945195519601965197019751980198519901995200019501955196019651970197519801985199019952000*检验:AutocorrelationsLag Covariance Correlation -1 9 8 7 6 5 4 3 2 1 0 1 2 3 4 5 6 7 8 9 1 Std Error0 577.333 1.00000 | |********************| 01 -209.345 -.36261 | *******| . | 0.0712472 -52.915660 -.09166 | .**| . | 0.0800693 9.139195 0.01583 | . | . | 0.0806004 15.375892 0.02663 . |* . | 0.0806155 -59.441547 -.10296 .**| . | 0.0806606 -23.834489 -.04128 | . *| . | 0.0813247 100.285 0.17370 | . |*** | 0.0814318 -146.329 -.25346 | *****| . | 0.0832909 52.228658 0.09047 | . |**. | 0.08711810 21.008575 0.03639 | . |* . | 0.08759311 134.018 0.23213 | . |***** | 0.08767012 -181.531 -.31443 | ******| . | 0.09073613 23.268470 0.04030 | . |* . | 0.09610814 71.112195 0.12317 | . |** . | 0.09619415 -105.621 -.18295 | ****| . | 0.09699116 37.591996 0.06511 . |* . | 0.09872717 23.031506 0.03989 | . |* . | 0.09894518 45.654745 0.07908 | . |** . | 0.09902719 -101.320 -.17550 | ****| . | 0.09934720 127.607 0.22103 | . |**** | 0.10090821 -61.519663 -.10656 | . **| . | 0.10333722 35.825317 0.06205 | . |* . | 0.10389323 -93.627333 -.16217 | .***| . | 0.10408124 55.451208 0.09605 | . |** . |从其自相关图中可以看出二阶差分后的序列自相关系数很快衰减为零,且都在两倍标准差范围之内,所以认为平稳,白噪声检验结果:Autocorrelation Check for White NoiseTo Chi- Pr >Lag Square DF ChiSq------------------- Autocorrelations -------------------6 30.70 6 <.0001 -0.363 -0.092 0.016 0.027 -0.103 -0.04112 84.54 12 <.0001 0.174 -0.253 0.090 0.036 0.232 -0.31418 97.98 18 <.0001 0.040 0.123 -0.183 0.065 0.040 0.07924 126.99 24 <.0001 -0.175 0.221 -0.107 0.062 -0.162 0.096P 值都小于 0.05 ,认为不是白噪声。
第五章 非平稳序列的随机分析_11.10
g 3、转换函数的确定:要使得Var[g(xt)]等于常数, (⋅) 与 h(⋅) 、转换函数的确定: 等于常数, 1 具有倒函数关系, 具有倒函数关系,即 g ′( µ t ) = h( µ t )
常用转换函数的确定
实践中,许多金融时序都呈现出异方差性质, 实践中,许多金融时序都呈现出异方差性质,通 常序列的标准差与其均值具有某种正比关系。 常序列的标准差与其均值具有某种正比关系。
1、零均值 、
E (ε t ) = 0
2、纯随机 Cov (ε t , ε t −i ) = 0, ∀i ≥ 1 、 3、方差齐性 、
Var (ε t ) = σ ε
2
5.4 异方差的性质
异方差的定义
如果随机误差序列的方差会随着时间的变化而 如果随机误差序列的方差会 随着时间的变化而 变化, 变化,这种情况被称作为异方差
拟合模型口径及拟合效果图
∇ log( xt ) = ε t ⇔ log( xt ) − log( xt −1 ) = ε t
注:图中星号为序列观察值;红色曲线为序列拟合值 图中星号为序列观察值;
例5.11的SAS过程 的 过程
data a; input returns@@; dif=dif(returns); /*构建残差序列 构建残差序列*/ 构建残差序列 r2=dif**2; /*构建残差平方和序列 构建残差平方和序列*/ 构建残差平方和序列 y=log(returns); /*原序列对数变换 原序列对数变换*/ 原序列对数变换 dify=dif(y); /*对数变换后序列差分 对数变换后序列差分*/ 对数变换后序列差分 time=intnx('month','1apr1963'd,_n_-1); format time year4.; cards; 原始数据 ; proc gplot; plot returns*time dif*time r2*time y*time dify*time; /*对应书上的图 对应书上的图5-37~图5-41*/ 对应书上的图 图 symbol c=black i=join v=none;
R语言 非平稳序列的随机分析
本讲内容
第一部分 ARIMA模型
• 一、差分运算 • 二、ARIMA模型
第二部分 残差自回归( Auto-Regressive )模型 第三部分 异方差
• 一、异方差的性质 • 二、方差齐性变换 • 三、条件异方差模型
本讲内容
第一部分 ARIMA模型
• 一、差分运算 • 二、ARIMA模型
得非常严重,完全丧失方向感,把他放在荒郊野外,一段时
间之后再去找他,在什么地方找到他的概率最大呢?
ARIMA模型的性质
ARIMA(0,1,0)时序图
ARIMA模型建模步骤
获 得 观 察 值 序 列
平稳性 检验 N 差分 运算
Y
白噪声 检验 N 拟合 ARMA 模型
Y
分 析 结 束
例:对1952-1988年中国农业实际国民收入指数序 列建模
( p, d , (q1 ,, qn )) 以简记为 ARIMA
q1 ,, qn 为非零移动平均系数的阶数
如果自相关和移动平滑部分都有省缺,可以简记为
ARIMA (( p1 ,, pm ), d , (q1 ,, qn ))
例:对1917年-1975年美国23岁妇女每万人生育 率序列建模
差分方式的选择
• 序列蕴含着显著的线性趋势,一阶差分就可以实现趋势平稳
原序列时序图
差分后序列时序图
•
序列蕴含着曲线趋势,通常低阶(二阶或三阶)差分就可 以提取出曲线趋势的影响
差分后序列时序图
一阶差分
二阶差分
例:差分运算提取1995年1月—2000年12月平均每 头奶牛的月产奶量序列中的确定性信息
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
差分平稳
对原序列作一阶差分消除趋势,再作4步差分消除季节效 应的影响,差分后序列的时序图如下
白噪声检验
延迟阶数
2 统计量
43.84
51.71
P值
6
12
<0.0001
<0.0001
18
54.48
<0.0001
差分后序列自相关图
差分后序列仍有一定季节效应,延迟4阶后,自相关系数有一个反弹。 延迟1阶到3阶,延迟4阶到7阶衰减非常迅速,故该序列具有短期相关性。
xt t t
j t j j 0 d
( B)at
随机性影响
确定性影响
差分运算的实质
Cramer分解定理在理论上保证了适当阶数的差分一定可以 充分提取确定性信息
差分方法是一种非常简便、有效的确定性信息提取方法 差分运算的实质是使用自回归的方式提取确定性信息
i d xt (1 B) d xt (1) i C d xt i i 0 d
arima(x,order=c(1,1,0)) arima(diff(x),order=c(1,0,0))
arima(x,order=c(1,1,0),xreg=1:length(x))
ARIMA模型预测
原则
最小均方误差预测原理
Green函数递推公式
1 1 1 2 1 1 2 2 j 1 j 1 p d j p d j
2000年1月 2000年3月 2000年5月 2000年7月 2000年9月 2000年11月 2001年1月 2001年3月 2001年5月 2001年7月 2001年9月 2001年11月 2002年1月 2002年3月 2002年5月 2002年7月 2002年9月 2002年11月 2003年1月 2003年3月 2003年5月 2003年7月 2003年9月 2003年11月 2004年1月 2004年3月 2004年5月 2004年7月 2004年9月 2004年11月 2005年1月 2005年3月 2005年5月 2005年7月 2005年9月 2005年11月
ARIMA 模型族
d=0 ARIMA(p,d,q)=ARMA(p,q) p=0 ARIMA(p,d,q)=IMA(d,q)
q=0
ARIMA(p,d,q)=ARI(p,d) d=1,P=q=0 ARIMA(p,d,q)=random walk model
随机游走模型( random walk)
( p, d , (q1 ,, qn )) 以简记为 ARIMA
q1 ,, qn 为非零移动平均系数的阶数
如果自相关和移动平滑部分都有省缺,可以简记为
ARIMA (( p1 ,, pm ), d , (q1 ,, qn ))
例:对1917年-1975年美国23岁妇女每万人生育 率序列建模
差分方式的选择
• 序列蕴含着显著的线性趋势,一阶差分就可以实现趋势平稳
原序列时序图
差分后序列时序图
•
序列蕴含着曲线趋势,通常低阶(二阶或三阶)差分就可 以提取出曲线趋势的影响
差分后序列时序图
一阶差分
二阶差分
例:差分运算提取1995年1月—2000年12月平均每 头奶牛的月产奶量序列中的确定性信息
例:
已知ARIMA(1,1,1)模型为
且
(1 0.8B)(1 B) xt (1 0.6B) t
xt 1 4.5
xt 5.3
t 0.8 2 1
求
xt 3 的95%的置信区间
预测值
等价形式
(1 1.8B 0.8B 2 ) xt (1 0.6B) t xt 1.8xt 1 0.8xt 2 t 0.6 t 1
预测值
xt l ( t l 1 t l 1 l 1 t 1 ) ( l t l 1 t 1 )
et (l )
ˆ t (l ) x
E[et (l )] 0 Var[et (l )] (1 )
2 1 2 l 1 2
滑系数 k ,1 k q 为零,即原模型中有部分系数省缺了,
那么该模型称为疏系数模型。
疏系数模型类型
如果只是自相关部分有省缺系数,那么该疏系数模型可以
(( p1 ,, pm ), d , q) 简记为 ARIMA
p1 ,, pm 为非零自相关系数的阶数
如果只是移动平滑部分有省缺系数,那么该疏系数模型可
2、乘积季节模型
使用场合
• 序列的季节效应、长期趋势效应和随机波动之间有着复杂 地相互关联性,简单的季节模型不能充分地提取其中的相 关关系。
例:拟合1948-1981年美国女性月度失业率序列
1、检验序列平稳性
差分平稳
一阶、12步差分: x.dif=diff(diff(x),12) plot(x.dif)
第二部分 残差自回归( Auto-Regressive )模型 第三部分 异方差
• 一、异方差的性质 • 二、方差齐性变换 • 三、条件异方差模型
Cramer分解定理(1961)
任何一个时间序列 {xt }都可以分解为两部分的叠加:其中 一部分是由多项式决定的确定性趋势成分,另一部分是平 稳的零均值误差成分,即
第五讲 非平稳序列的随机分析
本讲内容
第一部分 ARIMA模型
• 一、差分运算 • 二、ARIMA模型
第二部分 残差自回归( Auto-Regressive )模型 第三部分 异方差
• 一、异方差的性质 • 二、方差齐性变换 • 三、条件异方差模型
本讲内容
第一部分 ARIMA模型
• 一、差分运算 • 二、ARIMA模型
一阶差分序列时序图
一阶差分序列自相关图
一阶差分后序列白噪声检验 延迟阶数 6 12 18
2统计量
P值 0.0178 0.1060 0.1344
15.33 18.33 24.66
拟合ARMA模型
偏自相关图
建模
课后问题
用R拟合以下三个模型的区别,三个模型的表达式分别是 什么形式?
二、ARIMA模型
(一)ARIMA模型介绍 (二)疏系数模型 (三)季节模型
ARIMA模型结构
使用场合:差分平稳序列拟合 模型结构
( B) d xt ( B) t 2 E ( ) 0 , Var ( ) t t , E ( t s ) 0, s t Ex 0, s t s t
模型结构
xt xt 1 t 2 E ( ) 0 , Var ( ) t t , E ( t s ) 0, s t Ex 0, s t s t
模型产生典故
Karl Pearson(1905)在《自然》杂志上提问:假如有个醉汉醉
1、简单季节模型
简单季节模型是指序列中的季节效应和其它效应之间是加 法关系
xt S t Tt I t
简单季节模型通过简单的趋势差分、季节差分之后序列即
可转化为平稳,它的模型结构通常如下
( B ) D xt t ( B)
d
例:拟合1962—1991年德国工人季度失业率序列
差分后序列自相关图与偏自相关图
除了1阶和4阶偏自相关系数显著大于2倍标准差之外,其他 阶数基本都在2倍标准差内波动。
所以尝试拟合疏系数模型AR(1,4)
模型拟合
预测
101
102
103
104
105
106
100
99
100 102 104 106 108 110 96 98
2000年1月 2000年8月 2001年3月 2001年10月 2002年5月 2002年12月 2003年7月 2004年2月
98 cpi
1月 6月 2月
2004年9月 2005年4月
2005年11月
2006年6月 2007年1月 2007年8月 2008年3月 2008年10月
2、乘积季节模型
2009年5月
2009年12月 2010年7月 2011年2月 2011年9月 2012年4月 2012年11月 2013年6月 2014年1月 2014年8月 2015年3月 2015年10月
自相关图
偏自相关图
建模
150000
200000
250000
100000
50000
2、乘积季节模型
1、简单季节模型
0
(三)季节模型
国内生产总值_当季值(亿元)
2000年第1季度 2000年第3季度 2001年第1季度 2001年第3季度 2002年第1季度 2002年第3季度 2003年第1季度 2003年第3季度 2004年第1季度 2004年第3季度 2005年第1季度 2005年第3季度 2006年第1季度 2006年第3季度 2007年第1季度 2007年第3季度 2008年第1季度 2008年第3季度 2009年第1季度 2009年第3季度 2010年第1季度 2010年第3季度 2011年第1季度 2011年第3季度 2012年第1季度 2012年第3季度 2013年第1季度 2013年第3季度 2014年第1季度 2014年第3季度 2015年第1季度 2015年第3季度 2016年第1季度 2016年第3季度 2017年第1季度 2017年第3季度