Probabilistic time series modeling in Python
APACHE-2.0 License
Published by lostella almost 2 years ago
Backporting fixes:
Published by lostella almost 2 years ago
Backporting fixes:
Published by lostella almost 2 years ago
Backporting fixes:
Published by lostella almost 2 years ago
Backporting fixes:
Published by lostella almost 2 years ago
Backporting fixes:
Published by lostella about 2 years ago
Estimators are now re-trainable on new data, using the train_from
method. This accepts a previously trained model (predictor), and new data to train on, and can greatly reduce training time if combined with early stopping. The feature is integrated with gluonts.shell
-based SageMaker containers, and can be used by specifying the additional model
channel to point to the output of a previous training job. More info in #2249.
Two models are added in this release:
DeepVARHierarchicalEstimator
, a hierarchical extension to DeepVAREstimator
; learn more about how to use this in this tutorial.DeepNPTSEstimator
, a global extension to NPTS, where sampling probabilities are learned from data; learn more on how to use this estimator here.This release moves MXNet-based models from gluonts.model
to gluonts.mx.model
; the old import paths continue working in this release, but are deprecated and will be removed in the next release. For example, now the MXNet-based DeepAREstimator
should be imported from gluonts.mx
(or gluonts.mx.model.deepar
).
We also removed deprecated options for learning rate reduction in the gluonts.mx.Trainer
class: these can now be controlled via the LearningRateReduction
callback.
We updated the functionality to split time series datasets (along the time axis) for training/validation/test purposes. Now this functionality can be easily accessed via the split
function (from gluonts.dataset.split import split
); learn more about this here.
This feature is experimental and subject to future changes.
(input, output)
pairs in the test split (#2031 by @npnv)mx.model
. (#2126 by @Hongqing-work)mx.Trainer
. (#2153 by @jaheba)gluonts.dataset.split
code, test, docs (#2223 by @lostella)mx.Trainer
stops training. (#2131 by @Hongqing-work)serde.dataclass
. (#2166 by @jaheba)dataset.schema.translate
. (#2304 by @jaheba)forecast_start
to entry-wise metrics in evaluator (#2312 by @lostella)PandasDataset
for Python 3.9 (#2141 by @lostella)PandasDataset
faster (#2148 by @lostella)Timestamp
instead of Period
(#2182 by @lostella)gluonts.mx.batchify.stack
(#2184 by @lostella)item_id
values in ConstantValuePredictor
(#2192 by @codingWhale13)SymbolBlock
serde issue (#2187 by @lostella)r_forecast
wrapper to shift start date when truncating time series (#2216 by @abdulfatir)to_quantile_forecast
(#2225 by @eugeneteoh)gluonts.mx.trainer.Trainer
in case of empty data loader (#2228 by @lostella)TimeSeriesSlice
performance (#2259 by @lostella)QuantileForecast.plot()
to use DateTimeIndex
(#2269 by @abdulfatir)gluonts.dataset.split
for multivariate case (#2314 by @lostella)TestData
class in gluonts.dataset.split
(#2315 by @lostella)make_evaluation_predictions
(#2309 by @lostella)kernel_size=1
(#2321 by @lostella)BinnedUniforms
(#2344 by @moudheus)installation
section. (#2130 by @jaheba)DataFrame
example (#2150 by @lostella)holidays
and matplotlib
from core dependencies. (#2055 by @jaheba)Published by lostella about 2 years ago
Backporting fixes:
Published by lostella about 2 years ago
Backporting fixes:
Published by lostella about 2 years ago
Backporting fixes:
Full changelog: https://github.com/awslabs/gluon-ts/compare/v0.10.4...v0.10.5
Published by lostella about 2 years ago
Backporting fixes:
Full Changelog: https://github.com/awslabs/gluon-ts/compare/v0.9.8...v0.9.9
Published by lostella about 2 years ago
Backporting fixes:
SymbolBlock
serde issue (#2187 by @lostella)Published by lostella about 2 years ago
Backporting fixes:
SymbolBlock
serde issue (#2187 by @lostella)Published by lostella about 2 years ago
Backporting fixes:
Published by lostella about 2 years ago
Backporting fixes:
Published by jaheba over 2 years ago
Backport fixes:
PandasDataset
faster (#2148 by @lostella)mx.Trainer
stops training. (#2131 by @Hongqing-work)Published by lostella over 2 years ago
Backporting fixes:
Published by jaheba over 2 years ago
We have added support for Parquet-files, as well as Arrow's binary format. This is an opt-in feature, requiring pyarrow
to be installed. Use pip install 'gluonts[pro]'
or pip install 'gluonts[arrow]'
to ensure the correct version is installed.
FileDataset
has been reworked to support .parquet
and .arrow
files. Previously, it had assumed all files to use jsonlines
. To continue using jsonlines
ensure that the the files use one of the .json
, .jsonl
, .json.gz
, jsonl.gz
suffixes.
Depending on the dataset size and shape, Arrow can be much faster than the json variant. In more extreme cases we saw speedups of more than 100x when using arrow vs jsonlines (see #2003 for some examples).
To convert a given dataset into arrow, you can use the gluonts.dataset.arrow
utility:
python -m gluonts.dataset.arrow write </path/to/dataset> my-dataset.arrow
PandasDataset
We have added support for pandas.DataFrame
and pandas.Series
as well. You can now directly model data given in a DataFrame
using gluonts.dataset.pandas.PandasDataset
. In this tutorial
we describe in depth how you can use PandasDataset
to speed up modelling using GluonTS.
TimeLimitCallback
to mx/trainer
callbacks. (by @yx1215)arrow
-based dataset. (by @vafl, @lostella, @jaheba)DatasetWriter
. (by @jaheba)pd.Period
instead of pd.Timestamp
. (by @jaheba)freq
argument from Forecast
. (by @kashif)dct_reduce
. (by @jaheba)FileDataset
. (by @jaheba)dataset_writer
to get_dataset
. (by @Hongqing-work)jsonl.encode_json
, remove serialize_data_entry
. (by @jaheba)gluonts.nursery.SCott
(by @lostella)itertools
, add col-to-row and row-to-col functions. (by @jaheba)Estimator
, Predictor
, Forecast
in gluonts.model
. (by @jaheba)AffineTransformedDistribution
(by @stailx)docs
folder, update gitignore (by @lostella)DataFramesDataset
. (by @jaheba)Quantile
derive from pydantic.BaseModel
. (by @jaheba)DataFramesDataset
(by @RSNirwan)time_axis
to forecast_start
. (by @melopeo)predict_to_numpy
(by @lostella)Published by lostella over 2 years ago
Backporting fixes:
Published by jaheba over 2 years ago
We have added support for Parquet-files, as well as Arrow's binary format. This is an opt-in feature, requiring pyarrow
to be installed. Use pip install 'gluonts[pro]'
or pip install 'gluonts[arrow]'
to ensure the correct version is installed.
FileDataset
has been reworked to support .parquet
and .arrow
files. Previously, it had assumed all files to use jsonlines
. To continue using jsonlines
ensure that the the files use one of the .json
, .jsonl
, .json.gz
, jsonl.gz
suffixes.
Depending on the dataset size and shape, Arrow can be much faster than the json variant. In more extreme cases we saw speedups of more than 100x when using arrow vs jsonlines (see #2003 for some examples).
To convert a given dataset into arrow, you can use the gluonts.dataset.arrow
utility:
python -m gluonts.dataset.arrow write </path/to/dataset> my-dataset.arrow
PandasDataset
We have added support for pandas.DataFrame
and pandas.Series
as well. You can now directly model data given in a DataFrame
using gluonts.dataset.pandas.PandasDataset
. In this tutorial
we describe in depth how you can use PandasDataset
to speed up modelling using GluonTS.
TimeLimitCallback
to mx/trainer
callbacks. (by @yx1215)arrow
-based dataset. (by @vafl, @lostella, @jaheba)DatasetWriter
. (by @jaheba)pd.Period
instead of pd.Timestamp
. (by @jaheba)freq
argument from Forecast
. (by @kashif)dct_reduce
. (by @jaheba)FileDataset
. (by @jaheba)dataset_writer
to get_dataset
. (by @Hongqing-work)jsonl.encode_json
, remove serialize_data_entry
. (by @jaheba)gluonts.nursery.SCott
(by @lostella)itertools
, add col-to-row and row-to-col functions. (by @jaheba)Estimator
, Predictor
, Forecast
in gluonts.model
. (by @jaheba)AffineTransformedDistribution
(by @stailx)docs
folder, update gitignore (by @lostella)DataFramesDataset
. (by @jaheba)Quantile
derive from pydantic.BaseModel
. (by @jaheba)DataFramesDataset
(by @RSNirwan)time_axis
to forecast_start
. (by @melopeo)predict_to_numpy
(by @lostella)Published by jaheba over 2 years ago
Backporting fixes:
num_parallel_samples
in deepAR (#1968 by @kashif)OffsetSplitter
for negative offsets (#1986 by @lostella)AffineTransformedDistribution
(#2015 by @stailx)