autogluon.timeseries 1.0.1b20231231__py3-none-any.whl → 1.0.1b20240206__py3-none-any.whl

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.

Potentially problematic release.


This version of autogluon.timeseries might be problematic. Click here for more details.

Files changed (18) hide show
  1. autogluon/timeseries/models/abstract/abstract_timeseries_model.py +0 -6
  2. autogluon/timeseries/models/autogluon_tabular/mlforecast.py +0 -2
  3. autogluon/timeseries/models/ensemble/greedy_ensemble.py +0 -3
  4. autogluon/timeseries/models/gluonts/abstract_gluonts.py +0 -2
  5. autogluon/timeseries/models/local/abstract_local_model.py +1 -3
  6. autogluon/timeseries/models/multi_window/multi_window_model.py +0 -4
  7. autogluon/timeseries/predictor.py +27 -9
  8. autogluon/timeseries/trainer/abstract_trainer.py +15 -14
  9. autogluon/timeseries/version.py +1 -1
  10. {autogluon.timeseries-1.0.1b20231231.dist-info → autogluon.timeseries-1.0.1b20240206.dist-info}/METADATA +59 -118
  11. {autogluon.timeseries-1.0.1b20231231.dist-info → autogluon.timeseries-1.0.1b20240206.dist-info}/RECORD +18 -18
  12. /autogluon.timeseries-1.0.1b20231231-py3.8-nspkg.pth → /autogluon.timeseries-1.0.1b20240206-py3.8-nspkg.pth +0 -0
  13. {autogluon.timeseries-1.0.1b20231231.dist-info → autogluon.timeseries-1.0.1b20240206.dist-info}/LICENSE +0 -0
  14. {autogluon.timeseries-1.0.1b20231231.dist-info → autogluon.timeseries-1.0.1b20240206.dist-info}/NOTICE +0 -0
  15. {autogluon.timeseries-1.0.1b20231231.dist-info → autogluon.timeseries-1.0.1b20240206.dist-info}/WHEEL +0 -0
  16. {autogluon.timeseries-1.0.1b20231231.dist-info → autogluon.timeseries-1.0.1b20240206.dist-info}/namespace_packages.txt +0 -0
  17. {autogluon.timeseries-1.0.1b20231231.dist-info → autogluon.timeseries-1.0.1b20240206.dist-info}/top_level.txt +0 -0
  18. {autogluon.timeseries-1.0.1b20231231.dist-info → autogluon.timeseries-1.0.1b20240206.dist-info}/zip-safe +0 -0
@@ -227,11 +227,6 @@ class AbstractTimeSeriesModel(AbstractModel):
227
227
  verbosity : int, default = 2
228
228
  Verbosity levels range from 0 to 4 and control how much information is printed.
229
229
  Higher levels correspond to more detailed print statements (you can set verbosity = 0 to suppress warnings).
230
- verbosity 4: logs every training iteration, and logs the most detailed information.
231
- verbosity 3: logs training iterations periodically, and logs more detailed information.
232
- verbosity 2: logs only important information.
233
- verbosity 1: logs only warnings and exceptions.
234
- verbosity 0: logs only exceptions.
235
230
  **kwargs :
236
231
  Any additional fit arguments a model supports.
237
232
 
@@ -427,7 +422,6 @@ class AbstractTimeSeriesModel(AbstractModel):
427
422
  hpo_executor: HpoExecutor,
428
423
  **kwargs,
429
424
  ):
430
- # verbosity = kwargs.get('verbosity', 2)
431
425
  time_start = time.time()
432
426
  logger.debug(f"\tStarting AbstractTimeSeriesModel hyperparameter tuning for {self.name}")
433
427
  search_space = self._get_search_space()
@@ -9,7 +9,6 @@ import pandas as pd
9
9
  from sklearn.base import BaseEstimator
10
10
 
11
11
  import autogluon.core as ag
12
- from autogluon.common.utils.log_utils import set_logger_verbosity
13
12
  from autogluon.tabular import TabularPredictor
14
13
  from autogluon.timeseries.dataset.ts_dataframe import ITEMID, TIMESTAMP, TimeSeriesDataFrame
15
14
  from autogluon.timeseries.models.abstract import AbstractTimeSeriesModel
@@ -249,7 +248,6 @@ class AbstractMLForecastModel(AbstractTimeSeriesModel):
249
248
  from mlforecast import MLForecast
250
249
 
251
250
  self._check_fit_params()
252
- set_logger_verbosity(verbosity, logger=logger)
253
251
  fit_start_time = time.time()
254
252
  # TabularEstimator is passed to MLForecast later to include tuning_data
255
253
  model_params = self._get_model_params()
@@ -6,7 +6,6 @@ from typing import Dict, List, Optional
6
6
  import numpy as np
7
7
 
8
8
  import autogluon.core as ag
9
- from autogluon.common.utils.log_utils import set_logger_verbosity
10
9
  from autogluon.core.models.greedy_ensemble.ensemble_selection import EnsembleSelection
11
10
  from autogluon.timeseries import TimeSeriesDataFrame
12
11
  from autogluon.timeseries.metrics import TimeSeriesScorer
@@ -112,10 +111,8 @@ class TimeSeriesGreedyEnsemble(AbstractTimeSeriesEnsembleModel):
112
111
  predictions_per_window: Dict[str, List[TimeSeriesDataFrame]],
113
112
  data_per_window: List[TimeSeriesDataFrame],
114
113
  time_limit: Optional[int] = None,
115
- verbosity: int = 2,
116
114
  **kwargs,
117
115
  ):
118
- set_logger_verbosity(verbosity, logger=logger)
119
116
  if self.eval_metric_seasonal_period is None:
120
117
  self.eval_metric_seasonal_period = get_seasonality(self.freq)
