| Hi! I'm one core developer (and creator) of the library. Thanks for all the comments. I just wanted to highlight a couple of things that we think are quite cool about Darts: * It makes using all sorts of forecasting models (from ARIMA to deep learning) easy, using fit() and predict(), similar to scikit-learn. * It's easy to fit deep learning and other ML-based models on multiple time series, potentially on big datasets too. The time series can be multivariate. * Darts is not only wrapping existing models. We also have our own implementations, for instance of TCN (Temporal Convolutional Networks), or adaptations N-BEATS (which we extended to handle multivariate series), DeepAR and others. * Darts makes it very easy to include past and/or future covariates as inputs for the predictions. * Some models offer probabilistic forecasts; sometimes with the possibility to configure your favourite likelihood function (e.g. Gaussian for continuous values or Poisson for discrete values). * Everything uses the "TimeSeries" class, which makes the API consistent across tools and models, and make it harder to make mistakes. For instance it's easy to consume the output of one model by another model, and all models can be backtested the same way. |
This was also one of the areas where R always had better options than Python, but that seems to be gradually changing as well.
Darts looks very thorough and user-friendly, it makes me really want to work on a forecasting project!
It might be very helpful to readers/users if you could add a section to your documentation comparing Darts to Tslearn [0] (edit, and Sktime [1]), which already has a lot of time series models with the Scikit-learn style interface.
It would also be helpful to have some kind of writeup that explains the TimeSeries data structure and why you use that, instead of just a Series/DataFrame.
Finally - you really shouldn't say "non-Facebook alternative", because your Prophet implementation is literally a wrapper around Facebook's Prophet library. If anything, I suggest moving the Prophet, Torch, and Pmdarima dependencies to setuptools "extras", so you don't force the users to depend on those projects.
[0]: https://tslearn.readthedocs.io/en/stable/index.html
[1]: https://news.ycombinator.com/item?id=28155384