
시계열 데이터에 대한 사용자 친화적인 예측 및 이상 탐지를 위한 Python 라이브러리입니다.

Darts는 시계열에 대한 사용자 친화적인 예측 및 이상 탐지를 위한 Python 라이브러리입니다.
ARIMA와 같은 고전적인 모델부터 심층 신경망까지 다양한 모델을 포함합니다.
예측 모델은 모두 scikit-learn과 유사하게 fit() 및 predict() 함수를 사용하여 동일한 방식으로 사용할 수 있습니다.
이 라이브러리는 또한 모델을 백테스트하고, 여러 모델의 예측을 결합하며, 외부 데이터를 고려하는 것을 쉽게 만듭니다.
Darts는 단변량 및 다변량 시계열과 모델을 모두 지원합니다.
ML 기반 모델은 여러 시계열을 포함하는 잠재적으로 큰 데이터셋에서 훈련할 수 있으며, 일부 모델은 확률적 예측에 대한 풍부한 지원을 제공합니다.
Darts는 또한 광범위한 이상 탐지 기능을 제공합니다. 예를 들어, PyOD 모델을 시계열에 적용하여 이상 점수를 얻거나, Darts의 예측 또는 필터링 모델을 래핑하여 완전한 기능을 갖춘 이상 탐지 모델을 얻는 것은 매우 간단합니다.
프로젝트를 위해 좋아하는 도구(conda, venv, virtualenv 또는 virtualenvwrapper 유무에 관계없이)를 사용하여 Python 3.10+로 깨끗한 Python 환경을 먼저 설정하는 것을 권장합니다.
환경이 설정되면 pip를 사용하여 darts를 설치할 수 있습니다:
pip install darts
자세한 내용은 설치 지침을 참조하세요.
Pandas DataFrame에서 TimeSeries 객체를 생성하고, 이를 훈련/검증 시리즈로 분할합니다:```python
import pandas as pd
from darts import TimeSeries
df = pd.read_csv("AirPassengers.csv", delimiter=",")
series = TimeSeries.from_dataframe(df, "Month", "#Passengers")
train, val = series[:-36], series[-36:]
지수 평활 모델을 적합시키고, 검증 시계열 기간에 대한 (확률적) 예측을 수행합니다:```python
from darts.models import ExponentialSmoothing
model = ExponentialSmoothing()
model.fit(train)
prediction = model.predict(len(val), num_samples=1000)
중앙값, 5번째 및 95번째 백분위수를 플롯합니다:```python import matplotlib.pyplot as plt
series.plot() prediction.plot(label="forecast", low_quantile=0.05, high_quantile=0.95) plt.legend()
<div style="text-align:center;">
<img src="https://raw.githubusercontent.com/unit8co/darts/master/static/images/example.png" alt="darts forecast example" />
</div>
### 이상 탐지
다변량 시계열을 로드하고, 이를 잘라내고, 2개의 구성 요소를 유지하고, 학습 및 검증 세트로 분할합니다:```python
from darts.datasets import ETTh2Dataset
series = ETTh2Dataset().load()[:10000][["MUFL", "LULL"]]
train, val = series.split_before(0.6)
k-평균 이상치 스코어러를 구축하고, 훈련 세트로 학습시킨 뒤 검증 세트에 적용하여 이상치 점수를 얻습니다:```python from darts.ad import KMeansScorer
scorer = KMeansScorer(k=2, window=5) scorer.fit(train) anom_score = scorer.score(val)
이진 이상 탐지기를 구축하고 훈련 점수로 학습시킨 다음,
검증 점수에 적용하여 이진 이상 분류 결과를 얻습니다:```python
from darts.ad import QuantileDetector
detector = QuantileDetector(high_quantile=0.99)
detector.fit(scorer.score(train))
binary_anom = detector.detect(anom_score)
Plot(일부 시리즈를 이동 및 크기 조정하여 모든 것이 동일한 그림에 나타나도록 함):```python import matplotlib.pyplot as plt
series.plot() (anom_score / 2. - 100).plot(label="computed anomaly score", c="orangered", lw=3) (binary_anom * 45 - 150).plot(label="detected binary anomaly", lw=4)
<div style="text-align:center;">
<img src="https://raw.githubusercontent.com/unit8co/darts/master/static/images/example_ad.png" alt="darts 이상 탐지 예시" />
</div>
## 기능
* **예측 모델:** 회귀 및 분류 작업을 위한 방대한 예측 모델 컬렉션; 통계 모델(예: ARIMA)부터 딥러닝 모델(예: N-BEATS)까지 다양합니다. 아래의 [예측 모델](#forecasting-models)을 참조하세요.
* **이상 탐지:** `darts.ad` 모듈에는 다양한 이상 점수 계산기(scorer), 탐지기(detector), 집계기(aggregator)가 포함되어 있으며, 이를 모두 결합하여 시계열의 이상을 탐지할 수 있습니다. Darts의 예측 또는 필터링 모델을 간단히 래핑하여 예측값과 실제값을 비교하는 완전한 이상 탐지 모델을 구축하기 쉽습니다. `PyODScorer`를 사용하면 시계열에 PyOD 탐지기를 손쉽게 적용할 수 있습니다.
* **다변량 지원:** `TimeSeries`는 다변량일 수 있습니다. 즉, 단일 스칼라 값 대신 여러 개의 시간에 따라 변하는 차원/열을 포함할 수 있습니다. 많은 모델이 다변량 시계열을 소비하고 생성할 수 있습니다.
* **다중 시계열 학습(글로벌 모델):** 모든 머신러닝 기반 모델(모든 신경망 포함)은 여러 개의 (잠재적으로 다변량인) 시계열로 학습할 수 있습니다. 이는 대규모 데이터셋으로도 확장할 수 있습니다.
* **확률적 지원:** `TimeSeries` 객체는 (선택적으로) 확률적 시계열을 나타낼 수 있습니다. 예를 들어 신뢰 구간을 얻는 데 사용할 수 있으며, 많은 모델이 다양한 확률적 예측 방식(모수적 분포 또는 분위수 추정 등)을 지원합니다. 일부 이상 탐지 점수 계산기는 이러한 예측 분포를 활용할 수도 있습니다.
* **순응 예측(Conformal Prediction) 지원:** 순응 예측 모델을 사용하면 사전 학습된 글로벌 예측 모델에 대해 보정된 분위수 구간을 갖는 확률적 예측을 생성할 수 있습니다.
* **과거 및 미래 공변량 지원:** Darts의 많은 모델은 예측 생성을 위한 입력으로 과거 관측 및/또는 미래 알려진 공변량(외부 데이터) 시계열을 지원합니다.
* **정적 공변량 지원:** 시간 의존적 데이터 외에도 `TimeSeries`는 각 차원에 대한 정적 데이터를 포함할 수 있으며, 일부 모델에서 이를 활용할 수 있습니다.
* **계층적 조정(Hierarchical Reconciliation):** Darts는 조정을 수행하기 위한 변환기를 제공합니다. 이를 통해 예측값이 기본 계층 구조를 존중하는 방식으로 합산되도록 할 수 있습니다.
* **회귀 모델:** scikit-learn 호환 모델을 플러그인하여 목표 시계열과 공변량의 지연(lagged) 값의 함수로 예측을 얻을 수 있습니다.
* **표본 가중치 학습:** 모든 글로벌 모델은 표본 가중치를 사용한 학습을 지원합니다. 각 관측치, 예측 시간 단계 및 목표 열에 적용할 수 있습니다.
* **예측 시작 이동(Forecast Start Shifting):** 모든 글로벌 모델은 이동된 출력 창에서 학습 및 예측을 지원합니다. 이는 예를 들어 당일 시장(Day-Ahead Market) 예측이나 공변량(또는 목표 시계열)이 지연되어 보고되는 경우에 유용합니다.
* **설명 가능성:** Darts는 SHAP 값을 사용하여 일부 예측 모델을 *설명*할 수 있는 기능을 제공합니다.
* **데이터 처리:** 시계열 데이터에 일반적인 변환(스케일링, 결측값 채우기, 차분, boxcox 등)을 쉽게 적용(및 되돌리기)할 수 있는 도구
* **지표:** 시계열의 적합도를 평가하기 위한 다양한 지표; R2 점수부터 평균 절대 스케일 오차(Mean Absolute Scaled Error)까지 다양합니다.
* **백테스팅:** 이동 시간 창을 사용하여 과거 예측을 시뮬레이션하는 유틸리티.
* **PyTorch Lightning 지원:** 모든 딥러닝 모델은 PyTorch Lightning으로 구현되어 있으며, 사용자 정의 콜백, GPU/TPU 학습 및 사용자 정의 트레이너 등을 지원합니다.
* **MLflow 통합:** Darts 예측 모델 실험의 자동 추적, 비교 및 저장을 위한 MLflow 통합. 예시는 [MLflow 퀵스타트 노트북](https://unit8co.github.io/darts/examples/29-MLflow-examples.html)을 참조하세요.
* **필터링 모델:** Darts는 `KalmanFilter`, `GaussianProcessFilter`, `MovingAverageFilter`의 세 가지 필터링 모델을 제공하며, 이를 통해 시계열을 필터링하고 경우에 따라 기본 상태/값에 대한 확률적 추론을 얻을 수 있습니다.
* **데이터셋:** `darts.datasets` 하위 모듈에는 빠르고 재현 가능한 실험을 위한 인기 있는 시계열 데이터셋이 포함되어 있습니다.
* **다중 백엔드 호환성:** `TimeSeries` 객체는 pandas, polars, numpy, pyarrow, xarray 등 다양한 백엔드에서 생성 및 내보낼 수 있어 다양한 데이터 처리 라이브러리와의 원활한 통합을 지원합니다.
## 예측 모델
다음은 Darts에 현재 구현된 예측 모델의 분류입니다. 이 제품군에는 각각 특정 예측 작업에 맞춰진 회귀 및 분류 모델이 모두 포함됩니다. 예측 기능을 향상시키기 위해 새로운 모델과 기능을 지속적으로 추가하고 있습니다.
**회귀 모델:** 회귀 모델은 연속적인 수치 값을 예측하도록 설계되어 시계열 데이터의 미래 추세와 패턴을 예측하는 데 이상적입니다. 이러한 모델을 활용하여 과거 데이터를 기반으로 잠재적인 미래 결과에 대한 통찰력을 얻을 수 있습니다.| 모델 | 출처 | 대상 시계열 지원:<br/><br/>단변량/<br/>다변량 | 공변량 지원:<br/><br/>과거 관측/<br/>미래 알려짐/<br/>정적 | 확률적 예측:<br/><br/>샘플링/<br/>분포 파라미터 | 여러 시계열에 대한 훈련 및 예측 |
|--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|--------------------------------------------------------------|--------------------------------------------------------------------------|--------------------------------------------------------------------------|-------------------------------------------|
| **기준 모델**<br/>([LocalForecastingModel](https://unit8co.github.io/darts/userguide/covariates.html#local-forecasting-models-lfms)) | | | | | |
| [NaiveMean](https://unit8co.github.io/darts/generated_api/darts.models.forecasting.baselines.html#darts.models.forecasting.baselines.NaiveMean) | | ✅ ✅ | 🔴 🔴 🔴 | 🔴 🔴 | 🔴 |
| [NaiveSeasonal](https://unit8co.github.io/darts/generated_api/darts.models.forecasting.baselines.html#darts.models.forecasting.baselines.NaiveSeasonal) | | ✅ ✅ | 🔴 🔴 🔴 | 🔴 🔴 | 🔴 |
| [NaiveDrift](https://unit8co.github.io/darts/generated_api/darts.models.forecasting.baselines.html#darts.models.forecasting.baselines.NaiveDrift) | | ✅ ✅ | 🔴 🔴 🔴 | 🔴 🔴 | 🔴 |
| [NaiveMovingAverage](https://unit8co.github.io/darts/generated_api/darts.models.forecasting.baselines.html#darts.models.forecasting.baselines.NaiveMovingAverage) | | ✅ ✅ | 🔴 🔴 🔴 | 🔴 🔴 | 🔴 |
| **통계 / 고전 모델**<br/>([LocalForecastingModel](https://unit8co.github.io/darts/userguide/covariates.html#local-forecasting-models-lfms)) | | | | | |
| [ARIMA](https://unit8co.github.io/darts/generated_api/darts.models.forecasting.arima.html#darts.models.forecasting.arima.ARIMA) | | ✅ 🔴 | 🔴 ✅ 🔴 | ✅ 🔴 | 🔴 |
| [VARIMA](https://unit8co.github.io/darts/generated_api/darts.models.forecasting.varima.html#darts.models.forecasting.varima.VARIMA) | | 🔴 ✅ | 🔴 ✅ 🔴 | ✅ 🔴 | 🔴 |
| [ExponentialSmoothing](https://unit8co.github.io/darts/generated_api/darts.models.forecasting.exponential_smoothing.html#darts.models.forecasting.exponential_smoothing.ExponentialSmoothing) | | ✅ 🔴 | 🔴 🔴 🔴 | ✅ 🔴 | 🔴 |
| [Theta](https://unit8co.github.io/darts/generated_api/darts.models.forecasting.theta.html#darts.models.forecasting.theta.Theta) 및 [FourTheta](https://unit8co.github.io/darts/generated_api/darts.models.forecasting.theta.html#darts.models.forecasting.theta.FourTheta) | [Theta 논문](https://robjhyndman.com/papers/Theta.pdf) 및 [4 Theta 소스](https://github.com/Mcompetitions/M4-methods/blob/master/4Theta%20method.R) | ✅ 🔴 | 🔴 🔴 🔴 | 🔴 🔴 | 🔴 |
| [Prophet](https://unit8co.github.io/darts/generated_api/darts.models.forecasting.prophet_model.html#darts.models.forecasting.prophet_model.Prophet) | [Prophet 저장소](https://github.com/facebook/prophet) | ✅ 🔴 | 🔴 ✅ 🔴 | ✅ 🔴 | 🔴 |
| [FFT](https://unit8co.github.io/darts/generated_api/darts.models.forecasting.fft.html#darts.models.forecasting.fft.FFT) (고속 푸리에 변환) | | ✅ 🔴 | 🔴 🔴 🔴 | 🔴 🔴 | 🔴 |
| [KalmanForecaster](https://unit8co.github.io/darts/generated_api/darts.models.forecasting.kalman_forecaster.html#darts.models.forecasting.kalman_forecaster.KalmanForecaster) — 시스템 식별을 위해 칼만 필터 및 N4SID 사용 | [N4SID 논문](https://people.duke.edu/~hpgavin/SystemID/References/VanOverschee-Automatica-1994.pdf) | ✅ ✅ | 🔴 ✅ 🔴 | ✅ 🔴 | 🔴 |
| [TBATS](https://unit8co.github.io/darts/generated_api/darts.models.forecasting.sf_tbats.html#darts.models.forecasting.sf_tbats.TBATS) | [TBATS 논문](https://robjhyndman.com/papers/ComplexSeasonality.pdf) | ✅ 🔴 | 🔴 ✅ 🔴 | ✅ ✅ | 🔴 |
| [Croston](https://unit8co.github.io/darts/generated_api/darts.models.forecasting.sf_croston.html#darts.models.forecasting.sf_croston.Croston) 방법 | | ✅ 🔴 | 🔴 ✅ 🔴 | ✅ ✅ | 🔴 |
| [StatsForecastModel](https://unit8co.github.io/darts/generated_api/darts.models.forecasting.sf_model.html#darts.models.forecasting.sf_model.StatsForecastModel) — 모든 [StatsForecast](https://nixtlaverse.nixtla.io/statsforecast/index.html#models) 모델을 감싸는 래퍼 | [Nixtla의 statsforecast](https://github.com/Nixtla/statsforecast) | ✅ 🔴 | 🔴 ✅ 🔴 | ✅ ✅ | 🔴 |
| [AutoARIMA](https://unit8co.github.io/darts/generated_api/darts.models.forecasting.sf_auto_arima.html#darts.models.forecasting.sf_auto_arima.AutoARIMA) | [Nixtla의 statsforecast](https://github.com/Nixtla/statsforecast) | ✅ 🔴 | 🔴 ✅ 🔴 | ✅ ✅ | 🔴 |
| [AutoETS](https://unit8co.github.io/darts/generated_api/darts.models.forecasting.sf_auto_ets.html#darts.models.forecasting.sf_auto_ets.AutoETS) | [Nixtla의 statsforecast](https://github.com/Nixtla/statsforecast) | ✅ 🔴 | 🔴 ✅ 🔴 | ✅ ✅ | 🔴 |
| [AutoCES](https://unit8co.github.io/darts/generated_api/darts.models.forecasting.sf_auto_ces.html#darts.models.forecasting.sf_auto_ces.AutoCES) | [Nixtla의 statsforecast](https://github.com/Nixtla/statsforecast) | ✅ 🔴 | 🔴 ✅ 🔴 | ✅ ✅ | 🔴 |
| [AutoMFLES](https://unit8co.github.io/darts/generated_api/darts.models.forecasting.sf_auto_mfles.html#darts.models.forecasting.sf_auto_mfles.AutoMFLES) | [Nixtla의 statsforecast](https://github.com/Nixtla/statsforecast) | ✅ 🔴 | 🔴 ✅ 🔴 | ✅ ✅ | 🔴 |
| [AutoTBATS](https://unit8co.github.io/darts/generated_api/darts.models.forecasting.sf_auto_tbats.html#darts.models.forecasting.sf_auto_tbats.AutoTBATS) | [Nixtla의 statsforecast](https://github.com/Nixtla/statsforecast) | ✅ 🔴 | 🔴 ✅ 🔴 | ✅ ✅ | 🔴 |
| [AutoTheta](https://unit8co.github.io/darts/generated_api/darts.models.forecasting.sf_auto_theta.html#darts.models.forecasting.sf_auto_theta.AutoTheta) | [Nixtla의 statsforecast](https://github.com/Nixtla/statsforecast) | ✅ 🔴 | 🔴 ✅ 🔴 | ✅ ✅ | 🔴 |
| [MultivariateModel](https://unit8co.github.io/darts/generated_api/darts.models.forecasting.multivariate_model.html#darts.models.forecasting.multivariate_model.MultivariateModel) | | ✅ ✅ | 🔴 ✅ 🔴 | ✅ ✅ | 🔴 |
| **글로벌 기준 모델**<br/>([GlobalForecastingModel](https://unit8co.github.io/darts/userguide/covariates.html#global-forecasting-models-gfms)) | | | | | |
| [GlobalNaiveAggregate](https://unit8co.github.io/darts/generated_api/darts.models.forecasting.global_baseline_models.html#darts.models.forecasting.global_baseline_models.GlobalNaiveAggregate) | | ✅ ✅ | 🔴 🔴 🔴 | 🔴 🔴 | ✅ |
| [GlobalNaiveDrift](https://unit8co.github.io/darts/generated_api/darts.models.forecasting.global_baseline_models.html#darts.models.forecasting.global_baseline_models.GlobalNaiveDrift) | | ✅ ✅ | 🔴 🔴 🔴 | 🔴 🔴 | ✅ |
| [GlobalNaiveSeasonal](https://unit8co.github.io/darts/generated_api/darts.models.forecasting.global_baseline_models.html#darts.models.forecasting.global_baseline_models.GlobalNaiveSeasonal) | | ✅ ✅ | 🔴 🔴 🔴 | 🔴 🔴 | ✅ |
| **회귀 모델**<br/>([GlobalForecastingModel](https://unit8co.github.io/darts/userguide/covariates.html#global-forecasting-models-gfms)) | | | | | |
| [SKLearnModel](https://unit8co.github.io/darts/generated_api/darts.models.forecasting.sklearn_model.html#darts.models.forecasting.sklearn_model.SKLearnModel): 모든 scikit-learn 계열 회귀 모델을 감싸는 래퍼 | | ✅ ✅ | ✅ ✅ ✅ | 🔴 🔴 | ✅ |
| [LinearRegressionModel](https://unit8co.github.io/darts/generated_api/darts.models.forecasting.linear_regression_model.html#darts.models.forecasting.linear_regression_model.LinearRegressionModel) | | ✅ ✅ | ✅ ✅ ✅ | ✅ ✅ | ✅ |
| [RandomForestModel](https://unit8co.github.io/darts/generated_api/darts.models.forecasting.random_forest.html#darts.models.forecasting.random_forest.RandomForestModel) | | ✅ ✅ | ✅ ✅ ✅ | 🔴 🔴 | ✅ |
| [CatBoostModel](https://unit8co.github.io/darts/generated_api/darts.models.forecasting.catboost_model.html#darts.models.forecasting.catboost_model.CatBoostModel) | | ✅ ✅ | ✅ ✅ ✅ | ✅ ✅ | ✅ |
| [LightGBMModel](https://unit8co.github.io/darts/generated_api/darts.models.forecasting.lgbm.html#darts.models.forecasting.lgbm.LightGBMModel) | | ✅ ✅ | ✅ ✅ ✅ | ✅ ✅ | ✅ |
| [XGBModel](https://unit8co.github.io/darts/generated_api/darts.models.forecasting.xgboost.html#darts.models.forecasting.xgboost.XGBModel) | | ✅ ✅ | ✅ ✅ ✅ | ✅ ✅ | ✅ |
| **PyTorch (Lightning) 기반 모델**<br/>([GlobalForecastingModel](https://unit8co.github.io/darts/userguide/covariates.html#global-forecasting-models-gfms)) | | | | | |
| [RNNModel](https://unit8co.github.io/darts/generated_api/darts.models.forecasting.rnn_model.html#darts.models.forecasting.rnn_model.RNNModel) (LSTM 및 GRU 포함); 확률적 버전에서는 DeepAR와 동일 | [DeepAR 논문](https://arxiv.org/abs/1704.04110) | ✅ ✅ | 🔴 ✅ 🔴 | ✅ ✅ | ✅ |
| [BlockRNNModel](https://unit8co.github.io/darts/generated_api/darts.models.forecasting.block_rnn_model.html#darts.models.forecasting.block_rnn_model.BlockRNNModel) (LSTM 및 GRU 포함) | | ✅ ✅ | ✅ ✅ ✅ | ✅ ✅ | ✅ |
| [NBEATSModel](https://unit8co.github.io/darts/generated_api/darts.models.forecasting.nbeats.html#darts.models.forecasting.nbeats.NBEATSModel) | [N-BEATS 논문](https://arxiv.org/abs/1905.10437) | ✅ ✅ | ✅ 🔴 🔴 | ✅ ✅ | ✅ |
| [NHiTSModel](https://unit8co.github.io/darts/generated_api/darts.models.forecasting.nhits.html#darts.models.forecasting.nhits.NHiTSModel) | [N-HiTS 논문](https://arxiv.org/abs/2201.12886) | ✅ ✅ | ✅ 🔴 🔴 | ✅ ✅ | ✅ |
| [TCNModel](https://unit8co.github.io/darts/generated_api/darts.models.forecasting.tcn_model.html#darts.models.forecasting.tcn_model.TCNModel) | [TCN 논문](https://arxiv.org/abs/1803.01271), [DeepTCN 논문](https://arxiv.org/abs/1906.04397), [블로그 게시물](https://medium.com/unit8-machine-learning-publication/temporal-convolutional-networks-and-forecasting-5ce1b6e97ce4) | ✅ ✅ | ✅ 🔴 🔴 | ✅ ✅ | ✅ |
| [TransformerModel](https://unit8co.github.io/darts/generated_api/darts.models.forecasting.transformer_model.html#darts.models.forecasting.transformer_model.TransformerModel) | | ✅ ✅ | ✅ 🔴 🔴 | ✅ ✅ | ✅ |
| [TFTModel](https://unit8co.github.io/darts/generated_api/darts.models.forecasting.tft_model.html#darts.models.forecasting.tft_model.TFTModel) (시간 융합 트랜스포머) | [TFT 논문](https://arxiv.org/pdf/1912.09363.pdf), [PyTorch Forecasting](https://pytorch-forecasting.readthedocs.io/en/latest/models.html) | ✅ ✅ | ✅ ✅ ✅ | ✅ ✅ | ✅ |
| [DLinearModel](https://unit8co.github.io/darts/generated_api/darts.models.forecasting.dlinear.html#darts.models.forecasting.dlinear.DLinearModel) | [DLinear 논문](https://arxiv.org/pdf/2205.13504.pdf) | ✅ ✅ | ✅ ✅ ✅ | ✅ ✅ | ✅ |
| [NLinearModel](https://unit8co.github.io/darts/generated_api/darts.models.forecasting.nlinear.html#darts.models.forecasting.nlinear.NLinearModel) | [NLinear 논문](https://arxiv.org/pdf/2205.13504.pdf) | ✅ ✅ | ✅ ✅ ✅ | ✅ ✅ | ✅ |
| [TiDEModel](https://unit8co.github.io/darts/generated_api/darts.models.forecasting.tide_model.html#darts.models.forecasting.tide_model.TiDEModel) | [TiDE 논문](https://arxiv.org/pdf/2304.08424.pdf) | ✅ ✅ | ✅ ✅ ✅ | ✅ ✅ | ✅ |
| [TSMixerModel](https://unit8co.github.io/darts/generated_api/darts.models.forecasting.tsmixer_model.html#darts.models.forecasting.tsmixer_model.TSMixerModel) | [TSMixer 논문](https://arxiv.org/pdf/2303.06053.pdf), [PyTorch 구현](https://github.com/ditschuk/pytorch-tsmixer) | ✅ ✅ | ✅ ✅ ✅ | ✅ ✅ | ✅ |
| [NeuralForecastModel](https://unit8co.github.io/darts/generated_api/darts.models.forecasting.nf_model.html#darts.models.forecasting.nf_model.NeuralForecastModel): 모든 [NeuralForecast](https://nixtlaverse.nixtla.io/neuralforecast/docs/capabilities/overview.html) 기본 모델을 감싸는 래퍼 | [NeuralForecast 문서](https://nixtlaverse.nixtla.io/neuralforecast/docs/) | ✅ ✅ | ✅ ✅ ✅ | ✅ ✅ | ✅ |
| **기반 모델**<br/>([GlobalForecastingModel](https://unit8co.github.io/darts/userguide/covariates.html#global-forecasting-models-gfms)): 훈련 불필요 | | | | | |
| [Chronos2Model](https://unit8co.github.io/darts/generated_api/darts.models.forecasting.chronos2_model.html#darts.models.forecasting.chronos2_model.Chronos2Model) | [Chronos-2 보고서](https://arxiv.org/abs/2510.15821), [Amazon 블로그 게시물](https://www.amazon.science/blog/introducing-chronos-2-from-univariate-to-universal-forecasting) | ✅ ✅ | ✅ ✅ 🔴 | ✅ ✅ | ✅ |
| [TimesFM2p5Model](https://unit8co.github.io/darts/generated_api/darts.models.forecasting.timesfm2p5_model.html#darts.models.forecasting.timesfm2p5_model.TimesFM2p5Model) | [TimesFM 1.0 논문](https://arxiv.org/abs/2310.10688), [Google 블로그 게시물](https://research.google/blog/a-decoder-only-foundation-model-for-time-series-forecasting) | ✅ ✅ | 🔴 🔴 🔴 | ✅ ✅ | ✅ |
| [TiRexModel](https://unit8co.github.io/darts/generated_api/darts.models.forecasting.tirex_model.html#darts.models.forecasting.tirex_model.TiRexModel) | [TiRex 논문](https://arxiv.org/abs/2505.23719), [TiRex GitHub](https://github.com/NX-AI/tirex) | ✅ ✅ | 🔴 🔴 🔴 | ✅ ✅ | ✅ |
| [PatchTSTFMModel](https://unit8co.github.io/darts/generated_api/darts.models.forecasting.patchtst_fm_model.html#darts.models.forecasting.patchtst_fm_model.PatchTSTFMModel) | [PatchTST-FM 논문](https://arxiv.org/abs/2602.06909), [PatchTST-FM GitHub](https://github.com/ibm-granite/granite-tsfm) | ✅ ✅ | 🔴 🔴 🔴 | ✅ ✅ | ✅ |
| **앙상블 모델**<br/>([GlobalForecastingModel](https://unit8co.github.io/darts/userguide/covariates.html#global-forecasting-models-gfms)): 모델 지원은 앙상블된 예측 모델 및 앙상블 모델 자체에 따라 달라짐 | | | | | |
| [NaiveEnsembleModel](https://unit8co.github.io/darts/generated_api/darts.models.forecasting.naive_ensemble_model.html#darts.models.forecasting.naive_ensemble_model.NaiveEnsembleModel) | | ✅ ✅ | ✅ ✅ ✅ | ✅ ✅ | ✅ |
| [RegressionEnsembleModel](https://unit8co.github.io/darts/generated_api/darts.models.forecasting.regression_ensemble_model.html#darts.models.forecasting.regression_ensemble_model.RegressionEnsembleModel) | | ✅ ✅ | ✅ ✅ ✅ | ✅ ✅ | ✅ |
| **컨포멀 모델**<br/>([GlobalForecastingModel](https://unit8co.github.io/darts/userguide/covariates.html#global-forecasting-models-gfms)): 모델 지원은 사용된 예측 모델에 따라 달라짐 | | | | | |
| [ConformalNaiveModel](https://unit8co.github.io/darts/generated_api/darts.models.forecasting.conformal_models.html#darts.models.forecasting.conformal_models.ConformalNaiveModel) | [컨포멀 예측](https://arxiv.org/pdf/1905.03222) | ✅ ✅ | ✅ ✅ ✅ | ✅ ✅ | ✅ |
| [ConformalQRModel](https://unit8co.github.io/darts/generated_api/darts.models.forecasting.conformal_models.html#darts.models.forecasting.conformal_models.ConformalQRModel) | [컨포멀 분위수 회귀](https://arxiv.org/pdf/1905.03222) | ✅ ✅ | ✅ ✅ ✅ | ✅ ✅ | ✅ |**분류 모델:** Darts의 분류 모델은 범주형 클래스 레이블을 예측하도록 설계되어, 효과적인 시계열 레이블링과 미래 클래스 예측을 가능하게 합니다. 이러한 모델은 시간에 따라 고유한 범주나 상태를 식별하는 것이 중요한 시나리오에 적합합니다.
| 모델 | 소스 | 대상 시계열 지원:<br/><br/>단변량/<br/>다변량 | 공변량 지원:<br/><br/>과거 관측/<br/>미래 알려짐/<br/>정적 | 확률적 예측:<br/><br/>샘플링/<br/>분포 파라미터 | 다중 시계열 학습 및 예측 |
|----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|---------|--------------------------------------------------------------|--------------------------------------------------------------------------|--------------------------------------------------------------------------|-------------------------------------------|
| **회귀 모델**<br/>([GlobalForecastingModel](https://unit8co.github.io/darts/userguide/covariates.html#global-forecasting-models-gfms)) | | | | | |
| [SKLearnClassifierModel](https://unit8co.github.io/darts/generated_api/darts.models.forecasting.sklearn_model.html#darts.models.forecasting.sklearn_model.SKLearnClassifierModel): scikit-learn 계열 분류 모델용 래퍼 | | ✅ ✅ | ✅ ✅ ✅ | ✅ ✅ | ✅ |
| [CatBoostClassifierModel](https://unit8co.github.io/darts/generated_api/darts.models.forecasting.catboost_model.html#darts.models.forecasting.catboost_model.CatBoostClassifierModel) | | ✅ ✅ | ✅ ✅ ✅ | ✅ ✅ | ✅ |
| [LightGBMClassifierModel](https://unit8co.github.io/darts/generated_api/darts.models.forecasting.lgbm.html#darts.models.forecasting.lgbm.LightGBMClassifierModel) | | ✅ ✅ | ✅ ✅ ✅ | ✅ ✅ | ✅ |
| [XGBClassifierModel](https://unit8co.github.io/darts/generated_api/darts.models.forecasting.xgboost.html#darts.models.forecasting.xgboost.XGBClassifierModel) | | ✅ ✅ | ✅ ✅ ✅ | ✅ ✅ | ✅ |
## 커뮤니티 및 연락처
누구나 [Gitter 룸](https://gitter.im/u8darts/darts)에 참여하여 질문, 제안, 사용 사례 논의 등을 할 수 있습니다. 버그를 발견하거나 제안 사항이 있다면 GitHub 이슈도 환영합니다.
Gitter나 GitHub에 적합하지 않은 내용을 전달하고 싶다면,
Darts 관련 사항은 <a href="mailto:[email protected]">[email protected]</a>로,
기타 문의 사항은 <a href="mailto:[email protected]">[email protected]</a>로 이메일을 보내주세요.
## 기여하기
개발은 지속적으로 진행 중이며, GitHub에서 제안, 풀 리퀘스트, 이슈를 환영합니다.
모든 기여자는 [변경 로그 페이지](https://github.com/unit8co/darts/blob/master/CHANGELOG.md)에 기재됩니다.
기여(새 기능 또는 수정) 작업 전에
[기여 지침](https://github.com/unit8co/darts/blob/master/CONTRIBUTING.md)을 확인해 주세요.
## 인용
과학 연구에서 Darts를 사용하신다면, 다음 JMLR 논문을 인용해 주시면 감사하겠습니다.
[Darts: User-Friendly Modern Machine Learning for Time Series](https://www.jmlr.org/papers/v23/21-1177.html)
Bibtex 항목(GitHub 저장소 인용 기능을 통해 직접 복사하거나):```
@article{Herzen_Darts_User-Friendly_Modern_2022,
author = {Herzen, Julien and Lässig, Francesco and Piazzetta, Samuele Giuliano and Neuer, Thomas and Tafti, Léo and Raille, Guillaume and Van Pottelbergh, Tomas and Pasieka, Marek and Skrodzki, Andrzej and Huguenin, Nicolas and Dumonal, Maxime and Kościsz, Jan and Bader, Dennis and Gusset, Frédérick and Benheddi, Mounir and Williamson, Camila and Kosinski, Michal and Petrik, Matej and Grosch, Gaël},
journal = {Journal of Machine Learning Research},
number = {124},
pages = {1--6},
title = {{Darts: User-Friendly Modern Machine Learning for Time Series}},
url = {https://jmlr.org/papers/v23/21-1177.html},
volume = {23},
year = {2022}
}