본문 바로가기
Statistics/Time Series Analysis

TSA - 1. 시각화 및 벤치마크 예측기법

by bents 2021. 1. 22.

# 무엇을 예측하나?

비교적 높은 확률로 취할 수 있는 값들의 *범위(구간예측*)

가능한 미래 값의 평균값인 *점예측*

상대적인 확률 값에 따라 이 무작위 변수(미래값)가 가질 수 있는 값을 *예측분포*

예측분포의 대표값은 평균 또는 중간값이 됨.

 

 

# 어떤 패턴을 예측해야 하나?

랜덤(white noise), 추세(trend.방향), 계절성(seasonality.고정빈도), 주기(cycle.반복되는 비슷한 형태)가 있다.

먼저 데이터에서 나타나는 시계열 패턴을 살피고, 그 다음 적절하게 패턴을 잡아낼 수 있는 기법을 선택해야 함.

   *추세로 인한 자기상관성은 시간이 지나면 줄어지만 계절성.주기성은 남는 경향있음.

 

# 패턴을 분석하는 첫번째 방법 : 시각화(ggplot )

  1. 계절그래프 - (연도의 월별 수익률) 중요한 계절성 패턴을 더욱 분명하게 보여주고, 특별히 패턴 변화가 있는 연도를 찾아낼 때 유용함 (월별 수익률 추이) 계절성이 시간에 따라 어떻게 변하는지도 볼 수 있다. 특정한 철에서 나타나는 변화를 확인할 때 특별히 유용함.

  2. 산점도행렬 그래프 scatterplot matrix - 각 변수를 다른 변수에 대해 나타내는 것이 도움이 됩니다.
    correlation plot ,histogram, density plot 로 양의 상관관계, 이상치 구간 발견가능.
    / 산점도, 히스토그램, 상관계수 정보 다 있어서 편리.

  3. Lagged scatterplot - 시차간 비례/반비례 관계 발견.

  4. ACF(자기상관함수)그래프 (= Correlogram)으로 시차간 관계, 계절패턴을 모두 확인가능.

## 시각화 결과를 참고해 예측기법 선택하기

[회귀분석관점]

1) [ACF, 융박스검정(H0:랜덤)]상관계수=0(랜덤)이면 예측력 높음

: 상관계수!=0이면 동적 회귀모델으로 예측가능.

2) [histogram]평균!=0일때 0으로 만들면 예측력 높음.

3) [scatter]정규분포하고 분산이 일정하면 구간예측력 높음.

: 박스콕스 변환으로 분산안정화하면, 조건만족할 수 있음.

 

가정을 충족해야 구간예측의 정확도가 높아짐. 가정충족 못해서 쓸모없는 예측인 건 아님.

*적합값(시계열 예측치가 아닌 예측기법의 매개변수를 추정값이 될 수 있음), 

*잔차(관측치와 적합값의 차이/모델에 포함되지 못한 정보량을 의미함)

 

# 패턴을 예측하는 방법 

[점예측]

  1. 벤치마크 예측기법

    - 평균(전체기간평균),

    - 나이브 기법(과거값 유지),

    - 계절성 나이브 기법(과거주기 값 유지) ,

    - 표류기법(과거값 + 델타가중치)

  2. 변환/조정 예측기법

    - 달력 조정(각 월의 날짜수가 다른 효과/월별보다 일별을 선호함 ),

    - 인구 조정(전체숫자 보다 1인당 숫자;평균를 선호함), 

    - 인플레이션 조정(서로 다른 조건의 값을 동일한 기준으로 비교하기 위해 비례법 사용), 

    - 수학적 변환( box-cox 변환;log & power 변환;으로 시계열 단순화 가능, 모델링 편리함), 

    - 편향조정(수학전 변환의 평균 예측의 편향을 역변환값으로 보정해 점예측력 향상)

[구간예측]

 

*예측구간 : 점예측값의 불확실성을 말함
; 현재로부터 먼 기간을 예측할수록 예측오차의 분산이 커짐(불확실성커짐)

 

  1. 상관성없고, 정규분포가정해서 95% 예측구간 구하기
  2. 벤치마크 예측기법의 예측구간 구하기
    - 평균예측구간 : 잔차의 표준편차 * root(1+ 1/T)
    - 단순예측구간 : 잔차의 표준편차 * root(n)
    - 계절성 단순예측구간 : 잔차의 표준편차 * root(1+{n-1}/주기) )
    - 표류예측구간 : 잔차의 표준편차 * root(n+n*n/T) )
  3. 붓스트랩 잔차를 사용해 예측구간 구하기
    ; 과거의 잔차값에서 샘플링한 값을 예측값에 더해서 새로운 예측값을 만든다. 이 과정을 반복해서 예측구간만듦.
  4. 수학적 변환을 역변환해 예측구간 구하기
    ; 기존 예측값에 대해 역변환하면 대칭적인 예측구간이 비대칭으로 변함.

# 예측모델 평가방법

1. 데이터셋 나누어 검정하기

  • 훈련데이터;학습오차;잔차 vs 검증데이터;
  • 예측오차 반드시 시계열 교차검증해야 함. (t=0 부터 t=Tn까지)
  • 시계열 특성상 t+1, ... t+n 까지 예측가능 ( n-step 예측오차 )

2. 평가지표 

  • 눈금(scale), 단위(unit)의 정보를 담은 오차 : MAE(중앙값), RMSE(평균)

  • 단위걱정없는 백분율오차 : MAPE 

    : 0이하의 값을 가지는 데이터에서 사용하지 말기.

  • 눈금의 정보를 담은 보정된 오차 : MASE (계절성 여부에 따라 다름)

# 예측 조언

* 패턴을 단순화(잡음제거)하는게 예측의 정확도를 향상시킴.

* 더 멀리 예측할 수록, 더 확신하기 어렵다.

* 붓스트랩/배깅 예측기법 : 샘플링 기반으로 여러번 예측(투표)하고, 합산하기

'Statistics > Time Series Analysis' 카테고리의 다른 글

TSA - 3. 패턴분해  (0) 2021.01.22
TSA - 2. 일반회귀  (0) 2021.01.22
모수추정방법 /  (0) 2021.01.22
TSA - ARIMA + GARCH  (0) 2020.12.02
TSA - Integration, Cointegration, and Stationarity  (0) 2020.11.26