机器学习-时间序列自回归移动平均模型-翻译(Autoregressive moving average model,ARMA)

本文主要是介绍机器学习-时间序列自回归移动平均模型-翻译(Autoregressive moving average model,ARMA),希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

目录

0.前言

1.自回归模型(Autoregressive model,简称AR)

2.移动平均模型(Moving Average model,简称MA)

3.自回归滑动平均模型(Autoregressive moving average model,简称ARMA)

4.Note about the error terms 注意误差术语

5.Specification in terms of lag operator 滞后算符方面的规范/用滞后算子表示的规范

5.1Alternative notation 替代符号

6.Fitting models 拟合模型

6.1Implementations in statistics packages 数据统计包的实现

7.Applications 应用程序

8.Generalizations 概括推广

8.1具有外生输入的自回归移动平均模型(Autoregressive moving average model with exogeneous inputs models,简称ARMAX)


0.前言

在统计和信号处理中,自回归移动平均(ARMA)模型通常应用于时间序列数据,有时被称为博克思-詹金斯(Box-Jenkins)模型,因为通常使用迭代的Box-Jenkins方法来估计它们。

给定数据 X_{t} 的时间序列,ARMA模型是一种工具,用于理解和预测该序列的未来值。该模型由两个部分组成,自回归(AR)部分和移动平均(MA)部分。该模型通常被称为ARMA(p,q)模型,其中p是自回归部分的阶数,q是移动平均部分的阶数(定义如下)。

1.自回归模型(Autoregressive model,简称AR)

符号AR(p)指的是p阶的自回归模型,其中c为模型的参数,为常数,是白噪声。为了简单起见,许多作者省略了常数项。自回归模型本质上是一个加了一些附加解释的全极无限脉冲响应滤波器。为了使模型保持平稳,必须对该模型的参数值进行一些约束。例如,AR(1)模型中|\Phi _{1}|≥1的过程是不平稳的。

2.移动平均模型(Moving Average model,简称MA)

符号MA(q)指的是阶q的移动平均模型: 其中θ1,…, θq是模型的参数,μ是 X_{t} 的期望(通常假设为0),‘… ’还是白噪声误差项。移动平均模型本质上是一个有限脉冲响应滤波器加上一些额外的解释。

3.自回归滑动平均模型(Autoregressive moving average model,简称ARMA)

ARMA(p, q)表示具有p个自回归项和q个移动平均项的模型。该模型包含AR(p)和MA(q)模型.

4.Note about the error terms 注意误差术语

误差项通常被假设为独立的同分布随机变量(i.i.d),抽样自平均值为零的正态分布:~ N(0,\sigma ^{2} ),其中\sigma ^{2} 为方差。这些假设可能被削弱,但这样做将改变模型的属性。特别是,对(i.i.d)假设的改变将产生相当根本性的区别。

5.Specification in terms of lag operator 滞后算符方面的规范/用滞后算子表示的规范

在一些文本中,模型将根据滞后算子L来指定,在这些条件下,AR(p)模型由其中φ代表多项式MA(q)模型由θ表示多项式最后给出了组合ARMA(p, q)模型

5.1Alternative notation 替代符号

包括Box、Jenkins和Reinsel(1994)在内的一些作者对自回归系数使用了不同的约定。这允许所有的多项式涉及滞后算符出现在一个类似的形式贯穿始终。

6.Fitting models 拟合模型

ARMA模型一般在选择pq之后,可以通过最小二乘回归拟合得到误差项最小的参数值。通常认为,找到pq的最小值对数据具有可接受的拟合性是一种很好的做法。对于纯AR模型,Yule-Walker(尤勒-沃克)方程可用于提供拟合。

6.1Implementations in statistics packages 数据统计包的实现

在R中,tseries包包含一个arma函数。该函数在“拟合ARMA模型到时间序列”中有文档说明。
MATLAB包含一个AR函数来估计AR模型,更多细节请看这里。
IMSL数值库是数值分析功能的库,包括用C、Java、c# . net和Fortran等标准编程语言实现的ARMA和ARIMA过程,gretl还可以估计ARMA模型,GNU Octave可以使用额外包Octave -forge中的函数来估计AR模型。

7.Applications 应用程序

当一个系统是一系列未观察到的冲击(MA部分)及其自身行为的函数时,ARMA是合适的。例如,股票价格可能会受到基本面信息的冲击,以及由于市场参与者的影响而表现出技术趋势和mean-reversion effects(均值回归效应)。

8.Generalizations 概括推广

假设 X_{t} 对过去值和误差项 \varepsilon _{t} 的依赖关系是线性的,除非另有说明。如果相关性是非线性的,则具体称为非线性移动平均nonlinear moving average(NMA)、非线性自回归nonlinear autoregressive(NAR)或非线性自回归移动平均nonlinear autoregressive moving average(NARMA)模型。

自回归移动平均模型可以用其他方法推广。参见自回归条件异方差 autoregressive conditional heteroskedasticity (ARCH)模型和自回归综合移动平均autoregressive integrated moving average (ARIMA)模型。如果要拟合多个时间序列,则可以拟合一个vector矢量ARIMA(或VARIMA)模型。如果有问题的时间序列显示长记忆,那么fractional分数ARIMA (FARIMA,有时称为ARFIMA)建模可能是合适的:参见 Autoregressive fractionally integrated moving average 自回归分数积分移动平均。如果数据被认为包含季节性影响,则可以用SARIMA(seasonal季节性ARIMA)或periodic周期性ARMA模型来建模。

