DIFFUSION CONVOLUTION RECURRENT NEURAL NETWORK FOR … · •Non-Euclidean spatial geometry...

30
DIFFUSION CONVOLUTION RECURRENT NEURAL NETWORK FOR TRAFFIC FORECASTING SCIENCE USE CASE 2 AUGUST 9, 2019 Tanwi Mallick and Prasanna Balaprakash ATPESC 2019

Transcript of DIFFUSION CONVOLUTION RECURRENT NEURAL NETWORK FOR … · •Non-Euclidean spatial geometry...

Page 1: DIFFUSION CONVOLUTION RECURRENT NEURAL NETWORK FOR … · •Non-Euclidean spatial geometry •Model each sensor independently fail to capture spatial correlation. Forecasting for

DIFFUSION CONVOLUTION RECURRENT NEURAL NETWORK FOR TRAFFIC FORECASTING

SCIENCE USE CASE 2

AUGUST 9, 2019

Tanwi Mallick and Prasanna BalaprakashATPESC 2019

Page 2: DIFFUSION CONVOLUTION RECURRENT NEURAL NETWORK FOR … · •Non-Euclidean spatial geometry •Model each sensor independently fail to capture spatial correlation. Forecasting for

Traffic forecasting• Given• Historic traffic metrics {speed, flow, etc}• Road network distance and connectivity

• Predict • Future traffic metrics

2

Large-scale machine (supervised) learning problem!

Page 3: DIFFUSION CONVOLUTION RECURRENT NEURAL NETWORK FOR … · •Non-Euclidean spatial geometry •Model each sensor independently fail to capture spatial correlation. Forecasting for

Traffic data from Caltrans Performance Measurement System (PeMS)

3

The data includes:• Timestamp• Loop IDs• District• Freeway name • Freeway direction• Total flow • Average speed

Page 4: DIFFUSION CONVOLUTION RECURRENT NEURAL NETWORK FOR … · •Non-Euclidean spatial geometry •Model each sensor independently fail to capture spatial correlation. Forecasting for

Location data of Loop IDs

4

Page 5: DIFFUSION CONVOLUTION RECURRENT NEURAL NETWORK FOR … · •Non-Euclidean spatial geometry •Model each sensor independently fail to capture spatial correlation. Forecasting for

Available data set for CaltransDistrict Total Stations

District 3 1247

District 4 3880

District 5 382

District 6 624

District 7 4856

District 8 2115

District 10 1189

District 11 1502

District 12 2539

Total 18334

5

http://pems.dot.ca.gov/

Page 6: DIFFUSION CONVOLUTION RECURRENT NEURAL NETWORK FOR … · •Non-Euclidean spatial geometry •Model each sensor independently fail to capture spatial correlation. Forecasting for

Available data set for Caltrans

6

Total : 11, 160 detector stationsDuration: 1st Jan 2018 to 31st Dec 2018

Page 7: DIFFUSION CONVOLUTION RECURRENT NEURAL NETWORK FOR … · •Non-Euclidean spatial geometry •Model each sensor independently fail to capture spatial correlation. Forecasting for

Network distance computation• OSRM local server (unlimited query)• Find the driving distance between two nearest loop IDs by querying

in OSRM server– Nearest neighbor using Euclidean distance (to speedup)

• OSRM gives shortest driving distance between two latitude and longitude

7

Page 8: DIFFUSION CONVOLUTION RECURRENT NEURAL NETWORK FOR … · •Non-Euclidean spatial geometry •Model each sensor independently fail to capture spatial correlation. Forecasting for

Problem statement: Traffic prediction

8

h(.)

X t - T’ + 1 X t X t + 1 X t + T

… …

Page 9: DIFFUSION CONVOLUTION RECURRENT NEURAL NETWORK FOR … · •Non-Euclidean spatial geometry •Model each sensor independently fail to capture spatial correlation. Forecasting for

Challenges

9

• Complex spatial dependency

• Non-stationary temporal dynamics

• Non-Euclidean spatial geometry

• Model each sensor independently fail to capture spatial correlation

Page 10: DIFFUSION CONVOLUTION RECURRENT NEURAL NETWORK FOR … · •Non-Euclidean spatial geometry •Model each sensor independently fail to capture spatial correlation. Forecasting for

Forecasting for multiple loop detector

10

• Transportation network as graph• V = Vertices (sensors)• E = Edges (roads)• A = Weighted adjacency matrix

(A function of the road network distance)

Capturing the road network in terms of graphs

Page 11: DIFFUSION CONVOLUTION RECURRENT NEURAL NETWORK FOR … · •Non-Euclidean spatial geometry •Model each sensor independently fail to capture spatial correlation. Forecasting for

Diffusion convolution

11

Out-degree In-degree

Page 12: DIFFUSION CONVOLUTION RECURRENT NEURAL NETWORK FOR … · •Non-Euclidean spatial geometry •Model each sensor independently fail to capture spatial correlation. Forecasting for

Recurrent Neural Network

12

xt

yt

ht

Why Whh

Whx

x1

y1

h1

WhyWhh

Whx

x2

y2

ht

Why

Whx

xt

yt

ht

Why

Whx

Page 13: DIFFUSION CONVOLUTION RECURRENT NEURAL NETWORK FOR … · •Non-Euclidean spatial geometry •Model each sensor independently fail to capture spatial correlation. Forecasting for

Encoder decoder Framework of DCRNN

13

x1

DCGRU

x2

DCGRU

x3

DCGRU

X4

DCGRU

X5

DCGRU

X6

DCGRU

X4 X5

<GO>

Current time

Page 14: DIFFUSION CONVOLUTION RECURRENT NEURAL NETWORK FOR … · •Non-Euclidean spatial geometry •Model each sensor independently fail to capture spatial correlation. Forecasting for

