Sobre el proyecto
Darts es una biblioteca de Python 3.10+ para entrenar, evaluar y usar modelos en datos de series temporales. Su abstracción TimeSeries admite series univariadas y multivariadas y puede intercambiar datos con pandas, Polars, NumPy, PyArrow, xarray y otros backends.
Los modelos de pronóstico incluyen ARIMA, VARIMA, ExponentialSmoothing, Prophet, N-BEATS y regresores compatibles con scikit-learn. Los modelos siguen flujos de trabajo consistentes de fit() y predict() y pueden admitir múltiples series, pesos de muestra, ventanas de salida desplazadas, covariables observadas en el pasado o conocidas en el futuro, y covariables estáticas. Muchos modelos manejan datos multivariados y pronósticos probabilísticos mediante muestras, parámetros de distribución o cuantiles. Los modelos de predicción conforme pueden producir intervalos de cuantiles calibrados para modelos de pronóstico global preentrenados.
La biblioteca también proporciona backtesting de ventana móvil, transformadores de reconciliación jerárquica, métricas de series temporales incluyendo R² y error absoluto medio escalado, explicación basada en SHAP para algunos modelos, y transformaciones de datos como escalado, imputación, diferenciación y Box-Cox. Los modelos de filtrado incluyen KalmanFilter, GaussianProcessFilter y MovingAverageFilter.
El módulo darts.ad combina puntuadores de anomalías, detectores y agregadores. Incluye ejemplos como KMeansScorer y QuantileDetector, puede envolver modelos de pronóstico o filtrado comparando predicciones con valores reales, y puede aplicar detectores PyOD a través de PyODScorer. Los modelos de aprendizaje profundo usan PyTorch Lightning, con soporte para callbacks personalizados, GPU o TPU, y entrenadores personalizados. La integración con MLflow admite seguimiento de experimentos, comparación y persistencia. La instalación está disponible a través de pip, y el README enlaza a un inicio rápido, guía de usuario, referencia de API, ejemplos y artículos temáticos.
Comments
0 Rating appears after 10 ratings
Sign in to join the discussion.