121
118
  ensemble_selection = TimeSeriesEnsembleSelection(
@@ -18,7 +18,6 @@ from gluonts.model.predictor import Predictor as GluonTSPredictor
18
18
  from pandas.tseries.frequencies import to_offset
19
19
 
20
20
  from autogluon.common.loaders import load_pkl
21
- from autogluon.common.utils.log_utils import set_logger_verbosity
22
21
  from autogluon.core.hpo.constants import RAY_BACKEND
23
22
  from autogluon.timeseries.dataset.ts_dataframe import ITEMID, TIMESTAMP, TimeSeriesDataFrame
24
23
  from autogluon.timeseries.models.abstract import AbstractTimeSeriesModel
@@ -383,7 +382,6 @@ class AbstractGluonTSModel(AbstractTimeSeriesModel):
383
382
  if "lightning" in logger_name:
384
383
  pl_logger = logging.getLogger(logger_name)
385
384
  pl_logger.setLevel(logging.ERROR if verbosity <= 3 else logging.INFO)
386
- set_logger_verbosity(verbosity, logger=logger)
387
385
  gts_logger.setLevel(logging.ERROR if verbosity <= 3 else logging.INFO)
388
386
 
389
387
  if verbosity > 3:
@@ -8,7 +8,6 @@ import pandas as pd
8
8
  from joblib import Parallel, delayed
9
9
  from scipy.stats import norm
10
10
 
11
- from autogluon.common.utils.log_utils import set_logger_verbosity
12
11
  from autogluon.core.utils.exceptions import TimeLimitExceeded
13
12
  from autogluon.timeseries.dataset.ts_dataframe import ITEMID, TimeSeriesDataFrame
14
13
  from autogluon.timeseries.models.abstract import AbstractTimeSeriesModel
@@ -87,9 +86,8 @@ class AbstractLocalModel(AbstractTimeSeriesModel):
87
86
  self._seasonal_period: Optional[int] = None
88
87
  self.time_limit: Optional[float] = None
89
88
 
90
- def _fit(self, train_data: TimeSeriesDataFrame, time_limit: Optional[int] = None, verbosity: int = 2, **kwargs):
89
+ def _fit(self, train_data: TimeSeriesDataFrame, time_limit: Optional[int] = None, **kwargs):
91
90
  self._check_fit_params()
92
- set_logger_verbosity(verbosity, logger=logger)
93
91
 
94
92
  if time_limit is not None and time_limit < self.init_time_in_seconds:
95
93
  raise TimeLimitExceeded
@@ -9,7 +9,6 @@ from typing import Dict, Optional, Type, Union
9
9
  import numpy as np
10
10
 
11
11
  import autogluon.core as ag
12
- from autogluon.common.utils.log_utils import set_logger_verbosity
13
12
  from autogluon.timeseries.dataset.ts_dataframe import TimeSeriesDataFrame
14
13
  from autogluon.timeseries.models.abstract import AbstractTimeSeriesModel
15
14
  from autogluon.timeseries.models.local.abstract_local_model import AbstractLocalModel
@@ -82,9 +81,6 @@ class MultiWindowBacktestingModel(AbstractTimeSeriesModel):
82
81
  ):
83
82
  # TODO: use incremental training for GluonTS models?
84
83
  # TODO: implement parallel fitting similar to ParallelLocalFoldFittingStrategy in tabular?
85
- verbosity = kwargs.get("verbosity", 2)
86
- set_logger_verbosity(verbosity, logger=logger)
87
-
88
84
  if val_data is not None:
89
85
  raise ValueError(f"val_data should not be passed to {self.name}.fit()")
90
86
  if val_splitter is None:
@@ -9,7 +9,7 @@ from typing import Any, Dict, List, Optional, Tuple, Type, Union
9
9
  import pandas as pd
10
10
 
11
11
  from autogluon.common.utils.deprecated_utils import Deprecated
12
- from autogluon.common.utils.log_utils import set_logger_verbosity
12
+ from autogluon.common.utils.log_utils import add_log_to_file, set_logger_verbosity
13
13
  from autogluon.common.utils.system_info import get_ag_system_info
14
14
  from autogluon.common.utils.utils import check_saved_predictor_version, seed_everything, setup_outputdir
15
15
  from autogluon.core.utils.decorators import apply_presets
@@ -23,7 +23,7 @@ from autogluon.timeseries.metrics import TimeSeriesScorer, check_get_evaluation_
23
23
  from autogluon.timeseries.splitter import ExpandingWindowSplitter
24
24
  from autogluon.timeseries.trainer import AbstractTimeSeriesTrainer
25
25
 
26
- logger = logging.getLogger(__name__)
26
+ logger = logging.getLogger("autogluon.timeseries")
27
27
 
28
28
 
29
29
  class TimeSeriesPredictorDeprecatedMixin:
@@ -123,9 +123,15 @@ class TimeSeriesPredictor(TimeSeriesPredictorDeprecatedMixin):
123
123
  verbosity : int, default = 2
124
124
  Verbosity levels range from 0 to 4 and control how much information is printed to stdout. Higher levels
125
125
  correspond to more detailed print statements, and ``verbosity=0`` suppresses output including warnings.
126
- If using ``logging``, you can alternatively control amount of information printed via ``logger.setLevel(L)``,
127
- where ``L`` ranges from 0 to 50 (Note: higher values of ``L`` correspond to fewer print statements, opposite
128
- of verbosity levels).
126
+ Verbosity 0 corresponds to Python's ERROR log level, where only error outputs will be logged. Verbosity 1 and 2
127
+ will additionally log warnings and info outputs, respectively. Verbosity 4 enables all logging output including
128
+ debug messages from AutoGluon and all logging in dependencies (GluonTS, PyTorch Lightning, AutoGluon-Tabular, etc.)
129
+ log_to_file: bool, default = True
130
+ Whether to save the logs into a file for later reference
131
+ log_file_path: Union[str, Path], default = "auto"
132
+ File path to save the logs.
133
+ If auto, logs will be saved under `predictor_path/logs/predictor_log.txt`.
134
+ Will be ignored if `log_to_file` is set to False
129
135
  cache_predictions : bool, default = True
130
136
  If True, the predictor will cache and reuse the predictions made by individual models whenever
131
137
  :meth:`~autogluon.timeseries.TimeSeriesPredictor.predict`, :meth:`~autogluon.timeseries.TimeSeriesPredictor.leaderboard`,
@@ -138,6 +144,7 @@ class TimeSeriesPredictor(TimeSeriesPredictorDeprecatedMixin):
138
144
 
139
145
  predictor_file_name = "predictor.pkl"
140
146
  _predictor_version_file_name = "__version__"
147
+ _predictor_log_file_name = "predictor_log.txt"
141
148
 
