728x90
목록

1. 계절성(Seasonality)과 주기(Frequency)

2. 주기(Frequency) 알아내는 방법

3. 이동평균법으로 최적 주기 구하기

 

 

지난번에 과거 결과를 사용해서 미래 데이터를 예상하는 분석법인 지수평활법이 살펴보았습니다.

수준(Level = Lt)과 추세(Trend = Tt), 그리고 계절성(Seasonality = St) 이라고 부르는 수를 계산하여 구합니다.

이때 사용하는 수준(Lt), 추세(Tt), 계절성(St)은 아래와 같이 계산합니다.

 

공식입니다.

(xt : 측정값, m : 계절성의 주기, α/β/γ : 상수)

 

1. 계절성(Seasonality)과 주기(Frequency)

 

계절성이란 어떤 데이터가 나타내는 주기성을 이야기합니다.

현실에서 관측하는 대부분의 데이터는 시원하게 올라가지 않고 어떤 모습을 가지면서 이동합니다.

전체의 추세와 관련없이 반복되는 패턴을 가지는 성질을 계절성이라고 합니다.

 

계절성을 가지는 데이터

 

과학적으로 데이터를 분석할 때는 인자에 따른 주기를 파악하는 것이 중요합니다.

그럼 주기를 확인하는 방법을 알아보겠습니다.

 

 

2. 주기(Frequency) 알아내는 방법

 

① 그냥 데이터 보고 알아내기

 

좀 어이없을 수 있지만 가장 직관적인 방법은 데이터를 시각화하여 주기를 찾는 것입니다. 

그래프로 만들어서 데이터의 반복 패턴을 시각적으로 확인할 수 있습니다.

어설프게 수학식을 돌리는 것 보다는 사람이 보고 주기가 있는지 혹은 불규칙한지 파악하는게 좋습니다.

 

그래프 만들어서 보기

 

위의 그래프는 확실한 주기가 나타납니다.

어떤 분석 방법보다는 연구자가 "데이터를 어떤 방법으로든 시각화해서 확인"하는 것이 가장 중요합니다.

 

 

 

② 자기상관함수(Autocorrelation Function : ACF)

 

주기가 있는 데이터에서는 미래의 데이터와 과거의 데이터가 모양이 비슷합니다.

즉 상관관계가 있다는 것이죠.

 

앞과 뒤에 비슷한 구간이 있습니다.

 

자기상관함수

 

공식은 t시점의 데이터와 t+k 시점의 데이터의 관계를 나타내는 것입니다.

즉, 데이터 스스로의 상관관계를 계산하여 주기를 구하는 방법입니다.

직접 계산하기는 어렵지만, Python 등으로 솔루션이 나와 있고 솔루션을 사용해서 계산할 수 있습니다.

 

 

③ 푸리에 변환(Fourier transform)

 

푸리에 변환은 입력된 값들을 주파수를 가지는 주기함수로 나타내는 것 함수입니다.

다양한 주파수를 같은 값에 적용할 수 있는 특성때문에 신호를 사용하는 모든 분야에서 응용됩니다.

주기를 가지는 가장 간단한 솔루션인 삼각함수를 사용합니다.

 

공식

 

공식을 직관적으로 알기는 어렵지만, 원리를 잘 알려주는 그림이 있어 가지고 왔습니다.

(출처 : NAVER 수학백과, https://terms.naver.com/entry.naver?docId=4125498&cid=60207&categoryId=60207 )

푸리에 변환

 

위의 그림을 보면 원본데이터(검정선)을 다양한 주파수(빨강,파랑,초록,주황,회색)으로 나누고 그 합으로 나타냅니다.

복잡한 형태의 데이터를 특정 주기(=주파수)로 변환할 수 있는데 이 성질을 이용하면 최적의 주기도 구 할 수 있습니다.

그 외에도 정말 많은 방법으로 사용할 수 있는 변환입니다.(나중에 시간내서 꼭 별도 포스팅 하고 싶습니다.)

이것 역시 사람이 풀려면 힘들고 Python, matlap등 많은 정규 솔루션이 있어 사용할 수 있습니다.

 

 

3. 이동평균법으로 최적 주기 구하기

 

이 방법은 정규화 된 방식은 아닙니다. 그냥 요령에 가까운데요.

얼추 맞는 내용이니 참고만 하시길 바랍니다.

원본을 기준으로 데이터의 이동평균을 구하는데 이때 이동평균의 구하는 범위를 변경합니다.(n = 5, 12, 20)

 

이동평균으로 변경하기

 

위의 그래프처럼 원본 그래프를 n = 5, 12, 20으로 변경해가면서 이동평균을 구합니다.

이동평균의 그래프를 보면 5, 12, 20으로 가면서 데이터가 변하는 것을 볼 수 있습니다.

이때 가장 선형에 가까운 것이 이 데이터의 주기입니다.

계절성이 완벽하면 이평선이 직선이 될 것입니다.

즉 이 경우는 n = 12가 됩니다.

 


 

< 지수평활법과 ETS 관련 포스팅 > 

 

01. 시계열 분석에서 미래를 예측하는 이동평균법(SMA), 지수평활법(ES)으로 미래값을 예상하고 풀어보기

02. 지수평활법으로 데이터를 분석할 때 계절성과 주기를 파악하는 방법(Exponential Smoothing의 Seasonality) - 현재글

03. 시계열 예측에서 지수평활법의 기본 모델(Additive)과와 확장 형태인 감쇠 (Damped) 모델들의 정의

04. 시계열 예측에서 계절성에 따른 추세가 변하는 승법적 모델과(Multiplicative Model), 감쇠하는 승법적 모델(Damped Multiplicative Model)

05. 상황에 맞게 지수평활법과 ETS 모델(Exponential Triple Smoothing)을 사용해서 시계열 예측을 수행하기

06. 지수평활법에서는 사용하는 계수(α, β, γ)를 최소제곱법으로 구하는 방법(엑셀 VBA 구하기)

07. 엑셀(EXCEL)로 지수평활법의 ETS 모델을 사용하는 FORECAST.ETS 함수와 파생함수인 SEASONALITY / STAT 함수

08. 엑셀(EXCEL)의 FORECAST.ETS 함수의 오차를 계산하는 CONFINT 함수(지수평활법을 사용하는 미래 예측 함수) 

 

 

 

반응형

+ Recent posts