深度盘点时间序列预测方法

news2025/9/11 0:46:43

本篇介绍时间序列的定义、任务、构成以及预测方法,主要是基本概念的介绍和理解。

时间序列定义

时间序列,通俗的字面含义为一系列历史时间的序列集合。比如2013年到2022年我国全国总人口数依次记录下来,就构成了一个序列长度为10的时间序列。

专业领域里,时间序列定义为一个随机过程,是按时间顺序排列的一组随机变量的序列集,记为。并用 或者 表示该随机序列的N有序观测值。

这里有两个概念,随机变量和观测值。

  • 随机变量:用大写字母表示,我们认为每个时间点的变量都符合一定的分布特性,变量值从分布中随机得到。

  • 观测值:用小写字母表示,是随机变量的实现,也就是我们现实世界看到的数值。

在这里插入图片描述

结合上图理解随机变量和观测值的关系。

我们认为每个时间点发生的数据都来自于一个分布的,即时序点是个随机的变量,如上图中所示,在未发生之前每个时序点有可能是红色,也有可能是蓝色。而一旦发生了就会成为一个事实,会变成历史,所以就只能存在一个唯一的数据。

这里的红色点就是观测点,是我们现实世界某个时刻我们肉眼看到的数据,而蓝色点则是随机变量里可能会出现的其他数据。蓝色和红色点一起组合了发生时刻的一个变量分布。拿股价举例,收盘之前的价格我们认为会在一个合理的分布区间之内浮动,但不到收盘结束谁都不知道具体是多少,可能是红色或者蓝色,一旦到了收盘就必然会有一个唯一的价格。

时间序列任务

学习时间序列都能做什么?为什么要做时序分析?

时间序列的常见作用可以分类以下几种,其中预测和异常检测是比较常用的应用场景。

预测:是最广泛的应用,基于历史时序数据预测未来时序数据,比如常见的股票价格、食品价格。

时序预测与回归预测类似,但又不同。相似的是都通过,不同的是回归预测是,用其他数据预测,而时序预测是,用预测。

异常检测:用于查找时序数据中的异常数据点(称为异常值)或子序列的任务。

聚类:是将相似的时间序列聚合一起。

分类:将时间序列与预定义的类别对应。

变点检测:需要寻找时间序列的统计属性(如均值、方差)突然变化的时间点。

主题发现:寻找反复出现的时间序列子序列。

分割:通过减少时间序列的维度,同时保留其基本特征来创建时间序列的准确近似的任务

时间序列构成

时间序列通常由以下三个组成部分构成。

  • 趋势:指时间序列在较长一段时间内呈现出来的持续向上或者持续向下的变动

  • 季节性:指时间序列在一年内重复出现的周期性波动,如气候条件、生产条件、节假日等

  • 残差:也称为不规则波动,指除去趋势、季节性、周期性外的随机波动。不规则波动通常总是夹杂在时间序列中,致使时间序列产生一种波浪形或震荡式的变动。只含有随机波动的序列也称为平稳序列

以上图二为趋势,图三为季节性,图四为残差。

既然时间序列可以拆解为这三部分,它们会不会组合起来使用呢?

是可以的,通常可以用两种简单模型来表示:

加法模型:

乘法模型:

代表趋势,表示季节,表示残差即无法解释的变化。

当趋势和季节性变化独立作用时,加法模型是合适的。

当季节性效应的大小取决于趋势的大小,乘法模型是合适的。

时间序列预测方法

1. 传统时序建模

比如典型的传统时序建模如ARMAARIMA模型。

ARIMA模型是ARMA模型的升级版。ARMA模型只能针对平稳数据进行建模,而ARIMA模型需要先对数据进行差分,差分平稳后在进行建模。这两个模型能处理的问题还是比较简单,究其原因主要是以下两点:

  • ARMA/ARIMA模型归根到底还是简单的线性模型,能表征的问题复杂程度有限

  • ARMA全名是自回归滑动平均模型,它只能支持对单变量历史数据的回归,处理不了多变量的情况

2. 机器学习模型方法

这类方法把时序问题转换为监督学习,通过特征工程和机器学习方法去预测,支持复杂的数据建模,支持多变量协同回归,支持非线性问题,以lightgbmxgboost为代表。

