数学建模【时间序列】

news2024/11/19 9:32:52

一、时间序列简介

时间序列也称动态序列,是指将某种现象的指标数值按照时间顺序排列而成的数值序列。时间序列分析大致可分成三大部分,分别是描述过去、分析规律和预测未来,本篇将主要介绍时间序列分析中常用的三种模型:季节分解、指数平滑方法和ARIMA模型。还是推荐使用SPSS软件操作。

在 数学建模【多元线性回归】 中我们提到过时间序列,这里再来复习一下。

时间序列数据:对同一对象在不同时间连续观察所取得的数据

  • 从出生到现在,你的体重的数据(每年生日称一次)
  • 中国历年来GDP的数据
  • 在某地方每隔一小时测得的温度数据

时间序列也称动态序列,是指将某种现象的指标数值按照时间顺序排列而成的数值序列。

时间序列由两个组成要素构成:

  • 第一个要素是时间要素:年、季度、月、周、日、小时、分钟、秒
  • 第二个要素是数值要素

时间序列根据时间和数值性质的不同,可以分为时期时间序列和时点时间序列。

时期序列中,数值要素反映现象在一-定时期内发展的结果;时点序列中,数值要素反映现象在一定时点上的瞬间水平。

例如:

  1. 从出生到现在,你的体重的数据(每年生日称一次)
  2. 中国历年来GDP的数据
  3. 在某地方每隔一小时测得的温度数据

1和3是时点时间序列;2是时期时间序列。

时期序列可加,时点序列不可加。时期序列中的观测值反映现象在一段时期内发展过程的总量,不同时期的观测值可以相加,相加结果表明现象在更长一段时间内的活动总量;而时点序列中的观测值反映现象在某一瞬间上所达到的水平,不同时期的观测值不能相加,相加结果没有实际意义。

二、适用赛题

一些以时间线为中心的单个对象的预测问题。

三、模型流程

四、流程分析

注:时间序列涉及原理十分复杂,需要深厚的数理统计功底,本篇只做浅显的提及,连模型的具体操作都不做讲解,推荐使用SPSS操作。

1.做时间序列图

时间序列图就是根据时间线画出一个我们关心的值的变化线。如下图

                                                                                                                          图片来自:百度指数

这就是一个搜索次数关于时间线的变化线。

2.判断变动成分

做出图后,要对图进行分析。

因为时间序列是某个指标数值长期变化的数值表现,所以时间序列数值变化背后必然蕴含着数值变换的规律性,这些规律性就是时间序列分析的切入点。

一般情况下,时间序列的数值变化规律有以下四种:

  • 长期变动趋势
  • 季节变动规律
  • 周期变动规律
  • 不规则变动(随机扰动项)

长期趋势:T

长期趋势(Secular trend,T)指的是统计指标在相当长的一段时间内,受到长期趋势影响因素的影响,表现出持续.上升或持续下降的趋势,通常用字母T表示。例如,随着国家经济的发展,人均收入将逐渐提升;随着医学水平的提高,新生儿死亡率在不断下降。

季节趋势:S

季节趋势(Seasonal Variation,S)是指由于季节的转变使得指标数值发生周期性变动。这里的季节是广义的,一般以月、季、周为时间单位,不能以年作单位。例如雪糕和棉衣的销量都会随着季节气温的变化而周期变化;每年的长假(五一、十一、春节)都会引起出行人数的大量增加。

循环变动:C

循环变动(Cyclical Variation,C)与季节变动的周期不同,循环变动通常以若干年为周期,在曲线图上表现为波浪式的周期变动。这种周期变动的特征表现为增加和减少交替出现,但是并不具严格规则的周期性连续变动。最典型的周期案例就是市场经济的商业周期和的整个国家的经济周期。

不规则变动:I

不规则变动(Irregular Variation,I) 是由某些随机因素导致的数值变化,这些因素的作用是不可预知和没有规律性的,可以视为由于众多偶然因素对时间序列造成的影响(在回归中又被称为扰动项)。

