지수평활법(exponential smoothing)

지수평활법(exponential smoothing)

예를 들어 주가에 차트를 보면 이동평균선(5,20,60,120)이 있다. 120이란 말은 120일 평균을 낸것이다.

20일 이동 평균선(20MA) $\dfrac{y_{-1} + y_{-2} + …..+ y_{-20}}{20}$

위 식을 다시 써보면 $\dfrac{1}{20}y_{-1} + \dfrac{1}{20}y_{-2} + ….+ \dfrac{1}{20}y_{-20}$으로 볼 수 있다. 즉 과거데이터랑 최신데이터랑 똑같은 가중치를 준다.

최신데이터에 가중치를 더 주고 과거로 갈수록 가중치의 크기를 줄여나간다 즉 가중치의 크기를 지수형태로 줄여나가는 것이 지수평활법이다.

 

시계열 분석을 할때 주체가 있고 계절요인이 있는데, 지수평활법도 추세에 대해, 계절효과에 대해 따로 지수평활법을 사용할 수 있다

지수평활법의 종류

단순지수평활법, 일모수이중지수평활법, 홀트-윈터스이중지수평활법, 가법윈터스방법, 승법윈터스방법

지수평활법을 사용할 때는 데이터 트랜드를 알아야 한다.

지수평활법을 사용하기 위한 데이터의 형태

데이터의 형태가 3개중에 하나라면 지수평활법을 쓸만 하다.

TREND = 1 : 추세는 없고, 계절성(가법,승법) 있다.

TREND = 2 : 추세도 있고, 계설정(가법,승법) 있다

TREND = 3 : 추세(지수)도 있고, 계설정(가법,승법) 있다

 

예)

우 상향 하는 트랜드(1차, 2차)가 있고 승법적인 계절효과가 보인다.

모형적합도

전체제곱합(Total sum of square)

$SST = \sum_{t=0}^{T}(Z_{t} – \bar{Z})^{2}$

오차제곱합(error sum of square)

$SSE = \sum_{t=0}^{T}(Z_{t} – \hat{Z_{t}})^{2}$

평균오차제곱합(mean squared error) : 작으면 작을수록 좋다.

$MSE = \dfrac{1}{T-k}SSE, RMSE = \sqrt{MSE}$ k는 모수의 개수

평균오차(ME) 와 평균절대오차(MAE)

$ME = \dfrac{1}{T}\sum_{t=0}^{T}(Z_{t}-\hat{Z_{t}})$

$MAE = \frac{1}{T}\sum_{t=0}^{T}|Z_{t} – \hat{Z_{t}}|$

결정계수 – Rsquare : 얼마나 모델을 잘 설명을 하는지 설명하는 지표로 값이 크면 클 수록 좋다.

$R^{2} = 1 – \dfrac{SSE}{SST}$,  $Adj – R^{2} = 1 – (\dfrac{T-1}{T-k})(1-R^{2})$

$ARSQ = 1 – (\dfrac{T+k}{T-k})(1-R^{2})$

AIC, SBC, APC : 작으면 작을수록 좋다.

$AIC = T\ln(\dfrac{SSE}{T}) + 2k$

$SBC = T\ln(\dfrac{SSE}{T}) + k\ln(T)$

$APC = (\dfrac{T+k}{T-k})\dfrac{1}{T}SSE$

단순지수평활법

추세가 존재하지 않고 시계열의 구성요인이 시간에 의존하여 천천히 변하는 시계열 자료에 적합한 방법

추세가 없는 회귀모형 : $z_{t} = \beta_{0} + \epsilon_{t}, \ \ t = 1,….,T$

$\beta_{0}$의 추정을 위한 평활함수 :  최신 데이터에는 $\alpha$만큼 가중치를 준다. 과거 데이터는 $1-\alpha$ 의 가중치를 준다.

$s(t) = \alpha z_{t} + (1 – \alpha)s(t-1)$

