数学建模【时间序列】

一、时间序列简介

时间序列也称动态序列,是指将某种现象的指标数值按照时间顺序排列而成的数值序列。时间序列分析大致可分成三大部分,分别是描述过去、分析规律和预测未来,本篇将主要介绍时间序列分析中常用的三种模型:季节分解、指数平滑方法和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.mzph.cn/news/734770.shtml

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

相关文章

多线程扫盲篇

一:前言 多线程在java中具有举足轻重的地位,无论是平时开发中还是面试求职中,对多线程这一块的知识点考察都非常多的,本周我们将平时开发中、面试中常见的一些多线程知识进行梳理,让大家对这一块有更加深入的理解 二…

AOP切面编程,以及自定义注解实现切面

AOP切面编程 通知类型表达式重用表达式切面优先级使用注解开发,加上注解实现某些功能 简介 动态代理分为JDK动态代理和cglib动态代理当目标类有接口的情况使用JDK动态代理和cglib动态代理,没有接口时只能使用cglib动态代理JDK动态代理动态生成的代理类…

【C++】template方法undefined reference to

这周本来要写几个前端的知识点,因为刚好最近接了一个前端的项目。但是这个有点复杂,自己还没学明白,没法写文章出来。就写一个这周开发遇到的问题。 另外吐槽 VS Code 提升了 SSH 需要的对方服务器的 linux 版本,都连不上了&…

自动驾驶---Motion Planning之Speed Boundary

1 背景 在上篇博客《自动驾驶---Motion Planning之Path Boundary》中,笔者主要介绍了path boundary的一些内容,通过将道路中感兴趣区域的动静态障碍物投影到车道坐标系中,用于确定L或者S的边界,并利用道路信息再确定Speed的边界,最后结合粗糙的速度曲线和路径曲线,即可使…

armv8/armv9不同特权程序之间的跳转模型

目录 1、前言2、4个特权等级/4个安全状态之间的跳转模型3、启动时镜像之间的跳转模型4、runtime程序之间的跳转模型推荐 本文转自 周贺贺,baron,代码改变世界ctw,Arm精选, armv8/armv9,trustzone/tee,secur…

【docker基础学习之】镜像构建

下面是在工作过遇到的一些实际例子,谨以此作为笔记参考 目录 1.背景2. 寻找方案3. 如何解决4.解决步骤4.1 DockerFile4.2 现在要做的 5. 镜像相关命令 1.背景 部署(迁移)项目时发现,项目的excel导出功能报错,错误如下…

html--彩虹马

文章目录 htmljscss 效果 html <!DOCTYPE html> <html lang"en" > <head> <meta charset"UTF-8"> <title>Rainbow Space Unicorn</title> <link rel"stylesheet" href"css/style.css"> &l…

2024 再战基金

这是一场长时间的拉锯战&#xff0c;刚提交了初稿&#xff0c;等学校审查&#xff0c;再坚持10天&#xff0c;今年的申报任务结束。 很长时间&#xff0c;自己都不愿意动笔&#xff0c;因为确实没有好的idea&#xff0c;无法凝练科学问题&#xff0c;更想当一名踏实的工程师&a…

qsort函数的使用及其模拟实现

一.基本介绍 注意&#xff1a;qsort函数是默认从小到大排序 二、qsort 函数的使用 1.排序数组 int compare(const void* e1, const void* e2) {return *(int*)e1 - *(int*)e2;//强制类型转换 }int main() {int arr[10] { 44,5,34,56,42,90,43,1,52,98 };int num sizeof(…

nextjs link跳转 和 window.location.href 跳转的区别

Next.js 的 next/link 组件和浏览器原生的 window.location.href 之间的跳转在功能上都实现了页面跳转&#xff0c;但它们之间存在一些重要的区别&#xff0c;特别是在 Next.js 这样的服务端渲染&#xff08;SSR&#xff09;或静态站点生成&#xff08;SSG&#xff09;框架中。…