GRU cell

14

𝑢𝑡 = 𝜎(𝑤'[ℎ*+,, 𝑥*])

𝑟𝑡 = 𝜎(𝑤2[ℎ*+,, 𝑥*])

𝑐* = 𝑡𝑎𝑛ℎ(𝑤6[𝑟*∗ ℎ*+,, 𝑥*])

ℎ* = 1 − 𝑢* ∗ ℎ*+, +𝑢𝑡 ∗ 𝑐*

Page 15: DIFFUSION CONVOLUTION RECURRENT NEURAL NETWORK FOR … · •Non-Euclidean spatial geometry •Model each sensor independently fail to capture spatial correlation. Forecasting for

DCRNN cell

15

𝑢𝑡 = 𝜎(𝑤'∗;[ℎ*+,, 𝑥*])

𝑟𝑡 = 𝜎(𝑤2∗;[ℎ*+,, 𝑥*])

𝑐* = 𝑡𝑎𝑛ℎ(𝑤6∗;[𝑟*∗ ℎ*+,, 𝑥*])

ℎ* = 1 − 𝑢* ∗ ℎ*+, +𝑢𝑡 ∗ 𝑐*

Page 16: DIFFUSION CONVOLUTION RECURRENT NEURAL NETWORK FOR … · •Non-Euclidean spatial geometry •Model each sensor independently fail to capture spatial correlation. Forecasting for

Traffic forecasting using DCRNN

16

Page 17: DIFFUSION CONVOLUTION RECURRENT NEURAL NETWORK FOR … · •Non-Euclidean spatial geometry •Model each sensor independently fail to capture spatial correlation. Forecasting for

Scaling DCRNN on HPC systems• Domain decomposition for large networks– Partition large graph into sub-graph– Run DCRNN for each sub-graph on a compute

node – Combine the results and forecast traffic

• Simultaneous execution of DCRNN

17

Page 18: DIFFUSION CONVOLUTION RECURRENT NEURAL NETWORK FOR … · •Non-Euclidean spatial geometry •Model each sensor independently fail to capture spatial correlation. Forecasting for

Graph partitioning using Metis• 3 major phases– coarsening– initial partitioning– refinement

• Key advantage– millions of vertices in

few seconds

18

G1

Gn

… …

… …

coarsening

refin

emen

t

initial partitioning

Page 19: DIFFUSION CONVOLUTION RECURRENT NEURAL NETWORK FOR … · •Non-Euclidean spatial geometry •Model each sensor independently fail to capture spatial correlation. Forecasting for

19

Partitions on the map

Partition 1 Partition 2

Partition 4

Partition 8

Partition 3

Partition 7

Partition 5

Partition 6

Partition

Page 20: DIFFUSION CONVOLUTION RECURRENT NEURAL NETWORK FOR … · •Non-Euclidean spatial geometry •Model each sensor independently fail to capture spatial correlation. Forecasting for

Simultaneous execution of DCRNN

20

Page 21: DIFFUSION CONVOLUTION RECURRENT NEURAL NETWORK FOR … · •Non-Euclidean spatial geometry •Model each sensor independently fail to capture spatial correlation. Forecasting for

Data set

• Total stations: 11160• Divide the whole data

set in different number of partitions

21

Number of partitions

Stations per partition (aprox)

2 5580

4 2790

8 1395

16 697

32 348

64 174

128 87

256 43

512 21

1024 11

Page 22: DIFFUSION CONVOLUTION RECURRENT NEURAL NETWORK FOR … · •Non-Euclidean spatial geometry •Model each sensor independently fail to capture spatial correlation. Forecasting for

Forecasting accuracy

22

Page 23: DIFFUSION CONVOLUTION RECURRENT NEURAL NETWORK FOR … · •Non-Euclidean spatial geometry •Model each sensor independently fail to capture spatial correlation. Forecasting for

Execution time

23

Page 24: DIFFUSION CONVOLUTION RECURRENT NEURAL NETWORK FOR … · •Non-Euclidean spatial geometry •Model each sensor independently fail to capture spatial correlation. Forecasting for

DCRNN results

24

Group: 1 Node: 247

Group: 2 Node: 247

Page 25: DIFFUSION CONVOLUTION RECURRENT NEURAL NETWORK FOR … · •Non-Euclidean spatial geometry •Model each sensor independently fail to capture spatial correlation. Forecasting for

DCRNN results

25

Group: 3 Node: 256

Group: 7 Node: 260

Page 26: DIFFUSION CONVOLUTION RECURRENT NEURAL NETWORK FOR … · •Non-Euclidean spatial geometry •Model each sensor independently fail to capture spatial correlation. Forecasting for

Speed prediction

26Group: 5

Page 27: DIFFUSION CONVOLUTION RECURRENT NEURAL NETWORK FOR … · •Non-Euclidean spatial geometry •Model each sensor independently fail to capture spatial correlation. Forecasting for

Speed prediction

27Group: 2

Page 28: DIFFUSION CONVOLUTION RECURRENT NEURAL NETWORK FOR … · •Non-Euclidean spatial geometry •Model each sensor independently fail to capture spatial correlation. Forecasting for

Speed prediction

28

Page 29: DIFFUSION CONVOLUTION RECURRENT NEURAL NETWORK FOR … · •Non-Euclidean spatial geometry •Model each sensor independently fail to capture spatial correlation. Forecasting for

Speed prediction

29

Page 30: DIFFUSION CONVOLUTION RECURRENT NEURAL NETWORK FOR … · •Non-Euclidean spatial geometry •Model each sensor independently fail to capture spatial correlation. Forecasting for

Summary• DCRNN captures the spatial as well as

temporal dynamics well• DCRNN is scalable for large network without

performance degradation

30