时间序列分析详解

时间序列分析详解


时间序列按时间顺序排列的、随时间变化且相互关联的数据序列。

分析时间序 列的方法构成数据分析的一个重要领域,即时间序列分析。 时间序列根据所研究的依据不同,可有不同的分类。

  1. 按所研究的对象的多少分,有一元时间序列和多元时间序列。
  2. 时间的连续性可将时间序列分为离散时间序列和连续时间序列两种。
  3. 按序列的统计特性分,有平稳时间序列和非平稳时间序列。如果一个时间序列 的概率分布与时间t无关,则称该序列为严格的(狭义的)平稳时间序列。

如果序列的 一、二阶矩存在,而且对任意时刻t满足:

(1)均值为常数

(2)协方差为时间间隔τ的函数。

则称该序列为宽平稳时间序列,也叫广义平稳时间序列。我们以后所研究的时间序列主 要是宽平稳时间序列。

4. 按时间序列的分布规律来分,有高斯型时间序列和非高斯型时间序列。

在这里插入图片描述

时间序列方法概述


在这里插入图片描述

使用时间序列进行预测


简单平均法

简单平均法就是预测的值为之前过去所有值的平均.当然这不会很准确,但这种预测方法在某些情况下效果是最好的。

移动平均法

我们经常会遇到这种数据集,比如价格或销售额某段时间大幅上升或下降。如果我们这时用之前的简单平均法,就得使用所有先前数据的平均值,但在这里使用之前的所有数据是说不通的,因为用开始阶段的价格值会大幅影响接下来日期的预测值。因此,我们只取最近几个时期的价格平均值。很明显这里的逻辑是只有最近的值最要紧。这种用某些窗口期计算平均值的预测方法就叫移动平均法。

在这里插入图片描述

指数平滑法

在做时序预测时,一个显然的思路是:认为离着预测点越近的点,作用越大。比如我这个月体重100斤,去年某个月120斤,显然对于预测下个月体重而言,这个月的数据影响力更大些。假设随着时间变化权重以指数方式下降——最近为0.8,然后0.82,0.83…,最终年代久远的数据权重将接近于0。将权重按照指数级进行衰减,这就是指数平滑法的基本思想。

指数平滑法有几种不同形式:一次指数平滑法针对没有趋势和季节性的序列,二次指数平滑法针对有趋势但没有季节性的序列,三次指数平滑法针对有趋势也有季节性的序列。“

所有的指数平滑法都要更新上一时间步长的计算结果,并使用当前时间步长的数据中包含的新信息。它们通过”混合“新信息和旧信息来实现,而相关的新旧信息的权重由一个可调整的参数来控制。

在这里插入图片描述

ARMA模型


AR(Auto Regressive Model)自回归模型是线性时间序列分析模型中最简单的模型。通过自身前面部分的数据与后面部分的数据之间的相关关系(自相关)来建立回归方程,从而可以进行预测或者分析

在这里插入图片描述

MA(Moving Average Model)移动平均模型通过将一段时间序列中白噪声(误差)进行加权和,可以得到移动平均方程。如下模型为q阶移动平均过程,表示为MA(q)。

在这里插入图片描述

在这里插入图片描述

ARMA(Auto Regressive and Moving Average Model)自回归移动平均模型是与自回归和移动平均模型两部分组成。所以可以表示为ARMA(p, q)。p是自回归阶数,q是移动平均阶数。

在这里插入图片描述

ARIMA模型


由于序列可能并不平稳但可能在差分后平稳,所以先差分再ARMA就变成了ARIMA

ARIMA(Auto Regressive Integrate Moving Average Model)差分自回归移动平均模型是在ARMA模型的基础上进行改造的,ARMA模型是针对t期值进行建模的,而ARIMA是针对t期与t-d期之间差值进行建模,我们把这种不同期之间做差称为差分,这里的d是几就是几阶差分。ARIMA模型也是基于平稳的时间序列的或者差分化后是稳定的,另外前面的几种模型都可以看作ARIMA的某种特殊形式。表示为ARIMA(p, d, q)。p为自回归阶数,q为移动平均阶数,d为时间成为平稳时所做的差分次数,也就是Integrate单词的在这里的意思。
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

