데이터분석/분석-지도학습

시계열 회귀분석 과정

씩씩한 IT블로그 2020. 12. 23. 15:29
반응형

아래와 같은 process를 가지는 시계열 회귀분석 및 머신러닝 과정을 정리한다.

 

 

 

1. 변수추출

가용변수들을 이용해서 시간변수를 년, 월, 일, 요일, 시, 분, 초 등으로 분해하거나, 추세,계절성,잔차로 분해하여 파생변수를 만드는 행위

sosoeasy.tistory.com/382

각종 feature engineering후 시계열 회귀분석 하기

각종 feature engineering을 수행한 후 회귀분석을 통해 시계열데이터를 분석해 본다 non_feature engineering과의 차이도 알아본다. 1. 필요한 라이브러리 다운 # Ignore the warnings # 버전이 바뀌었을때 발생..

sosoeasy.tistory.com

 

 

2. 데이터 분할

시계열 데이터를 train set, test set으로 나누기

sosoeasy.tistory.com/373

시계열데이터와 비시계열데이터의 데이터셋 분할하는 법

1. 비시계열데이터 (1) 설명 데이터셋을 보통 (훈련셋:검증셋:테스트셋=6:2:2)로 나눈다. 이때 데이터는 보통 랜덤으로 추출한다. (2) 코드 from sklearn.model_selection import train_test_split # test_set의..

sosoeasy.tistory.com

 

3. 스케일링

과적합 방지 및 최적화 시키기 위해서 스캐일링 수행

sosoeasy.tistory.com/385

스케일링(scaling) 및 인버스스케일링 종류와 코드 (정규화, 역정규화)

스케일링은 컬럼별 단위차이를 줄여서 연산속도를 빠르게 하고 조건수를 줄여서 최적화 성능을 향상시킨다. standar scaler 평균을 빼고 표준편차로 나누는 변환. 각 변수가 정규분포를 따른다는

sosoeasy.tistory.com

 

4. 다중공산성 제거

다중공선성 있는 변수들 확인 및 삭제

 

(1) 다중공선성을 확인하는 condition number

sosoeasy.tistory.com/384

회귀분석에서 조건수(Condition Number)

1. 식 2. 의미 변수들간에 상관성을 나타낸다. 조건수가 낮다 => 변수들이 서로 독립이다 => 오버피팅 할 확률이 낮다. => 오차에 강건하다 조건수가 높다 => 변수들이 서로 상관성이 많다 => 오버피

sosoeasy.tistory.com

 

(2) VIF기법을 이용한 다중공선성 제거

sosoeasy.tistory.com/386

VIF를 이용한 변수선택 (다중공선성 제거)

독립변수간에 상관성이 있으면 과적합되거나 정확한 분석이 되지 않을 수 있다. 따라서 변수들간에 상관성을 확인하고 상관이 있는 변수들은 제거한다. 변수를 제거하는 방법은 VIF, PCA 2가지가

sosoeasy.tistory.com

 

5. 정상성 제거

(1) 정상성의 의미

sosoeasy.tistory.com/387

시계열에서 정상성의 의미

1. 의미 정상성(Stationarity Process)이란? => 평균, 분산, 공분산 및 기타 모든 분포적 특성이 일정함을 의미. 시계열이 정상적이다? => 시간의 흐름에 따라 "통계적 특성(평균, 분산, 공분산)"이 변하지

sosoeasy.tistory.com

 

(2) 정상성 테스트 및 정상성 제거

sosoeasy.tistory.com/392

정상성 테스트 및 비정상성 제거 실습

0. 정상성의 의미 정상성의 의미와 예시에 대해서 아래의 글에 정리했다. sosoeasy.tistory.com/387 평균, 분산, 공분산 및 기타 모든 분포적 특성이 일정함을 의미. 시계열이 정상적이다? => 시간의 흐름

sosoeasy.tistory.com

 

6. 전통적 회귀분석 (OLS)

OLS기법을 이용하여 선형회귀분석 수행

(1. feature engineering 에서 링크한 글 참조)

 

7. 정규화 회귀분석

sosoeasy.tistory.com/389

정규화 선형회귀 릿지(ridge), 라쏘(lasso), elastic net

0. 정규화 선형회귀? (1) 선형회귀 계수(Weight)에 대한 제약 조건을 추가함으로써 모형이 과도하게 최적화되는 현상인 과최적화를 막는 방법 (2) 계수의 크기가 커지면 과적합됨. => 계수의 크기를

sosoeasy.tistory.com

 

8. 앙상블 기법

sosoeasy.tistory.com/390

앙상블기법 배깅(bagging)과 부스팅(boosting)

0. 앙상블 머신러닝에서 여러개의 모델을 학습시켜 모델의 예측결과를 이용해 하나의 모델보다 더 나은 값을 예측하는것 1. 배깅(bagging) 높은 variance를 낮추는 것 (과적합 된 모델을 샘플링을 통

sosoeasy.tistory.com

 

9. SARIMAX

(1) AR, MA, ARMA, ARMAX

sosoeasy.tistory.com/394

AR, MA, ARMA, ARMAX

시계열 회귀분석의 종류인 AR, MA, ARMA 분석에 대해서 알아보고 실습을 진행해 본다. 1. AR, MA (1) AR(p) model Y_t가 Y_t의 p기 이전까지의 값에 의해 설명되는 모델 (2) MA(q) model Y_t가 현재영향(e_t)으로..

sosoeasy.tistory.com

 

(2) ARIMA

sosoeasy.tistory.com/395

적분선형확률과정 ARIMA

 1. ARIMA 분석 ARMA분석은 데이터에 추세가 있고 이 추세를 없애기 위해 ARMA에 (추세)차분을 추가로 적용한 상태를 말한다. (ARIMA = ARMA+차분) 즉 ARIMA(p,d,q)모델은 Y_t대신 (1-L)^d*Y_t 가 대입된 형태이..

sosoeasy.tistory.com

 

(2) SARIMA

sosoeasy.tistory.com/397

SARIMAX

1. SARIMAX의 의미 ARIMAX 모형에서 계절성 패턴을 추가한 모델. trend에 대하여 ARIMA를 수행하고, 계절성에 대해서 추가적으로 ARIMA를 수행한것으로 해석하면 된다. 2. 파라미터 (1) 파라미터 설명 총 7

sosoeasy.tistory.com

 

10. Prophet 라이브러리

sosoeasy.tistory.com/398

fbprophet 라이브러리를 이용한 시계열 분석

페이스북에서 개발한 fbprophet을 이용하여 시계열 분석을 수행한다. 1. 필요 라이브러리 임포트 import timeit start = timeit.default_timer() from fbprophet import Prophet from fbprophet.plot import plot_..

sosoeasy.tistory.com

 

11.검증지표

회귀분석 수행 후 오차 및 독립변수별 종속변수에 대한 설명력을 확인

<example>

 

 

 

12.잔차진단

잔차를 분석하여 결과에 대한 신뢰도를 확인

sosoeasy.tistory.com/383

 

* 출처 : 패스트캠퍼스 파이썬을 활용한 시계열 데이터분석 A-Z

반응형