时间序列模型

  • 1.时间序列模型概述
    • 1.1 时间序列的不同分类
    • 1.2 确定性时间序列分析方法概述
    • 1.3 三种时间序列模型
  • 2.指标平滑ES
    • 2.1 一次指数平滑法
  • 3.ACF与PACF
  • 4.AR
  • 5.MA
  • 6.ARMA
  • 7.ARIMA
    • 7.1 差分
  • 8. ARIMA实践
    • 8.1 读取数据
    • 8.2 画图,观察数据是否非平稳
    • 8.3 差分,观察数据
    • 8.4 单位根检验,确定数据为平稳时间序列
    • 8.5 Q检验,检验是否数据具有相关性
    • 8.6 确定AR和MA,画ACF、PACF判断
    • 8.7 使用AIC、BIC最小准则确定p、q
    • 8.8 拟合ARIMA或者ARMA模型
    • 8.9 检验模型效果:残差检验
    • 8.10 预测
    • 8.11 将预测的平稳值还原为非平稳序列

1.时间序列模型概述

时间序列是研究数据随时间变化而变化的一种算法。是一种预测性分析算法。它的基本出发点就是事物发展都有连续性,按照它本身固有的规律进行。

时间序列的常用算法包括:

有这几个那如何选择模型呢

首先我们要知道时间序列就是按照时间顺序排列,随时间变化的随机过程,也就是说有对应的均值、方差、协方差等。
时间序列可以解决在只有时间(序列项)而没有其他可控变量下对未来数据的预测问题,常用于经济预测、股市预测、天气预测等。

如果随机过程随着时间变化,则此过程是非平稳的,相反,如果随机过程的特征不随时间变化,则此过程为平稳的

  • 如果导致非平稳的原因确定:ES、MA、AR、ARMA
  • 如果是平稳序列:ARIMA

1.1 时间序列的不同分类

时间序列是按时间顺序排列的、随时间变化且相互关联的数据序列。分析时间序列的方法构成数据分析的一个重要领域,即时间序列分析。

时间序列根据研究的依据不同,可有不同的分类。

  1. 按研究对象的多少划分,有一元时间序列和多元时间序列。
  2. 按时间的连续性将时间序列分为离散时间序列和连续时间序列两种。
  3. 按序列的统计特性划分,有平稳时间序列和非平稳时间序列。

如果一个时间序列的概率分布与时间t无关,则称该序列为严格的(狭义)平稳时间序列。

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

(1)均值为常数

(2)协方差为时间间隔 T 的函数。则称为宽平稳(广义)时间序列。以后研究的时间序列主要是宽平稳时间序列。

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

1.2 确定性时间序列分析方法概述

一个时间序列可以分解为以下四部分:

(1)长期趋势变动。它指时间序列朝一定方向持续上升或下降,或停留在某一水平上,它反映了客观事物的主要变化趋势。

(2)季节变动。

(3)循环变动。通常指周期为一年以上,由非季节因素引起的波形相似的波动。

(4)不规则变动。通常为突然变动和随机变动。

1.3 三种时间序列模型

通常用TtT_tTt​ 表示长期趋势项,StS_tSt​ 表示季节变动趋势项,CtC_tCt​ 表示循环变动趋势项,RtR_tRt​ 表示随机干扰项。常见的确定性时间序列模型有以下类型:

(1)加法模型

yt=Tt+St+Ct+Rty_t = T_t + S_t + C_t + R_tyt​=Tt​+St​+Ct​+Rt​

(2)乘法模型

yt=Tt∗St∗Ct∗Rty_t = T_t * S_t * C_t * R_tyt​=Tt​∗St​∗Ct​∗Rt​

(3)混合模型

yt=Tt∗St+Rty_t = T_t * S_t + R_tyt​=Tt​∗St​+Rt​

yt=St+Tt∗Ct∗Rty_t = S_t + T_t * C_t * R_tyt​=St​+Tt​∗Ct​∗Rt​

其中 yty_tyt​ 是观测目标的观测记录,E(Rt)=0E(R_t) = 0E(Rt​)=0, E(Rt2)=σ2E(R^2_{t}) = σ^2E(Rt2​)=σ2。

2.指标平滑ES

2.1 一次指数平滑法

线性回归算法中,每个经验点的权重是一致的,即很早以前的经验数据也可能对预测数据有较大的影响。很多实际场景中,未来一段时间的趋势可能和在最近一段时间的趋势关系更加紧密。比如小明去年数学考试成绩一直不及格,今年连续多次考试90多分,预测小明下一次数学考试的成绩,情理上90多分的可能性更高。采用传统的线性回归算法,预测结果可能是70多分。

指数平滑法原则认为,时间越靠过去的经验数据对趋势的影响越小。我们假定时间t的观测值为y(t),时间t的预测值为S(t),则时间t+1的预测值S(t+1)为
St+1=ayt+(1−a)StS_{t+1}=ay_t+(1-a)S_tSt+1​=ayt​+(1−a)St​
a的取值范围在(0,1),a越大,最近时间点的观测值对预测值的影响越大

另外还有二次指数平滑、三次指数平滑,就不介绍,懒得写

3.ACF与PACF

首先来说ACF与PACF是用来确定模型AR(p,)、MA(q,)、ARMA(p,q)、ARIMA(p,l,q),中p、q。方法如下:

  • 截尾:落在置信区间(95%的点都符合该规则)

如何用PACF图和ACF图来确定p、q值
通常我们确定了模型后,看模型的数据的阶数和2倍标准差范围。

