It should be reasonably clear what each of the columns is. Those suffixed with '_average' are the averages for that 15 minute period on that day of the week. That is, averages for minute 15, hour 11, day 2 are the averages of all the data collected for 11.15am on Mondays. The aim is to see if we can predict 'the future'. For example, if it is 9.00am and we have current resource loads + averages based on historical data, can we predict the loads on certain critical resources at 10.00am. At this stage those "critical resources" are undefined but it would probably be best to start with the obvious - CPU. So I suppose the input to the nn for training purposes would be all (or a subset) of the the data available for each period (call it period p) - current readings and averages - and possibly the (historical) averages for the period we are trying to predict (period p + i). The desired result would be the actual value recorded (for CPU initially) for the period p + i. We could vary the value of i and see how the reliability of predictions varied as i changed.