在神经网络节点内添加颜色和文本

在神经网络节点内添加颜色和文本

我有以下神经网络结构,但我想修改它并将所有输入节点涂成黑色,并在隐藏节点内写入 f(x)。请指导我如何实现它。

在此处输入图片描述

像这样

在此处输入图片描述

 \usetikzlibrary{positioning}
    \tikzset{%
      every neuron/.style={
        circle,
        draw,
        minimum size=1cm
      },
      neuron missing/.style={
        draw=none, 
        scale=4,
        text height=0.333cm,
        execute at begin node=\color{black}$\vdots$
      },
    }
    
    \begin{tikzpicture}[x=1.3cm, y=1.3cm, >=stealth]
    
    \foreach \m/\l [count=\y] in {1,2,3,missing,4}
      \node [every neuron/.try, neuron \m/.try] (input-\m) at (0,2.5-\y) {};
    
    \foreach \m [count=\y] in {1,missing,2}
      \node [every neuron/.try, neuron \m/.try ] (hidden-\m) at (2,2-\y*1.25) {};
    
    
    \foreach \m [count=\y] in {1,2,missing,3}
      \node [every neuron/.try, neuron \m/.try ] (output-\m) at (4,2.0-\y) {};
    
    \foreach \l [count=\i] in {1,2,3,j}
      \draw [<-] (input-\i) -- ++(-1,0)
        node [above, midway] {$I_\l_f$};
    
    \foreach \l [count=\i] in {1,k}
      \node [above] at (hidden-\i.north) {$H_\l_f$};
    
    
    \foreach \l [count=\i] in {1,2,l}
      \draw [->] (output-\i) -- ++(1,0)
        node [above, midway] {$O_\l_f$};
        
    \foreach \i in {1,...,4}
      \foreach \j in {1,...,2}
        \draw [->] (input-\i) -- (hidden-\j);
    
    \foreach \i in {1,...,2}
      \foreach \j in {1,...,3}
        \draw [->] (hidden-\i) -- (output-\j);
    
    \foreach \l [count=\x from 0] in {Input, Hidden, Output}
      \node [align=center, above] at (\x*2,2) {\l \\ layer};
    
    \end{tikzpicture}

答案1

在此处输入图片描述

\documentclass{article}
\usepackage{tikz}

\usetikzlibrary{positioning}
\begin{document}


\tikzset{%
    every neuron/.style={
        circle,
        draw,
        minimum size=1cm
    },
    neuron missing/.style={
        draw=none, fill=none,%<-----------------new
        scale=4,
        text height=0.333cm,
        execute at begin node=\color{black}$\vdots$
    },
}

\begin{tikzpicture}[x=1.3cm, y=1.3cm, >=stealth]
    
    \foreach \m/\l [count=\y] in {1,2,3,missing,4}
    \node [fill=black!20, every neuron/.try, neuron \m/.try, ] (input-\m) at (0,2.5-\y) {};%<-----fill=
    
    \foreach \m [count=\y] in {1,missing,2}
    \node [every neuron/.try, neuron \m/.try ] (hidden-\m) at (2,2-\y*1.25) {};
    
    
    \foreach \m [count=\y] in {1,2,missing,3}
    \node [every neuron/.try, neuron \m/.try ] (output-\m) at (4,2.0-\y) {};
    
    \foreach \l [count=\i] in {1,2,3,j}
    \draw [<-] (input-\i) -- ++(-1,0)
    node [above, midway] {$I$};
    
    \foreach \l [count=\i] in {1,k}
    \node [above] at (hidden-\i.north) {$H$};
    
    
    \foreach \l [count=\i] in {1,2,l}
    \draw [->] (output-\i) -- ++(1,0)
    node [above, midway] {$O$};
    
    \foreach \i in {1,...,4}
    \foreach \j in {1,...,2}
    \draw [->] (input-\i) -- (hidden-\j);
    
    \foreach \i in {1,...,2}
    \foreach \j in {1,...,3}
    \draw [->] (hidden-\i) -- (output-\j);
    
    \foreach \l [count=\x from 0] in {Input, Hidden, Output}
    \node [align=center, above] at (\x*2,2) {\l \\ layer};
    \node (nx1) at (hidden-1) {$\mathbf{f_x}$};%<---------------new
    \node (nx2) at (hidden-2) {$\mathbf{f_x}$};%<---------------new
\end{tikzpicture}
\end{document}

相关内容