wavetrainer 0.0.10__tar.gz → 0.0.11__tar.gz

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.
Files changed (57) hide show
  1. {wavetrainer-0.0.10/wavetrainer.egg-info → wavetrainer-0.0.11}/PKG-INFO +1 -1
  2. {wavetrainer-0.0.10 → wavetrainer-0.0.11}/setup.py +1 -1
  3. {wavetrainer-0.0.10 → wavetrainer-0.0.11}/wavetrainer/__init__.py +1 -1
  4. {wavetrainer-0.0.10 → wavetrainer-0.0.11}/wavetrainer/create.py +4 -0
  5. {wavetrainer-0.0.10 → wavetrainer-0.0.11}/wavetrainer/trainer.py +11 -1
  6. {wavetrainer-0.0.10 → wavetrainer-0.0.11/wavetrainer.egg-info}/PKG-INFO +1 -1
  7. {wavetrainer-0.0.10 → wavetrainer-0.0.11}/LICENSE +0 -0
  8. {wavetrainer-0.0.10 → wavetrainer-0.0.11}/MANIFEST.in +0 -0
  9. {wavetrainer-0.0.10 → wavetrainer-0.0.11}/README.md +0 -0
  10. {wavetrainer-0.0.10 → wavetrainer-0.0.11}/requirements.txt +0 -0
  11. {wavetrainer-0.0.10 → wavetrainer-0.0.11}/setup.cfg +0 -0
  12. {wavetrainer-0.0.10 → wavetrainer-0.0.11}/tests/__init__.py +0 -0
  13. {wavetrainer-0.0.10 → wavetrainer-0.0.11}/tests/model/__init__.py +0 -0
  14. {wavetrainer-0.0.10 → wavetrainer-0.0.11}/tests/model/catboost_kwargs_test.py +0 -0
  15. {wavetrainer-0.0.10 → wavetrainer-0.0.11}/tests/trainer_test.py +0 -0
  16. {wavetrainer-0.0.10 → wavetrainer-0.0.11}/wavetrainer/calibrator/__init__.py +0 -0
  17. {wavetrainer-0.0.10 → wavetrainer-0.0.11}/wavetrainer/calibrator/calibrator.py +0 -0
  18. {wavetrainer-0.0.10 → wavetrainer-0.0.11}/wavetrainer/calibrator/calibrator_router.py +0 -0
  19. {wavetrainer-0.0.10 → wavetrainer-0.0.11}/wavetrainer/calibrator/mapie_calibrator.py +0 -0
  20. {wavetrainer-0.0.10 → wavetrainer-0.0.11}/wavetrainer/calibrator/vennabers_calibrator.py +0 -0
  21. {wavetrainer-0.0.10 → wavetrainer-0.0.11}/wavetrainer/exceptions.py +0 -0
  22. {wavetrainer-0.0.10 → wavetrainer-0.0.11}/wavetrainer/fit.py +0 -0
  23. {wavetrainer-0.0.10 → wavetrainer-0.0.11}/wavetrainer/model/__init__.py +0 -0
  24. {wavetrainer-0.0.10 → wavetrainer-0.0.11}/wavetrainer/model/catboost_classifier_wrap.py +0 -0
  25. {wavetrainer-0.0.10 → wavetrainer-0.0.11}/wavetrainer/model/catboost_kwargs.py +0 -0
  26. {wavetrainer-0.0.10 → wavetrainer-0.0.11}/wavetrainer/model/catboost_model.py +0 -0
  27. {wavetrainer-0.0.10 → wavetrainer-0.0.11}/wavetrainer/model/catboost_regressor_wrap.py +0 -0
  28. {wavetrainer-0.0.10 → wavetrainer-0.0.11}/wavetrainer/model/model.py +0 -0
  29. {wavetrainer-0.0.10 → wavetrainer-0.0.11}/wavetrainer/model/model_router.py +0 -0
  30. {wavetrainer-0.0.10 → wavetrainer-0.0.11}/wavetrainer/model_type.py +0 -0
  31. {wavetrainer-0.0.10 → wavetrainer-0.0.11}/wavetrainer/params.py +0 -0
  32. {wavetrainer-0.0.10 → wavetrainer-0.0.11}/wavetrainer/reducer/__init__.py +0 -0
  33. {wavetrainer-0.0.10 → wavetrainer-0.0.11}/wavetrainer/reducer/base_selector_reducer.py +0 -0
  34. {wavetrainer-0.0.10 → wavetrainer-0.0.11}/wavetrainer/reducer/combined_reducer.py +0 -0
  35. {wavetrainer-0.0.10 → wavetrainer-0.0.11}/wavetrainer/reducer/constant_reducer.py +0 -0
  36. {wavetrainer-0.0.10 → wavetrainer-0.0.11}/wavetrainer/reducer/correlation_reducer.py +0 -0
  37. {wavetrainer-0.0.10 → wavetrainer-0.0.11}/wavetrainer/reducer/duplicate_reducer.py +0 -0
  38. {wavetrainer-0.0.10 → wavetrainer-0.0.11}/wavetrainer/reducer/nonnumeric_reducer.py +0 -0
  39. {wavetrainer-0.0.10 → wavetrainer-0.0.11}/wavetrainer/reducer/reducer.py +0 -0
  40. {wavetrainer-0.0.10 → wavetrainer-0.0.11}/wavetrainer/selector/__init__.py +0 -0
  41. {wavetrainer-0.0.10 → wavetrainer-0.0.11}/wavetrainer/selector/selector.py +0 -0
  42. {wavetrainer-0.0.10 → wavetrainer-0.0.11}/wavetrainer/weights/__init__.py +0 -0
  43. {wavetrainer-0.0.10 → wavetrainer-0.0.11}/wavetrainer/weights/class_weights.py +0 -0
  44. {wavetrainer-0.0.10 → wavetrainer-0.0.11}/wavetrainer/weights/combined_weights.py +0 -0
  45. {wavetrainer-0.0.10 → wavetrainer-0.0.11}/wavetrainer/weights/exponential_weights.py +0 -0
  46. {wavetrainer-0.0.10 → wavetrainer-0.0.11}/wavetrainer/weights/linear_weights.py +0 -0
  47. {wavetrainer-0.0.10 → wavetrainer-0.0.11}/wavetrainer/weights/noop_weights.py +0 -0
  48. {wavetrainer-0.0.10 → wavetrainer-0.0.11}/wavetrainer/weights/sigmoid_weights.py +0 -0
  49. {wavetrainer-0.0.10 → wavetrainer-0.0.11}/wavetrainer/weights/weights.py +0 -0
  50. {wavetrainer-0.0.10 → wavetrainer-0.0.11}/wavetrainer/weights/weights_router.py +0 -0
  51. {wavetrainer-0.0.10 → wavetrainer-0.0.11}/wavetrainer/windower/__init__.py +0 -0
  52. {wavetrainer-0.0.10 → wavetrainer-0.0.11}/wavetrainer/windower/windower.py +0 -0
  53. {wavetrainer-0.0.10 → wavetrainer-0.0.11}/wavetrainer.egg-info/SOURCES.txt +0 -0
  54. {wavetrainer-0.0.10 → wavetrainer-0.0.11}/wavetrainer.egg-info/dependency_links.txt +0 -0
  55. {wavetrainer-0.0.10 → wavetrainer-0.0.11}/wavetrainer.egg-info/not-zip-safe +0 -0
  56. {wavetrainer-0.0.10 → wavetrainer-0.0.11}/wavetrainer.egg-info/requires.txt +0 -0
  57. {wavetrainer-0.0.10 → wavetrainer-0.0.11}/wavetrainer.egg-info/top_level.txt +0 -0
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.1
2
2
  Name: wavetrainer
