Merlion icon indicating copy to clipboard operation
Merlion copied to clipboard

[BUG] ETSformer training on GPU

Open Sharaddition opened this issue 1 year ago • 0 comments

ETSformerForecaster trainer does not work on GPU notebooks.

Error:

indices should be either on cpu or on the same device as the indexed tensor (cpu)

To Reproduce

# Taken from Dashboard code
params = {'max_forecast_steps': forecast_steps,'n_past': n_past, 'use_gpu': True}
model_class = ModelFactory.get_model_class('ETSformerForecaster')
model = model_class(model_class.config_class(**params))

# EXOG DATA
if model.supports_exog and len(exog_columns) > 0:
    print('Exog Support: True')
    exog_ts = TimeSeries.from_pd(pd.concat((train_df.loc[:, exog_columns], test_df.loc[:, exog_columns])))
    train_df = train_df.loc[:, [target_column] + feature_columns]
    test_df = test_df.loc[:, [target_column] + feature_columns]
else:
    print('Exog Support: False')
    exog_ts = None

train_ts = TimeSeries.from_pd(train_df)
predictions = model.train(train_ts, exog_data=exog_ts)

Device:

  • Colab/Kaggle Notebook
  • Merlion Version 2.0.2

Additional context Model trains perfectly on CPU, but as expected takes a long time to train on large data.

Screenshot etsformer-issue

Sharaddition avatar Oct 13 '23 16:10 Sharaddition