这里先解释一下 阶数就是历史观测项,比如当前时间t数据为xtx_txt​阶数为7,表示xt−7x_{t-7}xt−7​。

时间序列模型算法 - ARIMA (一)相关推荐

  1. 数据挖掘算法之时间序列算法(平稳时间序列模型,AR(p),MA(q),(平稳时间序列模型,AR(p),MA(q),ARMA(p,q)模型和非平稳时间序列模型,ARIMA(p,d,q)模型)学习笔记梳理

    时间序列算法 一.时间序列的预处理 二.平稳时间序列模型 (一).自回归模型AR( p ) (二).移动平均模型MA(q) (三).自回归移动平均模型ARMA(p,q) 三.非平稳时间序列模型 四.确 ...

  2. 时间序列模型(ARIMA模型)

    时间序列分析? 时间序列,就是按时间顺序排列的,随时间变化的数据序列. 生活中各领域各行业太多时间序列的数据了,销售额,顾客数,访问量,股价,油价,GDP,气温... 常用的时间序列模型 常用的时间序 ...

  3. 时间序列模型算法 - Prophet,LSTM(二)

    时间序列模型 - Prophet 1.时间序列简介 1.1 时间序列 - 平稳性检验 1.1.1 log法 1.1.2 差分法 1.2 平稳性的单位根检验 2.ARIMA 3.Prophet 3.1 ...

  4. 时间序列模型(ARIMA和ARMA)完整步骤详述

    我于2019年发布此篇文章至今收获了许多人的指点,当时的代码的确晦涩难懂,近期有空,将代码重新整理了一遍,重新发送至此.希望能够帮助大家更好地理解. 建模步骤: 目录 数据包和版本申明 步骤一:数据准 ...

  5. ML:机器学习算法中—因子模型(多变量)、时序模型/时间序列模型(主要以单变量)算法对比的简介、带有时序性的因子模型概述、案例应用之详细攻略

    ML:机器学习算法中-因子模型(多变量).时序模型/时间序列模型(主要以单变量)算法对比的简介.带有时序性的因子模型概述.案例应用之详细攻略 目录 因子模型和时序模型/时间序列模型算法的简介 1.因子 ...

  6. python时间序列模型有哪些_时间序列模型(ARIMA)

    时间序列简介 时间序列 是指将同一统计指标的数值按其先后发生的时间顺序排列而成的数列.时间序列分析的主要目的是根据已有的历史数据对未来进行预测. 常用的时间序列模型 常用的时间序列模型有四种:自回归模 ...

  7. 时间序列模型R语言实现-批量建模,预测(ARIMA, 随机森林)

    时间序列预测首先要确定预测的内容. 本文预测共享单车的日租借量 使用的是每日数据 预测的时间范围是需要提前一个月.半年还是一年?根据预测范围,会使用到不同的模型. 首先安装加载本文所需要的包 inst ...

  8. 算法模型---时间序列模型

    文章来源 时间序列 时间序列是时间间隔不变的情况下收集的不同时间点数据集合,这些集合被分析用来了解长期发展趋势及为了预测未来. 时间序列与常见的回归问题的不同点在于: 1.时间序列是跟时间有关的;而线 ...

  9. 时间序列模型第一篇ARIMA

    时间序列 时间序列数据 时间序列是按时间顺序排列的.随时间变化且相互关联的数据序列. 构成要素 时间序列可以分为长期趋势(trend).季节变动(seasonal).循环变动(cycling)和随机波 ...

最新文章

  1. 【渗透】node.js经典问题
  2. DM368开发 -- uboot 使用
  3. Spring Boot + Spring Cloud 实现权限管理系统 (系统服务监控)
  4. tab栏切换 动画的相关方法上 动画的相关方法下 隐藏动画案例 隐藏动画练习
  5. LIBCMTD.lib与libcpmtd冲突的解决方法。
  6. linux qt程序编译出错,QTcreator编译出错
  7. Linux扩展正则表达式
  8. LINUX下载编译libc(glibc)
  9. 【定位问题】基于matlab GUI SLAM模拟地图构建和定位【含Matlab源码 1120期】
  10. Ubuntu完美安装QQ
  11. 关于文件变化监听, 你了解多少?
  12. 华山行-西安生活的小记录
  13. 解决securecrt 登录后方向键,backspace,delete键为乱码
  14. 1 is not JSON serializable的解决方案
  15. 解决方案:Zotero+坚果云+Zotfile完成多平台多设备的文献同步
  16. 字节跳动的产品经理是怎么工作的?
  17. 重新配置JDK后,导致Eclipse打不开。
  18. matplotlib的读书笔记
  19. 非计算机类专业毕业生五年程序员职业生涯的回顾和思考
  20. 20230406 AI 多模态

热门文章

  1. cesium实现底图反色滤镜效果(详细教程)
  2. 安装并使用Pynq-Z2官方镜像
  3. 用口诀背单词 - 7
  4. MySQL插入中文数据时报错:Incorrect string value: ‘\xC8\xFD\xCC\xE5‘ 解决方案
  5. Bigemap Gis Office软件 如何添加在线第三方地图
  6. 微信生物认证(人脸识别和指纹识别)
  7. 安卓手机tiktok怎么下载_英雄联盟手游安卓版怎么下载 安卓外服下载方法教程...
  8. 【GitHubDailyShare】主打小而美的功能,GitHub 上一款开源的 3D 建模
  9. 什么是代理、网关、隧道?
  10. Hexo-使用阿里iconfont图标