在这里插入图片描述

代码:

clc,clear;
close all;t = 1:240;
y=[2006	1138	993	1027	1155	1175	1299	1786	1781	1570	1387	1635	2795	1679	1329	1585	1406	1260	1814	1556	2143	1963	1555	1217	1738	1261	1141	1099	1274	1325	1197	1596	1923	1789	1606	2174	3089	1746	1571	1545	1593	1480	1925	1290	2637	1907	1922	1660	2355	1104	1093	1085	1125	1257	1055	1547	1927	1881	1490	2156	3147	1706	1599	1544	1738	1747	2380	2049	2713	2543	2139	2105	2378	1461	1295	1313	1360	1582	1425	1656	1822	1602	1404	1837	2589	1052	956	895	972	1124	1620	1280	1492	1587	1330	1219	2064	1347	1325	1273	1461	1481	1511	2000	2137	1643	1464	1706	2236	1065	994	907	948	997	1788	1394	1787	1435	1225	1221	1900	1259	1357	509	557	1375	1548	1802	1995	1720	1468	1625	2515	1371	1439	1642	1344	1247	1737	1434	1782	1595	1348	1083	1864	1367	1299	1301	1308	1382	1401	1837	2045	1790	1409	1179	1852	796	780	602	584	558	831	639	943	960	859	775	976	581	563	547	635	664	684	828	981	889	1303	1490	2246	1335	1270	1281	1210	1078	1664	1337	1632	1454	1333	1146	1721	1059	963	1000	1107	1132	1086	1399	1575	1507	1469	1650	2305	1328	1323	1314	1317	1443	1963	2201	2577	1900	1606	1390	1859	1009	1001	940	981	1239	1023	1284	1510	1497	1448	1677	2188	1499	1313	1351	1237	1454	2031	1615	2230	1899	1574	1666];
figure
plot( t, y )adftest(y)
%% ACF和PACF 
figure
subplot(211),autocorr( y );
subplot(212),parcorr( y );
figure
dy = diff( y );
subplot(211),autocorr( dy );
subplot(212),parcorr( dy );

在这里插入图片描述
在这里插入图片描述