以上四种变动就是时间序列数值变化的分解结果。有时这些变动会同时出现在一个时间序列里面,有时也可能只出现一种或几种,这是由引起各种变动的影响因素决定的。正是由于变动组合的不确定性,时间序列的数值变化才那么千变万化。

四种变动与指标数值最终变动的关系可能是叠加关系,也可能是乘积关系。

如果四种变动之间是相互独立的关系,那么叠加模型可以表示为:

Y = T + S + C + I

如果四种变动之间存在相互影响关系,那么应该使用乘积模型:

Y = T × S × C × I

Y:指标数值的最终变动;T:长期趋势变动;S:季节变动;C:循环变动;I:不规则变动

注意事项:

  • 数据具有年内的周期性时才能使用时间序列分解,例如数据是月份数据(周期为12)、季度数据(周期为4),如果是年份数据则不行
  • 在具体的时间序列图上,如果随着时间的推移,序列的季节波动变得越来越大,则反映各种变动之间的关系发生变化,建议使用乘积模型;反之,如果时间序列图的波动保持恒定,则可以直接使用叠加模型;当然,如果不存在季节波动,则两种分解均可以

从注意事项可知,做出时间序列图后判断,如果满足条件就选择时间序列分解模型。

下面进入难理解部分(可以不做具体了解)

3.指数平滑模型

下文来自SPSS官方文档