另一个推广是多尺度自回归(MAR)模型,MAR模型由树的节点索引,而标准(离散时间)自回归模型则由整数索引。

注意ARMA模型是一个单变量模型。多变量情况的扩展是向量自回归Vector Autoregression(VAR)和向量自回归移动平均Vector Autoregression Moving-Average(VARMA)

8.1具有外生输入的自回归移动平均模型(Autoregressive moving average model with exogeneous inputs models,简称ARMAX)

表示ARMAX(p, q, b)指的是包含p个自回归项、q个移动平均项和b个外生输入项的模型。该模型包含AR(p)和MA(q)模型,以及已知和外部时间序列d_{t}的最后b项的线性组合,其中为外生输入d_{t}的参数。已经定义了一些带有外生变量的模型的非线性变体:参见例如Nonlinear autoregressive exogenous model非线性自回归外生模型。

统计包通过使用“外生”或“独立”变量实现ARMAX模型。

翻译:自动回归移动模型 - 小司 - 博客园

自动回归移动模型_weixin_34297300的博客-CSDN博客

这篇关于机器学习-时间序列自回归移动平均模型-翻译(Autoregressive moving average model,ARMA)的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/406276

相关文章

C++统计函数执行时间的最佳实践

《C++统计函数执行时间的最佳实践》在软件开发过程中,性能分析是优化程序的重要环节,了解函数的执行时间分布对于识别性能瓶颈至关重要,本文将分享一个C++函数执行时间统计工具,希望对大家有所帮助... 目录前言工具特性核心设计1. 数据结构设计2. 单例模式管理器3. RAII自动计时使用方法基本用法高级用法

C# LiteDB处理时间序列数据的高性能解决方案

《C#LiteDB处理时间序列数据的高性能解决方案》LiteDB作为.NET生态下的轻量级嵌入式NoSQL数据库,一直是时间序列处理的优选方案,本文将为大家大家简单介绍一下LiteDB处理时间序列数... 目录为什么选择LiteDB处理时间序列数据第一章:LiteDB时间序列数据模型设计1.1 核心设计原则

Unity新手入门学习殿堂级知识详细讲解(图文)

《Unity新手入门学习殿堂级知识详细讲解(图文)》Unity是一款跨平台游戏引擎,支持2D/3D及VR/AR开发,核心功能模块包括图形、音频、物理等,通过可视化编辑器与脚本扩展实现开发,项目结构含A... 目录入门概述什么是 UnityUnity引擎基础认知编辑器核心操作Unity 编辑器项目模式分类工程

MySQL按时间维度对亿级数据表进行平滑分表

《MySQL按时间维度对亿级数据表进行平滑分表》本文将以一个真实的4亿数据表分表案例为基础,详细介绍如何在不影响线上业务的情况下,完成按时间维度分表的完整过程,感兴趣的小伙伴可以了解一下... 目录引言一、为什么我们需要分表1.1 单表数据量过大的问题1.2 分表方案选型二、分表前的准备工作2.1 数据评估

Python学习笔记之getattr和hasattr用法示例详解

《Python学习笔记之getattr和hasattr用法示例详解》在Python中,hasattr()、getattr()和setattr()是一组内置函数,用于对对象的属性进行操作和查询,这篇文章... 目录1.getattr用法详解1.1 基本作用1.2 示例1.3 原理2.hasattr用法详解2.

MySQL中DATE_FORMAT时间函数的使用小结

《MySQL中DATE_FORMAT时间函数的使用小结》本文主要介绍了MySQL中DATE_FORMAT时间函数的使用小结,用于格式化日期/时间字段,可提取年月、统计月份数据、精确到天,对大家的学习或... 目录前言DATE_FORMAT时间函数总结前言mysql可以使用DATE_FORMAT获取日期字段

Linux中的自定义协议+序列反序列化用法

《Linux中的自定义协议+序列反序列化用法》文章探讨网络程序在应用层的实现,涉及TCP协议的数据传输机制、结构化数据的序列化与反序列化方法,以及通过JSON和自定义协议构建网络计算器的思路,强调分层... 目录一,再次理解协议二,序列化和反序列化三,实现网络计算器3.1 日志文件3.2Socket.hpp

把Python列表中的元素移动到开头的三种方法

《把Python列表中的元素移动到开头的三种方法》在Python编程中,我们经常需要对列表(list)进行操作,有时,我们希望将列表中的某个元素移动到最前面,使其成为第一项,本文给大家介绍了把Pyth... 目录一、查找删除插入法1. 找到元素的索引2. 移除元素3. 插入到列表开头二、使用列表切片(Lis

Python标准库datetime模块日期和时间数据类型解读

《Python标准库datetime模块日期和时间数据类型解读》文章介绍Python中datetime模块的date、time、datetime类,用于处理日期、时间及日期时间结合体,通过属性获取时间... 目录Datetime常用类日期date类型使用时间 time 类型使用日期和时间的结合体–日期时间(

Java获取当前时间String类型和Date类型方式

《Java获取当前时间String类型和Date类型方式》:本文主要介绍Java获取当前时间String类型和Date类型方式,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,... 目录Java获取当前时间String和Date类型String类型和Date类型输出结果总结Java获取