Y=[2006	1138	993	1027	1155	1175	1299	1786	1781	1570	1387	1635	2795	1679	1329	1585	1406	1260	1814	1556	2143	1963	1555	1217	1738	1261	1141	1099	1274	1325	1197	1596	1923	1789	1606	2174	3089	1746	1571	1545	1593	1480	1925	1290	2637	1907	1922	1660	2355	1104	1093	1085	1125	1257	1055	1547	1927	1881	1490	2156	3147	1706	1599	1544	1738	1747	2380	2049	2713	2543	2139	2105	2378	1461	1295	1313	1360	1582	1425	1656	1822	1602	1404	1837	2589	1052	956	895	972	1124	1620	1280	1492	1587	1330	1219	2064	1347	1325	1273	1461	1481	1511	2000	2137	1643	1464	1706	2236	1065	994	907	948	997	1788	1394	1787	1435	1225	1221	1900	1259	1357	509	557	1375	1548	1802	1995	1720	1468	1625	2515	1371	1439	1642	1344	1247	1737	1434	1782	1595	1348	1083	1864	1367	1299	1301	1308	1382	1401	1837	2045	1790	1409	1179	1852	796	780	602	584	558	831	639	943	960	859	775	976	581	563	547	635	664	684	828	981	889	1303	1490	2246	1335	1270	1281	1210	1078	1664	1337	1632	1454	1333	1146	1721	1059	963	1000	1107	1132	1086	1399	1575	1507	1469	1650	2305	1328	1323	1314	1317	1443	1963	2201	2577	1900	1606	1390	1859	1009	1001	940	981	1239	1023	1284	1510	1497	1448	1677	2188	1499	1313	1351	1237	1454	2031	1615	2230	1899	1574	1666];
Y=Y(1:168)';
x=1:168;
% 通过AIC,BIC等准则暴力选定阶数
%[AR_Order,MA_Order] = ARMA_Order_Select(Y,max_ar,max_ma,0); 
AR_Order=6;
MA_Order=3;
Mdl = arima(6,0,3);  
EstMdl = estimate(Mdl,Y);
[res,~,logL] = infer(EstMdl,Y);   %res即残差stdr = res/sqrt(EstMdl.Variance);
figure('Name','残差检验')
subplot(2,3,1)
plot(stdr)
title('Standardized Residuals')
subplot(2,3,2)
histogram(stdr,10)
title('Standardized Residuals')
subplot(2,3,3)
autocorr(stdr)
subplot(2,3,4)
parcorr(stdr)
subplot(2,3,5)
qqplot(stdr)
% 5.预测
step = 24; %预测步数为24
[forData,YMSE] = forecast(EstMdl,step,'Y',Y);   %matlab2018及以下版本写为Predict_Y(i+1) = forecast(EstMdl,1,'Y0',Y(1:i)); 
lower = forData - 1.96*sqrt(YMSE); %95置信区间下限
upper = forData + 1.96*sqrt(YMSE); %95置信区间上限
subplot(2,3,6);
plot(Y,'Color',[.7,.7,.7]);hold on;
h1 = plot(length(Y):length(Y)+step,[Y(end);lower],'r:','LineWidth',2);subplot(2,3,6);
plot(length(Y):length(Y)+step,[Y(end);upper],'r:','LineWidth',2),hold on;
h2 = plot(length(Y):length(Y)+step,[Y(end);forData],'k','LineWidth',2);subplot(2,3,6);
legend([h1 h2],'95% 置信区间','预测值','Location','NorthWest')
title('Forecast')

在这里插入图片描述
在这里插入图片描述


拓展

在这里插入图片描述
在这里插入图片描述

SARIMA模型

SARIMA(Seasonal Autoregressive Integrated Moving Average)模型在非稳 的数据上多了一些对有周期性特征数据的处理。其主要原理是来源于外界对 数据周期性的观察,得到季节的长度(s)、季节自回归的阶数(P,取值由 PACF判断)、季节移动平均的阶数(Q,取值由ACF判断)季节差分的阶数(D, 一般就是0或1),再建立关于季节性的模型,将该模型和ARIMA模型结合,就 是SARIMA模型。

SARIMA季节性自回归移动平均模型模型在ARIMA模型的基础上添加了季节性的影响,结构参数有七个:SARIMA(p,d,q)(P,D,Q,s)
其中p,d,q分别为之前ARIMA模型中我们所说的p:趋势的自回归阶数。d:趋势差分阶数。q:趋势的移动平均阶数。
P:季节性自回归阶数。
D:季节性差分阶数。
Q:季节性移动平均阶数。
s:单个季节性周期的时间步长数。

AIC-BIC准则


实际上我们仍然会得到针对训练数据的多个较为合理的模型,比如混合高斯模型中不同的协方差矩阵和不同 的分量数会产生不同的结果,如何在这些模型中选择最优的模型呢? 模型选择问题就是需要在模型复杂性和模型对数据集描述能力(即似然函数)之间寻找一个平衡,而常用的 模型选择方法就是BIC和AIC,模型选择中AIC和BIC值均是越小越好。在BIC和AIC描述过程中,当训练数据 足够多时,可以不断提高模型精度,即是似然函数会越大,模型对数据集的描述能力越强,而复杂性方面往 往体现在参数数量,即参数越少越好,通过下式就可以理解AIC和BIC公式的原理,实际运用中BIC的运用较 多。