142
149
  def __init__(
143
150
  self,
@@ -149,6 +156,8 @@ class TimeSeriesPredictor(TimeSeriesPredictorDeprecatedMixin):
149
156
  eval_metric_seasonal_period: Optional[int] = None,
150
157
  path: Optional[Union[str, Path]] = None,
151
158
  verbosity: int = 2,
159
+ log_to_file: bool = True,
160
+ log_file_path: Union[str, Path] = "auto",
152
161
  quantile_levels: Optional[List[float]] = None,
153
162
  cache_predictions: bool = True,
154
163
  learner_type: Optional[Type[AbstractLearner]] = None,
@@ -159,6 +168,7 @@ class TimeSeriesPredictor(TimeSeriesPredictorDeprecatedMixin):
159
168
  self.verbosity = verbosity
160
169
  set_logger_verbosity(self.verbosity, logger=logger)
161
170
  self.path = setup_outputdir(path)
171
+ self._setup_log_to_file(log_to_file=log_to_file, log_file_path=log_file_path)
162
172
 
163
173
  self.cache_predictions = cache_predictions
164
174
  if target is not None and label is not None:
@@ -229,6 +239,14 @@ class TimeSeriesPredictor(TimeSeriesPredictorDeprecatedMixin):
229
239
  def _trainer(self) -> AbstractTimeSeriesTrainer:
230
240
  return self._learner.load_trainer() # noqa
231
241
 
242
+ def _setup_log_to_file(self, log_to_file: bool, log_file_path: Union[str, Path]) -> None:
243
+ if log_to_file:
244
+ if log_file_path == "auto":
245
+ log_file_path = os.path.join(self.path, "logs", self._predictor_log_file_name)
246
+ log_file_path = os.path.abspath(os.path.normpath(log_file_path))
247
+ os.makedirs(os.path.dirname(log_file_path), exist_ok=True)
248
+ add_log_to_file(log_file_path)
249
+
232
250
  def _to_data_frame(
233
251
  self,
234
252
  data: Union[TimeSeriesDataFrame, pd.DataFrame, str],
@@ -621,6 +639,10 @@ class TimeSeriesPredictor(TimeSeriesPredictorDeprecatedMixin):
621
639
  if self._learner.is_fit:
622
640
  raise AssertionError("Predictor is already fit! To fit additional models create a new `Predictor`.")
623
641
 
642
+ if verbosity is None:
643
+ verbosity = self.verbosity
644
+ set_logger_verbosity(verbosity, logger=logger)
645
+
624
646
  logger.info("Beginning AutoGluon training..." + (f" Time limit = {time_limit}s" if time_limit else ""))
625
647
  logger.info(f"AutoGluon will save models to '{self.path}'")
626
648
  logger.info(get_ag_system_info(path=self.path, include_gpu_count=True))
@@ -628,10 +650,6 @@ class TimeSeriesPredictor(TimeSeriesPredictorDeprecatedMixin):
628
650
  if hyperparameters is None:
629
651
  hyperparameters = "default"
630
652
 
631
- if verbosity is None:
632
- verbosity = self.verbosity
633
- set_logger_verbosity(verbosity)
634
-
635
653
  fit_args = dict(
636
654
  prediction_length=self.prediction_length,
637
655
  target=self.target,
@@ -12,7 +12,6 @@ import numpy as np
12
12
  import pandas as pd
13
13
  from tqdm import tqdm
14
14
 
15
- from autogluon.common.utils.log_utils import set_logger_verbosity
16
15
  from autogluon.common.utils.utils import hash_pandas_df
17
16
  from autogluon.core.models import AbstractModel
18
17
  from autogluon.core.utils.exceptions import TimeLimitExceeded
@@ -275,7 +274,6 @@ class AbstractTimeSeriesTrainer(SimpleAbstractTrainer):
275
274
  self.ensemble_model_type = TimeSeriesGreedyEnsemble
276
275
 
277
276
  self.verbosity = verbosity
278
- set_logger_verbosity(self.verbosity, logger=logger)
279
277
 
280
278
  # Dict of normal model -> FULL model. FULL models are produced by
281
279
  # self.refit_single_full() and self.refit_full().
@@ -688,9 +686,7 @@ class AbstractTimeSeriesTrainer(SimpleAbstractTrainer):
688
686
  quantile_levels=self.quantile_levels,
689
687
  metadata=self.metadata,
690
688
  )
691
- ensemble.fit_ensemble(
692
- model_preds, data_per_window=data_per_window, time_limit=time_limit, verbosity=self.verbosity
693
- )
689
+ ensemble.fit_ensemble(model_preds, data_per_window=data_per_window, time_limit=time_limit)
694
690
  ensemble.fit_time = time.time() - time_start
695
691
 
696
692
  predict_time = 0
@@ -717,6 +713,9 @@ class AbstractTimeSeriesTrainer(SimpleAbstractTrainer):
717
713
  logger.debug("Generating leaderboard for all models trained")
718
714
 
719
715
  model_names = self.get_model_names()
716
+ if len(model_names) == 0:
717
+ logger.warning("Warning: No models were trained during fit. Resulting leaderboard will be empty.")
718
+
720
719
  model_info = {}
721
720
  for ix, model_name in enumerate(model_names):
722
721
  model_info[model_name] = {
@@ -754,12 +753,6 @@ class AbstractTimeSeriesTrainer(SimpleAbstractTrainer):
754
753
  model_info[model_name]["score_test"] = self._score_with_predictions(data, model_preds)
755
754
  model_info[model_name]["pred_time_test"] = pred_time_dict[model_name]
756
755
 
757
- df = pd.DataFrame(model_info.values())
758
-
759
- sort_column = "score_test" if "score_test" in df.columns else "score_val"
760
- df.sort_values(by=[sort_column, "model"], ascending=[False, False], inplace=True)
761
- df.reset_index(drop=True, inplace=True)
762
-
763
756
  explicit_column_order = [
764
757
  "model",
765
758
  "score_test",
@@ -769,9 +762,17 @@ class AbstractTimeSeriesTrainer(SimpleAbstractTrainer):
769
762
  "fit_time_marginal",
770
763
  "fit_order",
771
764
  ]
772
- explicit_column_order = [c for c in explicit_column_order if c in df.columns] + [
773
- c for c in df.columns if c not in explicit_column_order
774
- ]
765
+
766
+ df = pd.DataFrame(model_info.values(), columns=explicit_column_order)
767
+ if data is None:
768
+ explicit_column_order.remove("score_test")
769
+ explicit_column_order.remove("pred_time_test")
770
+ sort_column = "score_val"
771
+ else:
772
+ sort_column = "score_test"
773
+
774
+ df.sort_values(by=[sort_column, "model"], ascending=[False, False], inplace=True)
775
+ df.reset_index(drop=True, inplace=True)
775
776
 
776
777
  return df[explicit_column_order]
777
778
 
@@ -1,3 +1,3 @@
1
1
  """This is the autogluon version file."""
2
- __version__ = '1.0.1b20231231'
2
+ __version__ = '1.0.1b20240206'
3
3
  __lite__ = False
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.1
2
2
  Name: autogluon.timeseries
3
- Version: 1.0.1b20231231
3
+ Version: 1.0.1b20240206
4
4
  Summary: AutoML for Image, Text, and Tabular Data
5
5
  Home-page: https://github.com/autogluon/autogluon
6
6
  Author: AutoGluon Community
@@ -50,9 +50,9 @@ Requires-Dist: utilsforecast <0.0.11,>=0.0.10
50
50
  Requires-Dist: tqdm <5,>=4.38
51
51
  Requires-Dist: orjson ~=3.9
52
52
  Requires-Dist: tensorboard <3,>=2.9
53
- Requires-Dist: autogluon.core[raytune] ==1.0.1b20231231
54
- Requires-Dist: autogluon.common ==1.0.1b20231231
55
- Requires-Dist: autogluon.tabular[catboost,lightgbm,xgboost] ==1.0.1b20231231
53
+ Requires-Dist: autogluon.core[raytune] ==1.0.1b20240206
54
+ Requires-Dist: autogluon.common ==1.0.1b20240206
55
+ Requires-Dist: autogluon.tabular[catboost,lightgbm,xgboost] ==1.0.1b20240206
56
56
  Provides-Extra: all
57
57
  Provides-Extra: tests
58
58
  Requires-Dist: pytest ; extra == 'tests'
@@ -64,39 +64,46 @@ Requires-Dist: black ~=23.0 ; extra == 'tests'
64
64
 
65
65
 
66
66
 
67
-
68
- <div align="left">
69
- <img src="https://user-images.githubusercontent.com/16392542/77208906-224aa500-6aba-11ea-96bd-e81806074030.png" width="350">
70
- </div>
67
+ <div align="center">
68
+ <img src="https://user-images.githubusercontent.com/16392542/77208906-224aa500-6aba-11ea-96bd-e81806074030.png" width="350">
71
69
 
72
70
  ## AutoML for Image, Text, Time Series, and Tabular Data
73
71
 
74
72
  [![Latest Release](https://img.shields.io/github/v/release/autogluon/autogluon)](https://github.com/autogluon/autogluon/releases)
75
- [![Continuous Integration](https://github.com/autogluon/autogluon/actions/workflows/continuous_integration.yml/badge.svg)](https://github.com/autogluon/autogluon/actions/workflows/continuous_integration.yml)
76
- [![Platform Tests](https://github.com/autogluon/autogluon/actions/workflows/platform_tests-command.yml/badge.svg?event=schedule)](https://github.com/autogluon/autogluon/actions/workflows/platform_tests-command.yml)
73
+ [![Conda Forge](https://img.shields.io/conda/vn/conda-forge/autogluon.svg)](https://anaconda.org/conda-forge/autogluon)
77
74
  [![Python Versions](https://img.shields.io/badge/python-3.8%20%7C%203.9%20%7C%203.10%20%7C%203.11-blue)](https://pypi.org/project/autogluon/)
78
- [![GitHub license](https://img.shields.io/badge/License-Apache_2.0-blue.svg)](./LICENSE)
79
75
  [![Downloads](https://pepy.tech/badge/autogluon/month)](https://pepy.tech/project/autogluon)
80
- [![](https://img.shields.io/discord/1043248669505368144?logo=discord&style=flat)](https://discord.gg/wjUmjqAc2N)
76
+ [![GitHub license](https://img.shields.io/badge/License-Apache_2.0-blue.svg)](./LICENSE)
77
+ [![Discord](https://img.shields.io/discord/1043248669505368144?logo=discord&style=flat)](https://discord.gg/wjUmjqAc2N)
81
78
  [![Twitter](https://img.shields.io/twitter/follow/autogluon?style=social)](https://twitter.com/autogluon)
79
+ [![Continuous Integration](https://github.com/autogluon/autogluon/actions/workflows/continuous_integration.yml/badge.svg)](https://github.com/autogluon/autogluon/actions/workflows/continuous_integration.yml)
80
+ [![Platform Tests](https://github.com/autogluon/autogluon/actions/workflows/platform_tests-command.yml/badge.svg?event=schedule)](https://github.com/autogluon/autogluon/actions/workflows/platform_tests-command.yml)
82
81
 
83
- [Install Instructions](https://auto.gluon.ai/stable/install.html) | Documentation ([Stable](https://auto.gluon.ai/stable/index.html) | [Latest](https://auto.gluon.ai/dev/index.html))
82
+ [Install Instructions](https://auto.gluon.ai/stable/install.html) | [Documentation](https://auto.gluon.ai/stable/index.html) | [Release Notes](https://auto.gluon.ai/stable/whats_new/index.html)
84
83
 
85
84
  AutoGluon automates machine learning tasks enabling you to easily achieve strong predictive performance in your applications. With just a few lines of code, you can train and deploy high-accuracy machine learning and deep learning models on image, text, time series, and tabular data.
85
+ </div>
86
+
87
+ ## 💾 Installation
88
+
89
+ AutoGluon is supported on Python 3.8 - 3.11 and is available on Linux, MacOS, and Windows.
86
90
 
87
- ## Example
91
+ You can install AutoGluon with:
88
92
 
89
93
  ```python
90
- # First install package from terminal:
91
- # pip install -U pip
92
- # pip install -U setuptools wheel
93
- # pip install autogluon # autogluon==1.0.0
94
-
95
- from autogluon.tabular import TabularDataset, TabularPredictor
96
- train_data = TabularDataset('https://autogluon.s3.amazonaws.com/datasets/Inc/train.csv')
97
- test_data = TabularDataset('https://autogluon.s3.amazonaws.com/datasets/Inc/test.csv')
98
- predictor = TabularPredictor(label='class').fit(train_data, time_limit=120) # Fit models for 120s
99
- leaderboard = predictor.leaderboard(test_data)
94
+ pip install autogluon
95
+ ```
96
+
97
+ Visit our [Installation Guide](https://auto.gluon.ai/stable/install.html) for detailed instructions, including GPU support, Conda installs, and optional dependencies.
98
+
99
+ ## :zap: Quickstart
100
+
101
+ Build accurate end-to-end ML models in just 3 lines of code!
102
+
103
+ ```python
104
+ from autogluon.tabular import TabularPredictor
105
+ predictor = TabularPredictor(label="class").fit("train.csv")
106
+ predictions = predictor.predict("test.csv")
100
107
  ```
101
108
 
102
109
  | AutoGluon Task | Quickstart | API |
@@ -105,116 +112,50 @@ leaderboard = predictor.leaderboard(test_data)
105
112
  | MultiModalPredictor | [![Quick Start](https://img.shields.io/static/v1?label=&message=tutorial&color=grey)](https://auto.gluon.ai/stable/tutorials/multimodal/multimodal_prediction/multimodal-quick-start.html) | [![API](https://img.shields.io/badge/api-reference-blue.svg)](https://auto.gluon.ai/stable/api/autogluon.multimodal.MultiModalPredictor.html) |
106
113
  | TimeSeriesPredictor | [![Quick Start](https://img.shields.io/static/v1?label=&message=tutorial&color=grey)](https://auto.gluon.ai/stable/tutorials/timeseries/forecasting-quick-start.html) | [![API](https://img.shields.io/badge/api-reference-blue.svg)](https://auto.gluon.ai/stable/api/autogluon.timeseries.TimeSeriesPredictor.html) |
107
114
 
108
- ## Resources
115
+ ## :mag: Resources
109
116
 
110
- See the [AutoGluon Website](https://auto.gluon.ai/stable/index.html) for documentation and instructions on:
111
- - [Installing AutoGluon](https://auto.gluon.ai/stable/index.html#installation)
112
- - [Learning with tabular data](https://auto.gluon.ai/stable/tutorials/tabular/tabular-quick-start.html)
113
- - [Tips to maximize accuracy](https://auto.gluon.ai/stable/tutorials/tabular/tabular-essentials.html#maximizing-predictive-performance) (if **benchmarking**, make sure to run `fit()` with argument `presets='best_quality'`).
117
+ ### Hands-on Tutorials / Talks
114
118
 
115
- - [Learning with multimodal data (image, text, etc.)](https://auto.gluon.ai/stable/tutorials/multimodal/multimodal_prediction/multimodal-quick-start.html)
116
- - [Learning with time series data](https://auto.gluon.ai/stable/tutorials/timeseries/forecasting-quick-start.html)
119
+ Below is a curated list of recent tutorials and talks on AutoGluon. A comprehensive list is available [here](AWESOME.md#videos--tutorials).
117
120
 
118
- Refer to the [AutoGluon Roadmap](https://github.com/autogluon/autogluon/blob/master/ROADMAP.md) for details on upcoming features and releases.
121
+ | Title | Format | Location | Date |
122
+ |--------------------------------------------------------------------------------------------------------------------------|----------|----------------------------------------------------------------------------------|------------|
123
+ | :tv: [AutoGluon 1.0: Shattering the AutoML Ceiling with Zero Lines of Code](https://www.youtube.com/watch?v=5tvp_Ihgnuk) | Tutorial | [AutoML Conf 2023](https://2023.automl.cc/) | 2023/09/12 |
124
+ | :sound: [AutoGluon: The Story](https://automlpodcast.com/episode/autogluon-the-story) | Podcast | [The AutoML Podcast](https://automlpodcast.com/) | 2023/09/05 |
125
+ | :tv: [AutoGluon: AutoML for Tabular, Multimodal, and Time Series Data](https://youtu.be/Lwu15m5mmbs?si=jSaFJDqkTU27C0fa) | Tutorial | PyData Berlin | 2023/06/20 |
126
+ | :tv: [Solving Complex ML Problems in a few Lines of Code with AutoGluon](https://www.youtube.com/watch?v=J1UQUCPB88I) | Tutorial | PyData Seattle | 2023/06/20 |
127
+ | :tv: [The AutoML Revolution](https://www.youtube.com/watch?v=VAAITEds-28) | Tutorial | [Fall AutoML School 2022](https://sites.google.com/view/automl-fall-school-2022) | 2022/10/18 |
119
128
 
120
129
  ### Scientific Publications
121
- - [AutoGluon-Tabular: Robust and Accurate AutoML for Structured Data](https://arxiv.org/pdf/2003.06505.pdf) (*Arxiv*, 2020)
122
- - [Fast, Accurate, and Simple Models for Tabular Data via Augmented Distillation](https://proceedings.neurips.cc/paper/2020/hash/62d75fb2e3075506e8837d8f55021ab1-Abstract.html) (*NeurIPS*, 2020)
123
- - [Multimodal AutoML on Structured Tables with Text Fields](https://openreview.net/pdf?id=OHAIVOOl7Vl) (*ICML AutoML Workshop*, 2021)
130
+ - [AutoGluon-Tabular: Robust and Accurate AutoML for Structured Data](https://arxiv.org/pdf/2003.06505.pdf) (*Arxiv*, 2020) ([BibTeX](CITING.md#general-usage--autogluontabular))
131
+ - [Fast, Accurate, and Simple Models for Tabular Data via Augmented Distillation](https://proceedings.neurips.cc/paper/2020/hash/62d75fb2e3075506e8837d8f55021ab1-Abstract.html) (*NeurIPS*, 2020) ([BibTeX](CITING.md#tabular-distillation))
132
+ - [Benchmarking Multimodal AutoML for Tabular Data with Text Fields](https://datasets-benchmarks-proceedings.neurips.cc/paper/2021/file/9bf31c7ff062936a96d3c8bd1f8f2ff3-Paper-round2.pdf) (*NeurIPS*, 2021) ([BibTeX](CITING.md#autogluonmultimodal))
133
+ - [XTab: Cross-table Pretraining for Tabular Transformers](https://proceedings.mlr.press/v202/zhu23k/zhu23k.pdf) (*ICML*, 2023)
134
+ - [AutoGluon-TimeSeries: AutoML for Probabilistic Time Series Forecasting](https://arxiv.org/abs/2308.05566) (*AutoML Conf*, 2023) ([BibTeX](CITING.md#autogluontimeseries))
135
+ - [TabRepo: A Large Scale Repository of Tabular Model Evaluations and its AutoML Applications](https://arxiv.org/pdf/2311.02971.pdf) (*Under Review*, 2024)
124
136
 
125
137
  ### Articles
138
+ - [AutoGluon-TimeSeries: Every Time Series Forecasting Model In One Library](https://towardsdatascience.com/autogluon-timeseries-every-time-series-forecasting-model-in-one-library-29a3bf6879db) (*Towards Data Science*, Jan 2024)
126
139
  - [AutoGluon for tabular data: 3 lines of code to achieve top 1% in Kaggle competitions](https://aws.amazon.com/blogs/opensource/machine-learning-with-autogluon-an-open-source-automl-library/) (*AWS Open Source Blog*, Mar 2020)
127
- - [Accurate image classification in 3 lines of code with AutoGluon](https://medium.com/@zhanghang0704/image-classification-on-kaggle-using-autogluon-fc896e74d7e8) (*Medium*, Feb 2020)
128
140
  - [AutoGluon overview & example applications](https://towardsdatascience.com/autogluon-deep-learning-automl-5cdb4e2388ec?source=friends_link&sk=e3d17d06880ac714e47f07f39178fdf2) (*Towards Data Science*, Dec 2019)
129
141
 
130
- ### Hands-on Tutorials
131
- - [Practical Automated Machine Learning with Tabular, Text, and Image Data (KDD 2020)](https://jwmueller.github.io/KDD20-tutorial/)
132
-
133
142
  ### Train/Deploy AutoGluon in the Cloud
134
- - [AutoGluon-Tabular on AWS Marketplace](https://aws.amazon.com/marketplace/pp/prodview-n4zf5pmjt7ism)
135
- - [AutoGluon-Tabular on Amazon SageMaker](https://github.com/aws/amazon-sagemaker-examples/tree/master/advanced_functionality/autogluon-tabular-containers)
136
- - [AutoGluon Deep Learning Containers](https://github.com/aws/deep-learning-containers/blob/master/available_images.md#autogluon-training-containers)
137
-
138
- ## Contributing to AutoGluon
139
-
140
- We are actively accepting code contributions to the AutoGluon project. If you are interested in contributing to AutoGluon, please read the [Contributing Guide](https://github.com/autogluon/autogluon/blob/master/CONTRIBUTING.md) to get started.
141
-
142
- ## Citing AutoGluon
143
+ - [AutoGluon Cloud](https://auto.gluon.ai/cloud/stable/index.html) (Recommended)
144
+ - [AutoGluon on SageMaker AutoPilot](https://auto.gluon.ai/stable/tutorials/cloud_fit_deploy/autopilot-autogluon.html)
145
+ - [AutoGluon on Amazon SageMaker](https://auto.gluon.ai/stable/tutorials/cloud_fit_deploy/cloud-aws-sagemaker-train-deploy.html)
146
+ - [AutoGluon Deep Learning Containers](https://github.com/aws/deep-learning-containers/blob/master/available_images.md#autogluon-training-containers) (Security certified & maintained by the AutoGluon developers)
147
+ - [AutoGluon Official Docker Container](https://hub.docker.com/r/autogluon/autogluon)
148
+ - [AutoGluon-Tabular on AWS Marketplace](https://aws.amazon.com/marketplace/pp/prodview-n4zf5pmjt7ism) (Not maintained by us)
143
149
 
144
- If you use AutoGluon in a scientific publication, please cite the following paper:
150
+ ## :pencil: Citing AutoGluon
145
151
 
146
- Erickson, Nick, et al. ["AutoGluon-Tabular: Robust and Accurate AutoML for Structured Data."](https://arxiv.org/abs/2003.06505) arXiv preprint arXiv:2003.06505 (2020).
152
+ If you use AutoGluon in a scientific publication, please refer to our [citation guide](CITING.md).
147
153
 
148
- BibTeX entry:
149
-
150
- ```bibtex
151
- @article{agtabular,
152
- title={AutoGluon-Tabular: Robust and Accurate AutoML for Structured Data},
153
- author={Erickson, Nick and Mueller, Jonas and Shirkov, Alexander and Zhang, Hang and Larroy, Pedro and Li, Mu and Smola, Alexander},
154
- journal={arXiv preprint arXiv:2003.06505},
155
- year={2020}
156
- }
157
- ```
158
-
159
- If you are using AutoGluon Tabular's model distillation functionality, please cite the following paper:
160
-
161
- Fakoor, Rasool, et al. ["Fast, Accurate, and Simple Models for Tabular Data via Augmented Distillation."](https://proceedings.neurips.cc/paper/2020/hash/62d75fb2e3075506e8837d8f55021ab1-Abstract.html) Advances in Neural Information Processing Systems 33 (2020).
162
-
163
- BibTeX entry:
164
-
165
- ```bibtex
166
- @article{agtabulardistill,
167
- title={Fast, Accurate, and Simple Models for Tabular Data via Augmented Distillation},
168
- author={Fakoor, Rasool and Mueller, Jonas W and Erickson, Nick and Chaudhari, Pratik and Smola, Alexander J},
169
- journal={Advances in Neural Information Processing Systems},
170
- volume={33},
171
- year={2020}
172
- }
173
- ```
174
-
175
- If you use AutoGluon's multimodal text+tabular functionality in a scientific publication, please cite the following paper:
176
-
177
- Shi, Xingjian, et al. ["Multimodal AutoML on Structured Tables with Text Fields."](https://openreview.net/forum?id=OHAIVOOl7Vl) 8th ICML Workshop on Automated Machine Learning (AutoML). 2021.
178
-
179
- BibTeX entry:
180
-
181
- ```bibtex
182
- @inproceedings{agmultimodaltext,
183
- title={Multimodal AutoML on Structured Tables with Text Fields},
184
- author={Shi, Xingjian and Mueller, Jonas and Erickson, Nick and Li, Mu and Smola, Alex},
185
- booktitle={8th ICML Workshop on Automated Machine Learning (AutoML)},
186
- year={2021}
187
- }
188
- ```
189
-
190
- If you use AutoGluon's time series forecasting functionality in a scientific publication, please cite the following paper:
191
- ```bibtex
192
- @inproceedings{agtimeseries,
193
- title={{AutoGluon-TimeSeries}: {AutoML} for Probabilistic Time Series Forecasting},
194
- author={Shchur, Oleksandr and Turkmen, Caner and Erickson, Nick and Shen, Huibin and Shirkov, Alexander and Hu, Tony and Wang, Yuyang},
195
- booktitle={International Conference on Automated Machine Learning},
196
- year={2023}
197
- }
198
- ```
199
-
200
-
201
- ## AutoGluon for Hyperparameter Optimization
202
-
203
- AutoGluon's state-of-the-art tools for hyperparameter optimization, such as ASHA, Hyperband, Bayesian Optimization and BOHB have moved to the stand-alone package [syne-tune](https://github.com/awslabs/syne-tune).
204
-
205
- To learn more, checkout our paper ["Model-based Asynchronous Hyperparameter and Neural Architecture Search"](https://arxiv.org/abs/2003.10865) arXiv preprint arXiv:2003.10865 (2020).
206
-
207
- ```bibtex
208
- @article{abohb,
209
- title={Model-based Asynchronous Hyperparameter and Neural Architecture Search},
210
- author={Klein, Aaron and Tiao, Louis and Lienart, Thibaut and Archambeau, Cedric and Seeger, Matthias},
211
- journal={arXiv preprint arXiv:2003.10865},
212
- year={2020}
213
- }
214
- ```
154
+ ## :wave: How to get involved
215
155
 
156
+ We are actively accepting code contributions to the AutoGluon project. If you are interested in contributing to AutoGluon, please read the [Contributing Guide](https://github.com/autogluon/autogluon/blob/master/CONTRIBUTING.md) to get started.
216
157
 
217
- ## License
158
+ ## :classical_building: License
218
159
 
219
160
  This library is licensed under the Apache 2.0 License.
220
161
 
@@ -1,10 +1,10 @@
1
- autogluon.timeseries-1.0.1b20231231-py3.8-nspkg.pth,sha256=cQGwpuGPqg1GXscIwt-7PmME1OnSpD-7ixkikJ31WAY,554
1
+ autogluon.timeseries-1.0.1b20240206-py3.8-nspkg.pth,sha256=cQGwpuGPqg1GXscIwt-7PmME1OnSpD-7ixkikJ31WAY,554
2
2
  autogluon/timeseries/__init__.py,sha256=_CrLLc1fkjen7UzWoO0Os8WZoHOgvZbHKy46I8v_4k4,304
3
3
  autogluon/timeseries/evaluator.py,sha256=l642tYfTHsl8WVIq_vV6qhgAFVFr9UuZD7gLra3A_Kc,250
4
4
  autogluon/timeseries/learner.py,sha256=HVfsoWTG3dXBCc7JbPfHCCYCMwL3zlrqHwLBG33MTJ8,9633
5
- autogluon/timeseries/predictor.py,sha256=qwlWKVctzJUz7r-E6rmrMWTwRSuoS5cPqjXU_rWAmHQ,61108
5
+ autogluon/timeseries/predictor.py,sha256=iOn09b9Gpg5ubgRc09qo3xx9mM_QmVyWZ0bLJ6YePpk,62252
6
6
  autogluon/timeseries/splitter.py,sha256=eghGwAAN2_cxGk5aJBILgjGWtLzjxJcytMy49gg_q18,3061
7
- autogluon/timeseries/version.py,sha256=cXT7oqPDRwBtm-hBqk9zpI9rknoWPIaIsGvUu0JwHi4,90
7
+ autogluon/timeseries/version.py,sha256=PmjL3zIzakb81dejAmh-vvMkhla9fuSi8uKJC3gJnWc,90
8
8
  autogluon/timeseries/configs/__init__.py,sha256=BTtHIPCYeGjqgOcvqb8qPD4VNX-ICKOg6wnkew1cPOE,98
9
9
  autogluon/timeseries/configs/presets_configs.py,sha256=1u6tbOKJdIRULYDu41dlJwXRNswWsjBDF0aR2YhyMQs,479
10
10
  autogluon/timeseries/dataset/__init__.py,sha256=UvnhAN5tjgxXTHoZMQDy64YMDj4Xxa68yY7NP4vAw0o,81
@@ -17,27 +17,27 @@ autogluon/timeseries/metrics/utils.py,sha256=eJ63TCR-UwbeJ1c2Qm7B2q-8B3sFthPgioo
17
17
  autogluon/timeseries/models/__init__.py,sha256=4UJYnjeBCP6-NV738KF852Fa3qw5ygS4SBuOFAUmwoA,1217
18
18
  autogluon/timeseries/models/presets.py,sha256=xmuqxmHrnpFih0GNrkvOP-Sgs2STfLAv5cSPl6Bf4y8,11183
19
19
  autogluon/timeseries/models/abstract/__init__.py,sha256=wvDsQAZIV0N3AwBeMaGItoQ82trEfnT-nol2AAOIxBg,102
20
- autogluon/timeseries/models/abstract/abstract_timeseries_model.py,sha256=knKaYsx_sn_KpKgzZhiTCmaTG_W7TAumgnpGXUwzAOU,21841
20
+ autogluon/timeseries/models/abstract/abstract_timeseries_model.py,sha256=LSIc6rIwFs870MHpKUC24naMIcczFGY_--Ov-wyAq2w,21431
21
21
  autogluon/timeseries/models/abstract/model_trial.py,sha256=_5Nrk4CrG3u35tTd3elekfdnQI2Pn3P9AGS5CE6nuyg,3749
22
22
  autogluon/timeseries/models/autogluon_tabular/__init__.py,sha256=r9i6jWcyeLHYClkcMSKRVsfrkBUMxpDrTATNTBc_qgQ,136
23
- autogluon/timeseries/models/autogluon_tabular/mlforecast.py,sha256=Cf7abDRxoLkjO3xxVljujDpgsViRCwnIUNg1Wh1v4MI,29906
23
+ autogluon/timeseries/models/autogluon_tabular/mlforecast.py,sha256=Juig6ZiKATqyHfOJ48zU_eWv7CjnlgMMPZCpmhwDFb0,29785
24
24
  autogluon/timeseries/models/autogluon_tabular/utils.py,sha256=4-gTrBtizxeMVQlsuscugPqw9unaXWXhS1TVVssfzYY,2125
25
25
  autogluon/timeseries/models/ensemble/__init__.py,sha256=kFr11Gmt7lQJu9Rr8HuIPphQN5l1TsoorfbJm_O3a_s,128
26
26
  autogluon/timeseries/models/ensemble/abstract_timeseries_ensemble.py,sha256=tifETwmiEGt-YtQ9eNK7ojJ3fBvtFMUJvisbfkIJ7gw,3393
27
- autogluon/timeseries/models/ensemble/greedy_ensemble.py,sha256=3xYzg0CIe0U4l-HScVThb-q8wfKCmNB8SwRjRBMkCMU,7369
27
+ autogluon/timeseries/models/ensemble/greedy_ensemble.py,sha256=5HvZuW5osgsZg3V69k82nKEOy_YgeH1JTfQa7F3cU7s,7220
28
28
  autogluon/timeseries/models/gluonts/__init__.py,sha256=M8PV9ZE4WpteScMobXM6RH1Udb1AZiHHtj2g5GQL3TU,329
29
- autogluon/timeseries/models/gluonts/abstract_gluonts.py,sha256=cdzWbJ36vnSIg5TxzRYaOedvtUipbvQLQbsUSfj43ZA,25599
29
+ autogluon/timeseries/models/gluonts/abstract_gluonts.py,sha256=GuiXAmBk_X-IY3NUttqeVSEexDgVxna6AZAwVZGEyAw,25478
30
30
  autogluon/timeseries/models/gluonts/torch/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
31
31
  autogluon/timeseries/models/gluonts/torch/models.py,sha256=7ktOy6MxEzD0ykhUwcVEufSjdQNwYadtInLN6cms4Ig,18322
32
32
  autogluon/timeseries/models/local/__init__.py,sha256=JyckWWgMG1BTIWJqFTW6e1O-eb0LPPOwtXwmb1ErohQ,756
33
- autogluon/timeseries/models/local/abstract_local_model.py,sha256=nbXWA4uDrS4nQU5587u2i7cX2IXemDS7TEwzWPiMKSY,9937
33
+ autogluon/timeseries/models/local/abstract_local_model.py,sha256=nzN4YKhAOF_m0qhK3Fv0356JYd_omBXckFmqURIvpjE,9796
34
34
  autogluon/timeseries/models/local/naive.py,sha256=9b80zUccHfGv6pg33mppwTcSJgq4JF4CqTQ7SWq48Hk,7243
35
35
  autogluon/timeseries/models/local/npts.py,sha256=8cFMELH_mRe-Dv0YecmW3A3fARRA2Hl-tMGs3uHFbcw,4073
36
36
  autogluon/timeseries/models/local/statsforecast.py,sha256=-FvY5aWLq-EE_oJuYXUEXXNHWSuykx-fqeaqlPigJGQ,32873
37
37
  autogluon/timeseries/models/multi_window/__init__.py,sha256=Bq7AT2Jxdd4WNqmjTdzeqgNiwn1NCyWp4tBIWaM-zfI,60
38
- autogluon/timeseries/models/multi_window/multi_window_model.py,sha256=EoKYv97lGlFc9T2TmZhR85GPnTlWH7BqDeFeBjCc1F4,10906
38
+ autogluon/timeseries/models/multi_window/multi_window_model.py,sha256=ZpuWkZfEJcM2NoVxxOkIPQt5izKCpWmU0kjpqfenHPU,10737
39
39
  autogluon/timeseries/trainer/__init__.py,sha256=lxiOT-Gc6BEnr_yWQqra85kEngeM_wtH2SCaRbmC_qE,170
40
- autogluon/timeseries/trainer/abstract_trainer.py,sha256=8MGMdF9eSjLwp96QtKXSj6jwuUL2TxYB0tFrWJ5y_o8,48953
40
+ autogluon/timeseries/trainer/abstract_trainer.py,sha256=xnT0URKw_bVjZ99JS9TjDmW_gLzS7WcDVc4xebmk434,48936
41
41
  autogluon/timeseries/trainer/auto_trainer.py,sha256=uj1mcpXw__gSCAwaOgsx-bXzEluBW90y9792J3zlmxY,3073
42
42
  autogluon/timeseries/utils/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
43
43
  autogluon/timeseries/utils/features.py,sha256=72RC_oLNh87VWIRv65M1v62vuz83zeaDhNlWBc0foSY,8354
@@ -48,11 +48,11 @@ autogluon/timeseries/utils/datetime/base.py,sha256=MsqIHY14m3QMjSwwtE7Uo1oNwepWU
48
48
  autogluon/timeseries/utils/datetime/lags.py,sha256=kcU4liKbHj7KP2ajNU-KLZ8OYSU35EgT4kJjZNSw0Zg,5875
49
49
  autogluon/timeseries/utils/datetime/seasonality.py,sha256=kgK_ukw2wCviEB7CZXRVC5HZpBJZu9IsRrvCJ9E_rOE,755
50
50
  autogluon/timeseries/utils/datetime/time_features.py,sha256=pROkYyxETQ8rHKfPGhf2paB73C7rWJ2Ui0cCswLqbBg,2562
51
- autogluon.timeseries-1.0.1b20231231.dist-info/LICENSE,sha256=CeipvOyAZxBGUsFoaFqwkx54aPnIKEtm9a5u2uXxEws,10142
52
- autogluon.timeseries-1.0.1b20231231.dist-info/METADATA,sha256=iNN5JqL8Gxe7c9yfekgjjx_WHEluG6j0a7d5J-vaxfo,13114
53
- autogluon.timeseries-1.0.1b20231231.dist-info/NOTICE,sha256=7nPQuj8Kp-uXsU0S5so3-2dNU5EctS5hDXvvzzehd7E,114
54
- autogluon.timeseries-1.0.1b20231231.dist-info/WHEEL,sha256=oiQVh_5PnQM0E3gPdiz09WCNmwiHDMaGer_elqB3coM,92
55
- autogluon.timeseries-1.0.1b20231231.dist-info/namespace_packages.txt,sha256=giERA4R78OkJf2ijn5slgjURlhRPzfLr7waIcGkzYAo,10
56
- autogluon.timeseries-1.0.1b20231231.dist-info/top_level.txt,sha256=giERA4R78OkJf2ijn5slgjURlhRPzfLr7waIcGkzYAo,10
57
- autogluon.timeseries-1.0.1b20231231.dist-info/zip-safe,sha256=AbpHGcgLb-kRsJGnwFEktk7uzpZOCcBY74-YBdrKVGs,1
58
- autogluon.timeseries-1.0.1b20231231.dist-info/RECORD,,
51
+ autogluon.timeseries-1.0.1b20240206.dist-info/LICENSE,sha256=CeipvOyAZxBGUsFoaFqwkx54aPnIKEtm9a5u2uXxEws,10142
52
+ autogluon.timeseries-1.0.1b20240206.dist-info/METADATA,sha256=U3JXtYyxmmyAqvry3xNzpMomQcq-93FxZXarZpNoSzg,12081
53
+ autogluon.timeseries-1.0.1b20240206.dist-info/NOTICE,sha256=7nPQuj8Kp-uXsU0S5so3-2dNU5EctS5hDXvvzzehd7E,114
54
+ autogluon.timeseries-1.0.1b20240206.dist-info/WHEEL,sha256=oiQVh_5PnQM0E3gPdiz09WCNmwiHDMaGer_elqB3coM,92
55
+ autogluon.timeseries-1.0.1b20240206.dist-info/namespace_packages.txt,sha256=giERA4R78OkJf2ijn5slgjURlhRPzfLr7waIcGkzYAo,10
56
+ autogluon.timeseries-1.0.1b20240206.dist-info/top_level.txt,sha256=giERA4R78OkJf2ijn5slgjURlhRPzfLr7waIcGkzYAo,10
57
+ autogluon.timeseries-1.0.1b20240206.dist-info/zip-safe,sha256=AbpHGcgLb-kRsJGnwFEktk7uzpZOCcBY74-YBdrKVGs,1
58
+ autogluon.timeseries-1.0.1b20240206.dist-info/RECORD,,