Closed shanyu-sys closed 3 years ago
Maybe users can have a simpler way to use autots?
from zoo.zouwu.autots import AutoTimeSeries
m = AutoTimeSeries() m.fit(data) m.predict(data) m.evaluate(data, metric=...)
2. Advanced usage: choose the preference of models
```python
from zoo.zouwu.autots import AutoTimeSeries
m = AutoTimeSeries(model='tcn')
m.fit(data)
...
maybe allow choosing from several models?
from zoo.zouwu.autots import AutoTimeSeries
m = AutoTimeSeries(model=['seq2seq','tcn'])
m.fit(data)
...
m = AutoTimeSeries(model='lstm', search_space=...)
m.fit(data)
...
IMHO, the relationship between zoo automl AutoEstimator and Zouwu AutoTS could be something like below.
Zouwu AutoTS uses automl AutoEstimator as the underlying component. And autots implements user-defined functions for tuning and provides more convinient facilites for time series for end-user.
Bascially, zoo.orca.automl.AutoEstimator
accepts a set of user-defined "creators", i.e. "model_creator", "optimizer_creator", "feature_transformer_creator" (or data creator?), each of which accepts some hyper parameters that can be tuned by the HPO engine.
zouwu.autots
provides several built-in "creators". We have simple creators that tunes a single model, but also have advanced creators that supports multiple model selection. And we have creators for various kinds of feature transformation and/or preprocessing. The end-user interfaces wraps different sets of creators to achieve different purposes.
Later we can turn the creator functions into pipeline stages.
We have merged most of the implementations, so close this issue.
One implementation might be User
Implementation could be