模型类型。指数平滑法模型分为季节性模型和非季节性模型。季节性模型只有在为活动数据集定义了周期时才可用 (请参见下文的“当前周期性") 。

  • 简单(Simple)。此模型适用于没有趋势或季节性的序列。其唯一的平滑参数是水平。简单指数平滑法与ARIMA模型极为相似,包含零阶自回归、一阶差分、一阶移动平均值,并且没有常数
  • Holt线性趋势(Holt's linear trend)。该模型适用于具有线性趋势并没有季节性的序列。其平滑参数是水平和趋势,不受相互之间的值的约束。Holt模型比Brown模型更通用,但在计算大序列时要花的时间更长。Holt指数平滑法与ARIMA模型极为相似,包含零阶自回归、二阶差分以及二阶移动平均值
  • Brown线性趋势(Brown's linear trend)。该模型适用于具有线性趋势并没有季节性的序列。其平滑参数是水平和趋势,并假定二者等同。因此,Brown 模型是Holt模型的特例。Brown指数平滑法与具有零阶自回归、二阶差分和二阶移动平均值的ARIMA模型极为相似,且移动平均值第二阶的系数等于第一阶的系数二分之一的平方
  • 阻尼趋势(Damped trend)。此模型适用于具有线性趋势的序列,且该线性趋势正逐渐消失并且没有季节性。其平滑参数是水平、趋势和阻尼趋势。阻尼指数平滑法与具有一阶自回归、一阶差分和二阶移动平均值的ARIMA模型极为相似
  • 简单季节性(Simple seasonal)。此模型适用于没有趋势并且季节性影响随时间变动保持恒定的序列。其平滑参数是水平和季节。简单季节性指数平滑法与ARIMA模型极为相似,包含零阶自回归、一阶差分、一阶季节性差分和一阶、p阶和p+1阶移动平均值,其中p是季节性区间中的周期数(对于月数据,p=12)
  • Winters可加性(Winters' additive)。此模型适用于具有线性趋势和不依赖于序列水平的季节性效应的序列。其平滑参数是水平、趋势和季节。Winters可加的指数平滑法与ARIMA模型极为相似,包含零阶自回归、一阶差分、一阶季节性差分和p+1阶移动平均值,其中p是季节性区间中的周期数(对于月数据,p=12)
  • Winters相乘性(Winters' multiplicative)。此模型适用于具有线性趋势和依赖于序列水平的季节性效应的序列。其平滑参数是水平、趋势和季节。Winters的可乘指数平滑法与任何ARIMA模型都不相似

至于具体的各个模型,有兴趣的同学可以到官网查询学习。

4.ARIMA模型

ARIMA属于一元时间序列分析的模型。要学习ARIMA还需要有前提知识,下面给出一个学习路线,要完全弄懂还需要大家自己努力。

路线

  1. 平稳时间序列和白噪声序列
  2. 差分方程和滞后算子
  3. AR模型
  4. MA模型
  5. ARMA模型
  6. ACF和PACF
  7. ARMA模型的估计
  8. AIC和BIC准则
  9. ARIMA模型
  10. SARIMA模型

本篇并未介绍过多应用性的东西,主要是对时间序列的学习路线做了一些指明。因为时间需要的专业知识较多,有兴趣的同学可以自己去学习。

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

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

第3集《天台教观纲宗》

乙二、约观行释 诸位法师慈悲!陈会长慈悲!诸位菩萨!阿弥陀佛! 请大家打开讲义第六页。我们看到乙二、约观行释。这一科是讲到天台教观的修学宗旨。 我们前面讲到,天台教观整个建立的过程,它是先有观法&a…

AHU 汇编 实验一

一、实验名称:实验1 实验1 用Debug命令查看寄存器和内存中的内容 实验目的:求掌握使用Debug命令查看寄存器和内存的方法。 通过第2章两个简单实例认识汇编语言程序,初步了解程序格式;段定义;标号;DOS系统功能&#xf…

017-$route、$router

$route、$router 1、$route2、$router 1、$route $route 对象表示当前的路由信息,包含了当前 URL 解析得到的信息。包含当前的路径,参数,query对象等。 使用场景: 获取路由传参:this.$route.query、this.$route.par…

Linux-socket套接字

前言 在当今数字化时代,网络通信作为连接世界的桥梁,成为计算机科学领域中至关重要的一部分。理解网络编程是每一位程序员必备的技能之一,而掌握套接字编程则是深入了解网络通信的关键。本博客将深入讨论套接字编程中的基本概念、常见API以及…

C++指针(五)完结篇

个人主页:PingdiGuo_guo 收录专栏:C干货专栏 前言 相关文章:C指针(一)、C指针(二)、C指针(三)、C指针(四)万字图文详解! 本篇博客是介…

Independent Variable Dependent Variable

自变量(Independent Variable) -----------> 因变量(Dependent Variable) 数据 ----------------------------------------------结果,报告等等

面试宝典-【redis】

目录 1.什么是缓存穿透 ? 怎么解决 ? 2.什么是布隆过滤器 3.什么是缓存击穿 ? 怎么解决 ? 4.什么是缓存雪崩 ? 怎么解决 ? 5.redis做为缓存,mysql数据如何与redis进行同步?(双写) 6.排他锁是如何保证读写、读读互斥的呢? 7.你听说过延…

3月10日

微机原理 1M1000k 1000/5200 200 NMI INTR 主 从 从 8-288 ZF0 100H MOVBX,[DI] 0AA55 基址 寄存器 ENDS SP 指示型和指令行的区别 指令型的语句是可执行的最终产生机器码会上机运行需要CPU去运行 指示型语句是指示如何汇编 数据定义 DB DW 符号定义 EQU 取值 TYPE OF…

Vite:下一代前端开发与构建工具

🤍 前端开发工程师、技术日更博主、已过CET6 🍨 阿珊和她的猫_CSDN博客专家、23年度博客之星前端领域TOP1 🕠 牛客高级专题作者、打造专栏《前端面试必备》 、《2024面试高频手撕题》 🍚 蓝桥云课签约作者、上架课程《Vue.js 和 E…

基于鹦鹉优化算法(Parrot optimizer,PO)的无人机三维路径规划(提供MATLAB代码)

一、无人机路径规划模型介绍 无人机三维路径规划是指在三维空间中为无人机规划一条合理的飞行路径,使其能够安全、高效地完成任务。路径规划是无人机自主飞行的关键技术之一,它可以通过算法和模型来确定无人机的航迹,以避开障碍物、优化飞行…

鲜为人知的闰年判定大坑

【题目描述】 输入年份,判断是否为闰年。如果是,则输出yes,否则输出no。 提示:简单地判断除以4的余数是不够的。 【题目来源】 刘汝佳《算法竞赛入门经典 第2版》习题1-7 年份(year) 【解析】 一、闰…

多线程多进程处理服务器并发(多进程处理如何解决僵死进程)

目录 1.可循环发送数据的代码 2.改成循环之后每次发现只能处理一个客户端 3.服务器端处理并发问题 3.1 思路 3.2 利用多线程实现并发 ​编辑 3.3 利用多进程实现并发 3.3.1 多进程并发产生的僵死进程问题 ​3.3.2 解决僵死进程问题 1.可循环发送数据的代码 服务器代…

vue 在什么情况下在数据发生改变的时候不会触发视图更新

在 Vue 中,通常数据发生变化时,视图会自动更新。但是,有几种情况可能导致数据变化不会触发视图更新: 1.对象属性的添加或删除: Vue 无法检测到对象属性的添加或删除。因为 Vue 在初始化实例时对属性执行了 getter/se…

【教学类-34-09】20240310华文彩云学号拼图(3*3格子浅灰底图 深灰拼图块)(AI对话大师)

作品展示 背景需求: 制作了两位数的学号3*3格子, 【教学类-34-05】20230523拼图(数字学号0X-长方块拼图-双色深灰浅灰)3*3格子(中班主题《个别化拼图》偏艺术-美术)_灰底白色方块数字怎么制作-CSDN博客文…

PhantomCrawler:一款功能强大的多代理IP网站请求生成工具

关于PhantomCrawler PhantomCrawler是一款功能强大的多代理IP网站请求生成工具,该工具允许广大研究人员通过不同的代理IP地址来模拟与目标Web站点的交互行为。 PhantomCrawler基于Python、requests和BeautifulSoup实现其功能,并提供了一种简单且高效的方…

【Linux】gcc与make、makefile

文章目录 1 gcc/g1.1 预处理1.2 编译1.3 汇编1.4 链接1.4.1 静态链接1.4.2 动态链接 2 make和makefile2.1 依赖关系2.2 依赖方法2.3 伪目标 3 总结 1 gcc/g 当我们创建一个文件,并向里面写入代码,此时,我们该如何使我们的代码能够运行起来呢&…

Delphi 的Read 与Readln 的区别

结合运行窗口,你输入1 2 3 4 这是一行ReadLn在读入时把这四个数当成一行,read(a,b)只读入了前两个数:1 2,就准备读下一行了,下一行输入3,再下一行输入2,所以输出1232; Read是逐个读…

【MySQL 系列】MySQL 语句篇_DQL 语句

DQL(Data Query Language),即数据查询语言,用来查询数据记录。DQL 基本结构由 SELECT FROM、WHERE、JOIN 等子句构成。 DQL 语句并不会改变数据库,而是让数据库将查询结果发送结果集给客户端,返回的结果是一…

IDEA打开项目文件目录不见了

偶尔发生新拉下来的代码,或者旧代码修改了包名,项目名称等,idea左侧project一栏不显示代码的文件目录。例如下面此时不要慌张,不用删除项目重新拉取,通过以下方式解决: 本人尝试能够解决,如果无…

Learn OpenGL 05 变换

万向节死锁 万向节死锁(Gimbal Lock)是用欧拉角定义旋转时,产生的在某一情况下旋转轴重合导致的系统丢失自由度的情况,一种最简单的解决方式是调整三维软件中的旋转轴顺序来避免该情况发生。 也就是说当中间轴旋转至90的时候就会…