digraph G { rnn [label="1st level RNN" shape=box] subgraph cluster0 { label = "time step 0" sent0 [label="sentence"] sent1 [label="sentence"] rnn1 [label="2nd level RNN" shape=box] sent0 -> rnn1 sent1 -> rnn1 } subgraph cluster1 { label = "time step 1" sent2 [label="sentence"] sent3 [label="sentence"] rnn2 [label="2nd level RNN" shape=box] sent2 -> rnn2 sent3 -> rnn2 } subgraph cluster2 { label = "time step 2" sent4 [label="sentence"] sent5 [label="sentence"] rnn3 [label="2nd level RNN" shape=box] sent4 -> rnn3 sent5 -> rnn3 } para0 [label="paragraph info 0"] para1 [label="paragraph info 1"] para2 [label="paragraph info 2"] rnn1 -> para0 rnn2 -> para1 rnn3 -> para2 para0 -> rnn para1 -> rnn para2 -> rnn chapter [label="chapter info"] rnn -> chapter }