hi,

I just want to confirm what is happening in this code (C4_W2_lab3):

“Ungraded Lab: Training a Deep Neural Network with Time Series Data”

section “You can get the predictions again and overlay it on the validation set.”

# Initialize a list

forecast =

# Reduce the original series

forecast_series = series[split_time - window_size:]

# Use the model to predict data points per window size

for time in range(len(forecast_series) - window_size):

```
forecast.append(model_tune.predict(forecast_series[time:time + window_size][np.newaxis]))
```

# Convert to a numpy array and drop single dimensional axes

results = np.array(forecast).squeeze()

##
# Plot the results

plot_series(time_valid, (x_valid, results))

So, Please correct me if I am wrong. I believe the above code is doing the following: (let’s assume window_size=20):

- create a new
**forecast_series**list by taking the original series data from the**split_time - window size**to the end of the available data. - iterate
- take a single time (integer) from 1…(len(forecast_series)) - 20)
- use that time integer to build a list from the data from the forecast_series by extracting data from the range
**time**to**time + 20**. So, the first time, the data will be from the range 1…21 - use this sublist (above) to feed into the
**model_tune.predict()**function. This essentially predicts the value for the 22nd item (i.e., the value for the next timestep) - append this prediction to the
**forecast**list we are building - the next iteration will create a prediction for the 23rd item, based on the
**forecast_series**data from the range 2…22, and so on until we have filled the forecast list with predictions

So, essentially, this code is taking observed series data of size **window_size** and creating a prediction exactly one timestep into the future. It continues this process for **split_time - window size** to the end of the available data.

Thank you for correcting or confirming my understanding on this.

Sincerely,

Ed