在这里插入图片描述

其他时间序列模型


SARIMAX模型(在ARIMA模型上加了季节性的因素),Prophet模型,ARCH模型,LSTM神经网络模型

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.rhkb.cn/news/401136.html

如若内容造成侵权/违法违规/事实不符,请联系长河编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

Spring Cloud Alibaba微服务组件学习笔记

文章目录 一、版本说明版本关系项目创建 二、Nacos注册中心什么是NacosNacos注册中心核心功能Nacos Server部署(windows版本)Nacos Client服务Nacos Server配置项详解:Nacos集群搭建: 三、Ribbon负载均衡主流的负载方案&#xff1…

Spark MLlib 特征工程(上)

文章目录 Spark MLlib 特征工程(上)特征工程预处理 Encoding:StringIndexer特征构建:VectorAssembler特征选择:ChiSqSelector归一化:MinMaxScaler模型训练总结Spark MLlib 特征工程(上) 前面我们一起构建了一个简单的线性回归模型,来预测美国爱荷华州的房价。从模型效果来…

【C++语言】list的构造函数与迭代器

1. list的介绍及使用 1.1 list的介绍 list的文档介绍 1. list是可以在常数范围内在任意位置进行插入和删除的序列式容器,并且该容器可以前后双向迭代。 2. list的底层是双向链表结构,双向链表中每个元素存储在互不相关的独立节点中,在节点…

C语言实现多种快速排序

目录 1.概念 2.快速排序hoare版本 2.1基本思想 2.2解释相遇处的值为何一定小于key 2.3hoare版本快速排序的实现 3.快速排序挖坑法 3.1基本思想 3.2挖坑法快速排序的实现 4. 快速排序前后指针版本 4.1基本思想 4.2快速排序前后指针版本实现 5.快速排序非递归版本 …

苹果笔记本电脑可以玩steam游戏吗 MacBook支持玩steam游戏吗 在Steam上玩黑神话悟空3A大作 苹果Mac怎么下载steam

游戏是生活的润滑剂,越来越多的用户开始关注Mac平台上可玩的游戏。幸运的是,Steam作为最大的数字发行平台之一,提供了大量适用于Mac操作系统的游戏。无论你是喜欢策略、冒险还是射击类游戏,都能在Steam上找到适合自己Mac设备玩耍的…

从0开始搭建vue + flask 旅游景点数据分析系统(九):旅游景点管理之增删改查

这一期来做旅游景点数据的增删改查 先看下我们做好的效果是这样的: ## 1 后台接口 这里的接口已经考虑到了分页的情况,因为前端的表格是带有分页的,接受的前端传过来的get参数为 title 、page、 limit ,titie是查询的关键词&…

Matlab绘制像素风字母颜色及透明度随机变化动画

本文是使用 Matlab 绘制像素风字母颜色及透明度随机变化动画的教程 实现效果 实现代码 如果需要更改为其他字母组合,在下面代码的基础上简单修改就可以使用。 步骤:(1) 定义字母形状;(2) 给出字母组合顺序;(3) 重新运行程序&#…

iPhone 16 机模视频曝光,五种颜色各有千秋

科技博主的最新视频分享了苹果 iPhone 16 标准版的机模上手体验。 视频中展示了五种颜色的 iPhone 16:深邃的蓝色、柔和的粉色、纯净的白色、经典的黑色和生机勃勃的绿色。 与 iPhone 15 相比,iPhone 16 弃用了黄色,新增了白色,…

地质灾害评估和治理工程勘查设计资质乙级资质办理标准

地质灾害评估和治理工程勘查设计资质乙级资质的办理标准主要包括单位条件、专业技术人员条件、仪器设备要求以及申请材料等方面。以下是详细的办理标准: 一、单位条件 **1、法人资格:**申请单位应具有企业法人或者事业单位法人资格。 **2、管理体系&a…

奥运内容碎片化传播下,品牌营销开始要讲究“性价比”

