Content deleted Content added
m Correcting the format of the scikit-learn library name to all lowercase. |
m →Software implementations: HTTP to HTTPS for SourceForge |
||
(30 intermediate revisions by 15 users not shown) | |||
Line 2:
{{redirect|ARMA model||ARMA (disambiguation)}}
In the [[statistics|statistical]] analysis of [[time series]], '''autoregressive–moving-average''' ('''ARMA''') '''models'''
The general ARMA model was described in the 1951 thesis of [[Peter Whittle (mathematician)|Peter Whittle]], ''Hypothesis testing in time series analysis'', and it was popularized in the 1970 book by [[George E. P. Box]] and [[Gwilym Jenkins]].
ARMA models can be estimated by using the [[Box–Jenkins method]].
==
=== Autoregressive model ===
{{Main|Autoregressive model}}
The notation AR(''p'') refers to the autoregressive model of order ''p''. The AR(''p'') model is written as
Line 14 ⟶ 16:
:<math> X_t = \sum_{i=1}^p \varphi_i X_{t-i}+ \varepsilon_t</math>
where <math>\varphi_1, \ldots, \varphi_p</math> are [[parameter]]s and the random variable <math>\varepsilon_t</math> is [[white noise]], usually [[Independent and identically distributed random variables|independent and identically distributed]] (i.i.d.) [[Normal distribution|normal random variables]].<ref>{{Cite book |last=Box |first=George E. P.
In order for the model to remain [[Stationary process|stationary]], the roots of its [[Autoregressive model#Characteristic polynomial|characteristic polynomial]] must lie outside
The [[augmented Dickey–Fuller test]] can assesses the stability of an [[intrinsic mode function]] and trend components. For stationary time series, the ARMA models can be used, while for non-stationary series, [[Long short-term memory]] models can be used to derive abstract features. The final value is obtained by reconstructing the predicted outcomes of each time series.{{Citation needed|date=April 2025}}
▲In order for the model to remain [[Stationary process|stationary]], the roots of its [[Autoregressive model#Characteristic polynomial|characteristic polynomial]] must lie outside of the unit circle. For example, processes in the AR(1) model with <math>|\varphi_1| \ge 1</math> are not stationary because the root of <math>1 - \varphi_1B = 0</math> lies within the unit circle.<ref>{{Cite book |last=Box |first=George E. P. |url=https://www.worldcat.org/oclc/28888762 |title=Time series analysis : forecasting and control |last2=Jenkins |first2=Gwilym M. |last3=Reinsel |first3=Gregory C. |date=1994 |publisher=Prentice Hall |others= |isbn=0-13-060774-6 |edition=3rd |___location=Englewood Cliffs, N.J. |pages=54-55 |language=en |oclc=28888762}}</ref>
=== Moving
{{Main|Moving-average model}}
The notation MA(''q'') refers to the moving average model of order ''q'':
Line 24 ⟶ 28:
:<math> X_t = \mu + \varepsilon_t + \sum_{i=1}^q \theta_i \varepsilon_{t-i}\,</math>
where the <math>\theta_1,...,\theta_q</math> are the parameters of the model, <math>\mu</math> is the expectation of <math>X_t</math> (often assumed to equal 0), and
=== ARMA model ===
The notation ARMA(''p'', ''q'') refers to the model with ''p'' autoregressive terms and ''q'' moving-average terms. This model contains the AR(''p'') and MA(''q'') models,<ref>{{Cite book |last=Shumway |first=Robert H.
▲The notation ARMA(''p'', ''q'') refers to the model with ''p'' autoregressive terms and ''q'' moving-average terms. This model contains the AR(''p'') and MA(''q'') models,<ref>{{Cite book |last=Shumway |first=Robert H. |url=https://www.worldcat.org/oclc/42392178 |title=Time series analysis and its applications |date=2000 |publisher=Springer |others=David S. Stoffer |isbn=0-387-98950-1 |___location=New York |pages=98 |language=en |oclc=42392178}}</ref>
:<math> X_t = \varepsilon_t + \sum_{i=1}^p \varphi_i X_{t-i} + \sum_{i=1}^q \theta_i \varepsilon_{t-i}.\,</math>
The general ARMA model was described in the 1951 thesis of [[Peter Whittle (mathematician)|Peter Whittle]], who used mathematical analysis ([[Laurent series]] and [[Fourier analysis]]) and statistical inference.<ref>{{cite book|last=Hannan|first=Edward James|author-link=Edward James Hannan|title=Multiple time series|series=Wiley series in probability and mathematical statistics|year=1970|___location=New York|publisher=John Wiley and Sons}}</ref><ref>{{cite book|title=Hypothesis Testing in Time Series Analysis|author=Whittle, P.|publisher=Almquist and Wicksell|year=1951}}▼
In some texts, the models
{{cite book|title=Prediction and Regulation|author=Whittle, P.|publisher=English Universities Press|year=1963|isbn=0-8166-1147-5}}▼
:Republished as: {{cite book|title=Prediction and Regulation by Linear Least-Square Methods|author=Whittle, P.|publisher=University of Minnesota Press|year=1983|isbn=0-8166-1148-3}}</ref> ARMA models were popularized by a 1970 book by [[George E. P. Box]] and Jenkins, who expounded an iterative ([[Box–Jenkins]]) method for choosing and estimating them. This method was useful for low-order polynomials (of degree three or less).<ref>{{harvtxt|Hannan|Deistler|1988|loc=p. 227}}: {{cite book|last=Hannan|first=E. J.|author-link=Edward James Hannan|last2=Deistler|first2=Manfred|title=Statistical theory of linear systems|series=Wiley series in probability and mathematical statistics|year=1988|___location=New York|publisher=John Wiley and Sons}}</ref>▼
The ARMA model is essentially an [[infinite impulse response]] filter applied to white noise, with some additional interpretation placed on it.▼
▲== Specification in terms of lag operator ==
▲In some texts the models will be specified in terms of the [[lag operator]] ''L''.
:<math> \varepsilon_t = \left(1 - \sum_{i=1}^p \varphi_i L^i\right) X_t = \varphi (L) X_t\,</math>
Line 53 ⟶ 46:
The MA(''q'') model is given by
:<math> X_t - \mu = \left(1 + \sum_{i=1}^q \theta_i L^i\right) \varepsilon_t = \theta (L) \varepsilon_t , \,</math>
where <math>\theta</math> represents the polynomial
Line 70 ⟶ 63:
:<math> \frac{\varphi(L)}{\theta(L)}X_t = \varepsilon_t \, .</math>
This is the form used in [[George Box|Box]], [[Gwilym M. Jenkins|Jenkins]] & Reinsel.<ref>{{cite book |last1=Box |first1=George |title=Time Series Analysis: Forecasting and Control |last2=Jenkins |first2=Gwilym M. |last3=Reinsel |first3=Gregory C. |publisher=Prentice-Hall |year=1994 |isbn=0130607746 |edition=Third}}</ref>
Moreover, starting summations from <math> i=0 </math> and setting <math> \phi_0 = -1 </math> and <math> \theta_0 = 1 </math>, then we get an even more elegant formulation: <math> -\sum_{i=0}^p \phi_i L^i \; X_t = \sum_{i=0}^q \theta_i L^i \; \varepsilon_t \, .</math>▼
== Spectrum ==▼
The [[spectral density]] of an ARMA process is<math display="block">S(f) = \frac{\sigma^2}{2\pi} \left\vert \frac{\theta(e^{-if})}{\phi(e^{-if})} \right\vert^2</math>where <math>\sigma^2</math> is the [[variance]] of the white noise, <math>\theta</math> is the characteristic polynomial of the moving average part of the ARMA model, and <math>\phi</math> is the characteristic polynomial of the autoregressive part of the ARMA model.<ref>{{Cite book |last=Rosenblatt |first=Murray
▲Moreover, starting summations from <math> i=0 </math> and setting <math> \phi_0 = -1 </math> and <math> \theta_0 = 1 </math>, then we get an even more elegant formulation:
== Fitting models ==
===Choosing ''p'' and ''q''===
Brockwell & Davis recommend using [[Akaike information criterion]] (AIC) for finding ''p'' and ''q''.<ref>{{cite book |
===Estimating coefficients===
ARMA outputs are used primarily to forecast (predict), and not to infer causation as in other areas of econometrics and regression methods such as OLS and 2SLS.
=== Software implementations ===
* In [[R (programming language)|R]],
* [[Mathematica]] has a complete library of time series functions including ARMA.<ref>[http://www.wolfram.com/products/applications/timeseries/features.html Time series features in Mathematica] {{webarchive |url=https://web.archive.org/web/20111124032002/http://www.wolfram.com/products/applications/timeseries/features.html |date=November 24, 2011 }}</ref>
* [[MATLAB]] includes functions such as [http://www.mathworks.com/help/econ/arma-model.html
* [[Julia_(programming_language) | Julia]] has
* Python has the <code>statsmodels</code>[
* [[PyFlux]] has a Python-based implementation of ARIMAX models, including Bayesian ARIMAX models.
* [[IMSL Numerical Libraries]] are libraries of numerical analysis functionality including ARMA and ARIMA procedures implemented in standard programming languages like C, Java, C# .NET, and Fortran.
* [[gretl]] can
* [[GNU Octave]]
* [[Stata]] includes the function
* [[SuanShu]] is a Java library of numerical methods
* [[SAS (software)|SAS]] has an econometric package, ETS, that estimates ARIMA models. [https://web.archive.org/web/20110930032431/http://support.sas.com/rnd/app/ets/proc/ets_arima.html See
== History and interpretations ==
▲== Spectrum ==
▲The general ARMA model was described in the 1951 thesis of [[Peter Whittle (mathematician)|Peter Whittle]], who used mathematical analysis ([[Laurent series]] and [[Fourier analysis]]) and statistical inference.<ref>{{cite book |last=Hannan |first=Edward James |author-link=Edward James Hannan |title=Multiple time series |publisher=John Wiley and Sons |year=1970 |series=Wiley series in probability and mathematical statistics
▲The [[spectral density]] of an ARMA process is<math display="block">S(f) = \frac{\sigma^2}{2\pi} \left\vert \frac{\theta(e^{-if})}{\phi(e^{-if})} \right\vert^2</math>where <math>\sigma^2</math> is the [[variance]] of the white noise, <math>\theta</math> is the characteristic polynomial of the moving average part of the ARMA model, and <math>\phi</math> is the characteristic polynomial of the autoregressive part of the ARMA model.<ref>{{Cite book |last=Rosenblatt |first=Murray |url=https://www.worldcat.org/oclc/42061096 |title=Gaussian and non-Gaussian linear time series and random fields |date=2000 |publisher=Springer |isbn=0-387-98917-X |___location=New York |pages=10 |language=en |oclc=42061096}}</ref><ref>{{Cite book |last=Wei |first=William W. S. |url=https://www.worldcat.org/oclc/18166355 |title=Time series analysis : univariate and multivariate methods |date=1990 |publisher=Addison-Wesley Pub |isbn=0-201-15911-2 |___location=Redwood City, Calif. |pages=242-243 |language=en |oclc=18166355}}</ref>
▲{{cite book
▲: Republished as: {{cite book |author=Whittle, P. |title=Prediction and Regulation by Linear Least-Square Methods
▲
In [[digital signal processing]], ARMA is represented as a digital filter with white noise at the input and the ARMA process at the output.
== Applications ==
Line 113 ⟶ 114:
== Generalizations ==
There are various generalizations of ARMA. '''Nonlinear''' AR (NAR), nonlinear MA (NMA) and nonlinear ARMA (NARMA) model nonlinear dependence on past values and error terms. [[vector autoregression|Vector AR]] (VAR) and vector ARMA (VARMA) model '''multivariate''' time series. [[Autoregressive integrated moving average]] (ARIMA) models non-stationary time series (that is, whose mean changes over time). [[Autoregressive conditional heteroskedasticity]] (ARCH) models time series where the variance changes. Seasonal ARIMA (SARIMA or periodic ARMA) models '''periodic''' variation. [[Autoregressive fractionally integrated moving average]] (ARFIMA, or Fractional ARIMA, FARIMA) model time-series that exhibits '''long memory'''. Multiscale AR (MAR) is indexed by the nodes of a [[Tree (graph theory)|tree]] instead of integers.
=== {{anchor|ARMAX}}Autoregressive–moving-average model with exogenous inputs
The notation ARMAX(''p'', ''q'', ''b'') refers to
▲=== {{anchor|ARMAX}}Autoregressive–moving-average model with exogenous inputs model (ARMAX model) === <!-- This section is linked from [[ARMAX]], so if you change the title, please also change the corresponding link in the ARMAX page -->
▲The notation ARMAX(''p'', ''q'', ''b'') refers to the model with ''p'' autoregressive terms, ''q'' moving average terms and ''b'' exogenous inputs terms. This model contains the AR(''p'') and MA(''q'') models and a linear combination of the last ''b'' terms of a known and external time series <math>d_t</math>. It is given by:
:<math> X_t = \varepsilon_t + \sum_{i=1}^p \varphi_i X_{t-i} + \sum_{i=1}^q \theta_i \varepsilon_{t-i} + \sum_{i=1}^b \eta_i d_{t-i}.\,</math>
Line 130 ⟶ 125:
Some nonlinear variants of models with exogenous variables have been defined: see for example [[Nonlinear autoregressive exogenous model]].
Statistical packages implement the ARMAX model through the use of "exogenous" (that is, independent
: <math> X_t - m_t = \varepsilon_t + \sum_{i=1}^p \varphi_i (X_{t-i} - m_{t-i}) + \sum_{i=1}^q \theta_i \varepsilon_{t-i}.\,</math>
where <math>m_t</math> incorporates all exogenous (or independent) variables:
Line 147 ⟶ 142:
== References ==
{{Reflist}}
== Further reading ==
* {{cite book |last=Mills |first=Terence C. |title=Time Series Techniques for Economists |publisher=Cambridge University Press |year=1990 |isbn=0521343399 |url-access=registration |url=https://archive.org/details/timeseriestechni0000mill }}
* {{cite book |
* {{citation| first1= C. | last1= Francq | first2= J.-M. | last2= Zakoïan | chapter= Recent results for linear time series models with non independent innovations | pages= 241–265 | title= Statistical Modeling and Analysis for Complex Data Problems | editor1-first= P. |editor1-last= Duchesne | editor2-first=B. | editor2-last= Remillard | publisher= Springer | year= 2005| citeseerx= 10.1.1.721.1754 }}.
* [https://link.springer.com/book/10.1007/978-3-319-52452-8 Shumway, R.H. and Stoffer, D.S. (2017). ''Time Series Analysis and Its Applications with R Examples''. Springer. DOI: 10.1007/978-3-319-52452-8]
{{Stochastic processes}}
|