$s(T) = \alpha z_{t} + (1 – \alpha)[\alpha z_{T-1} + (1-\alpha)s(T-2)]$

= ,…….

= $\alpha z_{T} + \alpha(1-\alpha)z_{T-1} + \alpha(1-\alpha)^{2}z_{T-2} + ….+ \alpha(1-\alpha)^{T-1}z_{1} + (1-\alpha)^{T}s(0)$

과거 데이터로 갈수록 가중치 값이  줄어든다. 그리고 가중치의 합은 1이다.

$s(0) = \dfrac{1}{n}\sum_{t=1}^{n}Z_{t}$ 보통 n = 6 또는 n = $\dfrac{T}{2}$

단순지수평활법의 평활상수 $\alpha$값 결정방법

$\alpha$ 값을 0.01에서 0.3까지 변화시켜가며 적합을 수행하고, 각 적합에서의 SSE 값을 구하여 가장 작은 SSE 값을 생성할 때 \alpha를 결정한다.

결정된 $\alpha$가 0.3을 넘긴다면 다른 접근방법을 이용하는 것이 바람직하다. -> $\alpha$값은 오늘 데이터의 가중치에 0.3을 준다는건 그외 나머지 과거 데이터에 0.7의 가중치를 준다는 얘기이다. 오늘 데이터에 0.3을 주게되면 과적합이 발생할 수 있어 다른접근 방법을 사용하는게 낫다.

단순지수평활을 적용한 것을 보면 아래와 같이 일반적인 특징이 나타난다. 과거 데이터를 평균을 내서 하는 방법이라 원래 데이터를 조금씩 늦게 따라 가는 형태로 나타난다.

이중지수 평활법

선형추세(오른쪽 우상향)를 가지고 있는 시계열 모형을 적합한 방법

$z_{t} = \beta_{0} + \beta_{1} t + \epsilon_{t}$

선형추세를 나타내기 때문에 2개의 파라미터($\beta_{0}, \beta_{1}$)가 있다. $\beta_{0}$ 는 시계열의 위치를 나타내고, $\beta_{1}$ 시계열의 기울기를 나타낸다.

2개의 평활 함수

$\beta_{0} : S_{t} = \alpha z_{t} + (1-\alpha)S_{t-1} -> S_{t} = \beta_{0} + \bata_{1} (t+1) – \dfrac{\beta_{1}}{\alpha}$

$\beta_{1} : S_{t}^{(2)} = \alpha S_{t} + (1-\alpha)S_{t-1}^{(2)} -> S_{t-1}^{(2)} = \beta_{0} + \beta_{1}(t+2) – \dfrac{2\beta_{1}}{\alpha}$

최근화값 계산을 위한 절편향과 기울기

$b_{1}(t) = \dfrac{\alpha}{1-\alpha}(S_{t} – S_{t}^{2})$

$b_{0}(t) = 2S_{t} – S_{t}^{(2)} – tb_{1}(t)$

미래시점 $(T+\tau)$에서의 예측값

$\hat{z}_{T+\tau} = b_{0}(T) + b_{1}(T)(T+\tau) $

$= 2S_{T} – S_{t}^{(2)} + \dfrac{\alpha}{1-\alpha}(S_{T} – S_{T}^{(2)})t$

$= (2+ \dfrac{\alpha\tau}{1-\alpha})S_{T} – (1+\dfrac{\alpha\tau}{1-\alpha})S_{T}^{2}$

Holt-Winters 방법 – 이모수 이중지수 평활법

이중지수 평활법에서 보면 절편과 기울기의 smooting 으로 $\alpha$을 사용했다.

holt-winters 방법은 두개의 평활상수를 이용하여 기울기와 절편을 각각 함수화 한다.

$a_{0}(t) = \alpha z_{t} + (1-\alpha)[a_{0}(t-1) + b_{1}(t-1)]$

