%%%------------------------------------------------------------------------------------------------------------ \begin{tikzpicture} \begin{scope} \def\neuronsep{1.35} \tikzstyle{neuronnode} = [minimum size=1.9em,circle,draw,ublue,very thick,inner sep=1.75pt, fill=white,align=center,drop shadow={shadow xshift=0.1em,shadow yshift=-0.1em}]; %%% layer 1 \foreach \n in {1,...,4}{ \node [neuronnode] (neuron0\n) at (\n * \neuronsep,0) {}; \draw [->] ([yshift=-1.3em]neuron0\n.south) -- ([yshift=-0.1em]neuron0\n.south) node [pos=0,below] {\scriptsize{...}}; } \begin{pgfonlayer}{background} \node [rectangle,inner sep=0.2em,fill=red!20] [fit = (neuron01) (neuron04)] (layer01) {}; \node [anchor=east] (layer01label) at (layer01.west) {\footnotesize{层$k-1$}}; \end{pgfonlayer} %%% layer 2 \foreach \n in {1,...,4}{ \node [neuronnode] (neuron1\n) at (\n * \neuronsep,4em) {}; } \foreach \n in {1,...,4}{ \foreach \m in {1,...,4}{ \draw [<-] ([yshift=-0.1em]neuron1\n.south) -- (neuron0\m.north); } } \begin{pgfonlayer}{background} \node [rectangle,inner sep=0.2em,fill=ugreen!20] [fit = (neuron11) (neuron14)] (layer02) {}; \node [anchor=east] (layer02label) at (layer02.west) {\footnotesize{层$k$}}; \end{pgfonlayer} %%% layer 3 \foreach \n in {1,...,4}{ \node [neuronnode] (neuron2\n) at (\n * \neuronsep,8em) {}; \draw [<-] ([yshift=0.8em]neuron2\n.north) -- ([yshift=0.0em]neuron2\n.north) node [pos=0,above] {\scriptsize{...}}; } \foreach \n in {1,...,4}{ \foreach \m in {1,...,4}{ \draw [<-] ([yshift=-0.1em]neuron2\n.south) -- (neuron1\m.north); } } \begin{pgfonlayer}{background} \node [rectangle,inner sep=0.2em,fill=blue!20] [fit = (neuron21) (neuron24)] (layer03) {}; \node [anchor=east] (layer03label) at (layer03.west) {\footnotesize{层$k+1$}}; \end{pgfonlayer} %%% output layer \foreach \n in {1,...,4}{ \node [neuronnode] (neuron3\n) at (\n * \neuronsep,12.4em) {}; { \draw [<-] ([yshift=0.6em]neuron3\n.north) -- ([yshift=0.0em]neuron3\n.north) node [pos=0,above] {\scriptsize{输出}}; } \draw [->] ([yshift=-0.6em]neuron3\n.south) -- ([yshift=0.0em]neuron3\n.south); } \begin{pgfonlayer}{background} \node [rectangle,inner sep=0.2em,fill=ugreen!20] [fit = (neuron31) (neuron34)] (layer04) {}; \node [anchor=east] (layer04label) at (layer04.west) {\footnotesize{层$K$(输出)}}; \end{pgfonlayer} { \node [neuronnode,draw=red,fill=red!20!white,inner sep=1pt] (neuron12new) at (2 * \neuronsep,4em) {}; \node [anchor=east] (neuronsamplelabel) at ([yshift=-1em]layer02label.south east) {{\textbf{\scriptsize{第$k$层, 第$i$个神经元}}}}; \draw [->,dashed,very thick,red] ([xshift=-0.2em,yshift=0.2em]neuronsamplelabel.east) .. controls +(30:1) and +(220:1) .. ([xshift=-0em,yshift=-0em]neuron12new.210); } { \foreach \n in {1,...,4}{ \draw [<-,thick,red] (neuron2\n.south) -- (neuron12.north); } } { \draw [<-,thick,red] (neuron14.south) -- (neuron04.north); \node [anchor=north] (wlabel) at (layer02.south east) {{\footnotesize{$w_{4,4}^{k}$}}}; } \end{scope} \end{tikzpicture} %%%------------------------------------------------------------------------------------------------------------