자격증

[Adp 실기 기출 풀이] 25회 시계열 문제

돌돌55 2023. 3. 2. 00:00

문제는 멋쟁이천재사자님의 내용을 참고하였습니다.

https://it-freelancer.tistory.com/143

 

[Adp 실기 기출 풀이] 25회 시계열 문제 (풀이중)

9월 25일 26회 시험을 준비하고 있습니다. 25회 기출 문제 중 시계열 문제를 재구성하여 풀어보려고 합니다. 문제 다음은 2001년 1월부터 20년간 한국 방문 해외관광객 수(visistors)를 월별로 기록한 25

it-freelancer.tistory.com

 

문제

 

다음은 2001년 1월부터 20년간 한국 방문 해외관광객 수(visistors)를 월별로 기록한 252 개 데이터이다

 

1. 주어진 데이터에 대해서 EDA 하시오(5점)
2. 주어진 데이터에 대해 전처리하시오(5점)
3. 시계열 예측 모형을 수립하라(15점)
4. 수립한 모델을 평가하고 활용 의견을 기술하라(5점)

 

 

풀이

1. EDA 하면서 필요한 내용 : 결측치, 불균형 여부, 어느 한쪽으로 쏠려있는지 등을 판단

1.1 코드를 통해 푸는 방법

- summary 함수를 통해 데이터의 결측치를 본다. class가 있다면 불균형이 있는지 파악한다.

- hist 함수로 데이터의 분포를 본다. ggplot() + geom_histogram() 도 시각화에 좋다

- plot(data)로 변수간의 상관성이 있는지 확인한다.

 

++(내가 참고한 내용)

시계열 데이터인 경우 그래프를 보고 분산이나 평균이 커지는 것을 확인하면 더 좋다.

이후 차분할때 유용하게 활용될 수 있음!

 

2.

2.1 결측치가 있는 경우 : 중앙값으로 대체한다. 또는 산술평균값으로 대체한다. class의 경우에는 많은쪽으로 대체하는 것이 일반적임

 

(참고한 내용)

이번 데이터는 time series 데이터이므로 단순히 평균으로 대체하면 위험할 수 있다. 앞 뒤 두 값의 평균을 내거나, 계절성이 있다면 앞 뒤로 같은 월을 조사해서 넣는 것이 바람직해보임 

 

 

3. 시계열 예측 모형을 만드는 방법은 ARIMA 방법이 있음. ARIMA 모델은 AR과 MA 모델을 합친 것으로 시계열 예측에서 널리 쓰이는 모형임. ARIMA 모델을 만들때는 p, d, q 값을 정해줘야하는데 이는 acf, pacf 값을 보고 정하는 방법과 AIC, AICc, BIC 값을 기준으로 정하는 방법이 있다.

 

이번에는 auto.arima 함수를 써서 데이터의 p, d, q 값을 정해주자. 데이터가 계절성이 있어보이기때문에 seasonal = TRUE로 해야한다.

 

4.

수립한 모델을 평가하기위해 뒤에 2년을 빼고 학습하는 방법이 있다. TRAIN, TEST 데이터를 나눠서 TEST 데이터는 모델 평가에만 활용한다. TEST 데이터에서 RMSE를 계산 또는 그래프를 그려서 확인하는 방법이 있다. 아니면 비교를 위해 RNN 계열의 딥러닝으로 모델을 만들어보고 성능을 비교하는 방법도 있으나 분석 시간이 제한되어 실제로 하기엔 어려울 것 같다. 언급하는게 점수에 도움이 될지는 의문...;