3
- Version: 0.0.10
3
+ Version: 0.0.11
4
4
  Summary: A library for automatically finding the optimal model within feature and hyperparameter space.
5
5
  Home-page: https://github.com/8W9aG/wavetrainer
6
6
  Author: Will Sackfield
@@ -23,7 +23,7 @@ def install_requires() -> typing.List[str]:
23
23
 
24
24
  setup(
25
25
  name='wavetrainer',
26
- version='0.0.10',
26
+ version='0.0.11',
27
27
  description='A library for automatically finding the optimal model within feature and hyperparameter space.',
28
28
  long_description=long_description,
29
29
  long_description_content_type='text/markdown',
@@ -2,5 +2,5 @@
2
2
 
3
3
  from .create import create
4
4
 
5
- __VERSION__ = "0.0.10"
5
+ __VERSION__ = "0.0.11"
6
6
  __all__ = ("create",)
@@ -1,5 +1,7 @@
1
1
  """A function for creating a new trainer."""
2
2
 
3
+ # pylint: disable=too-many-arguments,too-many-positional-arguments
4
+
3
5
  import datetime
4
6
 
5
7
  from .trainer import Trainer
@@ -11,6 +13,7 @@ def create(
11
13
  test_size: float | datetime.timedelta | None = None,
12
14
  validation_size: float | datetime.timedelta | None = None,
13
15
  dt_column: str | None = None,
16
+ max_train_timeout: datetime.timedelta | None = None,
14
17
  ) -> Trainer:
15
18
  """Create a trainer."""
16
19
  return Trainer(
@@ -19,4 +22,5 @@ def create(
19
22
  test_size=test_size,
20
23
  validation_size=validation_size,
21
24
  dt_column=dt_column,
25
+ max_train_timeout=max_train_timeout,
22
26
  )
@@ -51,6 +51,7 @@ class Trainer(Fit):
51
51
  test_size: float | datetime.timedelta | None = None,
52
52
  validation_size: float | datetime.timedelta | None = None,
53
53
  dt_column: str | None = None,
54
+ max_train_timeout: datetime.timedelta | None = None,
54
55
  ):
55
56
  tqdm.tqdm.pandas()
56
57
 
@@ -137,6 +138,7 @@ class Trainer(Fit):
137
138
  self._test_size = test_size
138
139
  self._validation_size = validation_size
139
140
  self._dt_column = dt_column
141
+ self._max_train_timeout = max_train_timeout
140
142
 
141
143
  def _provide_study(self, column: str) -> optuna.Study:
142
144
  storage_name = f"sqlite:///{self._folder}/{column}/{_STUDYDB_FILENAME}"
@@ -289,7 +291,12 @@ class Trainer(Fit):
289
291
  initial_trials = max(self._trials - len(study.trials), 0)
290
292
  if initial_trials > 0:
291
293
  study.optimize(
292
- test_objective, n_trials=initial_trials, show_progress_bar=True
294
+ test_objective,
295
+ n_trials=initial_trials,
296
+ show_progress_bar=True,
297
+ timeout=None
298
+ if self._max_train_timeout is None
299
+ else self._max_train_timeout.total_seconds(),
293
300
  )
294
301
 
295
302
  train_len = len(df[dt_index < start_test_index])
@@ -336,6 +343,9 @@ class Trainer(Fit):
336
343
  validate_objctive, idx=test_idx, series=test_series
337
344
  ),
338
345
  n_trials=1,
346
+ timeout=None
347
+ if self._max_train_timeout is None
348
+ else self._max_train_timeout.total_seconds(),
339
349
  )
340
350
 
341
351
  _fit(study.best_trial, test_df, test_series, True, test_idx)
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.1
2
2
  Name: wavetrainer
3
- Version: 0.0.10
3
+ Version: 0.0.11
4
4
  Summary: A library for automatically finding the optimal model within feature and hyperparameter space.
5
5
  Home-page: https://github.com/8W9aG/wavetrainer
6
6
  Author: Will Sackfield
File without changes
File without changes
File without changes
File without changes