Skip to content

Conversation

@Jeadie
Copy link

@Jeadie Jeadie commented Oct 15, 2024

Fixes #.

Summary

Other Information

dennisbader and others added 30 commits April 11, 2024 17:17
* bump codecov-action from v3 to v4

* further tests

* add back token

* add back codecov comment

* update changelog
* fix: reorder lagged features per lags when they are provided component-wise

* fix: parametrize lagged_features_names test

* feat: added tests for lagged_features_names when lags are component-specific

* fix: create_lagged_name is not affected by lags order different than the components

* fix: improve comment

* feat: tests verify that list and dict lags yield the same result

* fix: remove staticmethod for the tests to pass on python 3.9

* feat: properly reorder features during autoregression, added corresponding test

* update changelog

* fix: adressing review comments

* fix: moved autoregression lags extraction to tabularization

* fix: refactor tests to reduce code duplication

* fix: adress review comment

* fix: remove usage of strict argument in zip, not support in python 3.9

* further refactor lagged data extraction for autoregression

* allow coverage diffs for codecov upload

* use codecov v3

* precompute lagged and ordered feature indices

---------

Co-authored-by: Dennis Bader <[email protected]>
* add progress bar to regression models for hist fc

* update changelog

* remove line
* simplify hist fc tests part 1

* refactor torch hist fc auto start

* future cov hist fcs tests

* fix rnn model historical forecasts

* fix failing unit tests

* update changelog

* fix discrepancies in test comments

* fix failing unit tests
* lint: switch `flake8` to Ruff

* fixing issues

* build gradle

* noqa: E721

* revert changes of #2327

* ruff

* Apply suggestions from code review

* chlog
* add release notes section to documentation page

* add body to gh release linking to the release notes

* update changelog
* bump u8darts 0.28.0 to 0.29.0

* update changelog for new version

* update changelog
* lint: default pre-commit hooks & fixing

* chlog

* fixing

* fixing
* exclude csvs from pre-commit eof fixer

* revert eof fixes to csvs
* ci: use `pre-commit` also locally

* chlog
* lint: replace `isort` with Ruff's rule I

* fixing

* lint

* chlog
* lint: replace `pyupgrade` with Ruff's rule UP

* fixing

* chlog
* bump actions/setup-python from v1 to v5

* revert bumping actions/setup-python and use fixed macos version

* try macos-13
* fix E402 for __init__ files

* make all darts imports absolute

* torch imports for unit tests to be skipped in non torch flavor

* fix examples import
* fix index generation and n steps between

* update code comments

* update changelog
* fix deprecation warnings from frequencies

* revert some bats and prophet freq checks
* fix MixedCovTorchModels multi TS predictions with n<ocl

* update changelog
* Small fix in utils.py

* Factorize tests

* Correct format

* Dataset taxiNY

* jupyter notebook addition, XX-anomaly-detection.ipynb

* relocated  XX-anomaly-detection.ipynb

* Fix NormScorer proba input, and show_anomaly function

* Fix NormScorer proba input, and show_anomaly function

* Refactor window of Wasserstein, Kmeans and PyOD Scorers

* Refactor test

