\begin{tikzpicture} \begin{scope} \tikzstyle{rnnnode} = [draw,inner sep=5pt,minimum width=4em,minimum height=1.5em,fill=green!20!white,blur shadow={shadow xshift=1pt,shadow yshift=-1pt}] { \node [anchor=west,rnnnode] (node11) at (0,0) {\scriptsize{RNN Cell}}; \node [anchor=west,rnnnode] (node12) at ([xshift=2em]node11.east) {\scriptsize{RNN Cell}}; \node [anchor=west,rnnnode] (node13) at ([xshift=2em]node12.east) {\scriptsize{RNN Cell}}; \node [anchor=west,rnnnode] (node14) at ([xshift=2em]node13.east) {\scriptsize{RNN Cell}}; } \node [anchor=north,rnnnode,fill=red!20!white] (e1) at ([yshift=-1.2em]node11.south) {\tiny{${\mathbi{e}}_1={\mathbi{o}}_1{\mathbi{C}}$}}; \node [anchor=north,rnnnode,fill=red!20!white] (e2) at ([yshift=-1.2em]node12.south) {\tiny{${\mathbi{e}}_2={\mathbi{o}}_2{\mathbi{C}}$}}; \node [anchor=north,rnnnode,fill=red!20!white] (e3) at ([yshift=-1.2em]node13.south) {\tiny{${\mathbi{e}}_3={\mathbi{o}}_3{\mathbi{C}}$}}; \node [anchor=north,rnnnode,fill=red!20!white] (e4) at ([yshift=-1.2em]node14.south) {\tiny{${\mathbi{e}}_4={\mathbi{o}}_4{\mathbi{C}}$}}; \node [anchor=north] (w1) at ([yshift=-1em]e1.south) {\footnotesize{${\mathbi{o}}_1$}}; \node [anchor=north] (w2) at ([yshift=-1em]e2.south) {\footnotesize{${\mathbi{o}}_2$}}; \node [anchor=north] (w3) at ([yshift=-1em]e3.south) {\footnotesize{${\mathbi{o}}_3$}}; \node [anchor=north] (w4) at ([yshift=-1em]e4.south) {\footnotesize{${\mathbi{o}}_4$}}; \draw [->,thick] ([yshift=0.1em]w1.north)--([yshift=-0.1em]e1.south); \draw [->,thick] ([yshift=0.1em]w2.north)--([yshift=-0.1em]e2.south); \draw [->,thick] ([yshift=0.1em]w3.north)--([yshift=-0.1em]e3.south); \draw [->,thick] ([yshift=0.1em]w4.north)--([yshift=-0.1em]e4.south); \draw [->,thick] ([yshift=0.1em]e1.north)--([yshift=-0.1em]node11.south); \draw [->,thick] ([yshift=0.1em]e2.north)--([yshift=-0.1em]node12.south); \draw [->,thick] ([yshift=0.1em]e3.north)--([yshift=-0.1em]node13.south); \draw [->,thick] ([yshift=0.1em]e4.north)--([yshift=-0.1em]node14.south); { \node [anchor=south,rnnnode] (node21) at ([yshift=1.5em]node11.north) {\scriptsize{RNN Cell}}; \node [anchor=south,rnnnode] (node22) at ([yshift=1.5em]node12.north) {\scriptsize{RNN Cell}}; \node [anchor=south,rnnnode] (node23) at ([yshift=1.5em]node13.north) {\scriptsize{RNN Cell}}; \node [anchor=south,rnnnode] (node24) at ([yshift=1.5em]node14.north) {\scriptsize{RNN Cell}}; \node [anchor=south,rnnnode,fill=blue!20!white] (node31) at ([yshift=1.5em]node21.north) {\scriptsize{Softmax($\cdot$)}}; \node [anchor=south,rnnnode,fill=blue!20!white] (node32) at ([yshift=1.5em]node22.north) {\scriptsize{Softmax($\cdot$)}}; \node [anchor=south,rnnnode,fill=blue!20!white] (node33) at ([yshift=1.5em]node23.north) {\scriptsize{Softmax($\cdot$)}}; \node [anchor=south,rnnnode,fill=blue!20!white] (node34) at ([yshift=1.5em]node24.north) {\scriptsize{Softmax($\cdot$)}}; } { \draw [->,thick] ([yshift=0.1em]node31.north)--([yshift=1em]node31.north) node[pos=1,above] {\scriptsize{$\funp{P}(w_2)$}}; \draw [->,thick] ([yshift=0.1em]node32.north)--([yshift=1em]node32.north) node[pos=1,above] {\scriptsize{$\funp{P}(w_3|w_2)$}}; \draw [->,thick] ([yshift=0.1em]node33.north)--([yshift=1em]node33.north) node[pos=1,above] {\scriptsize{$\funp{P}(w_4|w_2 w_3)$}}; \draw [->,thick] ([yshift=0.1em]node34.north)--([yshift=1em]node34.north) node[pos=1,above] {\scriptsize{$\funp{P}(w_5|w_2 w_3 w_4)$}}; \draw [->,thick] ([yshift=0.1em]node21.north)--([yshift=-0.1em]node31.south); \draw [->,thick] ([yshift=0.1em]node22.north)--([yshift=-0.1em]node32.south); \draw [->,thick] ([yshift=0.1em]node23.north)--([yshift=-0.1em]node33.south); \draw [->,thick] ([yshift=0.1em]node24.north)--([yshift=-0.1em]node34.south); \draw [->,thick] ([xshift=-1em]node21.west)--([xshift=-0.1em]node21.west); \draw [->,thick] ([xshift=0.1em]node21.east)--([xshift=-0.1em]node22.west); \draw [->,thick] ([xshift=0.1em]node22.east)--([xshift=-0.1em]node23.west); \draw [->,thick] ([xshift=0.1em]node23.east)--([xshift=-0.1em]node24.west); \draw [->,thick] ([xshift=0.1em]node24.east)--([xshift=1em]node24.east); } \draw [->,thick] ([yshift=0.1em]node11.north)--([yshift=-0.1em]node21.south); \draw [->,thick] ([yshift=0.1em]node12.north)--([yshift=-0.1em]node22.south); \draw [->,thick] ([yshift=0.1em]node13.north)--([yshift=-0.1em]node23.south); \draw [->,thick] ([yshift=0.1em]node14.north)--([yshift=-0.1em]node24.south); \draw [->,thick] ([xshift=-1em]node11.west)--([xshift=-0.1em]node11.west); \draw [->,thick] ([xshift=0.1em]node11.east)--([xshift=-0.1em]node12.west); \draw [->,thick] ([xshift=0.1em]node12.east)--([xshift=-0.1em]node13.west); \draw [->,thick] ([xshift=0.1em]node13.east)--([xshift=-0.1em]node14.west); \draw [->,thick] ([xshift=0.1em]node14.east)--([xshift=1em]node14.east); \end{scope} \end{tikzpicture}