정상성

시계열 데이터의 통계적 속성이 시간에 따라 변하지 않음을 의미하는데, 데이터의 평균과 분산이 일정함을 의미한다.

 

adfuller() 함수를 통해 시계열 데이터의 정상성을 검증하기 위한 Augmented Dicker-Fuller 테스트를 수행한다.

from statsmodels.tsa.stattools import adfuller

# ADF 테스트
adf_result = adfuller(train_data['평균기온'])
print(f'ADF 통계값: {adf_result[0]}')
print(f'p-value: {adf_result[1]}')

 

ADF 테스트

ADF 테스트는 '단위근'이라는 특정 유형의 비정상성을 확인한다.

 

이 테스트에서 계산되는 ADF 통계치는 데이터에 단위근이 없다는 대립 가설에 대한 증거를 제공한다.

 

p - value는 이 통계치가 얼마나 유의미한지를 나타낸다. 

일반적으로 p-value가 0.05 이하일 경우, 우리는 데이터가 정상성을 가지고 있다고 간주하고 귀무 가설을 기각할 수 있다.

 

 

예를 들어

만약 코드 실행 결과, ADF 통계값은 -2.904, p-value는 0.044로 나타났을 경우, 일반적으로 p-value가 0.05 이하일 경우에는 귀무가설을 기각하고 데이터가 정상성을 가진다고 할 수 있지만...

이 경우에는 p-value가 0.05에 근접하여 데이터가 정상 시계열이라고 결론짓기에는 약간의 불확실성이 남는다.

 

따라서 이 경우, 차분을 수행하여 정상성을 확인하거나 모델의 성능을 검증하여 평가할 수 있다. 

 

혹은 p와 q의 범위 내에서 여러 ARIMA 모델을 피팅하고 각 모델의 AIC(Akaike Information Criterion) 값을 비교함으로써 최적의 파라미터 조합을 찾는 방법을 사용할 수도 있다.

 

AIC는 모델의 적합도와 복잡도를 동시에 고려하는 척도로, 낮은 AIC 값을 가지는 모델이 주어진 데이터에 대해 더 좋은 예측 성능을 제공할 가능성이 높다. 

'프로그래밍 > 프로젝트' 카테고리의 다른 글

쇼핑몰 지점별 매출 예측 AI  (0) 2024.08.29
자기상관분석  (0) 2024.05.21
ARIMA 모델 검증 및 예측 정확도 평가  (0) 2024.05.21
ARIMA 모델  (0) 2024.05.21
데이콘 - 고객 대출 등급 분류 프로젝트  (1) 2024.02.09

+ Recent posts