설명
N-BEATS는 단변량 시계열 예측을 위해 특별히 설계된 정교한 신경망 기반 모델입니다. Element AI에서 시작된 ServiceNow Research의 중요한 기여를 나타냅니다. 이 프로젝트는 N-BEATS 알고리즘의 강력한 구현을 제공하여 연구원 및 실무자가 관련 논문에서 제시된 실험 결과를 재현할 수 있도록 하는 것을 목표로 합니다.
더 읽기
이 리포지토리는 쉬운 접근 및 사용을 위해 구성되었습니다. N-BEATS 모델의 핵심 PyTorch 구현은 `models/nbeats.py` 파일에서 찾을 수 있습니다. 데이터 처리를 위해 논문에서 사용된 다양한 데이터셋에 대한 데이터셋 로더는 `datasets/*.py` 디렉토리에 있습니다. `experiments/*` 디렉토리에는 논문의 결과를 재현하는 데 필요한 실험 설정이 포함되어 있으며, 각 디렉토리에는 학습 및 예측 로직을 위한 `main.py` 스크립트와 일반 및 해석 가능한 모델 변형 모두에 대한 구성 파일이 포함되어 있습니다.
결과 및 성능 지표는 `notebooks` 디렉토리에 문서화되어 있으며, 각 실험에 대한 전용 노트북이 있습니다. 이 노트북들은 최종 점수와 다양한 앙상블 크기에 대한 효과에 대한 통찰력을 보여주며, 작은 앙상블이 종종 큰 앙상블과 유사한 결과를 산출한다는 점에 주목합니다. 이 구현은 원본 N-BEATS의 '더 가벼운' 버전으로 설명되며, 일반적으로 동일한 최첨단 수준의 성능을 제공하며 결과에 가끔 변동이 있습니다.
이 프로젝트는 Docker를 통해 재현성을 강조하여 NVIDIA GPU가 있거나 없는 사용자도 접근할 수 있도록 합니다. `Makefile`은 Docker 이미지를 초기화하고, 데이터셋을 다운로드하고, 테스트를 실행하고, 실험을 빌드하고, CPU 및 GPU 모두에서 예측을 실행하기 위한 명령을 제공합니다. 환경 설정, Docker 이미지 빌드, 데이터셋 다운로드, 반복 및 룩백 기간과 같은 사용자 정의 가능한 매개변수를 사용한 실험 실행에 대한 자세한 지침이 제공됩니다. 로그, 손실, 스냅샷 및 최종 예측을 포함한 실험 결과는 `storage/experiments` 디렉토리에 저장됩니다.
N-BEATS는 시계열 분석, 예측 및 예측 모델링에 관련된 데이터 과학자, 머신러닝 엔지니어 및 연구원에게 특히 유용합니다. 해석 가능한 특성과 최첨단 성능은 다양한 도메인에서 단변량 데이터의 미래 추세를 이해하고 예측하는 강력한 도구입니다.
- 카테고리AI 모델 및 LLM
- 요금제오픈소스
- 배포클라우드, 셀프 호스팅
- 플랫폼Linux, macOS, Windows
N-BEATS의 핵심 기능
단변량 시계열 예측을 위한 신경망 기반 모델
N-BEATS 알고리즘 구현
재현 가능한 실험 결과
PyTorch 구현 제공
다양한 데이터셋을 위한 데이터셋 로더
일반 및 해석 가능한 모델을 위한 구성 파일
환경 설정을 위한 Docker 지원
CPU 및 GPU 실행 지원
재현을 위한 자세한 지침
실험 로그, 손실 및 예측을 위한 저장소
N-BEATS 시작하기
환경 설정: Docker가 설치되었는지 확인하고 환경에 맞게 Makefile을 조정하십시오.
Docker 이미지 빌드: `make init`을 실행하여 Docker 이미지를 빌드하십시오.
데이터셋 다운로드: `make dataset`을 실행하여 필요한 데이터셋을 다운로드하십시오.
실험 빌드: `make build config=<path_to_config.gin>`을 사용하여 실험 구성을 생성하십시오.
실험 실행: CPU의 경우 `make run command=<path_to_command>` 또는 GPU의 경우 `make run command=<path_to_command> gpu=<gpu-id>`를 사용하십시오.
실험 통계 가져오기: `make notebook port=<port>`를 통해 JupyterLab 노트북을 실행하여 성능을 분석하십시오.
N-BEATS의 사용 사례
- 시계열 예측
- 예측 분석
- 수요 예측
- 금융 예측
- 자원 계획








