맨위로가기

자기회귀누적이동평균

"오늘의AI위키"는 AI 기술로 일관성 있고 체계적인 최신 지식을 제공하는 혁신 플랫폼입니다.
"오늘의AI위키"의 AI를 통해 더욱 풍부하고 폭넓은 지식 경험을 누리세요.

1. 개요

자기회귀누적이동평균(ARIMA) 모델은 시계열 데이터의 통계적 분석 및 예측에 사용되는 모델이다. ARIMA 모델은 자기 회귀(AR), 누적(I), 이동 평균(MA)의 세 가지 구성 요소로 이루어져 있으며, 이를 통해 시계열 데이터의 추세, 계절성 및 기타 패턴을 모델링한다. ARIMA 모델은 비계절 ARIMA(p, d, q)와 계절 ARIMA(p, d, q)(P, D, Q)m으로 표현되며, 여기서 p, d, q는 각각 자기 회귀, 차분, 이동 평균의 차수를 나타낸다. ARIMA 모델은 다양한 소프트웨어 패키지에서 구현되어 있으며, 시계열 데이터의 분석 및 예측에 널리 사용된다.

더 읽어볼만한 페이지

  • 통계 모형 - 예측 분석
    예측 분석은 통계학, 기계 학습 등의 분석 기법을 활용하여 과거 및 현재 데이터를 토대로 미래의 사건이나 결과를 예측하는 방법론으로, 다양한 분야에서 의사 결정 지원 및 위험 관리 등에 활용되지만, 인간 행동의 복잡성으로 인한 예측 불가능성에 대한 비판도 존재한다.
  • 통계 모형 - 박스-젠킨스 방법
    박스-젠킨스 방법은 자기상관 및 편자기상관 함수를 활용하여 시계열 데이터를 분석하고 예측하는 통계적 방법론으로, ARIMA 모델을 통해 데이터에 적합한 모델을 식별, 추정, 검증한다.
자기회귀누적이동평균
개요
종류통계 모델
사용 분야시계열 분석
모델 정보
약칭ARIMA
구성 요소자기 회귀 (AR)
적분 (I)
이동 평균 (MA)
매개변수p: 자기 회귀 차수
d: 차분 차수
q: 이동 평균 차수
상세 정보
자기 회귀 모델 (AR)과거 값과의 상관 관계를 이용
적분 (I)시계열 데이터의 비정상성을 정상성으로 변환
이동 평균 모델 (MA)과거 오차 항과의 상관 관계를 이용
수식
일반적인 형태ARIMA(p, d, q)
계절성 ARIMA 형태ARIMA(p, d, q)(P, D, Q)m
참고 사항
Wold 분해 정리광범위한 시계열 모델링에 대한 이론적 근거 제공
한계비선형 시계열 데이터에는 부적합
긴 메모리 의존성을 포착하기 어려움
관련 항목
관련 모델AR 모델
MA 모델
ARMA 모델
SARIMA 모델

2. 정의

