xiaochus / TrafficFlowPrediction

Traffic Flow Prediction with Neural Networks(SAEs、LSTM、GRU).
MIT License
567 stars 240 forks source link
gru lstm saes traffic-flow-prediction

Traffic Flow Prediction

Traffic Flow Prediction with Neural Networks(SAEs、LSTM、GRU).

Requirement

Train the model

Run command below to train the model:

python train.py --model model_name

You can choose "lstm", "gru" or "saes" as arguments. The .h5 weight file was saved at model folder.

Experiment

Data are obtained from the Caltrans Performance Measurement System (PeMS). Data are collected in real-time from individual detectors spanning the freeway system across all major metropolitan areas of the State of California.

device: Tesla K80
dataset: PeMS 5min-interval traffic flow data
optimizer: RMSprop(lr=0.001, rho=0.9, epsilon=1e-06)
batch_szie: 256 

Run command below to run the program:

python main.py

These are the details for the traffic flow prediction experiment.

Metrics MAE MSE RMSE MAPE R2 Explained variance score
LSTM 7.21 98.05 9.90 16.56% 0.9396 0.9419
GRU 7.20 99.32 9.97 16.78% 0.9389 0.9389
SAEs 7.06 92.08 9.60 17.80% 0.9433 0.9442

evaluate

Reference

@article{SAEs,  
  title={Traffic Flow Prediction With Big Data: A Deep Learning Approach},  
  author={Y Lv, Y Duan, W Kang, Z Li, FY Wang},
  journal={IEEE Transactions on Intelligent Transportation Systems, 2015, 16(2):865-873},
  year={2015}
}

@article{RNN,  
  title={Using LSTM and GRU neural network methods for traffic flow prediction},  
  author={R Fu, Z Zhang, L Li},
  journal={Chinese Association of Automation, 2017:324-328},
  year={2017}
}

Copyright

See LICENSE for details.