时间序列学习篇

今天看了一些时间序列算法相关的文档和帖子。很惭愧,也是搞了很长时间预测算法的人了,但是都没能详细学习一下时间序列的理论。

首先,要预测一个时序问题,可以从什么路径解决呢?一种是认为过去序列状态影响将来的状态,是一种状态转移的角度;另一种是认为时间序列可以看做周期函数的叠加,这样对周期函数在频域做分析,也就是傅里叶展开的方法。我们这里先讨论第一种路径。

那么时间序列可以被认为包含哪几种部分呢?这里就直接给结论了:

可以分为趋势性(Trend)、季节性(Seasonal)、循环性(cyclical)、以及一些无规律的(Irregular)部分。

所以,我们分析时间序列,首先要对问题建模,找到各个部分,然后分别建模,这样分析问题才是有的放矢。如果直接对序列的整体建模,就会导致一旦出了错,不知道究竟改进那个部分比较好。当然之前还建模是用基线+天气+活动等乱七八糟的因子去叠加,但这种本质上是不好的,首先基线这里用的其实是ma的方法,然后天气、活动这些都是扰动项;所以还缺了一个ar,也就是自回归的方法。

然后讲到了序列平稳的定义。平稳是一个重要的概念。分为严格平稳和弱平稳。严格平稳就是说无论从序列的哪段连续采样,都是同分布的;而弱平稳需要满足一些条件,比如二阶矩是有界的,序列均值是恒定的,等等。

然后还有协方差的概念。其实协方差矩阵听起来概念可怕,实际上就是序列里两个时刻的关联性,也就是说能不能用过去时刻的变量来预测未来时刻。不难发现,如果是相互独立的变量,那么协方差矩阵只能在对角线上有非零值,其他值都是0;这种序列也不能用自回归的方式来预测。

那么有了协方差矩阵,还有一个自相关系数;其实就是算协方差和每个时刻变量分布方差的比值。不难看出,如果是严平稳序列,自相关系数应该就是1了。

自相关系数(ACF)是检验序列能否用时序分析法建模的重要指标。

最后讲一讲ARIMA模型吧。前面已经提到了ar(自回归)和ma(移动平均)两种方法,其实这两种思想是有区别的。ar是认为当前时刻的序列状态和几个lag状态相关;其实在建模的过程中,忽略了剩余项wt的建模。而ma是认为,我观测的序列一直是平稳的,有一个稳定的均值项μ,误差是在有规律的扰动,我们建模这个误差的规律就可以。但可能现实场景,这两种建模方式都不完全正确。因此需要综合两种建模方法。另外arima的i指的其实是差分累积;一般来讲,一个时间序列可能不是稳态的,但是如果隔几天做个差,就可以把周期性突变消除,变成稳态的序列了。但是这个差分一般不需要很高阶。对于arima(p,d,q)来说,p,d,q分别对应自回归lag项,差分阶数和ma观察项。这几个参数的取值范围是,p一般不超过5,d不超过2,q不超过5。

先总结到这里,后续再补充。

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

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

相关文章

视频调整帧率、分辨率+音画同步

# python data_utils/pre_video/multi_fps_crop_sync.pyimport cv2 import os from tqdm import tqdm import subprocess# 加载人脸检测模型 face_cascade cv2.CascadeClassifier(cv2.data.haarcascades haarcascade_frontalface_default.xml)def contains_face(frame):gray …

淘宝/天猫店铺商品搜索利器:taobao.item_search_shop API返回值详解

taobao.item_search_shop 这个API名称听起来像是针对淘宝或天猫平台的一个商品搜索接口,但实际上,淘宝和天猫的官方API体系中并没有直接命名为taobao.item_search_shop的公开API。不过,为了解答关于类似功能的API返回值详解,我们可…

(三)Redis持久化,你真的懂了吗?万字分析AOF和RDB的优劣 AOF的刷盘、重写策略 什么叫混合重写 MP-AOF方案是什么

引言 —— Redis基础概念 Redis概念:Redis (REmote DIctionary Server) 是用 C 语言开发的一个开源的高性能键值对(key-value)数据库。 为什么会出现Redis呢?它的到来是为了解决什么样的问题? Redis 是一个NOSQL类型…

27 设备流转使用心得 三

