Skip to content

Tags: salesforce/Merlion

Tags

v2.0.2

Toggle v2.0.2's commit message

Verified

This commit was created on GitHub.com and signed with GitHub’s verified signature. The key has expired.
Fix deep learning bug on Windows. (#148)

* Add CI for Windows.

* Update copyright years.

* Skip spark tests on Windows.

Spark API is designed for spark-on-k8s with Linux.

* Update version.

* Add n_jobs argument to IsolationForest.

* Set use_gpu=True by default.

v2.0.1

Toggle v2.0.1's commit message
Update README. (#147)

v2.0.0

Toggle v2.0.0's commit message

Verified

This commit was created on GitHub.com and signed with GitHub’s verified signature. The key has expired.
Adding Deep Learning Support (#134)

* initial deep learning support

* remove things

* remove run vae

* add deep forecast config

* add autoformer and informer

* add autoformer and informer

* add transformer implementation

* add evaluations

* add normalization

* add and modifying etsformer

* remove uncessary arguments

* modifying etsformer tests

* finalizing deep learning parts, left document staff

* Changing to dataset downloading using gdown

* Delete auto-generated file.

* move gdown library

* change code design based on suggestions

* Delete weather.csv

* remove logging entire config

* remove uncessary logging

* remove uncessary files

* remove device from Config class to TorchModel class

* change setup.py to match requirement of main repo

* fix device allocation typo

* change timefeature file name

* modify and test model loading and saving with map_location

* update documentation and change various places for merging request

* fix function calling bug

* remove unecessary  comments

* update doc

* fix typo

* fix doc build typo

* update doc

* fix doc

* change model call API to model(past, past_timestamp, future_timestamp)

* fix doc typo

* remove unecessary helper function design

* fix deep model design bugs

* add validation set support for rolling_window_dataset

* simplify code implementation of rolling window dataset

* fix dataset shuffle bug

* fix rolling window test typo

* change configuration names of specific deep models

* fix rename typo

* address various change requests and add documentation for deep models

* Fix docs & torch requirement.

* Make SARIMA more flexible.

* Fix some bugs & simplify RollingWindowDataset.

* Remove sklearn from ts_datasets deps.

* Add warning suppression to ETS.

* remove start_token argument for etsformer

* Add warning suppression to ETS.

* Improve M4 loader.

* Remove legacy SARIMA import.

* Minor fixes for DeepAR & ETSformer.

* change implementation of deep ar to make sure it can predict arbitrary length of forecastings

* change ambiguous function names

* delete old lstm models

Co-authored-by: Aadyot Bhatnagar <[email protected]>

v1.3.1

Toggle v1.3.1's commit message

Verified

This commit was created on GitHub.com and signed with GitHub’s verified signature. The key has expired.
Add support for exogenous regressors (#125)

* Simplify implementations of SARIMA, ETS, VectorAR.

We remove code duplication from these files, and we also remove the
online training features of ETS. This should make the ETS model easier
to use at inference time, since time_series_prev is no longer entangled
with online inference features.

* Bugfixes.

* Simpler TransformSequence implementation.

* Refactor argument order for anomaly detector train

We change the order from (train_data, anomaly_labels, train_config,
post_rule_train_config) to (train_data, train_config, anomaly_labels,
post_rule_train_config). This brings it in line with the base signature.

* Allow custom color plots.

* Add exogenous regressor support for Prophet.

* Add exog regressor support for SARIMA.

* Add exog_data param to downstream models.

We allow ForecastingDetector's, ForecasterEnsemble's, and
LayeredForecaster's to accept the param exog_data in both train() and
forecast() methods. However, layered models (especially autoML) do not
yet support training with exogenous data.

* Make base train() abstract.

* Make exogenous pre-processing more rigorous.

* Add exog regressor support to evaluators.

* Add exog regressor test for Prophet.

* Abstract away the notion of grid search.

* Add ensemble & evaluator test coverage for exog.

* Fix build failures.

* Remove exog_data reference from SeasonalityLayer

* More fixes.

* Add exogenous regressor support to layered models.

* Silence Prophet deserialization warnings.

* Fix 2-layer AutoSarima bug.

* Change train to _train for DetectorEnsemble.

* Fix typos.

* Slight cleanup of ensemble code.

* Simplify ensemble cross-val to use evaluators.

* Add save/load test coverage for exog.

* Make layers aware of exogenous regressors.

* Deprecate Python 3.6 & update version.

* More rigorous handling of kwargs in LayeredModel.

* Rename ForecasterWithExog to ForecasterExogBase

* More robust support for inverse transforms.

Use named variables rather than integer indexing. This ensures that we
can invert multivariate forecasts.

* Fix how model_kwargs is set in layered models.

* Make time series more JSON-compatible.

* Various bugfixes.

* More systematic post-processing of forecasts.

* Fix docs error.

* Remove RMSE value assertions from boostingtrees.

* Skip univariate VectorAR test as before.

* Skip spark tests on Python 3.10

* Optimize application of inverse transforms.

The inverse of many transforms is just the identity. This commit adds an
optimization which skips applying the inverse altogether if this is the
case.

* Reduce size of walmart_mini to prevent OOM errors.

* Update pyspark session fixture.

* Make test_vector_ar smaller.

* Remove python3.6 fallback code from conj priors.

* models.anomaly.utils -> models.utils.torch_utils

* Update default settings of ARIMA models.

I figured out that the enforce_invertibility=True and
enforce_stationarity=True settings were previously causing segfaults in
the unit tests because of an out-of-memory error. I have updated the
tests to use smaller data size to circumvent the error.

* Fix failures from SARIMA model update.

* Try unpersisting dataframes in spark tests.

This could ameliorate OOM issues (if that's the cause of test failures).

* Increase Spark network timeout for unit tests.

* Run spark tests separately for 3.8/3.9.

* Update test_forecast_ensemble.

* Add tutorial on exogenous regressors.

* Add auto-retry to tests.

* Use cached docs from gh-pages branch.

Also improve git robustness of build_docs.sh.

v1.3.0

Toggle v1.3.0's commit message

Verified

This commit was created on GitHub.com and signed with GitHub’s verified signature. The key has expired.
Make AutoProphet more sophisticated & simplify AutoETS code. (#121)

* Enhancments to layered forecasting detectors.

* Automatically choose add/mul mode for AutoProphet.

* Older acceptable prophet version for py36.

This is for compatibility with CentOS images which may have older
versions of GCC which can't compile pystan 2.19.

* Simplify train_post_process()

* Simplify autoprophet implementation using _train()

* Allow auto-detection of best lambda for Box-Cox.

* Rename PowerTransform to BoxCoxTransform.

* Simplify AutoETS implementation.

* Allow use of custom datasets with benchmark code.

* Fix boxcox bugs.

* Update version to 1.3.0.

* Update expected test result.

* Move seasonality detection to SeasonalityLayer.

* Simplify serialization of enums in config objects.

* Use info criterion for AutoProphet model selection

We also unify the implementations of AutoETS and AutoProphet.

* Create base class for IC-based model selection.

* Minor bugfix.

v1.2.5

Toggle v1.2.5's commit message

Verified

This commit was created on GitHub.com and signed with GitHub’s verified signature. The key has expired.
Make ForecastMetric work for multivar time series. (#117)

v1.2.4

Toggle v1.2.4's commit message

Verified

This commit was created on GitHub.com and signed with GitHub’s verified signature. The key has expired.
Enhance spark API. (#114)

* Update spark apps to use spark-operator.

* Refactor spark apps directory.

* Allow spark.forecast to predict on train data.

* Allow custom aggregations for hierarchical data.

* Update version to 1.2.4.

* Always use strings for index columns.

This avoids problems with aggregation when attempting to use NA values
for integer columns.

* Ensure consistent schema for stderr.

* Fix some bugs with tree models.

Tree models can now accept max_forecast_steps=None and return_prev=True

* Fix bug in time series reconciliaton code.

* Added dataset for testing hierarchical time series

Derived from https://www.kaggle.com/datasets/manjeetsingh/retaildataset
which is released under a CC0 license.

* Add test coverage for pyspark code.

v1.2.3

Toggle v1.2.3's commit message

Verified

This commit was created on GitHub.com and signed with GitHub’s verified signature. The key has expired.
Add check for requires_even_sampling in forecast() (#109)

v1.2.2

Toggle v1.2.2's commit message

Verified

This commit was created on GitHub.com and signed with GitHub’s verified signature. The key has expired.
Make coverage reports more accurate. (#108)

v1.2.1

Toggle v1.2.1's commit message

Verified

This commit was created on GitHub.com and signed with GitHub’s verified signature. The key has expired.
Fix issues with LayeredModelConfig accessing underlying model attribu…

…tes. (#104)

* Simplify BOCPD implementation.

* Remove overcomplicated _online_model check.

* Fix LayeredModel access to underlying model params

* Add docstring.

* Have AutoMLMixin inherit from LayeredModel.

* Add feature summary line for change point detect.

* Update version to 1.2.1.