kristpapadopoulos / seriesnet

Time series prediction using dilated causal convolutional neural nets (temporal CNN)
MIT License
232 stars 64 forks source link

Output unexplicable #6

Closed cbouyssi closed 2 years ago

cbouyssi commented 5 years ago

Hi, I have tried to test your implementation of wavenet for energy production data. The input looks like :

time_serie = [257,247,244,245,231, ...]
test_size = 24

I did : predictions = evaluate_timeseries(time_serie, test_size) but predictions are values between -0.1 and 0.

Do you know what could be the reason ?

Thanks a lot

MohamedLotfyElrefai commented 5 years ago

I think the reason because you don't run a lot of epochs or you are doing a wrong shape. but the problem is when trying to feed the network with the time series is making it as input size of the network as in code take the length of the time series and passing it to DC_CNN_Model function did you face it ? I have run the code in sequence input for 2000epochs and get reasonable results

timeseries = np.array([1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16]) predict_size = 3 predictions = evaluate_timeseries(timeseries, predict_size) image but my problem as i see the input shape of the model will be the size of the time series.

fmmix commented 5 years ago

I have the same issue as @cbouyssi . Just using the script as is and the example time series from @MohamedLotfyElrefai . The network is not learning and prediction is [0,0,0]. Maybe it is due to different package versions? keras==2.2.4 , tensorflow==1.12.0, numpy==1.16.2 or do I have to adjust anything?

ranbix666 commented 5 years ago

I have the same issue mentioned by @fmmix .

ranbix666 commented 5 years ago

I think the reason because you don't run a lot of epochs or you are doing a wrong shape. but the problem is when trying to feed the network with the time series is making it as input size of the network as in code take the length of the time series and passing it to DC_CNN_Model function did you face it ? I have run the code in sequence input for 2000epochs and get reasonable results

timeseries = np.array([1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16]) predict_size = 3 predictions = evaluate_timeseries(timeseries, predict_size) image but my problem as i see the input shape of the model will be the size of the time series.

Hi @MohamedLotfyElrefai: I run your example. And I got the same issue as others. image

Could you please have a look? Thank you.

kristpapadopoulos commented 2 years ago

see updated script to see if that helps