ubuntu18.04下zookeeper安装与简单使用

下载与解压 官网下载地址 Apache ZooKeeper 解压 tar -zxvf zookeeper-3.4.10.tar.gz 环境准备 zookeeper基于java开发&#xff0c;因此首先需要安装java的jdk包 sudo apt-get install openjdk-8-jdk修改配置 进入解压目录里的conf文件夹内 mv zoo_sample.cfg zoo.cfg …

【R语言爬虫实战】抓取省市级城市常务会议内容

&#x1f349;CSDN小墨&晓末:https://blog.csdn.net/jd1813346972 个人介绍: 研一&#xff5c;统计学&#xff5c;干货分享          擅长Python、Matlab、R等主流编程软件          累计十余项国家级比赛奖项&#xff0c;参与研究经费10w、40w级横向 文…

win11家庭版docker和milvus

docker 1、官网下载docker文件Get Started | Docker&#xff0c;选择download for windows下载。 2、双击打开下载好的文件Docker Desktop Installer.exe&#xff0c;add shortcut to desktop选择√代表同意添加快捷键到桌面&#xff0c;如果不勾选就说明不创建快捷键&#x…

分布式锁从0到1落地实现01(mysql/redis/zk)

1 准备数据库表 CREATE TABLE user ( id bigint(20) NOT NULL COMMENT 主键ID, name varchar(30) DEFAULT NULL COMMENT 姓名, age int(11) DEFAULT NULL COMMENT 年龄, email varchar(50) DEFAULT NULL COMMENT 邮箱, PRIMARY KEY (id) ) ENGINEInnoDB DEFAULT CHARSETutf8;I…

基于SpringBoot的教务管理系统

1&#xff0e;引言 1.1编写目的 教务管理系统是完成学生管理、用户管理、校建管理、课程管理、教师管理、成绩管理、校内新闻、选课管理和教评管理九大管理模块&#xff0c;由教务工作人员系统给管理员、教师、以及学生多用户角色&#xff0c;各用户依据自己角色的不同而操作…

【前端】vscode快捷键和实用Api整理

vscode的快捷键 创建a.html 生成模板 !回车 <!DOCTYPE html> <html lang"en"> <head><meta charset"UTF-8"><meta http-equiv"X-UA-Compatible" content"IEedge"><meta name"viewport" …

AI写真,太火了

昨天晚上&#xff0c;AI大佬吴东子直播讲解了AI写真项目&#xff0c;说21点破局星球会准时放出预约链接&#xff0c;结果21点星球直接崩溃了&#xff0c;只能说这个项目太火爆了 经过星球授权&#xff0c;这里把整个项目的SOP截取一部分给到大家&#xff0c;完整的SOP太长了&am…

Python基础学习(7)函数作用域与名称空间

文章目录 一.认识函数对象1.函数被引用2.函数作为元素3.函数可以作为参数和返回值 二,名称空间1.内建名称空间(存放内置函数)2.全局名称空间(Python定义在外层的名字)3.局部名称空间(存在函数内定义的名字) 三,作用域1.global 提权2.nonlocal 降权 四,匿名函数 Python基础学习(…

数据库(一)初步认识数据库系统

什么是数据库&#xff1f; 表&#xff1a;以按行按列形式组织及展现的数据 如下便是一个表&#xff0c;也叫关系&#xff0c;描述了一批相互有关联关系的数据 数据库&#xff1a;起源于规范化表&#xff08;如成绩单&#xff09;的处理&#xff0c;简称DB&#xff0c;是相互有…

【计算机视觉】图像处理算法(形态学滤波篇)

来源&#xff1a;《OpenCV3编程入门》&#xff0c;怀念毛星云大佬&#x1f56f;️ 说明&#xff1a;本系列重点关注各种图像处理算法的原理、作用和对比 形态学滤波(1 ):腐蚀与膨胀 形态学槪述 数学形态学的概念&#xff1a; 数学形态学(Mathematical morphology)是立在格论…