[ADsP] 정리 – 시계열 예측

시계열 예측

시계열(時系列, 영어: time series)은 일정 시간 간격으로 배치된 데이터들의 수열을 말한다. 

시계열 – 위키백과, 우리 모두의 백과사전 (wikipedia.org)

시계열이라는 단어를 영어로 생각하는게 이해가 빠르다. time series 즉 시간 연속이라고 먼저 생각하자.

정상성(Stationary)

정상성이란 시계열의 수준과 분산에 체계적인 변화가 없고, 엄밀하게 주기적 변동이 없다는 것으로, 미래는 확률적으로 과거와 동일하다는 것을 뜻한다.

정상 시계열

  1. 평균값이 시간과 관계없이 일정하고
  2. 분산값이 시간과 관계없이 일정하고
  3. 공분산은 시간에 의존하지 않으면서 오직 시차에 의존

3가지 조건을 만족하는 경우정상시계열, 하나라도 만족하지 못하는 경우 비정상시계열 데이터라고 한다.

비정상 -> 정상시계열로 전환하는 법

  1. 시계열의 평균이 일정하지 않은 경우
    원 시계열에 현재 시점 바로 전 시점의 자료 값을 빼면 정상시계열이 된다.
  2. 계절성을 갖는 비정상시계열의 경우
    1번 처럼 전 시점이 아닌 계절의 시점의 자료 값을 뺀다.
  3. 분산이 일정하지 않은 경우
    원 시계열에 자연로그를 취하면 정상시계열이 된다.

시계열 모형

자기회귀모형(Auto Regressive)

과거 n 시점 이전의 자료가 현재 자료에 영향을 주는 모형이다.
현 시점의 시계열 자료에 과거 1시점 이전의 자료가 영향을 준다면 AR(1) 모형 이라고 한다.

이동평균모형(Moving Average)

최근 데이터의 평균을 예측치로 사용하는 방법
유한 개의 백색잡음의 선형 결합. -> 항상 정상성을 만족한다.

자기회귀누적이동모형(ARIMA)

대부분의 시계열 자료가 따르는 모형으로 비정상시계열 모형이다. 차분이(이전 시점의 자료값 빼기)나 변환(자연로그 취하기)을 통해서 AR, MA, ARMA 모형으로 정상화할 수 있다.

자기회귀이동평균모형(ARMA)

AR모형과 MA모형을 합친 모형이다. 이해 대해서 잘 설명해 놓은곳이 없어서 직접 wikipedia에 검색해서 번역했다.
AR모델에서의 자기상관함수(ACF) 함수형태를 가져오고, MA모델에서 편자기상관함수(PACF) 함수형태를 가져온다.

In the statistical analysis of time seriesautoregressive–moving-average (ARMAmodels provide a parsimonious description of a (weakly) stationary stochastic process in terms of two polynomials, one for the autoregression (AR) and the second for the moving average (MA). The general ARMA model was described in the 1951 thesis of Peter WhittleHypothesis testing in time series analysis, and it was popularized in the 1970 book by George E. P. Box and Gwilym Jenkins.

Given a time series of data Xt , the ARMA model is a tool for understanding and, perhaps, predicting future values in this series. The AR part involves regressing the variable on its own lagged (i.e., past) values. The MA part involves modeling the error term as a linear combination of error terms occurring contemporaneously and at various times in the past. The model is usually referred to as the ARMA(p,q) model where p is the order of the AR part and q is the order of the MA part (as defined below).

Autoregressive–moving-average model – Wikipedia

시계열의 통계 분석에서 자동 회귀 이동 평균(ARMA) 모델은 두 개의 다항식 측면에서 (약하게) 정상화 과정에 대한 세심한 설명을 제공한다. 하나는 자기 회귀(AR)이고 두 번째는 이동 평균(MA)입니다. 일반적인 ARMA 모델은 1951년 Peter Whittle의 논문, 시계열 분석에서의 가설 테스트에서 설명되었고, 1970년 조지 E. P. 박스와 Gwilym Jenkins에 의해 대중화되었다.
데이터 Xt의 시계열에서 ARMA 모델은 이 시계열 데이터의 미래 값을 이해하고 예측하는 도구이다. AR 파트는 자체 지연된(예: 과거) 값으로 변수의 회귀 분석을 포함한다. MA 파트는 오류 항을 동시 및 과거에 여러 번 발생하는 오류 항의 선형 조합으로 모델링하는 것을 포함한다. 일반적으로 이 모델을 ARMA(p,q) 모델이라고 한다. 여기서 p는 AR 부분의 순서이고 q는 MA 부분의 순서이다.

분해 시계열

시계열에 영향을 주는 일반적인 요인을 시계열에서 분리해 분석하는 방법
1. 추세요인 : 자료가 어떤 특정한 형태를 취할 때
2. 계절요인 : 계절에 따라 즉, 고정된 주기에 따라 자료가 변화할 경우
3. 순환요인 : 알려지지 않은 주기를 가지고 자료가 변화할 때
4. 불규칙 요인 : 위의 세 가지 요인으로 설명할 수 없는 오차와 같은 요인

R

R에서 차분할 때 diff() 함수를 이용한다.
decompose() 함수를 이용해서 시계열 자료를 4가지 요인으로 분해할 수 있다.(분해 시계열)
forecast 패키지 안에 있는 auto.arima() 함수를 이용해서 ARIMA 모형을 결정하고 이를 통해 forecast 함수를 이용해서 예측할 수 있다.