시계열 데이터 ''Xt''(''t''는 정수 인덱스, ''Xt''는 실수)가 주어졌을 때, \text{ARMA}(p',q) 모델은 다음과 같다.

:X_t-\alpha_1X_{t-1}- \dots -\alpha_{p'}X_{t-p'} = \varepsilon_t + \theta_1 \varepsilon_{t-1} + \cdots +\theta_q \varepsilon_{t-q},

또는 동등하게

:

\left(

1 - \sum_{i=1}^{p'} \alpha_i L^i

\right) X_t

=

\left(

1 + \sum_{i=1}^q \theta_i L^i

\right) \varepsilon_t \,



여기서 L은 시차 연산자이고, \alpha_i는 모델의 자기 회귀 부분의 매개변수이고, \theta_i는 이동 평균 부분의 매개변수이며, \varepsilon_t는 오차항이다. 오차항 \varepsilon_t는 일반적으로 평균이 0인 정규 분포에서 샘플링된 독립 동일 분포 변수로 간주된다.

여기서 다항식 \textstyle \left( 1 - \sum_{i=1}^{p'} \alpha_i L^i \right)가 중복도 ''d''의 단위근 (인자 ''1 - L'')을 갖는 경우, 다음과 같이 다시 쓸 수 있다.

:

\left(

1 - \sum_{i=1}^{p'} \alpha_i L^i

\right)

=

\left(

1 - \sum_{i=1}^{p'-d} \varphi_i L^i

\right)

\left(

1 - L

\right)^d.



\mathrm{ARIMA}(p, d, q) 프로세스에서는 ''p'' = ''p'-d''로 사용하여 다음과 같이 나타낸다.

:

\left( 1 - \sum_{i=1}^p \varphi_i L^i \right)

(1-L)^d X_t

= \left( 1 + \sum_{i=1}^q \theta_i L^i \right) \varepsilon_t \,



따라서 ''d''개의 단위근을 갖는 자기 회귀 다항식을 갖는 \mathrm{ARMA}(p + d, q) 프로세스의 특수한 경우로 생각할 수 있다. 이 때문에 ''d > 0''의 ARIMA 모델로 정확하게 기술되는 프로세스는 광의의 정상성을 갖지 않는다.

위는 다음과 같이 일반화할 수 있다.

:

\left( 1 - \sum_{i=1}^p \varphi_i L^i\right)

(1-L)^d X_t = \delta + \left( 1 + \sum_{i=1}^q \theta_i L^i \right) \varepsilon_t . \,



이것은 '''드리프트 \frac{\delta}{1 - \sum \varphi_i} '''를 동반하는 ''\mathrm{ARIMA}(p, d, q)'' 프로세스를 정의한다.

Wold의 분해 정리에 따르면,[4][5][6] ARMA 모델은 '''정상''' (일명 순수 비결정론적[6]) 광의의 정상성 시계열을 설명하기에 충분하므로, ARMA를 사용하기 전에 차분 등을 사용하여 이러한 비정상 시계열을 정상 시계열로 만들도록 동기 부여를 받는다.[7]

시계열에 '''예측 가능한''' 하위 프로세스 (일명 순수 사인 또는 복소수 지수 프로세스[5])가 포함된 경우 예측 가능한 구성 요소는 ARIMA 프레임워크에서 0이 아닌 평균이지만 주기적인 (즉, 계절적) 구성 요소로 처리되며, 이는 계절적 차분으로 제거된다.

비계절 ARIMA 모델은 일반적으로 ARIMA(''p'', ''d'', ''q'')로 표시되며, 여기서 매개변수 ''p'', ''d'', ''q''는 음이 아닌 정수이다. ''p''는 자기 회귀 모형의 차수(시간 지연의 수), ''d''는 차분 차수(데이터에서 과거 값을 뺀 횟수), ''q''는 이동 평균 모형의 차수이다. 계절 ARIMA 모델은 일반적으로 ARIMA(''p'', ''d'', ''q'')(''P'', ''D'', ''Q'')''m''으로 표시되며, 대문자 ''P'', ''D'', ''Q''는 ARIMA 모델의 계절 부분에 대한 자기 회귀, 차분 및 이동 평균 항이고 ''m''은 각 계절의 기간 수이다.[8][2] 두 매개변수 중 0이 있는 경우, 모델은 0이 아닌 매개변수를 기반으로 참조될 수 있으며 약어에서 "", "" 또는 ""를 삭제한다. 예를 들어, 은 , 는 , 는 이다.

2. 1. ARMA 모델

ARMA 모델은 일반적으로 ARIMA(''p'', ''d'', ''q'')로 표시되며, 여기서 매개변수 ''p'', ''d'', ''q''는 음이 아닌 정수이다. ''p''는 자기 회귀 모형의 차수(시간 지연의 수), ''d''는 차분 차수(데이터에서 과거 값을 뺀 횟수), ''q''는 이동 평균 모형의 차수이다.[8][2]

정수 지수 ''t''와 실수 ''X''''t''를 갖는 시계열 데이터 ''X''''t''가 주어지면, \text{ARMA}(p',q) 모델은 다음과 같이 표현된다.

:X_t-\alpha_1X_{t-1}- \dots -\alpha_{p'}X_{t-p'} = \varepsilon_t + \theta_1 \varepsilon_{t-1} + \cdots +\theta_q \varepsilon_{t-q},

또는

:

\left(

1 - \sum_{i=1}^{p'} \alpha_i L^i

\right) X_t

=

\left(

1 + \sum_{i=1}^q \theta_i L^i

\right) \varepsilon_t \,



여기서 L은 시차 연산자이고, \alpha_i는 모델의 자기 회귀 부분의 매개변수이고, \theta_i는 이동 평균 부분의 매개변수이며 \varepsilon_t는 오차항이다. 오차항 \varepsilon_t는 평균이 0인 정규 분포에서 샘플링된 독립적이고 동일하게 분포된 확률 변수로 간주된다.

다항식 \textstyle \left( 1 - \sum_{i=1}^{p'} \alpha_i L^i \right)가 다중도 ''d''의 단위 근 (요인 (1-L))을 갖는 경우 다음과 같이 다시 쓸 수 있다.

:

\left(

1 - \sum_{i=1}^{p'} \alpha_i L^i

\right)

=

\left(

1 - \sum_{i=1}^{p'-d} \varphi_i L^i

\right)

\left(

1 - L

\right)^d.



ARIMA(''p'', ''d'', ''q'') 프로세스는 이 다항식 인수분해 속성을 ''p'' = ''p'−d''로 표현하며, 다음과 같다.

:

\left( 1 - \sum_{i=1}^p \varphi_i L^i \right)

(1-L)^d X_t

= \left( 1 + \sum_{i=1}^q \theta_i L^i \right) \varepsilon_t \,



이는 ''d'' > 0인 ARIMA 모델로 정확하게 설명된 프로세스가 광의 정상성을 갖지 않는 이유이다.

위 내용은 다음과 같이 일반화할 수 있다.

:

\left( 1 - \sum_{i=1}^p \varphi_i L^i\right)

(1-L)^d X_t = \delta + \left( 1 + \sum_{i=1}^q \theta_i L^i \right) \varepsilon_t . \,



이는 '''드리프트''' \frac{\delta}{1 - \sum \varphi_i} 를 갖는 ARIMA(''p'', ''d'', ''q'') 프로세스를 정의한다.

2. 2. ARIMA 모델

정수 지수 ''t''와 실수 ''X''''t''를 갖는 시계열 데이터 ''X''''t''가 주어지면, \text{ARMA}(p',q) 모델은 다음과 같이 표현된다.[8][2]

:X_t-\alpha_1X_{t-1}- \dots -\alpha_{p'}X_{t-p'} = \varepsilon_t + \theta_1 \varepsilon_{t-1} + \cdots +\theta_q \varepsilon_{t-q},

또는 동등하게

:

\left(

1 - \sum_{i=1}^{p'} \alpha_i L^i

\right) X_t

=

\left(

1 + \sum_{i=1}^q \theta_i L^i

\right) \varepsilon_t \,



여기서 L은 시차 연산자이고, \alpha_i는 모델의 자기 회귀 부분의 매개변수이고, \theta_i는 이동 평균 부분의 매개변수이며, \varepsilon_t는 오차항이다. 오차항 \varepsilon_t는 일반적으로 평균이 0인 정규 분포에서 샘플링된 독립적이고 동일하게 분포된 확률 변수로 간주된다.[8][2]

만약 다항식 \textstyle \left( 1 - \sum_{i=1}^{p'} \alpha_i L^i \right)가 중복도 ''d''의 단위근 (인자 (1-L))을 갖는 경우, 다음과 같이 다시 쓸 수 있다.

:

\left(

1 - \sum_{i=1}^{p'} \alpha_i L^i

\right)

=

\left(

1 - \sum_{i=1}^{p'-d} \varphi_i L^i

\right)

\left(

1 - L

\right)^d.



ARIMA(''p'', ''d'', ''q'') 프로세스는 이 다항식 인수분해 속성을 ''p'' = ''p'−d''로 표현하며, 다음과 같다.

:

\left( 1 - \sum_{i=1}^p \varphi_i L^i \right)

(1-L)^d X_t

= \left( 1 + \sum_{i=1}^q \theta_i L^i \right) \varepsilon_t \,



이는 ''d'' 단위 근을 가진 자기 회귀 다항식을 갖는 ARMA(''p+d'', ''q'') 프로세스의 특수한 경우이다. 이러한 이유로 ''d'' > 0인 ARIMA 모델로 정확하게 설명된 프로세스는 광의 정상성을 갖지 않는다.[8][2]

위 내용은 다음과 같이 일반화할 수 있다.

:

\left( 1 - \sum_{i=1}^p \varphi_i L^i\right)

(1-L)^d X_t = \delta + \left( 1 + \sum_{i=1}^q \theta_i L^i \right) \varepsilon_t . \,



이는 '''드리프트 \frac{\delta}{1 - \sum \varphi_i} '''를 갖는 ARIMA(''p'', ''d'', ''q'') 프로세스를 정의한다.

비계절 ARIMA 모델은 일반적으로 ARIMA(''p'', ''d'', ''q'')로 표시되며, 여기서 매개변수 ''p'', ''d'', ''q''는 음이 아닌 정수이다. ''p''는 자기 회귀 모형의 차수(시간 지연의 수), ''d''는 차분 차수(데이터에서 과거 값을 뺀 횟수), ''q''는 이동 평균 모형의 차수이다. 계절 ARIMA 모델은 일반적으로 ARIMA(''p'', ''d'', ''q'')(''P'', ''D'', ''Q'')''m''으로 표시되며, 대문자 ''P'', ''D'', ''Q''는 ARIMA 모델의 계절 부분에 대한 자기 회귀, 차분 및 이동 평균 항이고 ''m''은 각 계절의 기간 수이다.[8][2]

2. 3. 드리프트 (Drift)

3. 차분 (Differencing)

통계학에서 '''차분'''은 정상화를 위해 시계열 데이터에 적용되는 변환이다. 정상 시계열 속성은 시계열이 관측되는 시간에 의존하지 않는다.

데이터를 차분하기 위해 연속 관측치의 차가 계산된다. 수학적으로 다음과 같이 표시된다.

:

y_t'= y_t - y_{t-1} \,



차분은 시계열 수준의 변화를 제거하여 추세와 계절성을 제거하고 결과적으로 시계열의 평균을 안정화시킨다.[28]

때때로 정상화된 시계열을 얻기 위해 데이터를 두 번째로 차분해야할 수도 있다. 이를 '''2차 차분'''이라고 한다.

:

\begin{align}

y_t^* & = y_t' - y_{t-1}' \\

& =(y_t - y_{t-1})-(y_{t-1} - y_{t-2}) \\

& =y_ t - 2y_{t-1} + y_{t-2}

\end{align}



데이터를 차분하는 또 다른 방법은 '''계절성 차분'''으로, 이전 계절의 관측치와 해당 관측치 간의 차이(예 : 1년)를 계산한다. 다음과 같이 표시된다.

:

y_t'= y_t - y_{t-m} \quad \text{where } m=\text{duration of season}.



차분 된 데이터는 ARMA 모델의 추정에 사용된다.

정상 시계열의 특성은 변하지 않습니다. 특히, 광의 정상성 시계열의 경우, 평균과 분산/자기공분산은 시간에 따라 일정합니다. 통계학에서 '''차분'''은 비정상 시계열에 적용되어 "평균 의미"에서 정상성을 갖도록 변환하는 것입니다(즉, 비정상적인 추세를 제거하는 것). 하지만 분산 또는 자기공분산의 비정상성에는 영향을 미치지 않습니다. 마찬가지로, '''계절 차분'''은 계절성을 가진 시계열에 적용되어 계절적 성분을 제거합니다.

신호 처리, 특히 푸리에 분석 이론의 관점에서, 추세는 시계열 스펙트럼의 저주파 부분이고, 계절성은 주기적 주파수 부분입니다. 따라서 차분은 고역 통과 필터 (즉, 저지대 통과) 필터이고, 계절 차분은 스펙트럼 도메인에서 저주파 추세와 주기적 주파수 계절성을 각각 억제하기 위한 콤 필터입니다(시간 도메인이 아닌).[7][27]

3. 1. 1차 차분

통계학에서 차분은 시계열 데이터의 평균을 안정화시키기 위해 사용되는 변환 방법이다. 차분은 시계열의 수준 변화를 제거하여 추세를 제거하는 효과가 있다.[28]

1차 차분은 연속적인 관측값의 차이를 계산하는 방식으로 이루어진다. 이는 다음과 같은 수식으로 표현된다.

:

y_t'= y_t - y_{t-1} \,



여기서 y_t는 현재 시점의 관측값, y_{t-1}는 이전 시점의 관측값을 의미한다.

차분은 ARMA 모형을 추정하는데 사용될수 있다.

3. 2. 2차 차분

통계학에서 2차 차분은 정상 시계열을 얻기 위해 데이터를 두 번 차분하는 방법이다.[7][27][28] 1차 차분으로 제거되지 않는 추세를 제거하는 데 사용된다. 2차 차분은 다음과 같이 계산된다.

:

\begin{align}

y_t^* & = y_t' - y_{t-1}' \\

& =(y_t - y_{t-1})-(y_{t-1} - y_{t-2}) \\

& =y_t - 2y_{t-1} + y_{t-2}

\end{align}



여기서

  • y_t는 t 시점의 값,
  • y_t'는 t 시점의 1차 차분 값,
  • y_t^*는 t 시점의 2차 차분 값이다.


차분은 시계열 수준의 변화를 제거하여 추세와 계절성을 제거하고 결과적으로 시계열의 평균을 안정화시킨다.[28]

3. 3. 계절성 차분

통계학에서 계절성 차분은 계절성을 가진 시계열에 적용되어 계절적 성분을 제거하는 방법이다.[7][27] 계절 차분은 이전 계절의 관측치와 해당 관측치 간의 차이를 계산한다. 예를 들어, 1년 주기의 계절성을 가진 데이터의 경우, 현재 관측치에서 1년 전의 관측치를 뺀 값으로 계절 차분을 계산한다.

수학적으로 계절 차분은 다음과 같이 표현된다.

:

y_t'= y_t - y_{t-m} \quad \text{where } m=\text{duration of season}.



여기서 y_t는 t 시점의 관측치, m은 계절의 주기를 의미한다.

계절 차분은 시계열의 수준 변화를 제거하고, 계절성을 제거하여 결과적으로 시계열의 평균을 안정화시키는 효과가 있다.[28] 차분된 데이터는 ARMA 모형의 추정에 사용된다.

신호 처리 관점에서, 특히 푸리에 분석 이론에서 계절성은 시계열 스펙트럼의 주기적 주파수 부분에 해당한다. 따라서 계절 차분은 콤 필터와 같이 기능하며, 스펙트럼 영역에서 주기적 주파수의 계절성을 억제한다.[7][27]

4. 구성 요소 (Components)

시계열 데이터 ''Xt''가 주어졌을 때, ARMA(p',q) 모델은 다음과 같이 표현된다.[3]

:X_t-\alpha_1X_{t-1}- \dots -\alpha_{p'}X_{t-p'} = \varepsilon_t + \theta_1 \varepsilon_{t-1} + \cdots +\theta_q \varepsilon_{t-q},

여기서 L은 럭셔리 연산자, \alpha_i는 모델의 자기 회귀(AR) 부분의 파라미터, \theta_i는 이동 평균(MA) 부분의 파라미터, \varepsilon_t는 평균이 0인 정규 분포를 따르는 독립적인 오차항이다.

ARIMA 모델은 자기회귀(AR), 누적(I), 이동평균(MA) 부분으로 구성된다. AR 부분은 관심 변수가 이전 값에 대해 선형 회귀됨을 나타내고, MA 부분은 회귀 오차가 현재 및 과거 시점의 오차 항의 선형 결합임을 나타낸다.[3] I 부분은 데이터 값이 이전 값과의 차이로 대체됨을 의미한다.

ARIMA(p, d, q) 모델은 다음과 같이 표현할 수 있다.

:

\left( 1 - \sum_{i=1}^p \varphi_i L^i \right)

(1-L)^d X_t

= \left( 1 + \sum_{i=1}^q \theta_i L^i \right) \varepsilon_t \,



이는 ''d''개의 단위 뿌리를 가진 자기 회귀 다항식을 갖는 ARMA(p + d, q) 프로세스의 특수한 경우로 볼 수 있다.

Wold의 분해 정리에 따르면, ARMA 모델은 정상(순수 비결정론적) 광의의 정상성 시계열을 설명하기에 충분하다.[4][5][6] 따라서 비정상 시계열은 차분 등을 통해 정상 시계열로 변환하여 ARMA 모델을 적용할 수 있다.[7] 예측 가능한 하위 프로세스가 포함된 경우, 이 구성 요소는 ARIMA 프레임워크에서 0이 아닌 평균이지만 주기적인 요소로 처리되며, 계절적 차분을 통해 제거된다.

5. 다른 특수한 형태 (Other Special Forms)

자기회귀 다항식의 인수 분해는 이동 평균 다항식이나 다른 특수한 인수를 포함하는 형태로 확장될 수 있다. 예를 들어, 모형에 인수 ( 1 - L^s)를 포함하면 주기가 ''s''인 비정상적인 계절성을 모형에 포함시킬 수 있다. 이 인수는 데이터를 ''s''기간 전의 변화로 재표현하는 효과를 가진다. 또 다른 예로, \left( 1 -\sqrt{3} L + L^2 \right) 인수는 주기가 2인 (비정상적인) 계절성을 포함한다. 첫 번째 유형의 인수는 각 계절의 값이 시간에 따라 개별적으로 변동하도록 허용하는 반면, 두 번째 유형은 인접한 계절의 값이 함께 이동하도록 한다.

ARIMA 모형에서 적절한 인수를 식별하고 지정하는 것은 모형화의 중요한 단계이다. 이는 논리와 경험상 모형에 있어야 하는 동작 유형을 부과하면서 추정해야 하는 전체 매개변수 수를 줄일 수 있기 때문이다.

6. 예시 (Examples)

ARIMA(0, 1, 0) 모델은 X_t = X_{t-1} + \varepsilon_t로 주어지며, 이는 확률 보행이다.[9] 상수가 있는 ARIMA(0, 1, 0)은 X_t = c + X_{t-1} + \varepsilon_t로 주어지며, 이는 드리프트가 있는 확률 보행이다.[9] ARIMA(0, 0, 0) 모델은 백색 잡음 모델이다.[9] ARIMA(0, 1, 2) 모델은 감쇠된 홀트 모델이다.[9] 상수가 없는 ARIMA(0, 1, 1) 모델은 기본 지수 평활 모델이다.[9] ARIMA(0, 2, 2) 모델은 X_t = 2X_{t-1} - X_{t-2} +(\alpha + \beta - 2) \varepsilon_{t-1} + (1-\alpha)\varepsilon_{t-2} + \varepsilon_{t}로 주어지며, 이는 가법 오차가 있는 홀트의 선형 방법 또는 이중 지수 평활과 동일하다.[9]

7. 차수 선택 (Choosing the Order)

자기회귀누적이동평균(ARIMA) 모델의 차수 (p, d, q)를 결정하기 위해, 표본 자기상관 함수(ACF), 편자기상관 함수(PACF), 그리고/또는 확장 자기상관 함수(EACF) 방법을 사용할 수 있다.[10][30]

다른 대안적인 방법으로는 아카이케 정보 기준(AIC), 베이즈 정보 기준(BIC) 등이 있다.[10][30] 비계절성 ARIMA 모델의 차수를 결정하기 위해 유용한 기준은 AIC이다. AIC는 다음과 같이 나타낸다.

: \text{AIC} = -2\log(L)+2(p+q+k),

여기서 ''L''은 데이터의 우도, ''p''는 자기 회귀 모형 부분의 차수, ''q''는 이동 평균 모형 부분의 차수를 나타내며, ''k''는 ARIMA 모델의 절편을 나타낸다. AIC에서는 ''k'' = 1인 경우 ARIMA 모델에 절편이 있으며(''c'' ≠ 0), ''k'' = 0인 경우에는 ARIMA 모델에 절편이 없다(''c'' = 0)는 것을 의미한다.

ARIMA 모델의 수정 AIC는 다음과 같이 나타낼 수 있다.

:\text{AICc}= \text{AIC}+ \frac{2(p+q+k)(p+q+k+1)}{T-p-q-k-1}.

BIC는 다음과 같이 나타낼 수 있다.

:\text{BIC}= \text{AIC}+((\log T)-2)(p+q+k).

목표는 좋은 모델의 AIC, AICc, BIC 값을 최소화하는 것이다. 조사하는 모델 범위에서 이러한 기준 중 하나의 값이 낮을수록 해당 모델이 데이터에 더 적합하다. AIC와 BIC는 두 가지 완전히 다른 목적으로 사용된다. AIC는 모델을 현실 상황에 가깝게 하려고 하는 반면, BIC는 완전한 적합성을 찾으려고 한다. BIC의 접근 방식은 현실의 복잡한 데이터에 완벽하게 들어맞는 일은 없다는 비판을 많이 받지만, AIC에 비해 매개변수가 많은 모델에 큰 페널티를 주기 때문에 선택에 유효한 기법이라는 데에는 변함이 없다.

AICc는 차분의 차수가 같은 ARIMA 모델의 비교에만 사용할 수 있다. 차분의 차수가 다른 ARIMA 모델에 대해서는 RMSE를 모델 비교에 사용할 수 있다.

7. 1. 자기상관 함수 (ACF)와 편자기상관 함수 (PACF)

표본 자기상관 함수(ACF), 편자기상관 함수(PACF), 그리고/또는 확장 자기상관 함수(EACF) 방법을 사용하여 자기회귀누적이동평균(ARIMA) 모델의 차수 ''p''와 ''q''를 결정할 수 있다.[10][30]

아카이케 정보 기준(AIC), 베이즈 정보 기준(BIC) 등은 차수 결정에 사용되는 다른 대안적인 방법이다.[10][30] 비계절성 ARIMA 모델의 차수를 결정하기 위해 유용한 기준은 AIC이며, 다음과 같이 표기한다.

: \text{AIC} = -2\log(L)+2(p+q+k),

여기서 ''L''은 데이터의 우도이고, ''p''는 자기회귀 부분의 차수, ''q''는 이동 평균 부분의 차수이다. ''k''는 ARIMA 모델의 절편을 나타낸다. AIC의 경우, ''k'' = 1이면 ARIMA 모델에 절편이 있고(''c'' ≠ 0), ''k'' = 0이면 ARIMA 모델에 절편이 없다(''c'' = 0).

ARIMA 모델에 대한 수정된 AIC는 다음과 같이 표기할 수 있다.

:\text{AICc}= \text{AIC}+ \frac{2(p+q+k)(p+q+k+1)}{T-p-q-k-1}.

BIC는 다음과 같이 표기할 수 있다.

:\text{BIC}= \text{AIC}+((\log T)-2)(p+q+k).

AIC, AICc 또는 BIC 값을 최소화하는 것이 좋은 모델을 위한 목표이다. 조사 중인 일련의 모델에 대해 이러한 기준 중 값이 낮을수록 해당 모델이 데이터에 더 적합하다. AIC와 BIC는 서로 다른 목적을 위해 사용된다. AIC는 상황의 현실에 가까운 모델을 근사하려는 반면, BIC는 완벽한 적합성을 찾으려고 시도한다. BIC 접근 방식은 실제의 복잡한 데이터에 완벽한 적합성이 존재하지 않기 때문에 종종 비판을 받지만, AIC보다 더 많은 매개변수를 가진 모델에 대해 더 강력한 페널티를 부과하므로 선택에 유용한 방법이다.

AICc는 동일한 차분 차수를 가진 ARIMA 모델을 비교하는 데에만 사용할 수 있다. 다른 차분 차수를 가진 ARIMA의 경우, 모델 비교를 위해 RMSE를 사용할 수 있다.[30]

7. 2. 정보량 기준 (Information Criteria)

표본 자기상관 함수(ACF), 편자기상관 함수(PACF), 그리고/또는 확장 자기상관 함수(EACF) 방법을 사용하여 차수 ''p''와 ''q''를 결정할 수 있다.[10]

다른 대안적인 방법으로는 AIC, BIC 등이 있다.[10] 비계절성 ARIMA 모델의 차수를 결정하기 위해 유용한 기준은 아카이케 정보 기준(AIC)이다.[10] AIC는 다음과 같이 표기한다.

: \text{AIC} = -2\log(L)+2(p+q+k),

여기서 ''L''은 데이터의 우도이고, ''p''는 자기회귀 부분의 차수, ''q''는 이동 평균 부분의 차수이다. ''k''는 ARIMA 모델의 절편을 나타낸다. AIC의 경우, ''k'' = 1이면 ARIMA 모델에 절편이 있고(''c'' ≠ 0), ''k'' = 0이면 ARIMA 모델에 절편이 없다(''c'' = 0).[10]

베이즈 정보 기준(BIC)은 다음과 같이 표기할 수 있다.[10]

:\text{BIC}= \text{AIC}+((\log T)-2)(p+q+k).

목표는 좋은 모델을 위해 AIC, AICc 또는 BIC 값을 최소화하는 것이다. 조사 중인 일련의 모델에 대해 이러한 기준 중 값이 낮을수록 해당 모델이 데이터에 더 적합하다.[10] AIC와 BIC는 완전히 다른 두 가지 목적을 위해 사용된다. AIC가 상황의 현실에 가까운 모델을 근사하려는 반면, BIC는 완벽한 적합성을 찾으려고 시도한다. BIC 접근 방식은 실제의 복잡한 데이터에 완벽한 적합성이 존재하지 않기 때문에 종종 비판을 받지만, AIC보다 더 많은 매개변수를 가진 모델에 대해 더 강력한 페널티를 부과하므로 선택에 유용한 방법이다.[10]

AICc는 동일한 차분 차수를 가진 ARIMA 모델을 비교하는 데에만 사용할 수 있다. 다른 차분 차수를 가진 ARIMA의 경우, 모델 비교를 위해 RMSE를 사용할 수 있다.[10]

8. 계수 추정 (Estimation of Coefficients)

ARIMA 모델의 계수를 추정하는 방법은 아직 이 문서에 기술되지 않았다.

9. ARIMA 모델을 사용한 예측 (Forecasts using ARIMA models)

ARIMA 모형은 두 개의 모형의 "계단식" 구조로 볼 수 있다. 첫 번째는 비정상성 모형이다.

:

Y_t = (1-L)^d X_t



반면 두 번째는 광의 정상성을 가진 모형이다.

:

\left( 1 - \sum_{i=1}^p \varphi_i L^i \right) Y_t =

\left( 1 + \sum_{i=1}^q \theta_i L^i \right) \varepsilon_t \, .



이제 자기 회귀 예측 방법의 일반화를 사용하여 과정 Y_t에 대한 예측을 할 수 있다.

==== 예측 구간 ====

자기회귀누적이동평균(ARIMA) 모형의 예측 구간(신뢰 구간)은 잔차가 상관 관계가 없고 정규 분포를 따른다는 가정을 기반으로 한다. 이 가정 중 하나라도 충족되지 않으면 예측 구간이 부정확할 수 있다. 이러한 이유로 연구자들은 예측 구간을 생성하기 전에 잔차의 ACF와 히스토그램을 그려 가정을 확인한다.

95% 예측 구간은 다음과 같다.

:\hat{y}_{T+h\,\mid\, T}\pm1.96\sqrt{v_{T+h\,\mid\, T}}

여기서 v_{T+h\mid T}y_{T+h} \mid y_1,\dots,y_T의 분산이다.

h=1에 대해, v_{T+h\,\mid\, T}=\hat{\sigma}^2는 매개변수 및 차수에 관계없이 모든 ARIMA 모형에 적용된다.

ARIMA(0,0,q)의 경우, y_t=e_t+\sum_{i=1}^q\theta_ie_{t-i}.

: v_{T+h\,\mid\, T} = \hat{\sigma}^2 \left[1+\sum_{i=1}^{h-1}\theta_ie_{t-i}\right], \text{ for } h=2,3,\ldots

일반적으로 ARIMA 모형의 예측 구간은 예측 기간이 길어질수록 증가한다.

9. 1. 예측 구간 (Forecast Intervals)

자기회귀누적이동평균(ARIMA) 모형의 예측 구간(신뢰 구간)은 잔차가 상관 관계가 없고 정규 분포를 따른다는 가정을 기반으로 한다. 이 가정 중 하나라도 충족되지 않으면 예측 구간이 부정확할 수 있다. 이러한 이유로 연구자들은 예측 구간을 생성하기 전에 잔차의 ACF와 히스토그램을 그려 가정을 확인한다.

95% 예측 구간은 다음과 같다.

:\hat{y}_{T+h\,\mid\, T}\pm1.96\sqrt{v_{T+h\,\mid\, T}}

여기서 v_{T+h\mid T}y_{T+h} \mid y_1,\dots,y_T의 분산이다.

h=1에 대해, v_{T+h\,\mid\, T}=\hat{\sigma}^2는 매개변수 및 차수에 관계없이 모든 ARIMA 모형에 적용된다.

ARIMA(0,0,q)의 경우, y_t=e_t+\sum_{i=1}^q\theta_ie_{t-i}.

: v_{T+h\,\mid\, T} = \hat{\sigma}^2 \left[1+\sum_{i=1}^{h-1}\theta_ie_{t-i}\right], \text{ for } h=2,3,\ldots

일반적으로 ARIMA 모형의 예측 구간은 예측 기간이 길어질수록 증가한다.

10. 변형 및 확장 (Variations and Extensions)

ARIMA 모델의 여러 변형이 일반적으로 사용된다. 여러 시계열이 사용되는 경우 X_t를 벡터로 간주할 수 있으며 VARIMA 모델이 적합할 수 있다. 때로는 모델에서 계절적 효과가 의심되기도 한다. 이 경우 모델의 AR 또는 MA 부분의 차수를 늘리는 것보다 SARIMA(계절 ARIMA) 모델을 사용하는 것이 일반적으로 더 좋다.[11] 시계열이 장기 의존성을 나타내는 것으로 의심되는 경우, ''d'' 매개변수는 자기 회귀 분수 적분 이동 평균 모델에서 정수가 아닌 값을 가질 수 있다. 이 모델은 분수 ARIMA (FARIMA 또는 ARFIMA) 모델이라고도 한다.[31]

11. 소프트웨어 구현 (Software Implementations)

박스-젠킨스 매개변수 최적화와 같은 방법론을 적용하는 다양한 패키지를 사용하여 ARIMA 모델에 적합한 매개변수를 찾을 수 있다.


  • EViews: 광범위한 ARIMA 및 SARIMA 기능을 가지고 있다.[12]
  • 줄리아: TimeModels 패키지에 ARIMA 구현이 포함되어 있다.
  • Mathematica: [http://reference.wolfram.com/mathematica/ref/ARIMAProcess.html ARIMAProcess] 함수를 포함한다.
  • MATLAB: [http://www.mathworks.com/products/econometrics/ 계량 경제학 툴박스]에는 [http://www.mathworks.com/help/econ/arimaclass.html ARIMA 모델] 및 [http://www.mathworks.com/help/econ/regarimaclass.html ARIMA 오차를 이용한 회귀]가 포함되어 있다.
  • NCSS: ARIMA 적합 및 예측을 위한 여러 절차를 포함한다.[13][14][15]
  • 파이썬: [https://www.statsmodels.org/ "statsmodels"] 패키지에는 시계열 분석 모델(단변량 시계열 분석: AR, ARIMA - 벡터 자기 회귀 모델, VAR 및 구조적 VAR - 시계열 분석을 위한 설명 통계 및 프로세스 모델)이 포함되어 있다.
  • R: 표준 R ''stats'' 패키지에는 [http://search.r-project.org/R/library/stats/html/arima.html "시계열의 ARIMA 모델링"]에 문서화된 ''arima'' 함수가 포함되어 있다.

    참조

    [1] 웹사이트 'For further information on Stationarity and Differencing see' https://www.otexts.o[...]
    [2] 서적 8.9 Seasonal ARIMA models https://www.otexts.o[...] oTexts 2015-05-19
    [3] 서적 'Time Series Analysis: Forecasting and Control' WILEY
    [4] 서적 Time Series Analysis Princeton University Press
    [5] 서적 Probability, Random Variables, and Stochastic processes Tata McGraw-Hill Education
    [6] 웹사이트 The Wold Decomposition Theorem http://www.phdeconom[...] 2021-02-19
    [7] arXiv Why Are the ARIMA and SARIMA not Sufficient 2019-12-18
    [8] 웹사이트 Notation for ARIMA Models https://support.sas.[...] SAS Institute 2015-05-19
    [9] 웹사이트 Introduction to ARIMA models http://people.duke.e[...] 2016-06-05
    [10] 웹사이트 Model Specification, Time Series Analysis http://people.missou[...]
    [11] 서적 Recent Findings in Intelligent Computing Techniques
    [12] Github TimeModels.jl https://github.com/J[...]
    [13] 문서 ARIMA in NCSS http://ncss.wpengine[...]
    [14] 문서 Automatic ARMA in NCSS http://ncss.wpengine[...]
    [15] 문서 Autocorrelations and Partial Autocorrelations in NCSS http://ncss.wpengine[...]
    [16] 웹사이트 '8.7 ARIMA modelling in R {{error|Error: The retired template {{tn|!}} has been transcluded; see [[mw:Help:Magic words#Escaped characters]] for details. To fix this, use only the code {{Magic word|!}} to generate the | character.}}' https://www.otexts.o[...] 2016-05-12
    [17] 웹사이트 Box Jenkins model http://help.sap.com/[...] SAP 2013-03-08
    [18] 웹사이트 'For further information on Stationarity and Differencing see' https://www.otexts.o[...]
    [19] 서적 8.9 Seasonal ARIMA models https://www.otexts.o[...] oTexts 2015-05-19
    [20] 웹사이트 The Wold Decomposition Theorem http://www.phdeconom[...] 2021-02-19
    [21] 서적 Time Series Analysis Princeton University Press
    [22] 서적 Probability, Random Variables, and Stochastic processes Tata McGraw-Hill Education
    [23] arXiv Why Are the ARIMA and SARIMA not Sufficient 2019-12-18
    [24] 서적 'Time Series Analysis: Forecasting and Control' WILEY
    [25] 서적 8.9 Seasonal ARIMA models https://www.otexts.o[...] oTexts 2015-05-19
    [26] 웹사이트 Notation for ARIMA Models https://support.sas.[...] SAS Institute 2015-05-19
    [27] arXiv Why Are the ARIMA and SARIMA not Sufficient 2019-12-18
    [28] arXiv Why Are the ARIMA and SARIMA not Sufficient 2019-12-18
    [29] 웹사이트 Introduction to ARIMA models http://people.duke.e[...] 2016-06-05
    [30] 웹사이트 Model Specification, Time Series Analysis http://people.missou[...]
    [31] 서적 Recent Findings in Intelligent Computing Techniques
    [32] Github TimeModels.jl https://github.com/J[...]
    [33] 문서 ARIMA in NCSS http://ncss.wpengine[...]
    [34] 문서 Automatic ARMA in NCSS http://ncss.wpengine[...]
    [35] 문서 Autocorrelations and Partial Autocorrelations in NCSS http://ncss.wpengine[...]
    [36] 서적 8.7 ARIMA modelling in R {{廃止されたテンプレート|!}}| OTexts https://www.otexts.o[...] 2016-05-12
    [37] 웹사이트 Box Jenkins model http://help.sap.com/[...] SAP 2013-03-08
    [38] 문서 For further information on Stationarity and Differencing see https://www.otexts.o[...]
    [39] 웹인용 Notation for ARIMA Models https://support.sas.[...] SAS Institute 2015-05-19
    [40] 서적 8.9 Seasonal ARIMA models https://www.otexts.o[...] oTexts 2015-05-19



본 사이트는 AI가 위키백과와 뉴스 기사,정부 간행물,학술 논문등을 바탕으로 정보를 가공하여 제공하는 백과사전형 서비스입니다.
모든 문서는 AI에 의해 자동 생성되며, CC BY-SA 4.0 라이선스에 따라 이용할 수 있습니다.
하지만, 위키백과나 뉴스 기사 자체에 오류, 부정확한 정보, 또는 가짜 뉴스가 포함될 수 있으며, AI는 이러한 내용을 완벽하게 걸러내지 못할 수 있습니다.
따라서 제공되는 정보에 일부 오류나 편향이 있을 수 있으므로, 중요한 정보는 반드시 다른 출처를 통해 교차 검증하시기 바랍니다.

문의하기 : help@durumis.com