Skip to content

Commit c905f30

Browse files
authored
Merge branch 'main' into ODSC-59115/mlforecast_add_data
2 parents 9ed9cb5 + a411629 commit c905f30

File tree

2 files changed

+10
-3
lines changed

2 files changed

+10
-3
lines changed

ads/opctl/operator/lowcode/forecast/model_evaluator.py

Lines changed: 4 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -39,7 +39,7 @@ def __init__(self, models, k=5, subsample_ratio=0.20):
3939
def generate_cutoffs(self, unique_dates, horizon):
4040
sorted_dates = np.sort(unique_dates)
4141
train_window_size = [len(sorted_dates) - (i + 1) * horizon for i in range(self.k)]
42-
valid_train_window_size = [ws for ws in train_window_size if ws >= horizon * 3]
42+
valid_train_window_size = [ws for ws in train_window_size if ws >= horizon * 2]
4343
if len(valid_train_window_size) < self.k:
4444
logger.warn(f"Only {valid_train_window_size} backtests can be created")
4545
cut_offs = sorted_dates[-horizon - 1:-horizon * (self.k + 1):-horizon][:len(valid_train_window_size)]
@@ -95,7 +95,9 @@ def create_operator_config(self, operator_config, backtest, model, historical_da
9595
backtest_op_config_draft = operator_config.to_dict()
9696
backtest_spec = backtest_op_config_draft["spec"]
9797
backtest_spec["historical_data"]["url"] = historical_data_url
98-
backtest_spec["additional_data"]["url"] = additional_data_url
98+
if backtest_spec["additional_data"]:
99+
backtest_spec["additional_data"]["url"] = additional_data_url
100+
backtest_spec["test_data"] = {}
99101
backtest_spec["test_data"]["url"] = test_data_url
100102
backtest_spec["model"] = model
101103
backtest_spec['model_kwargs'] = None

tests/operators/forecast/test_datasets.py

Lines changed: 6 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -33,7 +33,7 @@
3333
"neuralprophet",
3434
"autots",
3535
"mlforecast",
36-
# "auto",
36+
"auto-select",
3737
]
3838

3939
TEMPLATE_YAML = {
@@ -134,12 +134,17 @@ def test_load_datasets(model, data_details):
134134
yaml_i["spec"]["model_kwargs"] = {"model_list": "superfast"}
135135
if model == "automlx":
136136
yaml_i["spec"]["model_kwargs"] = {"time_budget": 2}
137+
if model == "auto-select":
138+
yaml_i["spec"]["model_kwargs"] = {"model_list": ['prophet', 'arima', 'mlforecast']}
139+
if dataset_name == f'{DATASET_PREFIX}dataset4.csv':
140+
pytest.skip("Skipping dataset4 with auto-select") # todo:// ODSC-58584
137141

138142
run(yaml_i, backend="operator.local", debug=False)
139143
subprocess.run(f"ls -a {output_data_path}", shell=True)
140144
if yaml_i["spec"]["generate_explanations"] and model not in [
141145
"automlx",
142146
"mlforecast",
147+
"auto-select"
143148
]:
144149
verify_explanations(
145150
tmpdirname=tmpdirname,

0 commit comments

Comments
 (0)