This message was deleted.
# neural-forecast
s
This message was deleted.
m
Hello! If you have exogenous variables, then N-HiTS will consider them. N-HiTS supports historical, future and staic exogenous variables.
v
Yes but I couldn’t define what is hist exogen in AutoNHITS. I know I can do so in NHITS using hist_exog_list but I couldn’t find out for AutoNHITS.
m
They have to be passed in the config. You can see an example here: https://github.com/Nixtla/neuralforecast/issues/906#issuecomment-1969363001 I hope this helps!
v
Thanks, this helped. I got this to work (was using hist_exog_list) only if I also included futr_exog_list as an emply list.
Copy code
nhits_config = {
       "max_steps": 100,
       "input_size": 24,
       "learning_rate": tune.loguniform(1e-5, 1e-1),
       "n_pool_kernel_size": tune.choice([[2, 2, 2], [16, 8, 1]]),
       "n_freq_downsample": tune.choice([[168, 24, 1], [24, 12, 1], [1, 1, 1]]),
       "val_check_steps": 50,
       "random_seed": tune.randint(1, 10),
       "hist_exog_list": ['feat_1', 'feat_2', 'feat_3', 'feat_4', 'feat_5', 'feat_6'],
       "futr_exog_list": []
    }
Can you explain what it even means to tune the futr_exog_list? Is it if the feature should be included or not?
m
Sure! The way you set it in your config, you are setting them to a fixed value. So other hyperparameters will be tuned considering while always using the historical exogenous variables. Alternatively, if you use
tune.choice(['feat_1'], ['feat_2'], ['feat_1', 'feat_2'])
, then you also search if using only
feat_1
is better than using only
feat_2
, or if using both is best, etc. I hope this helps 🙂
v
Super! Thank you @Marco
A follow up question regarding AutoNHITS. If my horizon is short, say h = 10, for daily data. I might not get a good representation of my data using only one set of validation set. Is it possible to include multiple validations sets when tuning the hyperparameters?