* Refactor into automl subpackage
Moved some of the packages into an automl subpackage to tidy before the
task-based refactor. This is in response to discussions with the group
and a comment on the first task-based PR.
Only changes here are moving subpackages and modules into the new
automl, fixing imports to work with this structure and fixing some
dependencies in setup.py.
* Fix doc building post automl subpackage refactor
* Fix broken links in website post automl subpackage refactor
* Fix broken links in website post automl subpackage refactor
* Remove vw from test deps as this is breaking the build
* Move default back to the top-level
I'd moved this to automl as that's where it's used internally, but had
missed that this is actually part of the public interface so makes sense
to live where it was.
* Re-add top level modules with deprecation warnings
flaml.data, flaml.ml and flaml.model are re-added to the top level,
being re-exported from flaml.automl for backwards compatability. Adding
a deprecation warning so that we can have a planned removal later.
* Fix model.py line-endings
* WIP
* WIP - Notes below
Got to the point where the methods from AutoML are pulled to
GenericTask. Started removing private markers and removing the passing
of automl to these methods. Done with decide_split_type, started on
prepare_data. Need to do the others after
* Re-add generic_task
* Fix tests: add Task.__str__
* Fix tests: test for ray.ObjectRef
* Hotwire TS_Sklearn wrapper to fix test fail
* Remove unused data size field from Task
* Fix import for CLASSIFICATION in notebook
* Update flaml/automl/data.py
Co-authored-by: Chi Wang <wang.chi@microsoft.com>
* Fix review comments
* Fix task -> str in custom learner constructor
* Remove unused CLASSIFICATION imports
* Hotwire TS_Sklearn wrapper to fix test fail by setting
optimizer_for_horizon == False
* Revert changes to the automl_classification and pin FLAML version
* Fix imports in reverted notebook
* Fix FLAML version in automl notebooks
* Fix ml.py line endings
* Fix CLASSIFICATION task import in automl_classification notebook
* Uncomment pip install in notebook and revert import
Not convinced this will work because of installing an older version of
the package into the environment in which we're running the tests, but
let's see.
* Revert c6a5dd1a0
* Revert "Revert c6a5dd1a0"
This reverts commit e55e35adea03993de87b23f092b14c6af623d487.
* Black format model.py
* Bump version to 1.1.2 in automl_xgboost
* Add docstrings to the Task ABC
* Fix import in custom_learner
* fix 'optimize_for_horizon' for ts_sklearn
* remove debugging print statements
* Check for is_forecast() before is_classification() in decide_split_type
* Attempt to fix formatting fail
* Another attempt to fix formatting fail
* And another attempt to fix formatting fail
* Add type annotations for task arg in signatures and docstrings
* Fix formatting
* Fix linting
---------
Co-authored-by: Qingyun Wu <qingyun.wu@psu.edu>
Co-authored-by: EgorKraevTransferwise <egor.kraev@transferwise.com>
Co-authored-by: Chi Wang <wang.chi@microsoft.com>
Co-authored-by: Kevin Chen <chenkevin.8787@gmail.com>
* added a link to documentation webpage in notebook time_series_forcast
* added a link to documentation webpage in notebook time_series_forcast
* Update notebook/automl_time_series_forecast.ipynb
Co-authored-by: Chi Wang <wang.chi@microsoft.com>
* complete output
* added all cell output
Co-authored-by: Chi Wang <wang.chi@microsoft.com>
Co-authored-by: zsk <shaokunzhang529@gmail.com>
Co-authored-by: Qingyun Wu <qingyun.wu@psu.edu>
* update forecasting with exogeneous variables example
Signed-off-by: Kevin Chen <chenkevin.8787@gmail.com>
* update forecasting with exogeneous variables example on website
Signed-off-by: Kevin Chen <chenkevin.8787@gmail.com>
* rerun automl_time_series_forecast with new predict function for tft
Signed-off-by: Kevin Chen <chenkevin.8787@gmail.com>
* correct spelling error
Signed-off-by: Kevin Chen <chenkevin.8787@gmail.com>
Signed-off-by: Kevin Chen <chenkevin.8787@gmail.com>
* time series forecasting with panel datasets
- integrate Temporal Fusion Transformer as a learner based on pytorchforecasting
Signed-off-by: Kevin Chen <chenkevin.8787@gmail.com>
* update setup.py
Signed-off-by: Kevin Chen <chenkevin.8787@gmail.com>
* update test_forecast.py
Signed-off-by: Kevin Chen <chenkevin.8787@gmail.com>
* update setup.py
Signed-off-by: Kevin Chen <chenkevin.8787@gmail.com>
* update setup.py
Signed-off-by: Kevin Chen <chenkevin.8787@gmail.com>
* update model.py and test_forecast.py
- remove blank lines
Signed-off-by: Kevin Chen <chenkevin.8787@gmail.com>
* update model.py to prevent errors
Signed-off-by: Kevin Chen <chenkevin.8787@gmail.com>
* update automl.py and data.py
- change forecast task name
- update documentation for fit() method
Signed-off-by: Kevin Chen <chenkevin.8787@gmail.com>
* update test_forecast.py
Signed-off-by: Kevin Chen <chenkevin.8787@gmail.com>
* update test_forecast.py
- add performance test
- use 'fit_kwargs_by_estimator'
Signed-off-by: Kevin Chen <chenkevin.8787@gmail.com>
* add time index function
Signed-off-by: Kevin Chen <chenkevin.8787@gmail.com>
* update test_forecast.py performance test
Signed-off-by: Kevin Chen <chenkevin.8787@gmail.com>
* update data.py
Signed-off-by: Kevin Chen <chenkevin.8787@gmail.com>
* update automl.py
Signed-off-by: Kevin Chen <chenkevin.8787@gmail.com>
* update data.py to prevent type error
Signed-off-by: Kevin Chen <chenkevin.8787@gmail.com>
* update setup.py
Signed-off-by: Kevin Chen <chenkevin.8787@gmail.com>
* update for pytorch forecasting tft on panel datasets
Signed-off-by: Kevin Chen <chenkevin.8787@gmail.com>
* update automl.py documentations
Signed-off-by: Kevin Chen <chenkevin.8787@gmail.com>
* - rename estimator
- add 'gpu_per_trial' for tft estimator
Signed-off-by: Kevin Chen <chenkevin.8787@gmail.com>
* update test_forecast.py
Signed-off-by: Kevin Chen <chenkevin.8787@gmail.com>
* include ts panel forecasting as an example
Signed-off-by: Kevin Chen <chenkevin.8787@gmail.com>
* update model.py
Signed-off-by: Kevin Chen <chenkevin.8787@gmail.com>
* update documentations
Signed-off-by: Kevin Chen <chenkevin.8787@gmail.com>
* update automl_time_series_forecast.ipynb
Signed-off-by: Kevin Chen <chenkevin.8787@gmail.com>
* update documentations
Signed-off-by: Kevin Chen <chenkevin.8787@gmail.com>
* "weights_summary" argument deprecated and removed for pl.Trainer()
Signed-off-by: Kevin Chen <chenkevin.8787@gmail.com>
* update model.py tft estimator prediction method
Signed-off-by: Kevin Chen <chenkevin.8787@gmail.com>
* update model.py
Signed-off-by: Kevin Chen <chenkevin.8787@gmail.com>
* update `fit_kwargs` documentation
Signed-off-by: Kevin Chen <chenkevin.8787@gmail.com>
* update automl.py
Signed-off-by: Kevin Chen <chenkevin.8787@gmail.com>
Signed-off-by: Kevin Chen <chenkevin.8787@gmail.com>
Co-authored-by: Chi Wang <wang.chi@microsoft.com>
* support latest xgboost version
* Update test_classification.py
* Update
Exists problems when installing xgb1.6.1 in py3.6
* cleanup
* xgboost version
* remove time_budget_s in test
* remove redundancy
* stop support of python 3.6
Co-authored-by: zsk <shaokunzhang529@gmail.com>
Co-authored-by: Qingyun Wu <qingyun.wu@psu.edu>
* init value type match
* bump version to 1.0.6
* add a note about flaml version in notebook
* add note about mismatched ITER_HP
* catch SSLError when accessing OpenML data
* catch errors in autovw test
Co-authored-by: Qingyun Wu <qingyun.wu@psu.edu>