机器学习方法较为复杂的是特征工程部分,需要一定的专业知识或者丰富的想象力。特征工程能力的高低往往决定了机器学习的上限,而机器学习方法只是尽可能的逼近这个上限。特征建立好之后,就可以直接套用树模型算法lightgbm/xgboost

机器学习方法主要有以下特点:

  • 计算速度快,模型精度高;

  • 缺失值不需要处理,比较方便;

  • 支持category变量;

  • 支持特征交叉

3. 深度学习模型方法

深度学习方法以LSTM/GRUseq2seqwavenet1D-CNNtransformer为主。

其中,LSTM/GRU模型,是专门为解决时间序列问题而设计的。CNN模型是本来解决图像问题的,但是经过演变和发展,也可以用来解决时间序列问题

深度学习类模型主要有以下特点:

  • 不能包括缺失值,必须要填充缺失值,否则会报错

  • 支持特征交叉,如二阶交叉,高阶交叉等

  • 需要embedding层处理category变量,可以直接学习到离散特征的语义变量,并表征其相对关系

  • Prophet数据量小的时候,模型效果不如树方法;但是数据量巨大的时候,神经网络会有更好的表现

  • 神经网络模型支持在线训练

本篇是时序系列的开胃菜,后续会逐渐展开深入传统时序核心概念、应用案例,以及机器学习和深度学习方法、Python中使用时序的各种方法。

参考链接

[1].https://mp.weixin.qq.com/s/sc9OJ-GVmtLB1CGL1Sr8VQ [2].https://mp.weixin.qq.com/s/jqQMlJlt_OCvz0sJOVANUA [3].https://mp.weixin.qq.com/s/-FhSxHWGH8WUwLE2YkWNEg> [4].https://www.researchgate.net [5].https://zhuanlan.zhihu.com/p/471014006 [6].https://medium.com/@nathanvenos/time-series-analysis-in-python-ab582dd803cd [7].https://www.mathworks.com/help/deeplearning/ug/time-series-anomaly-detection-using-deep-learning.html [8].https://vitalflux.com/different-types-of-time-series-forecasting-models/

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

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

相关文章

CAN FD的一致性测试 助力汽车电子智能化

后起之秀——CAN FD:随着各个行业的快速发展,消费者对汽车电子智能化的诉求越来越强烈,这也致使整车厂将越来越多的电子控制系统加入到汽车控制中。在传统汽车、新能源汽车、ADAS和自动驾驶等汽车领域中,无不催生着更高的需求&…

4.kafka--生产调优

文章目录1.硬件配置选择1.场景说明2.服务器台数选择3.磁盘选择4.内存选择1) 堆内存配置2)页缓存配置5. cpu选择6.网络选择2.生产者3.kafka broker4. 服役新节点,退役旧节点1)创建一个要均衡的主题。2) 生成一个负载均衡的计划leader分布不均匀…

多人配音怎么做的?这两个多人配音方法分享给你

大家在刷一些短视频的时候,肯定有看到过一些搞笑的视频,而这些视频总能让我们捧腹大笑,过后再多看几次,其实你可以明显的发现这是多人互动对话或者一人分饰多角所呈现的,我们想要做出这种类型的视频,一般需…

法律常识(五)《消费者权益保护法》解读与举例

目录 酒楼谢绝客户自带酒水,合法吗? 侵犯消费者人格尊严,应承担民事责任 某公司出售伪劣产品致人损害,需双倍赔偿 农民购买、使用直接用于农业生产的生产资料 《中华人民共和国产品质量法》相关记录 《中华人民共和国反不正…

Android 双屏异显(Presentation) 开发,将第二个页面投屏到副屏上

1. 背景 最近开发的一个项目,有两个屏幕,需要将第二个页面投屏到副屏上,这就需要用到Android的双屏异显(Presentation)技术了,研究了一下,这里做下笔记。 我们那个副屏是一块汽车的后视镜(流媒体后视镜),是…

超详细:KNN与K-means从入门到实战

作者:王同学 来源:投稿 编辑:学姐 1. 基本概念 1.1 KNN k近邻法(k-nearest neighbor,k-NN)是一种基本分类与回归方法。 k近邻法的输入为实例的特征向量对应于特征空间的点;输出为实例的类别&…

CnOpenData食品安全抽检数据