前两部分参考心得 25 26 分布式文件传输 1 源端 1 获取分布式文件路径 读取文件 写入分布式文件 2 对端 1 通过应用沙箱获取分布式文件路径 读取文件路径 与状态数据绑定 2 绑定之后UI渲染 Index Row({space:8}){//用户当前选中的所有图片ForEach(this.photos, (p:str…

操作系统真象还原:创建文件系统

14.2 创建文件系统 14.2.1 创建超级块、i结点、目录项 超级块 /** Author: Adward-DYX 1654783946qq.com* Date: 2024-05-07 10:18:02* LastEditors: Adward-DYX 1654783946qq.com* LastEditTime: 2024-05-07 11:24:50* FilePath: /OS/chapter14/14.2/fs/super_block.h* Des…

构造、析构、拷贝(Semantics of Construction,Destruction,and Copy)

1、继承体系下的对象构造 当我定义一个object如下 T object;如果T有一个默认构造函数,它会被调用。 比较不明显的是构造函数内部有大量的隐藏代码,因为编译器会扩充构造函数,一般而言编译器所做的扩充如下: 记录在成员初始化列…

WPF学习(6) -- WPF命令和通知

一 、WPF命令 1.ICommand代码 创建一个文件夹和文件 using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.Threading.Tasks; using System.Windows.Input;namespace 学习.Command {public class MyCommand : ICommand{Acti…

CCSI: 数据无关类别增量学习的持续类特定印象| 文献速递-基于深度学习的多模态数据分析与生存分析

Title 题目 CCSI: Continual Class-Specific Impression for data-free class incremental learning CCSI: 数据无关类别增量学习的持续类特定印象 01 文献速递介绍 当前用于医学影像分类任务的深度学习模型表现出令人鼓舞的性能。这些模型大多数需要在训练之前收集所有的…

设计模式使用场景实现示例及优缺点(行为型模式——迭代子模式)

迭代子模式(Iterator Pattern) 迭代子模式(Iterator Pattern)是一种常用的设计模式,属于行为型模式。它提供一种方法顺序访问一个聚合对象中的各个元素,而又无需暴露该对象的内部表示。 核心组件 Iterat…

中间件——Kafka

两个系统各自都有各自要去做的事,所以只能将消息放到一个中间平台(中间件) Kafka 分布式流媒体平台 程序发消息,程序接收消息 Producer:Producer即生产者,消息的产生者,是消息的入口。 Brok…

[Vulnhub] Sedna BuilderEngine-CMS+Kernel权限提升

信息收集 IP AddressOpening Ports192.168.8.104TCP:22, 53, 80, 110, 111, 139, 143, 445, 993, 995, 8080, 55679 $ nmap -p- 192.168.8.104 --min-rate 1000 -sC -sV PORT STATE SERVICE VERSION 22/tcp open ssh OpenSSH 6.6.1p1 Ubuntu 2ubuntu2 …

在RHEL9.4上启用SFTP服务

FTP存在的不足: 明文传输 FTP传输的数据(包括用户名、密码和文件内容)都是明文的,这意味着数据可以被网络上的任何人截获并读取。没有内置的加密机制,容易受到中间人攻击。 被动模式下的端口问题 FTP的被动模式需要…

读人工智能全传12人工智能导致的问题1

1. 人工智能会导致什么问题 1.1. 人工智能是一门通用技术:它的应用仅仅受限于我们的想象 1.1.1. 所有的技术都可能产生意想不到的效果,未来几十年甚至几百年内都存在可能性 1.2. 所有的技术都可能被滥用 1.2.1. 我们的无名氏祖先率先用上了火&#x…

大型土木工程项目灾害防御规划与风险评估系统

灾害防御规划更新与维护机制 SELECT DISTINCT 地质灾害类型 FROM 地质灾害信息表;SELECT 地质灾害类型, COUNT(*) AS 发生次数, (COUNT(*) * 100.0 / (

React Native和Swift有什么区别

React Native和Swift在多个方面存在显著的区别,这些区别主要体现在它们的技术基础、应用场景、性能特点、开发效率以及社区支持等方面。 一、技术基础 React Native:是一个由Meta(原Facebook)开发的开源JavaScript框架&#xff…

编写商品列表和商品编辑和商品新增页面

addvue <template><!-- 传过来的id --> <!-- {{ $route.query.id }} --> <el-formref"FormRef"style"max-width: 600px":model"FormData":rule"rules"status-iconlabel-width"auto"class"demo-r…

Python面试题:在 Python 中,如何处理内存泄漏?

在 Python 中&#xff0c;尽管有垃圾收集器&#xff08;GC&#xff09;来自动管理内存&#xff0c;有时仍可能会出现内存泄漏。内存泄漏通常是由于程序中存在长时间保留不再需要的对象&#xff0c;导致这些对象不能被垃圾收集器回收。以下是处理内存泄漏的一些方法&#xff1a;…

Spring AOP 基础知识

1.背景 按照软件重构的思想&#xff0c;当多个类中存在相同的代码时&#xff0c;需要提取公共部分来消除代码坏味道。Java的继承机制允许用户在纵向上通过提取公共方法或者公共部分(模版方法方式)至父类中以消除代码重复问题&#xff1b;日志、访问控制、性能监测等重复的非业务…

Golang | Leetcode Golang题解之第232题用栈实现队列

题目&#xff1a; 题解&#xff1a; type MyQueue struct {inStack, outStack []int }func Constructor() MyQueue {return MyQueue{} }func (q *MyQueue) Push(x int) {q.inStack append(q.inStack, x) }func (q *MyQueue) in2out() {for len(q.inStack) > 0 {q.outStack…

【web】-sql注入-login

根据网址提示打开如图&#xff1a; 查看源代码前台并没有过滤限制、扫描后台也没有发现特殊文件。看到标题显示flag is in database&#xff0c;尝试sql注入。 由于post,bp抓包如下&#xff1a; 运行python sqlmap.py -r 1.txt --dump 获取flag 42f4ebc342b6ed4af4aadc1ea75f…