Currently, we are forecasting from start date of training period to last date of the val period and then calculating the train and validation loss by splitting the prediction.
However, to make it more generalizable, the forecasting of training and val period must be done separately. for eg., if the S,E,I,R buckets have to initialized with known values, it should happen so at the start of the val period (for computing val loss)
df_prediction = optimiser.solve({**best_params, **default_params}, end_date=df_district.iloc[-1, :]['date'], model=model)
Currently, we are forecasting from start date of training period to last date of the val period and then calculating the train and validation loss by splitting the prediction.
However, to make it more generalizable, the forecasting of training and val period must be done separately. for eg., if the S,E,I,R buckets have to initialized with known values, it should happen so at the start of the val period (for computing val loss)