$b_{1}(t) = \beta[a_{0}(t) – a_{0}(t-1)] + (1-\beta)b_{1}(t-1)$

이중지수평활법 최근화 과정

초기치 $a_{0}(0), b_{1}(0)$ 은 OLS 이용하여 계산한다.

평활상서 $\alpha, \beta$는 SSE가 최소가 되로록 정한다.

예측식

$\hat{z}_{T+\tau} = b_{0}(T) + b_{1}(T)(\tau)$

계절형 지수평활법

분산이 확장되는 경우 :  승법윈터스 방법

$Z_{t} = (\beta_{0} + \beta_{1} t)\times SN_{t} + \epsilon_{t}$

3개의 평활상수

$a_{0}(t) = \alpha \dfrac{z_{t}}{sn_{t}(t-L)} + (1-\alpha)[a_{0}(t-1)+b_{1}(t-1)]$

$b_{1}(t) = \beta[a_{0}(t) – a_{0}(t-1)]+(1-\beta)b_{1}(t-1)$

$sn_{t}(t) = \gamma\dfrac{z_{t}}{a_{0}(t)}+(1-\gamma)sn_{t}(t-L)$

예측식

$\hat{z}_{T+\tau} = [a_{0}(T) + b_{1}(T)\tau]SN_{T+\tau}[T+\tau -L]$

분산이 일정이 되는 경우 :  가법윈터스 방법

$Z_{t} = (\beta_{0} + \beta_{1} t) + SN_{t} + \epsilon_{t}$

3개의 평활상수

$a_{0}(t) = \alpha[z_{t}-sn_{t}(t-L)]+(1-\alpha)[a_{0}(t-1)+b_{1}(t-1)]$

$b_{1}(t) = \beta[a_{0}(t) – a_{0}(t-1)]+(1-\beta)b_{1}(t-1)$

$sn_{t}(t) = \gamma[z_{t}-a_{0}(t)]+(1-\gamma)sn_{t}(t-L)$

예측식

$\hat{z}_{T+\tau} = [a_{0}(T) + b_{1}(T)\tau]+SN_{T+\tau}[T+\tau -L]$

 

 

 

Forecasting: Principles and Practice – 지수평활법

 

“지수평활법(exponential smoothing)”의 21개의 댓글

  1. Hi there! I could have sworn I’ve visited this website before but
    after going through many of the articles I realized it’s new to
    me. Nonetheless, I’m certainly happy I stumbled upon it and I’ll be book-marking
    it and checking back frequently!

    Have a look at my homepage – IQ SuperCharged

  2. Have you ever considered publishing an e-book or guest authoring on other websites?
    I have a blog based upon on the same subjects you discuss and
    would love to have you share some stories/information. I know my
    visitors would enjoy your work. If you’re even remotely
    interested, feel free to send me an email.

    My web blog Hydra Riche Skin Serum

  3. Hi! This is kind of off topic but I need some advice
    from an established blog. Is it hard to set up your own blog?

    I’m not very techincal but I can figure things
    out pretty fast. I’m thinking about making my own but
    I’m not sure where to begin. Do you have any points or
    suggestions? Thanks

    Check out my blog post … Paramore Skin Cream

  4. Wonderful paintings! This is the kind of information that are supposed to
    be shared around the internet. Shame on Google
    for no longer positioning this post upper! Come on over and consult with
    my website . Thanks =)

    Feel free to surf to my page … 79.96.178.225

  5. Good day I am so happy I found your web
    site, I really found you by mistake, while I was looking on Digg for something
    else, Anyhow I am here now and would just like to say cheers for a incredible
    post and a all round entertaining blog (I also love the theme/design),
    I don’t have time to read it all at the minute but I have book-marked it and also included your RSS feeds,
    so when I have time I will be back to read a lot more, Please do keep up the excellent job.

    Feel free to visit my web-site – Solvolt

답글 남기기