一、数据简介 食品安全是关乎人体生命健康的公共卫生问题。近年来,频繁发生的食品安全事件给人民的生命健康带来了巨大威胁,并成为人们关注的热点问题。   民以食为天,食以安为先。由于消费者和生产者之间存在信息不对称,完善…

【Linux】---进程程序替换

进程替换出现的背景我们可以用fork函数来创建子进程,使父子进程同时出现。正所谓子承父业,子进程在刚被创建时和父进程共享数据和代码,但是操作者想让子进程执行一个全新的程序,这个使子进程执行全新程序的操作叫做进程程序替换。…

前端播放大视频卡顿的解决(m3u8视频流)

前言 最近在一个大屏看板项目中有一个需求是:要求视频和看板要进行来回切换。 最开始的做法是将MP4视频放在项目里,在本地运行时是没什么问题的,但是在往仓库里提交代码时出现了问题。当单个文件超过100MB时会导致代码提交失败; …

【闲聊杂谈】直击重灾区 - 多线程与高并发

在开始学习多线程与高并发的知识之前,我想先问一个问题:你平时在写代码的时候,有没有刻意的去思考如何压榨CPU性能?其实纵观整个编程的发展历史,其实就是一部对于CPU性能压榨的血泪史。 单进程人工切换 最早的编程…

@Reference、@Autowired、@Resource的区别

目录 1. Autowired 和 Resource 的区别相同点:不同点:Resource 装配顺序2. Reference 和 Autowired 的区别理解1理解2理解31. Autowired 和 Resource 的区别 相同点: Resource 的作用相当于Autowired ,均可标注在字段或属性的se…

4、因果法

因果图中的图形符号 恒等。若原因出现,则结果出现;若原因不出现,则结果不出现。非。若原因出现,则结果不出现;若原因不出现,则结果出现。或。若几个原因中有一个出现,则结果出现;若几…

章节8 文本编辑器

8-Linux文本编辑器 文本编辑器 Windows:Notepad(记事本)、Sublime、UltraEdit等 Linux:VI/VIM (最常用)、nano、Emacs、Sed、gedit、Kate等 01 VI和VIM的区别 VI和VIM的区别 VI:Visual In…

C 语言零基础入门教程(十六)

C 位域 如果程序的结构中包含多个开关量,只有 TRUE/FALSE 变量,如下: struct {unsigned int widthValidated;unsigned int heightValidated; } status;这种结构需要 8 字节的内存空间,但在实际上,在每个变量中&#…

云计算|OpenStack发展简史

前言: 一般以open开始的软件都非常的牛逼,例如,OpenCV(人工智能学习库),OpenStack(云计算基础操作系统),openwrt(软路由),openEuler&…

表单设计器

表单设计器目录概述需求:设计思路实现思路分析参考资料和推荐阅读Survive by day and develop by night. talk for import biz , show your perfect code,full busy,skip hardness,make a better result,wait for change,challenge Survive. happy for h…

vue2.x 富文本编辑器Tinymce的使用

VUE项目版本是2.x,切记: vue2中不能使用tinymce/tinymce-vue为4以上版本; 如果有安装高版本,卸载:npm uninstall tinymce/tinymce-vue 第一步:安装 npm install tinymce5.1.0 -S npm install tinymce/tiny…

费曼学习法——孩子弱点方向的提升和沟通技巧

这一篇虽然是兔年第一篇,但是,先不拜年了,主要是成文时间较短,后面会有一个详细的长篇文字,讨论一些观点和看法。每一个孩子都有弱点的方向,我们是否都要给孩子提升,首先表达一个观点&#xff1…

图论算法基础

图论算法基础有向图有向图的实现方式无向图无向图的实现方式连通图连通分量的定义强连通图和强连通分量的定义弱连通图和单向连通图的定义判断图是否是强连通图,弱连通图还是单项连通图一个很典型的错误代码JAVA实现C实现生成树最小生成树拓扑排序邻接表的实现方式数…

【ShaderGraph】道路引导,小溪流水等UV动画效果

目录 一:创建ShaderGraph文件 二:设置UV动画速度变量 ​三:设置UV动画方向和Tiling变量 ​四:设置贴图属性 五:设置主色MainColor属性 六:最终效果 一:创建ShaderGraph文件 1.在assets下…