8月12日凌晨,随着孙颖莎和其他代表各洲的运动员们一起熄灭了圣火,巴黎奥运会终于落下帷幕。 本届奥运会上,中国体育代表团表现出色,共获得40枚金牌,金牌总数位居全球榜首,创下了中国在境外奥运会上的最佳成…

人工智能领域颠覆性技术创新,数字人泛化AI时代来临

是先有鸡还是先有蛋,这个问题人类还没有搞清楚,这次又有一个新的问题产生了,是算法进化了AI,还是AI进化了算法。我们知道直播平台都是利用算法对数字人直播进行斟别,但这一次被数字人泛化技术颠覆了,AI回复…

报错解决——苹果电脑mac装windows10,总是提示“启动转换”安装失败:拷贝Windows安装文件时出错

报错原因: 所安装的镜像文件大于4GB。 解决办法一: 使用小于4GB的镜像文件。 参考文章: 安装小于4GB的windows系统镜像 小于4GB的windows10镜像下载: 系统库官网 解决办法二: 参考文章: Mac air装…

VS实用调试技巧(程序员的必备技能)

调试的重要性 在我们写代码的时候,如果程序出现了bug,那么下一步就是找到bug并修复bug!而这个找问题的过程就被称为调试(英文叫debug,消灭bug的意思)。 调试能观察到程序内部执行的细节,可以增加程序员对…

Kafka系列之:Kafka Connect深入探讨 - 错误处理和死信队列

Kafka系列之:Kafka Connect深入探讨 - 错误处理和死信队列 一、快速失败二、YOLO:默默忽略坏消息三、如果一条消息掉在树林里,会发出声音吗?四、将消息路由到死信队列五、记录消息失败原因:消息头六、记录消息失败原因…

什么是数据仓库ODS层?为什么需要ODS层?

在大数据时代,数据仓库的重要性不言而喻。它不仅是企业数据存储与管理的核心,更是数据分析与决策支持的重要基础。而在数据仓库的各个层次中,ODS层(Operational Data Store,操作型数据存储)作为关键一环&am…

【6大设计原则】代码的艺术:深入探索单一职责原则

1. 引言:理解软件设计的艺术 软件设计,如同艺术创作,需要遵循一定的原则和规则。设计模式六大原则,是软件设计中不可或缺的指导方针。它们为软件开发者提供了一种思考问题的方法,帮助我们编写出更加优雅、高效和可维护…

Rocky系统部署k8s1.28.2单节点集群(Containerd)+Kuboard

目录 Kubernetes介绍 Kubernetes具备的功能 Kubernetes集群角色 Master管理节点组件 Node工作节点组件 非必须的集群插件 Kubernetes集群类型 Kubernetes集群规划 集群前期环境准备 开启Bridge网桥过滤 关闭SWAP交换分区 安装Containerd软件包 K8s集群部署方式 集…

Type-C接口取电芯片-LDR6500

取电芯片,特别是针对Type-C接口的取电芯片,如LDR6328系列,是近年来电子设备领域的一个重要技术组件。这些芯片通过智能协议控制,实现高效、安全的充电过程,并广泛应用于智能手机、平板电脑、笔记本电脑、小家电等各类需…

骗水技巧!怎么让猫咪多喝水?热门补水猫罐头推荐

我家一开始喂的是猫粮,买的还是进口牌子。然后发现团团有很多眼屎,泪痕也很重,我一度怀疑是这个牌子的猫粮不太好,后来就换成了国产的,价格确实少了一半,但是问题还是没有改善,而且吃完以后&…

HarmonyOS应用二之代办事项案例

目录: 1、代码分析2、ArkTS的基本组成3、重点扩展 1、代码分析 1.1代码: 在鸿蒙(‌HarmonyOS)‌的ArkTS框架中,‌aboutToAppear() 是一个自定义组件的生命周期函数,‌它在组件即将显示时被系统自动调用1。…