\documentclass{article}

\usepackage{tikz}
\usetikzlibrary{matrix,chains,positioning,decorations.pathreplacing,arrows}

\begin{document}

\begin{tikzpicture}[
    plain/.style={
      draw=none,
      fill=none,
    },
    net/.style={
      matrix of nodes,
      nodes={
        draw,
        circle,
        fill=blue!50
      },
      nodes in empty cells,
      column sep=2cm,
      row sep=-9pt
    },
    >=latex
]
% Neural Network nodes
\matrix[net] (mat)
{
|[plain]| \parbox{1cm}{\centering Input layer} & |[plain]| \parbox{1cm}{\centering Hidden layer} & |[plain]| \parbox{1cm}{\centering Output layer} \\
& |[plain]| \\
|[plain]| & \\
& |[plain]| \\
|[plain]| & \\
& |[plain]| \\
|[plain]| & |[plain]| \\
};

% Connect nodes
\foreach \ai [count=\mi ]in {2,4,...,10}
  \foreach \aii in {3,6}
    \draw[->] (mat-\ai-1) -- (mat-\aii-2);
\foreach \ai in {3,6}
  \draw[->] (mat-\ai-2) -- (mat-6-3);

% Label layers
\foreach \l [count=\x from 0] in {Input, Hidden, Output}
  \node[align=center, above] at (mat-1-\x) {\l\\layer};

\end{tikzpicture}

\end{document}
