All notable changes to this project will be documented in this file.
The format is based on Keep a Changelog, and this project adheres to Semantic Versioning.
DeseasonalityTransform
(#1307)- Add extension with models from
statsforecast
:StatsForecastARIMAModel
,StatsForecastAutoARIMAModel
,StatsForecastAutoCESModel
,StatsForecastAutoETSModel
,StatsForecastAutoThetaModel
(#1295) - Notebook
feature_selection
(#875) - Implementation of PatchTS model (#1277)
- Add modes
binary
andcategory
toHolidayTransform
(#763) - Add sorting by timestamp before the fit in
CatBoostPerSegmentModel
andCatBoostMultiSegmentModel
(#1337) - Speed up metrics computation by optimizing segment validation, forbid NaNs during metrics computation (#1338)
- Unify errors, warnings and checks in models (#1312)
- Remove upper limitation on version of numba (#1321)
- Optimize
TSDataset.describe
andTSDataset.info
by vectorization (#1344) - Add documentation warning about using dill during loading (#1346)
- Vectorize metric computation (#1347)
- Pipeline ensembles fail in
etna forecast
CLI (#1331) - Fix performance of
DeepARModel
andTFTModel
(#1322) mrmr
feature selection working with categoricals (#1311)- Fix version of
statsforecast
to 1.4 to avoid dependency conflicts during installation (#1313) - Add inverse transformation into
predict
method of pipelines (#1314) - Allow saving large pipelines (#1335)
- Fix link for dataset in classification notebook (#1351)
- Building docker images with cuda 10.2 (#1306)
- Notebook
forecast_interpretation.ipynb
with forecast decomposition (#1220) - Exogenous variables shift transform
ExogShiftTransform
(#1254) - Parameter
start_timestamp
to forecast CLI command (#1265) DeepStateModel
(#1253)NBeatsGenericModel
andNBeatsInterpretableModel
(#1302)- Function
estimate_max_n_folds
for folds number estimation (#1279) - Parameters
estimate_n_folds
andcontext_size
to forecast and backtest CLI commands (#1284) - Class
Tune
for hyperparameter optimization within existing pipeline (#1200) - Add
etna.distributions
for using it instead of usingoptuna.distributions
(#1292)
- Set the default value of
final_model
toLinearRegression(positive=True)
in the constructor ofStackingEnsemble
(#1238) - Add microseconds to
FileLogger
's directory name (#1264) - Inherit
SaveMixin
fromAbstractSaveable
for mypy checker (#1261) - Update requirements for
holidays
andscipy
, change saving library frompickle
todill
inSaveMixin
(#1268) - Update requirement for
ruptures
, add requirement forsqlalchemy
(#1276) - Optimize
make_samples
ofRNNNet
andMLPNet
(#1281) - Remove
to_be_fixed
from inference tests onSpecialDaysTransform
(#1283) - Rewrite
TimeSeriesImputerTransform
to work without per-segment wrapper (#1293) - Add default
params_to_tune
for catboost models (#1185) - Add default
params_to_tune
forProphetModel
(#1203) - Add default
params_to_tune
forSARIMAXModel
, change default parameters for the model (#1206) - Add default
params_to_tune
for linear models (#1204) - Add default
params_to_tune
forSeasonalMovingAverageModel
,MovingAverageModel
,NaiveModel
andDeadlineMovingAverageModel
(#1208) - Add default
params_to_tune
forDeepARModel
andTFTModel
(#1210) - Add default
params_to_tune
forHoltWintersModel
,HoltModel
andSimpleExpSmoothingModel
(#1209) - Add default
params_to_tune
forRNNModel
andMLPModel
(#1218) - Add default
params_to_tune
forDateFlagsTransform
,TimeFlagsTransform
,SpecialDaysTransform
andFourierTransform
(#1228) - Add default
params_to_tune
forMedianOutliersTransform
,DensityOutliersTransform
andPredictionIntervalOutliersTransform
(#1231) - Add default
params_to_tune
forTimeSeriesImputerTransform
(#1232) - Add default
params_to_tune
forDifferencingTransform
,MedianTransform
,MaxTransform
,MinTransform
,QuantileTransform
,StdTransform
,MeanTransform
,MADTransform
,MinMaxDifferenceTransform
,SumTransform
,BoxCoxTransform
,YeoJohnsonTransform
,MaxAbsScalerTransform
,MinMaxScalerTransform
,RobustScalerTransform
andStandardScalerTransform
(#1233) - Add default
params_to_tune
forLabelEncoderTransform
(#1242) - Add default
params_to_tune
forChangePointsSegmentationTransform
,ChangePointsTrendTransform
,ChangePointsLevelTransform
,TrendTransform
,LinearTrendTransform
,TheilSenTrendTransform
andSTLTransform
(#1243) - Add default
params_to_tune
forTreeFeatureSelectionTransform
,MRMRFeatureSelectionTransform
andGaleShapleyFeatureSelectionTransform
(#1250) - Add tuning stage into
Auto.fit
(#1272) - Add
params_to_tune
intoTune
init (#1282) - Skip duplicates during
Tune.fit
, skip duplicates intop_k
, add AutoML notebook (#1285) - Add parameter
fast_redundancy
inmrmm
, fix relevance calculation inget_model_relevance_table
(#1294)
- Fix
plot_backtest
andplot_backtest_interactive
on one-step forecast (1260) - Fix
BaseReconciliator
to work onpandas==1.1.5
(#1229) - Fix
TSDataset.make_future
to handle hierarchy, quantiles, target components (#1248) - Fix warning during creation of
ResampleWithDistributionTransform
(#1230) - Add deep copy for copying attributes of
TSDataset
(#1241) - Add
tsfresh
into optional dependencies, remove instruction aboutpip install tsfresh
(#1246) - Fix
DeepARModel
andTFTModel
to work with changedprediction_size
(#1251) - Fix problems with flake8 B023 (#1252)
- Fix problem with swapped forecast methods in HierarchicalPipeline (#1259)
- Fix problem with segment name "target" in
StackingEnsemble
(#1262) - Fix
BasePipeline.forecast
when prediction intervals are estimated on history data with presence of NaNs (#1291) - Teach
BaseMixin.set_params
to work with nestedlist
andtuple
(#1201) - Fix
get_anomalies_prediction_interval
to work when segments have different start date (#1296) - Fix
classification
notebook to downloadFordA
dataset without error (#1299) - Fix signature of
Auto.fit
,Tune.fit
to not have a breaking change (#1300)
- Target components logic into
AutoRegressivePipeline
(#1188) - Target components logic into
HierarchicalPipeline
(#1199) predict
method intoHierarchicalPipeline
(#1199)- Add target components handling in
get_level_dataframe
(#1179) - Forecast decomposition for
SeasonalMovingAverageModel
(#1180) - Target components logic into base classes of pipelines (#1173)
- Method
predict_components
for forecast decomposition in_SklearnAdapter
and_LinearAdapter
for linear models (#1164) - Target components logic into base classes of models (#1158)
- Target components logic to TSDataset (#1153)
- Methods
save
andload
to HierarchicalPipeline (#1096) - New data access methods in
TSDataset
:update_columns_from_pandas
,add_columns_from_pandas
,drop_features
(#809) PytorchForecastingDatasetBuiler
for neural networks from Pytorch Forecasting (#971)- New base classes for per-segment and multi-segment transforms
IrreversiblePersegmentWrapper
,ReversiblePersegmentWrapper
,IrreversibleTransform
,ReversibleTransform
(#835) - New base class for one segment transforms
OneSegmentTransform
(#894) ChangePointsLevelTransform
and base classesPerIntervalModel
,BaseChangePointsModelAdapter
for per-interval transforms (#998)- Method
set_params
to change parameters of ETNA objects (#1102) - Function
plot_forecast_decomposition
(#1129) - Method
forecast_components
for forecast decomposition in_TBATSAdapter
(#1133) - Methods
forecast_components
andpredict_components
for forecast decomposition in_CatBoostAdapter
(#1148) - Methods
forecast_components
andpredict_components
for forecast decomposition in_HoltWintersAdapter
(#1162) - Method
predict_components
for forecast decomposition in_ProphetAdapter
(#1172) - Methods
forecast_components
andpredict_components
for forecast decomposition in_SARIMAXAdapter
and_AutoARIMAAdapter
(#1174) - Add
refit
parameter intobacktest
(#1159) - Add
stride
parameter intobacktest
(#1165) - Add optional parameter
ts
intoforecast
method of pipelines (#1071) - Add tests on
transform
method of transforms on subset of segments, on new segments, on future with gap (#1094) - Add tests on
inverse_transform
method of transforms on subset of segments, on new segments, on future with gap (#1127) - In-sample prediction for
BATSModel
andTBATSModel
(#1181) - Method
predict_components
for forecast decomposition in_TBATSAdapter
(#1181) - Forecast decomposition for
DeadlineMovingAverageModel
(#1186) - Prediction decomposition example into
custom_transform_and_model.ipynb
(#1216)
- Add optional
features
parameter in the signature ofTSDataset.to_pandas
,TSDataset.to_flatten
(#809) - Signature of the constructor of
TFTModel
,DeepARModel
(#1110) - Interface of
Transform
andPerSegmentWrapper
(#835) - Signature of
TSDataset
methodsinverse_transform
andmake_future
now hastransforms
parameter. Remove transforms and regressors updating logic from TSDataset. Forecasts from the models are not internally inverse transformed. Methodsfit
,transform
,inverse_transform
ofTransform
now works withTSDataset
(#956) - Create
AutoBase
andAutoAbstract
classes, some ofAuto
class's logic moved there (#1114) - Impose specific order of columns on return value of
TSDataset.to_flatten
(#1095) - Add more scenarios into tests for models (#1082)
- Decouple
SeasonalMovingAverageModel
fromPerSegmentModelMixin
(#1132) - Decouple
DeadlineMovingAverageModel
fromPerSegmentModelMixin
(#1140) - Remove version python-3.7 from
pyproject.toml
, update lock (#1183) - Bump minimum pandas version up to 1.1 (#1214)
- Fix bug in
GaleShapleyFeatureSelectionTransform
with wrong number of remaining features (#1110) ProphetModel
fails with additional seasonality set (#1157)- Fix inference tests on new segments for
DeepARModel
andTFTModel
(#1109) - Fix alignment during forecasting in new NNs, add validation of context size during forecasting in new NNs, add validation of batch in
MLPNet
(#1108) - Fix
MeanSegmentEncoderTransform
to work with subset of segments and raise error on new segments (#1104) - Fix outliers transforms on future with gap (#1147)
- Fix
SegmentEncoderTransform
to work with subset of segments and raise error on new segments (#1103) - Fix
SklearnTransform
in per-segment mode to work on subset of segments and raise error on new segments (#1107) - Fix
OutliersTransform
and its children to raise error on new segments (#1139) - Fix
DifferencingTransform
to raise error on new segments duringtransform
andinverse_transform
in inplace mode (#1141) - Teach
DifferencingTransform
toinverse_transform
with NaNs (#1155) - Fixed
custom_transform_and_model.ipynb
(#1216)
sample_acf_plot
,sample_pacf_plot
,CatBoostModelPerSegment
,CatBoostModelMultiSegment
(#1118)PytorchForecastingTransform
(#971)
RMSE
metric &rmse
functional metric (#1051)MaxDeviation
metric &max_deviation
functional metric (#1061)- Add saving/loading for transforms, models, pipelines, ensembles; tutorial for saving/loading (#1068)
- Add hierarchical time series support(#1083)
- Add
WAPE
metric &wape
functional metric (#1085)
- Missed kwargs in TFT init(#1078)
- Add python 3.10 support (#1005)
- Add
SumTranform
(#1021) - Add
plot_change_points_interactive
(#988) - Add
experimental
module withTimeSeriesBinaryClassifier
andPredictabilityAnalyzer
(#985) - Inference track results: add
predict
method to pipelines, teach some models to work with context, change hierarchy of base models, update notebook examples (#979) - Add
get_ruptures_regularization
intoexperimental
module (#1001) - Add example
classification
notebook for experimental classification feature (#997)
- Change returned model in get_model of BATSModel, TBATSModel (#987)
- Add acf_plot, deprecated sample_acf_plot, sample_pacf_plot (#1004)
- Change returned model in
get_model
ofHoltWintersModel
,HoltModel
,SimpleExpSmoothingModel
(#986)
- Fix
MinMaxDifferenceTransform
import (#1030) - Fix release docs and docker images cron job (#982)
- Fix forecast first point with CatBoostPerSegmentModel (#1010)
- Fix hanging EDA notebook (#1027)
- Fix hanging EDA notebook v2 + cache clean script (#1034)
- Add
greater_is_better
property for Metric (#921) etna.auto
for greedy search,etna.auto.pool
with default pipelines,etna.auto.optuna
wrapper for optuna (#895)- Add
MinMaxDifferenceTransform
(#955) - Add wandb sweeps and optuna examples (#338)
- Make slicing faster in
TSDataset._merge_exog
,FilterFeaturesTransform
,AddConstTransform
,LambdaTransform
,LagTransform
,LogTransform
,SklearnTransform
,WindowStatisticsTransform
; make CICD test different pandas versions (#900) - Mark some tests as long (#929)
- Fix to_dict with nn models and add unsafe conversion for callbacks (#949)
- Fix
to_dict
with function as parameter (#941) - Fix native networks to work with generated future equals to horizon (#936)
- Fix
SARIMAXModel
to work with exogenous data onpmdarima>=2.0
(#940) - Teach catboost to work with encoders (#957)
- Function to transform etna objects to dict(#818)
MLPModel
(#860)DeadlineMovingAverageModel
(#827)DirectEnsemble
(#824)- CICD: untaged docker image cleaner (#856)
- Notebook about forecasting strategies (#864)
- Add
ChangePointSegmentationTransform
,RupturesChangePointsModel
(#821)
- Teach AutoARIMAModel to work with out-sample predictions (#830)
- Make TSDataset.to_flatten faster for big datasets (#848)
- Type hints for external users by PEP 561 (#868)
- Type hints for
Pipeline.model
matchmodels.nn
(#768) - Fix behavior of SARIMAXModel if simple_differencing=True is set (#837)
- Bug python3.7 and TypedDict import (867)
- Fix deprecated pytorch lightning trainer flags (#866)
- ProphetModel doesn't work with cap and floor regressors (#842)
- Fix problem with encoding category types in OHE (#843)
- Change Docker cuda image version from 11.1 to 11.6.2 (#838)
- Optimize time complexity of
determine_num_steps
(#864) - All warning as errors(#880)
- Update .gitignore with .DS_Store and checkpoints (#883)
- Delete ROADMAP.md ([#904]#904)
- Fix ci invalid cache (#896)
- Fix missing
constant_value
inTimeSeriesImputerTransform
(#819) - Make in-sample predictions of SARIMAXModel non-dynamic in all cases (#812)
- Add known_future to cli docs (#823)
- LSTM based RNN and native deep models base classes (#776)
- Lambda transform (#762)
- assemble pipelines (#774)
- Tests on in-sample, out-sample predictions with gap for all models (#785)
- Add columns and mode parameters in plot_correlation_matrix (#726)
- Add CatBoostPerSegmentModel and CatBoostMultiSegmentModel classes, deprecate CatBoostModelPerSegment and CatBoostModelMultiSegment (#779)
- Allow Prophet update to 1.1 (#799)
- Make LagTransform, LogTransform, AddConstTransform vectorized (#756)
- Improve the behavior of plot_feature_relevance visualizing p-values (#795)
- Update poetry.core version (#780)
- Make native prediction intervals for DeepAR (#761)
- Make native prediction intervals for TFTModel (#770)
- Test cases for testing inference of models (#794)
- Wandb.log to WandbLogger (#816)
- Fix missing prophet in docker images (#767)
- Add
known_future
parameter to CLI (#758) - FutureWarning: The frame.append method is deprecated. Use pandas.concat instead (#764)
- Correct ordering if multi-index in backtest (#771)
- Raise errors in models.nn if they can't make in-sample and some cases out-sample predictions (#813)
- Teach BATS/TBATS to work with in-sample, out-sample predictions correctly (#806)
- Github actions cache issue with poetry update (#778)
- Add Sign metric (#730)
- Add AutoARIMA model (#679)
- Add parameters
start
,end
to some eda methods (#665) - Add BATS and TBATS model adapters (#678)
- Jupyter extension for black (#742)
- Change color of lines in plot_anomalies and plot_clusters, add grid to all plots, make trend line thicker in plot_trend (#705)
- Change format of holidays for holiday_plot (#708)
- Make feature selection transforms return columns in inverse_transform(#688)
- Add xticks parameter for plot_periodogram, clip frequencies to be >= 1 (#706)
- Make TSDataset method to_dataset work with copy of the passed dataframe (#741)
- Fix bug when
ts.plot
does not save figure (#714) - Fix bug in plot_clusters (#675)
- Fix bugs and documentation for cross_corr_plot (#691)
- Fix bugs and documentation for plot_backtest and plot_backtest_interactive (#700)
- Make STLTransform to work with NaNs at the beginning (#736)
- Fix tiny prediction intervals (#722)
- Fix deepcopy issue for fitted deepmodel (#735)
- Fix making backtest if all segments start with NaNs (#728)
- Fix logging issues with backtest while emp intervals using (#747)
- Remove parameter normalize in linear models (#686)
- Add missed
forecast_params
in forecast CLI method (#671) - Add
_per_segment_average
method to the Metric class (#684) - Fix
get_statistics_relevance_table
working with NaNs and categoricals (#672) - Fix bugs and documentation for stl_plot (#685)
- Fix cuda docker images (#694])
Width
andCoverage
metrics for prediction intervals (#638)- Masked backtest (#613)
- Add seasonal_plot (#628)
- Add plot_periodogram (#606)
- Add support of quantiles in backtest (#652)
- Add prediction_actual_scatter_plot (#610)
- Add plot_holidays (#624)
- Add instruction about documentation formatting to contribution guide (#648)
- Seasonal strategy in TimeSeriesImputerTransform (#639)
- Add logging to
Metric.__call__
(#643) - Add in_column to plot_anomalies, plot_anomalies_interactive (#618)
- Add logging to TSDataset.inverse_transform (#642)
- Passing non default params for default models STLTransform (#641)
- Fixed bug in SARIMAX model with
horizon
=1 (#637) - Fixed bug in models
get_model
method (#623) - Fixed unsafe comparison in plots (#611)
- Fixed plot_trend does not work with Linear and TheilSen transforms (#617)
- Improve computation time for rolling window statistics (#625)
- Don't fill first timestamps in TimeSeriesImputerTransform (#634)
- Fix documentation formatting (#636)
- Fix bug with exog features in AutoRegressivePipeline (#647)
- Fix missed dependencies (#656)
- Fix custom_transform_and_model notebook (#651)
- Fix MyBinder bug with dependencies (#650)
- Regressors logic to TSDatasets init (#357)
FutureMixin
into some transforms (#361)- Regressors updating in TSDataset transform loops (#374)
- Regressors handling in TSDataset
make_future
andtrain_test_split
(#447) - Prediction intervals visualization in
plot_forecast
(#538) - Add plot_imputation (#598)
- Add plot_time_series_with_change_points function (#534)
- Add plot_trend (#565)
- Add find_change_points function (#521)
- Add option
day_number_in_year
to DateFlagsTransform (#552) - Add plot_residuals (#539)
- Add get_residuals (#597)
- Create
PerSegmentBaseModel
,PerSegmentPredictionIntervalModel
(#537) - Create
MultiSegmentModel
(#551) - Add qq_plot (#604)
- Add regressors example notebook (#577)
- Create
EnsembleMixin
(#574) - Add option
season_number
to DateFlagsTransform (#567) - Create
BasePipeline
, add prediction intervals to all the pipelines, move parameter n_fold to forecast (#578) - Add stl_plot (#575)
- Add plot_features_relevance (#579)
- Add community section to README.md (#580)
- Create
AbstaractPipeline
(#573) - Option "auto" to
weights
parameter ofVotingEnsemble
, enables to use feature importance as weights of base estimators (#587)
- Change the way
ProphetModel
works with regressors (#383) - Change the way
SARIMAXModel
works with regressors (#380) - Change the way
Sklearn
models works with regressors (#440) - Change the way
FeatureSelectionTransform
works with regressors, rename variables replacing the "regressor" to "feature" (#522) - Add table option to ConsoleLogger (#544)
- Installation instruction (#526)
- Update plot_forecast for multi-forecast mode (#584)
- Trainer kwargs for deep models (#540)
- Update CONTRIBUTING.md (#536)
- Rename
_CatBoostModel
,_HoltWintersModel
,_SklearnModel
(#543) - Add logging to TSDataset.make_future, log repr of transform instead of class name (#555)
- Rename
_SARIMAXModel
and_ProphetModel
, makeSARIMAXModel
andProphetModel
inherit fromPerSegmentPredictionIntervalModel
(#549) - Update get_started section in README (#569)
- Make detrending polynomial (#566)
- Update documentation about transforms that generate regressors, update examples with them (#572)
- Fix that segment is string (#602)
- Make
LabelEncoderTransform
andOneHotEncoderTransform
multi-segment (#554)
- Fix
TSDataset._update_regressors
logic removing the regressors (#489) - Fix
TSDataset.info
,TSDataset.describe
methods (#519) - Fix regressors handling for
OneHotEncoderTransform
andHolidayTransform
(#518) - Fix wandb summary issue with custom plots (#535)
- Small notebook fixes (#595)
- Fix import Literal in plotters (#558)
- Fix plot method bug when plot method does not plot all required segments (#596)
- Fix dependencies for ARM (#599)
- [BUG] nn models make forecast without inverse_transform (#541)
- Fixed adding unnecessary lag=1 in statistics (#523)
- Fixed wrong MeanTransform behaviour when using alpha parameter (#523)
- Fix processing add_noise=True parameter in datasets generation (#520)
- Fix scipy version (#525)
- Holt-Winters', Holt and exponential smoothing models (#502)
- Bug with exog features in DifferencingTransform.inverse_transform (#503)
- Allow choosing start and end in
TSDataset.plot
method (488)
- Make TSDataset.to_flatten faster (#475)
- Allow logger percentile metric aggregation to work with NaNs (#483)
- Can't make forecasting with pipelines, data with nans, and Imputers (#473)
- Method TSDataset.info (#409)
- DifferencingTransform (#414)
- OneHotEncoderTransform and LabelEncoderTransform (#431)
- MADTransform (#441)
MRMRFeatureSelectionTransform
(#439)- Possibility to change metric representation in backtest using Metric.name (#454)
- Warning section in documentation about look-ahead bias (#464)
- Parameter
figsize
to all the plotters #465
- Change method TSDataset.describe (#409)
- Group Transforms according to their impact (#420)
- Change the way
LagTransform
,DateFlagsTransform
andTimeFlagsTransform
generate column names (#421) - Clarify the behaviour of TimeSeriesImputerTransform in case of all NaN values (#427)
- Fixed bug in title in
sample_acf_plot
method (#432) - Pytorch-forecasting and sklearn version update + some pytroch transform API changing (#445)
- Add relevance_params in GaleShapleyFeatureSelectionTransform (#410)
- Docs for statistics transforms (#441)
- Handling NaNs in trend transforms (#456)
- Logger fails with StackingEnsemble (#460)
- SARIMAX parameters fix (#459)
- [BUG] Check pytorch-forecasting models with freq > "1D" (#463)
- Holiday Transform (#359)
- S3FileLogger and LocalFileLogger (#372)
- Parameter
changepoint_prior_scale
toProphetModel
(#408)
- Set
strict_optional = True
for mypy (#381) - Move checking the series endings to
make_future
step (#413)
- Sarimax bug in future prediction with quantiles (#391)
- Catboost version too high (#394)
- Add sorting of classes in left bar in docs (#397)
- nn notebook in docs (#396)
- SklearnTransform column name generation (#398)
- Inverse transform doesn't affect quantiles (#395)
- Docs generation for neural networks
- Speed up
_check_regressors
and_merge_exog
(#360)
Model
,PerSegmentModel
,PerSegmentWrapper
imports (#362)- Docs generation (#363)
- Fixed work of get_anomalies_density with constant series (#334)
- ACF plot (#318)
- Add
ts.inverse_transform
as final step atPipeline.fit
method (#316) - Make test_ts optional in plot_forecast (#321)
- Speed up inference for multisegment regression models (#333)
- Speed up Pipeline._get_backtest_forecasts (#336)
- Speed up SegmentEncoderTransform (#331)
- Wandb Logger does not work unless pytorch is installed (#340)
- Get rid of lambda in DensityOutliersTransform and get_anomalies_density (#341)
- Fixed import in transforms (#349)
- Pickle DTWClustering (#350)
- Remove TimeSeriesCrossValidation (#337)
- RelevanceTable returns rank (#268)
- GaleShapleyFeatureSelectionTransform (#284)
- FilterFeaturesTransform (#277)
- Spell checking for source code and md files (#303)
- ResampleWithDistributionTransform (#296)
- Add function to duplicate exogenous data (#305)
- FourierTransform (#306)
- Rename confidence interval to prediction interval, start working with quantiles instead of interval_width (#285)
- Changed format of forecast and test dataframes in WandbLogger (#309)
- Add sum for omegaconf resolvers (#300)
- Delete restriction on version of pandas (#274)
- Backtest cli (#223, #259)
- TreeFeatureSelectionTransform (#229)
- Feature relevance table calculation using tsfresh (#227, #249)
- Method to_flatten to TSDataset (#241
- Out_column parameter to not inplace transforms(#211)
- omegaconf config parser in cli (#258)
- Feature relevance table calculation using feature importance (#261)
- MeanSegmentEncoderTransform (#265)
- Add possibility to set custom in_column for ConfidenceIntervalOutliersTransform (#240)
- Make
in_column
the first argument in every transform (#247) - Update mypy checking and fix issues with it (#248)
- Add histogram method in outliers notebook (#252)
- Joblib parameters for backtest and ensembles (#253)
- Replace cycle over segments with vectorized expression in TSDataset._check_endings (#264)
- Fixed broken links in docs command section (#223)
- Fix default value for TSDataset.tail (#245)
- Fix raising warning on fitting SklearnModel on dataset categorical columns (#250)
- Fix working TSDataset.make_future with empty exog values (#244)
- Fix issue with aggregate_metrics=True for ConsoleLogger and WandbLogger (#254)
- Fix binder requirements to work with optional dependencies (#257)
- BinsegTrendTransform, ChangePointsTrendTransform (#87)
- Interactive plot for anomalies (#95)
- Examples to TSDataset methods with doctest (#92)
- WandbLogger (#71)
- Pipeline (#78)
- Sequence anomalies (#96), Histogram anomalies (#79)
- 'is_weekend' feature in DateFlagsTransform (#101)
- Documentation example for models and note about inplace nature of forecast (#112)
- Property regressors to TSDataset (#82)
- Clustering (#110)
- Outliers notebook (#123))
- Method inverse_transform in TimeSeriesImputerTransform (#135)
- VotingEnsemble (#150)
- Forecast command for cli (#133)
- MyPy checks in CI/CD and lint commands (#39)
- TrendTransform (#139)
- Running notebooks in ci (#134)
- Cluster plotter to EDA (#169)
- Pipeline.backtest method (#161, #192)
- STLTransform class (#158)
- NN_examples notebook (#159)
- Example for ProphetModel (#178)
- Instruction notebook for custom model and transform creation (#180)
- Add inverse_transform in *OutliersTransform (#160)
- Examples for CatBoostModelMultiSegment and CatBoostModelPerSegment (#181)
- Simplify TSDataset.train_test_split method by allowing to pass not all values (#191)
- Confidence interval anomalies detection to EDA (#182)
- ConfidenceIntervalOutliersTransform (#196)
- Add 'in_column' parameter to get_anomalies methods(#199)
- Clustering notebook (#152)
- StackingEnsemble (#195)
- Add AutoRegressivePipeline (#209)
- Ensembles notebook (#218)
- Function plot_backtest_interactive (#225)
- Confidence intervals in Pipeline (#221)
- Delete offset from WindowStatisticsTransform (#111)
- Add Pipeline example in Get started notebook (#115)
- Internal implementation of BinsegTrendTransform (#141)
- Colorebar scaling in Correlation heatmap plotter (#143)
- Add Correlation heatmap in EDA notebook (#144)
- Add
__repr__
for Pipeline (#151) - Defined random state for every test cases (#155)
- Add confidence intervals to Prophet (#153)
- Add confidence intervals to SARIMA (#172)
- Add badges to all example notebooks (#220)
- Update backtest notebook by adding Pipeline.backtest (222)
- Set default value of
TSDataset.head
method (#170) - Categorical and fillna issues with pandas >=1.2 (#190)
- Fix
TSDataset.to_dataset
method sorting bug (#183) - Undefined behaviour of DataFrame.loc[:, pd.IndexSlice[:, ["a", "b"]]] between 1.1.* and >= 1.2 (#188)
- Fix typo in word "length" in
get_segment_sequence_anomalies
,get_sequence_anomalies
,SAXOutliersTransform
arguments (#212) - Make possible to send backtest plots with many segments (#225)
- Limit version of pandas by 1.2 (excluding) (#163)
- SklearnTransform out column names (#99)
- Update EDA notebook (#96)
- Add 'regressor_' prefix to output columns of LagTransform, DateFlagsTransform, SpecialDaysTransform, SegmentEncoderTransform
- Add more obvious Exception Error for forecasting with unfitted model (#102)
- Fix bug with hardcoded frequency in PytorchForecastingTransform (#107)
- Bug with inverse_transform method of TimeSeriesImputerTransform (#148)
- Documentation build workflow (#85)
- MedianOutliersTransform, DensityOutliersTransform (#30)
- Issues and Pull Request templates
- TSDataset checks (#24, #20)\
- Pytorch-Forecasting models (#29)
- SARIMAX model (#10)
- Logging, including ConsoleLogger (#46)
- Correlation heatmap plotter (#77)
- Backtest is fully parallel
- New default hyperparameters for CatBoost
- Add 'regressor_' prefix to output columns of LagTransform, DateFlagsTransform, SpecialDaysTransform, SegmentEncoderTransform
- Documentation fixes (#55, #53, #52)
- Solved warning in LogTransform and AddConstantTransform (#26)
- Regressors do not have enough history bug (#35)
- make_future(1) and make_future(2) bug
- Fix working with 'cap' and 'floor' features in Prophet model (#62)
- Fix saving init params for SARIMAXModel (#81)
- Imports of nn models, PytorchForecastingTransform and Transform (#80)
- Models
- CatBoost
- Prophet
- Seasonal Moving Average
- Naive
- Linear
- Transforms
- Rolling statistics
- Trend removal
- Segment encoder
- Datetime flags
- Sklearn's scalers (MinMax, Robust, MinMaxAbs, Standard, MaxAbs)
- BoxCox, YeoJohnson, LogTransform
- Lag operator
- NaN imputer
- TimeSeriesCrossValidation
- Time Series Dataset (TSDataset)
- Playground datasets generation (AR, constant, periodic, from pattern)
- Metrics (MAE, MAPE, SMAPE, MedAE, MSE, MSLE, R^2)
- EDA methods
- Outliers detection
- PACF plot
- Cross correlation plot
- Distribution plot
- Anomalies (Outliers) plot
- Backtest (CrossValidation) plot
- Forecast plot