논문 리뷰

[논문 리뷰] Meta의 Neural Prophet, NeuralProphet: Explainable Forecasting at Scale

AIstarter 2025. 3. 12. 22:13

[2111.15397] NeuralProphet: Explainable Forecasting at Scale

 

NeuralProphet: Explainable Forecasting at Scale

We introduce NeuralProphet, a successor to Facebook Prophet, which set an industry standard for explainable, scalable, and user-friendly forecasting frameworks. With the proliferation of time series data, explainable forecasting remains a challenging task

arxiv.org

 

오늘 다룰 논문은 Meta에서 공개한 Nerual Prophet이라는 시계열 예측 모델입니다.

NeuralProphet

 

NeuralProphet

Explainable Forecasting at Scale NeuralProphet bridges the gap between traditional time-series models and deep learning methods. It's based on PyTorch and can be installed using pip. GitHub

neuralprophet.com

해당 링크에서 paper에 접속할 수 있으며, 직접 GitHub코드를 확인할 수 있습니다.

직접 시행하고 싶은 경우 tutorial을 GitHub에서 제공하므로 참고 부탁드립니다:)

 

요약

한 마디로 정리하자면, “PyTorch 기반의 사용자 친화적이고 해석 가능한 시계열 예측 도구"입니다.

모델링의 경우, 전문 지식이 필요한 전문가의 영역이였는데,
본 논문을 통해 해당 해석 가능한 모델을 사용한 친화적인 시계열 예측 프레임워크를 제안합니다.
선행 모델인 Facebook Prophet의 해석 가능성과 사용자 친화성을 유지하면서,
신경망 기술을 통해 예측 정확도를 크게 향상시킨 확장 가능한 시계열 예측 프레임워크입니다.
 

시계열 데이터

- 시계열 데이터는 위의 그림과 같이, trend가 존재하기도 하고, yearly/weekly/daily cycle처럼 계절성을 지니기도 하고, outlier들이 존재하기도 하는 복잡한 구조들을 가지고 있습니다.

 

이러한 특성들을 고려한 시계열 예측 프레임워크인 Prophet이 제안되었으며, 

본 논문에서는 이를 더욱 발전시킨 Neural Prophet을 소개합니다.

기존 모델: Prophet

- Prophet의 모형은 트렌드(growth), 계절성(seasonality), 휴일(holidays) 3가지의 main components로 이루어집니다.

- g(t): 비주기적 변화를 반영하는 추세 함수
- s(t): 주기적인 변화(ex, 주간/연간)
- h(t): 휴일(불규칙 이벤트)의 영향력
- 오차항 ϵt: 모형이 설명하지 못하는 나머지 부분

 

각 요소는 별도의 모델로 사용하고 싶은 것을 선택하여 사용하면 됩니다.

이러한 특징 덕분에

(유연성) 새롭게 분해하고 새로운 요소를 추가하기가 쉬우며, 

다른 시계열 모형과 달리 시간에 종속적인 구조를 가지지 않고, curve-fitting으로 예측 문제를 해결합니다.

 

제안 모델: Neural Prophet

- 구성요소: 트렌드(Trend), 계절성(seasonality), 휴일(Events & holidays) + 회귀효과(Future Regressor, Auto-Regression, Lagged Regressors)

- 기존 Prophet에서 Regression이 추가된 형태

T(t) : 시점 t에서의 트렌드 (Default)

S(t) : 시점 t에서의 계절적 효과 (Default)

E(t) : 시점 t에서의 이벤트 및 휴일 효과

F(t) : 시점 t에서 미래에 알려진 외부 변수에 대한 회귀 효과

A(t) : 시점 t에서의 자동회귀 효과 (과거 자료 기반) -AR

L(t) : 시점 t에서의 외부 변수의 지연된 관측에 대한 회귀 효과

→  Prophet과 마찬가지로 각 모델은 예측에 대해 독립적으로 기여하며, 개별적으로 해석 가능합니다. 
(각 요소가 예측에 미치는 영향을 시각적으로 확인 가능합니다.)

 

데이터 전처리

결측치 처리

1) 양방향 선형 보간(각 방향으로 최대 5개의 결측치에 대해 시행누락된 값이 10개이상인경우 NaN으로 유지

2) 남은 NaN에 대해 30일 이동평균을 기준으로 최대 20개의 연속된 누락된 값을 채워 넣기

3) 만약, 30개이상의 값이 연속으로 결측치인 경우에는 삭제를 진행

 

데이터 정규화

- 시계열에 적용할 정규화 유형을 설정하기 가능: Default : soft / 시계열 값이 이진값이면 minmax로 진행

 

Tabularization

- SGD 기반 훈련에 필요한 가상의 독립적동일 분포의 데이터 세트로의 변환 
- 시계열 데이터를 표로 생성
 

학습

Loss Function

- beta 아래에서는 MSE를 사용하고, 그 외는 MAE와 동일한 손실함수를 사용한다.

Regularization

Optimizer

-SGD optimizer을 사용한다

 

 

실험 결과