* Added anomaly display cell and comments (#1493)

* Added anomaly display cell and comments

* Added samuele comments

Co-authored-by: julien12234 <[email protected]>

* Added images, and Julien's recommendation

* Added parameter window_transform, git statusChange the default windowing methodgit status

* fix: solve error due to merge conflict and apply linting

* round of Julien_H's comment

* with images

* states to values

* Committing old local changes

* Small fix

* fix: reduced code redundancy between the two detectors, renamed the method eval_accuracy to eval_metric

* refactor: simplified class hierarchy, added a bit of type hinting, fixed bug in predict

* feat: migrated tests from unittest to pytest framework for the aggregators

* feat: parametrized tests to reduce code repetition

* fix: added docstring, increased test granularity

* fix: bug in fittableaggreg predict sanity check

* refactor: renamed eval_accuracy to eval_metric, removed NonFittableScorer class

* fix: changed tests after eval_accuracy function name change

* refactor: changed scorers tests from unittest to pytest framework

* fix: all non fittable anomaly scorer are tested

* refactor: renamed eval_accuracy eval_metric

* refactor: changed framework from unittest to pytest

* fix: typo

* refactor: changed test framework from unittest to pytest

* refactor: reduced code redundancy by using pytest.mark.parametrize

* refactor: reduced redundant code in kmeans, pyod and wasserstein scorers

* fix: logging

* fix: ad module use series2seq instead of its own util method

* refactor: single show_anomalies method across anomaly model classes

* fix: modularized scorer training, fixed logging

* fix: indentation error

* feat: parallelize training of scorers

* feat: parallelize scorer score method for component-wise multivariate

* feat: parallelize and/or aggregators predict_core method

* feat: simplified aggregation of anomaly scorer, added corresponding tests

* Apply suggestions from code review

Co-authored-by: Samuele Giuliano Piazzetta <[email protected]>

* fix lint

* update docs init and utils

* refactor ad utils

* refactor aggregators

* refactor aggregators

* refactor aggregators

* refactor detectors

* refactor module docs

* refactor anomaly models

* refactor anomaly models

* refactor scorers

* update diff_fn for scorers

* refactor WindowAnomalyScorer

* refactor tabularization for scorers

* improve scorer docs

* refactor score_from_prediction

* use slice_intersect_values in ad evaluation

* further code clean up

* further code clean up

* make API consistent

* refactor show anomalies api

* refactor eval_metric api for anomaly models

* refactor eval_metric api for anomaly scorers

* refactor eval_metric api for anomaly detectors

* refactor eval_metric api for anomaly aggregator

* enfore GlobalForecastingModel for AnomalyModel

* update changelog

* remove  prefix in AD API to keep unified  and covariates parameter names

* apply suggestions from PR review

* final updates

* improve docs

* revert changes

* prepare example notebook

* update changelog

* add taxi dataset test

---------

Co-authored-by: Samuele Giuliano Piazzetta <[email protected]>
Co-authored-by: madtoinou <[email protected]>
Co-authored-by: Antoine Madrona <[email protected]>
Co-authored-by: Julien Sven Adda <[email protected]>
Co-authored-by: madtoinou <[email protected]>
Co-authored-by: dennisbader <[email protected]>
* lint: replace Black with `ruff-format`

* fixing

* Empty-Commit

* line-length = 88

* apply

* tool.ruff.lint.pycodestyle 120

* run precommit
* fix bug with eval sets in regression models

* improve tests

* update changelog

* update test commmenr
* rework metrics logic to support states

* changelog entry

* remove bad whitespace in changelog

* error message adjustment

* Update CHANGELOG.md

Co-authored-by: Dennis Bader <[email protected]>

* allow empty metrics,remove unnecessary code in tests

* new line after return in compute_metrics

* changed test

---------

Co-authored-by: Dennis Bader <[email protected]>
* add `torch.utils.data.DataLoader` related parameters to `fit()` and `predict()` of `TorchForecastingModel`

* update CHANGELOG.md

* replace specific dataloader arguments with dataloader_kwargs

* - allow to set all params
- add predefined defaults

* fix wrong indentation

* - allow to set all params for predict
- add breaking change to CHANGELOG.md

* improve docs

* add unittests

* update test

---------

Co-authored-by: Bohdan Bilonoh <[email protected]>
Co-authored-by: dennisbader <[email protected]>
turbotimon and others added 30 commits September 28, 2025 10:44
* fix pass verbose to fit in historical_forecast

* update changelog

* add verbose to fit (catboost not working)

* fix verbose for catboost

* lint format

* add verbose to more tests

* fix "fit" docstrings

* fix verbose passing

* fix passing verbose for baselines

* revert masking of verbose and replace with inspect fit

* improve change log

* improve test (revert verbose from test_fit but add to runnability test

* linting

* fix tests

* add verbose to predict kwargs

* fix passing verbose in hfc

* fix optimized hfc issue

* update changelog

---------

Co-authored-by: dennisbader <[email protected]>
* add global hfc mode

* update docs

* add val length to global hfc

* extend datatransformer support for hfc

* integrate global hfc into regular hfc

* fix logic

* update docs

* add first unit tests

* add data transformer tests

* extend tests

* fix failing backtest

* add tests for new drop before/after

* add more tests

* clean up for pr

* update changelog

* update changelog

* update docs
* bumped min python version to 3.10

* changelog update

* update docker imaged and others

---------

Co-authored-by: dennisbader <[email protected]>
* add copy button to code blocks

* improve code copying

* update code examples

* update changelog
* group changelog entries

* improve changelog

* bump u8darts 0.37.1 to 0.38.0

* update changelog

* clean up outdated m1 instructions
* .map() improvements

* changelog update

* example fix

* again example fix

* codecov changes

* add shape check and update docs

* update docs

---------

Co-authored-by: dennisbader <[email protected]>
* add onnxscript to optional dependencies for tests

* update docs and fix further tests

* fix onnx and shap issues
* improve parameter checking by considering the full class hierarchy

* changelog

* test and code coverage

* restore and adjust the method comment

* revert black formatting of the conditionals

* blabla

---------

Co-authored-by: dennisbader <[email protected]>
* TSFM: skeleton class

Co-authored-by: Zhihao Dai <[email protected]>

* Chronos 2: partial import

Co-authored-by: Zhihao Dai <[email protected]>

* Chronos 2: import submodels

Co-authored-by: Zhihao Dai <[email protected]>

* TSFM: add dependencies for HF and safetensors

Co-authored-by: Zhihao Dai <[email protected]>

* Chronos 2: add license and changelog

Co-authored-by: Zhihao Dai <[email protected]>

* Chronos 2: implement Darts' forward pass

Co-authored-by: Zhihao Dai <[email protected]>

* Chronos 2: first workable impl.

Co-authored-by: Zhihao Dai <[email protected]>

* Chronos 2: minor changes

Co-authored-by: Zhihao Dai <[email protected]>

* Chronos 2: add fidelity test

Co-authored-by: Zhihao Dai <[email protected]>

* TimeSeries: fix `astype()` method typing

Co-authored-by: Zhihao Dai <[email protected]>

* TSFM: add an `allows_finetuning` flag

Co-authored-by: Zhihao Dai <[email protected]>

* Chronos 2: add reproducible notes for fidelity

Co-authored-by: Zhihao Dai <[email protected]>

* TSFM: add docstrings and `probabilistic` option

- Docstring for `FoundationModel`.
- Docstring for `HuggingFaceModelMixin`.
- Add `probabilistic` parameter for converting probabilistic TSFMs into
  determinstic (might not be supported by all TSFMs).

Co-authored-by: Zhihao Dai <[email protected]>

* Chronos 2: add docstrings and probabilistic option

- Docstring for `Chronos2Model`.
- Docstring for `_Chronos2Module`.
- Add `probabilistic` parameter to convert Chronos2 into determinstic
  model by taking the median quantile.

Co-authored-by: Zhihao Dai <[email protected]>

* Chronos 2: add test for determinstic fidelity

Co-authored-by: Zhihao Dai <[email protected]>

* Chronos 2: add implmenetation notes

Co-authored-by: Zhihao Dai <[email protected]>

* Chronos 2: remove unused lines

Co-authored-by: Zhihao Dai <[email protected]>

* Chronos-2: add comments for reshaping ops

Co-authored-by: Zhihao Dai <[email protected]>

* Chronos-2: turn off fine-tuning

Co-authored-by: Zhihao Dai <[email protected]>

* Chronos-2: turn off fine-tuning (fix)

The last commit did not turn off fine-tuning, and it is fixed now.

Co-authored-by: Zhihao Dai <[email protected]>

* Chronos-2: move `_submodel`.py` into `components`

Co-authored-by: Zhihao Dai <[email protected]>

* Chronos-2: allow non-zero `output_chunk_shift`

Co-authored-by: Zhihao Dai <[email protected]>

* Foundation: remove explicit `probabilistic` param

`probabilistic` can only be set by subclass `__init__()`, and indirectly
by user-defined `loss_fn` and `likelihood`.

Co-authored-by: Zhihao Dai <[email protected]>

* Chronos-2: default to deterministic

However, setting `likelihood=QuantileRegression(...)` will turn the
model into probabilistic.

Co-authored-by: Zhihao Dai <[email protected]>

* Dependencies: raise PyTorch to `>2.0.0`

Co-authored-by: Zhihao Dai <[email protected]>

* Chronos-2: address some review comments

Co-authored-by: Zhihao Dai <[email protected]>

* Chronos-2: avoid default mutable object

Co-authored-by: Zhihao Dai <[email protected]>

* Chronos-2: remove `user_quantiles` property

Co-authored-by: Zhihao Dai <[email protected]>

* Logging: remove `raise_if()` and `raise_if_not()`

Both will be removed from Darts at some point. Replace them with
`raise_log()`

Co-authored-by: Zhihao Dai <[email protected]>

* TSFM: update docstring

Co-authored-by: Zhihao Dai <[email protected]>

* Foundation: remove `probabilistic` property

Can be inferred from `supports_probabilistic_prediction`

Co-authored-by: Zhihao Dai <[email protected]>

* Foundation: make `FoundationModel` abstract

Co-authored-by: Zhihao Dai <[email protected]>

* Foundation: make `enable_finetuning` private

Co-authored-by: Zhihao Dai <[email protected]>

* Chronos-2: remove `enable_finetuning` option

Co-authored-by: Zhihao Dai <[email protected]>

* Chronos-2: extend fidelity test

Add past covariates as part of fidelity test as well.

Co-authored-by: Zhihao Dai <[email protected]>

* Doc: fix Chronos-2 erros and formatting

Co-authored-by: Zhihao Dai <[email protected]>

* Doc: fix Chronos-2 and TFT typos

Co-authored-by: Zhihao Dai <[email protected]>

* Chronos-2: update docstring

Co-authored-by: Zhihao Dai <[email protected]>

* Chronos-2: fix docstring typo

Co-authored-by: Zhihao Dai <[email protected]>

* Chronos-2: add dummy tests

- `test_creation` for different model creations, e.g., input/output
  chunk lengths, shift, etc.
- `test_default` for default deterministic forecast.
- `test_probabilistic` for probabilistic forecast.

Co-authored-by: Zhihao Dai <[email protected]>

* TS Gen: fix typing errors of `dtype`

Co-authored-by: Zhihao Dai <[email protected]>

* Chronos-2: add covariate tests

Co-authored-by: Zhihao Dai <[email protected]>

* Foundation: add unit tests

Co-authored-by: Zhihao Dai <[email protected]>

* Chronos-2: add example code

Co-authored-by: Zhihao Dai <[email protected]>

* README: add Foundation and Chronos-2 models

Co-authored-by: Zhihao Dai <[email protected]>

* README and Chronos-2: fix doc rendering

Co-authored-by: Zhihao Dai <[email protected]>

* Chronos-2: fix typo

Co-authored-by: Zhihao Dai <[email protected]>

* Chronos-2: add notes and warning

Co-authored-by: Zhihao Dai <[email protected]>

* Revert "TS Gen: fix typing errors of `dtype`"

This reverts commit b47cfa9.

* Revert "TimeSeries: fix `astype()` method typing"

This reverts commit 3ae7c36.

* Foundation: implement HuggingFaceConnector

- Use `HuggingFaceConnector` to replace `HuggingFaceModelMixin` abstract
  class, courtesy of @dennisbader.
- Update `Chronos-2` with the new connector.

Co-authored-by: Zhihao Dai <[email protected]>

* TSFM: update unit tests for connector

Co-authored-by: Zhihao Dai <[email protected]>

* TSFM: improve test coverage

Co-authored-by: Zhihao Dai <[email protected]>

* Chronos-2: dedicated import

Co-authored-by: Zhihao Dai <[email protected]>

* Chronos-2: add unit tests for multiple series

Co-authored-by: Zhihao Dai <[email protected]>

* Chronos-2: move artefacts into a dedicated folder

Co-authored-by: Zhihao Dai <[email protected]>

* Foundation: update `dummy_local_dir`

Co-authored-by: Zhihao Dai <[email protected]>

* Update covariates guide

Co-authored-by: Zhihao Dai <[email protected]>

* Doc: add exmaple notebook for Chronos-2

Co-authored-by: Zhihao Dai <[email protected]>

* Doc: final remarks for Chronos-2

Co-authored-by: Zhihao Dai <[email protected]>

* CHANGELOG: add entries for Chronos-2 & foundation

Co-authored-by: Zhihao Dai <[email protected]>

* Doc: fix typos

Co-authored-by: Zhihao Dai <[email protected]>

* Chronos-2: fix a typo

Co-authored-by: Zhihao Dai <[email protected]>

* Doc: use weather as future covs in Chronos-2

Co-authored-by: Zhihao Dai <[email protected]>

* Test: skip for non-torch and set random seed

Co-authored-by: Zhihao Dai <[email protected]>

* Foundation: remove `_validate_model_params()`

Co-authored-by: Zhihao Dai <[email protected]>

* HFConnector: use `raise_log()`

Co-authored-by: Zhihao Dai <[email protected]>

* CHANGELOG: update entry

Co-authored-by: Zhihao Dai <[email protected]>

* Workflows: add Chronos-2 notebook

Co-authored-by: Zhihao Dai <[email protected]>

* Doc: use default style and plot actual first

Co-authored-by: Zhihao Dai <[email protected]>

* Doc: use mic & miw instead of mql

Also predict quantiles directly instead of sampling for probabilistic
forecasts.

Co-authored-by: Zhihao Dai <[email protected]>

* CHANGELOG: remove a duplicated entry

Co-authored-by: Zhihao Dai <[email protected]>
* fix some warnings

* ckpt

* making progress

* another ckpt

* ckpt looks better

* ckpt looks better

* fix package headings

* cleaning up some files

* update release requirements

* further cleanup

* update logos

* update landing page

* add readme to index

* add forecasting model card

* fix badges underline

* add back src code

* add chronos model to index

* some new logo ideas

* fix some docs warnings

* new logos

* new icons

* remove old icons

* make icons non-transparent

* move pngs

* better cards for dark mode

* final landing page version

* fix excluded docs

* restore source code

* fix some warnings

* fix more warnings

* add subpackage and module descriptions

* udpate docs

* fix datasets package
* Changes to ts representation

* updated changelog

* improvements to repr

* further improvements

* Repr changes

* Repr clean-up

* codecov unit tests

* make large ts representation more efficient

* slightly adapt html formatting

* refactor get repr

* add more tests

* update docs

* fix bug

* temporarily disable macos caching

* fix unit tests

---------

Co-authored-by: Dennis Bader <[email protected]>
* bump u8darts 0.38.0 to 0.39.0

* update changelog
* add steps to check storage

* try torch cpu version for less disk spack

* update workflows to install torch cpu only

* add back macos caching to workflows

* revert caching fix from 0.39.0
…2958)

* fix PLForecastingModel.configure_torch_metrics() with updated args

simplify our wrapper method configure_torch_metrics(), delegate the init
and error handling to the torchmetrics.MetricCollection().

The problem was that our if-elif handling got obsolete wrt the
MetricCollection capabilities.

Fixed: now we support eg. Dict[str, Metric].

* add Changelog

* fix related test

now raises ValueError, not AttributeError

* formatting

* Update CHANGELOG.md

* Update pl_forecasting_module.py

* Update test_torch_forecasting_model.py

---------

Co-authored-by: breznak <[email protected]>
Co-authored-by: Dennis Bader <[email protected]>
* add darts configuration

* update docs and changelog

* update notebooks to use darts plotting style

* add darts plotting test with both styles

* apply suggestions from PR review
* Fix notebook typos

Co-authored-by: Zhihao Dai <[email protected]>

* Update CHANGELOG for #2962

Co-authored-by: Zhihao Dai <[email protected]>

* Fix a CHANGELOG typo

Co-authored-by: Zhihao Dai <[email protected]>

* Fix CHANGELOG typo

Co-authored-by: Zhihao Dai <[email protected]>
* update changelog

* bump u8darts 0.39.0 to 0.40.0
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.