
Una librería de Python fácil de usar para la previsión y detección de anomalías en series temporales.

Darts es una librería de Python para la previsión y detección de anomalías
en series temporales, pensada para ser fácil de usar. Contiene una variedad de modelos, desde clásicos como ARIMA hasta
redes neuronales profundas. Los modelos de previsión se pueden usar todos de la misma manera,
mediante las funciones fit() y predict(), similares a scikit-learn.
La librería también facilita el backtesting de modelos,
combinar las predicciones de varios modelos y tener en cuenta datos externos.
Darts admite tanto series temporales y modelos univariantes como multivariantes.
Los modelos basados en ML se pueden entrenar con conjuntos de datos potencialmente grandes que contienen múltiples series
temporales, y algunos de los modelos ofrecen un amplio soporte para la previsión probabilística.
Darts también ofrece amplias capacidades de detección de anomalías. Por ejemplo, es trivial aplicar modelos de PyOD sobre series temporales para obtener puntuaciones de anomalía, o envolver cualquiera de los modelos de previsión o filtrado de Darts para obtener modelos de detección de anomalías completamente desarrollados.
Recomendamos configurar primero un entorno Python limpio para tu proyecto con Python 3.10+ usando tu herramienta favorita (conda, venv, virtualenv con o sin virtualenvwrapper).
Una vez que tu entorno esté configurado, puedes instalar darts usando pip:
pip install darts
Para más detalles, puedes consultar nuestras instrucciones de instalación.
Crea un objeto TimeSeries a partir de un DataFrame de Pandas y divídelo en series de entrenamiento/validación:```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:]
Ajuste un modelo de suavizado exponencial y realice una predicción (probabilística) sobre la duración de la serie de validación:```python
from darts.models import ExponentialSmoothing
model = ExponentialSmoothing()
model.fit(train)
prediction = model.predict(len(val), num_samples=1000)
Graficar la mediana, los percentiles 5 y 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="ejemplo de pronóstico de darts" />
</div>
### Detección de anomalías
Cargue una serie multivariante, recórtela, conserve 2 componentes y divida los conjuntos de entrenamiento y validación:```python
from darts.datasets import ETTh2Dataset
series = ETTh2Dataset().load()[:10000][["MUFL", "LULL"]]
train, val = series.split_before(0.6)
Construye un scorer de anomalías k-means, entrénalo en el conjunto de entrenamiento y úsalo en el conjunto de validación para obtener puntuaciones de anomalías:```python from darts.ad import KMeansScorer
scorer = KMeansScorer(k=2, window=5) scorer.fit(train) anom_score = scorer.score(val)
Construya un detector de anomalías binario y entrénelo con las puntuaciones de entrenamiento, luego úselo sobre las puntuaciones de validación para obtener la clasificación binaria de anomalías:```python
from darts.ad import QuantileDetector
detector = QuantileDetector(high_quantile=0.99)
detector.fit(scorer.score(train))
binary_anom = detector.detect(anom_score)
Graficar (desplazando y escalando algunas de las series para que todo aparezca en la misma figura):```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="ejemplo de detección de anomalías de darts" />
</div>
## Características
* **Modelos de pronóstico:** Una gran colección de modelos de pronóstico para tareas de regresión y clasificación; desde modelos estadísticos (como
ARIMA) hasta modelos de deep learning (como N-BEATS). Consulte los [modelos de pronóstico](#forecasting-models) a continuación.
* **Detección de anomalías** El módulo `darts.ad` contiene una colección de puntuadores de anomalías,
detectores y agregadores, que pueden combinarse para detectar anomalías en series temporales.
Es fácil envolver cualquiera de los modelos de pronóstico o filtrado de Darts para construir
un modelo de detección de anomalías completo que compare las predicciones con los valores reales.
El `PyODScorer` hace trivial el uso de detectores PyOD en series temporales.
* **Soporte multivariante:** `TimeSeries` puede ser multivariante, es decir, contener múltiples
dimensiones/columnas que varían en el tiempo en lugar de un único valor escalar. Muchos modelos pueden consumir y producir series multivariantes.
* **Entrenamiento con múltiples series (Modelos globales):** Todos los modelos basados en machine learning (incluidas todas las redes neuronales)
admiten ser entrenados con múltiples series (potencialmente multivariantes). Esto también puede escalar a conjuntos de datos grandes.
* **Soporte probabilístico:** Los objetos `TimeSeries` pueden (opcionalmente) representar series temporales
estocásticas; esto puede usarse, por ejemplo, para obtener intervalos de confianza, y muchos modelos admiten diferentes
variantes de pronóstico probabilístico (como estimar distribuciones paramétricas o cuantiles).
Algunos puntuadores de detección de anomalías también pueden aprovechar estas distribuciones predictivas.
* **Soporte de predicción conforme:** Nuestros modelos de predicción conforme permiten generar pronósticos probabilísticos con
intervalos de cuantiles calibrados para cualquier modelo de pronóstico global preentrenado.
* **Soporte de covariables pasadas y futuras:** Muchos modelos de Darts admiten series temporales de covariables
observadas en el pasado y/o conocidas en el futuro (datos externos) como entradas para producir pronósticos.
* **Soporte de covariables estáticas:** Además de los datos dependientes del tiempo, `TimeSeries` también puede contener
datos estáticos para cada dimensión, que algunos modelos pueden aprovechar.
* **Reconciliación jerárquica:** Darts ofrece transformadores para realizar la reconciliación.
Estos pueden hacer que los pronósticos sumen de manera que se respete la jerarquía subyacente.
* **Modelos de regresión:** Es posible conectar cualquier modelo compatible con scikit-learn
para obtener pronósticos como funciones de los valores rezagados de la serie objetivo y las covariables.
* **Entrenamiento con pesos de muestra:** Todos los modelos globales admiten entrenarse con pesos de muestra. Estos pueden
aplicarse a cada observación, paso de tiempo pronosticado y columna objetivo.
* **Desplazamiento del inicio del pronóstico:** Todos los modelos globales admiten entrenamiento y predicción sobre una ventana de salida desplazada.
Esto es útil, por ejemplo, para pronósticos del mercado del día siguiente, o cuando las covariables (o la serie objetivo) se reportan
con un retraso.
* **Explicabilidad:** Darts tiene la capacidad de *explicar* algunos modelos de pronóstico utilizando valores SHAP.
* **Procesamiento de datos:** Herramientas para aplicar (y revertir) fácilmente transformaciones comunes en
datos de series temporales (escalado, relleno de valores faltantes, diferenciación, boxcox, ...)
* **Métricas:** Una variedad de métricas para evaluar la bondad de ajuste de las series temporales;
desde puntuaciones R2 hasta el Error Absoluto Medio Escalado.
* **Backtesting:** Utilidades para simular pronósticos históricos, utilizando ventanas de tiempo móviles.
* **Soporte de PyTorch Lightning:** Todos los modelos de deep learning se implementan utilizando PyTorch Lightning,
con soporte, entre otras cosas, de callbacks personalizados, entrenamiento con GPUs/TPUs y trainers personalizados.
* **Modelos de filtrado:** Darts ofrece tres modelos de filtrado: `KalmanFilter`, `GaussianProcessFilter`,
y `MovingAverageFilter`, que permiten filtrar series temporales y, en algunos casos, obtener inferencias
probabilísticas de los estados/valores subyacentes.
* **Conjuntos de datos** El submódulo `darts.datasets` contiene algunos conjuntos de datos populares de series temporales para una experimentación
rápida y reproducible.
* **Compatibilidad con múltiples backends:** Los objetos `TimeSeries` pueden crearse desde y exportarse a varios backends como pandas, polars, numpy, pyarrow, xarray y más, facilitando una integración perfecta con diferentes librerías de procesamiento de datos.
## Modelos de Pronóstico
A continuación, se muestra un desglose de los modelos de pronóstico actualmente implementados en Darts. Nuestra suite incluye tanto modelos de regresión como de clasificación, cada uno adaptado a tareas de pronóstico específicas. Estamos comprometidos a ampliar nuestra oferta con nuevos modelos y funciones para mejorar sus capacidades de pronóstico.
**Modelos de regresión:** Nuestros modelos de regresión están diseñados para predecir valores numéricos continuos, lo que los hace ideales para pronosticar tendencias y patrones futuros en datos de series temporales. Utilice estos modelos para obtener información sobre posibles resultados futuros basados en datos históricos.| **Modelo** | **Fuentes** | Soporte de Series Objetivo:<br/><br/>Univariante/<br/>Multivariante | Soporte de Covariables:<br/><br/>Observadas en el pasado/<br/>Conocidas en el futuro/<br/>Estáticas | Pronóstico Probabilístico:<br/><br/>Muestreado/<br/>Parámetros de Distribución | Entrenamiento y Pronóstico en Múltiples Series |
|--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|--------------------------------------------------------------|--------------------------------------------------------------------------|--------------------------------------------------------------------------|-------------------------------------------|
| **Modelos de Referencia**<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) | | ✅ ✅ | 🔴 🔴 🔴 | 🔴 🔴 | 🔴 |
| **Modelos Estadísticos / Clásicos**<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) y [FourTheta](https://unit8co.github.io/darts/generated_api/darts.models.forecasting.theta.html#darts.models.forecasting.theta.FourTheta) | [Artículo de Theta](https://robjhyndman.com/papers/Theta.pdf) y [código fuente de 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) | [Repositorio de Prophet](https://github.com/facebook/prophet) | ✅ 🔴 | 🔴 ✅ 🔴 | ✅ 🔴 | 🔴 |
| [FFT](https://unit8co.github.io/darts/generated_api/darts.models.forecasting.fft.html#darts.models.forecasting.fft.FFT) (Transformada Rápida de Fourier) | | ✅ 🔴 | 🔴 🔴 🔴 | 🔴 🔴 | 🔴 |
| [KalmanForecaster](https://unit8co.github.io/darts/generated_api/darts.models.forecasting.kalman_forecaster.html#darts.models.forecasting.kalman_forecaster.KalmanForecaster) utilizando el filtro de Kalman y N4SID para la identificación de sistemas | [Artículo de 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) | [Artículo de TBATS](https://robjhyndman.com/papers/ComplexSeasonality.pdf) | ✅ 🔴 | 🔴 ✅ 🔴 | ✅ ✅ | 🔴 |
| Método [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) envoltorio alrededor de cualquier modelo de [StatsForecast](https://nixtlaverse.nixtla.io/statsforecast/index.html#models) | [statsforecast de Nixtla](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) | [statsforecast de Nixtla](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) | [statsforecast de Nixtla](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) | [statsforecast de Nixtla](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) | [statsforecast de Nixtla](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) | [statsforecast de Nixtla](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) | [statsforecast de Nixtla](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) | | ✅ ✅ | 🔴 ✅ 🔴 | ✅ ✅ | 🔴 |
| **Modelos Globales de Referencia**<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) | | ✅ ✅ | 🔴 🔴 🔴 | 🔴 🔴 | ✅ |
| **Modelos de Regresión**<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): envoltorio alrededor de cualquier modelo de regresión similar a 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) | | ✅ ✅ | ✅ ✅ ✅ | ✅ ✅ | ✅ |
| **Modelos basados en 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) (incl. LSTM y GRU); equivalente a DeepAR en su versión probabilística | [Artículo de 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) (incl. LSTM y GRU) | | ✅ ✅ | ✅ ✅ ✅ | ✅ ✅ | ✅ |
| [NBEATSModel](https://unit8co.github.io/darts/generated_api/darts.models.forecasting.nbeats.html#darts.models.forecasting.nbeats.NBEATSModel) | [Artículo de 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) | [Artículo de 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) | [Artículo de TCN](https://arxiv.org/abs/1803.01271), [Artículo de DeepTCN](https://arxiv.org/abs/1906.04397), [publicación de blog](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) (Transformador de Fusión Temporal) | [Artículo de 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) | [Artículo de 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) | [Artículo de 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) | [Artículo de 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) | [Artículo de TSMixer](https://arxiv.org/pdf/2303.06053.pdf), [Implementación en 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): envoltorio alrededor de cualquier modelo base de [NeuralForecast](https://nixtlaverse.nixtla.io/neuralforecast/docs/capabilities/overview.html) | [Documentación de NeuralForecast](https://nixtlaverse.nixtla.io/neuralforecast/docs/) | ✅ ✅ | ✅ ✅ ✅ | ✅ ✅ | ✅ |
| **Modelos Fundacionales**<br/>([GlobalForecastingModel](https://unit8co.github.io/darts/userguide/covariates.html#global-forecasting-models-gfms)): No requiere entrenamiento | | | | | |
| [Chronos2Model](https://unit8co.github.io/darts/generated_api/darts.models.forecasting.chronos2_model.html#darts.models.forecasting.chronos2_model.Chronos2Model) | [Informe de Chronos-2](https://arxiv.org/abs/2510.15821), [publicación de blog de 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) | [Artículo de TimesFM 1.0](https://arxiv.org/abs/2310.10688), [publicación de blog de 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) | [Artículo de TiRex](https://arxiv.org/abs/2505.23719), [GitHub de TiRex](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) | [Artículo de PatchTST-FM](https://arxiv.org/abs/2602.06909), [GitHub de PatchTST-FM](https://github.com/ibm-granite/granite-tsfm) | ✅ ✅ | 🔴 🔴 🔴 | ✅ ✅ | ✅ |
| **Modelos de Ensamble**<br/>([GlobalForecastingModel](https://unit8co.github.io/darts/userguide/covariates.html#global-forecasting-models-gfms)): El soporte de modelos depende de los modelos de pronóstico combinados y del propio modelo de ensamble | | | | | |
| [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) | | ✅ ✅ | ✅ ✅ ✅ | ✅ ✅ | ✅ |
| **Modelos Conformales**<br/>([GlobalForecastingModel](https://unit8co.github.io/darts/userguide/covariates.html#global-forecasting-models-gfms)): El soporte de modelos depende del modelo de pronóstico utilizado | | | | | |
| [ConformalNaiveModel](https://unit8co.github.io/darts/generated_api/darts.models.forecasting.conformal_models.html#darts.models.forecasting.conformal_models.ConformalNaiveModel) | [Predicción Conformalizada](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) | [Regresión por Cuantiles Conformalizada](https://arxiv.org/pdf/1905.03222) | ✅ ✅ | ✅ ✅ ✅ | ✅ ✅ | ✅ |**Modelos de clasificación:** Los modelos de clasificación en Darts están diseñados para predecir etiquetas de clases categóricas, lo que permite un etiquetado eficaz de series temporales y la predicción de clases futuras. Estos modelos son perfectos para escenarios en los que es crucial identificar categorías o estados distintos a lo largo del tiempo.
| Modelo | Fuentes | Soporte de series objetivo:<br/><br/>Univariadas/<br/>Multivariadas | Soporte de covariables:<br/><br/>Pasado-observadas/<br/>Futuro-conocidas/<br/>Estáticas | Pronóstico probabilístico:<br/><br/>Muestreado/<br/>Parámetros de distribución | Entrenamiento y pronóstico en múltiples series |
|----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|---------|--------------------------------------------------------------|--------------------------------------------------------------------------|--------------------------------------------------------------------------|-------------------------------------------|
| **Modelos de regresión**<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): wrapper para cualquier modelo de clasificación similar a 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) | | ✅ ✅ | ✅ ✅ ✅ | ✅ ✅ | ✅ |
## Comunidad y contacto
Todo el mundo es bienvenido a unirse a nuestra [sala de Gitter](https://gitter.im/u8darts/darts) para hacer preguntas, hacer propuestas,
discutir casos de uso y más. Si detectas un error o tienes sugerencias, también son bienvenidos los issues de GitHub.
Si lo que quieres contarnos no es adecuado para Gitter o GitHub,
no dudes en enviarnos un correo electrónico a <a href="mailto:[email protected]">[email protected]</a> para
asuntos relacionados con Darts o <a href="mailto:[email protected]">[email protected]</a> para cualquier
otra consulta.
## Contribuciones
El desarrollo está en curso y agradecemos sugerencias, pull requests e issues en GitHub.
Todos los contribuyentes serán reconocidos en la
[página de registro de cambios](https://github.com/unit8co/darts/blob/master/CHANGELOG.md).
Antes de trabajar en una contribución (una nueva funcionalidad o una corrección),
[consulta nuestras directrices de contribución](https://github.com/unit8co/darts/blob/master/CONTRIBUTING.md).
## Citación
Si estás utilizando Darts en tu trabajo científico, agradeceríamos citas al siguiente artículo de JMLR.
[Darts: User-Friendly Modern Machine Learning for Time Series](https://www.jmlr.org/papers/v23/21-1177.html)
Entrada BibTeX (o copia directamente mediante la cita del repositorio de 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}
}