Answers.Body: <p>It is the combination of the output of all neurons that determines the output of the neural network. In the case of convolutional neural networks (CNNs), the term "feature" is used because it is associated with the <a href="https://qr.ae/TWIcfO" rel="nofollow noreferrer">feature maps</a> (or <a href="https://stats.stackexchange.com/a/292064/82135">activation maps</a>) and <a href="https://qr.ae/TWIcfL" rel="nofollow noreferrer">filters</a> (or kernels) of the CNN. However, this terminology might not be accurate (because these might not be features in the intuitive sense) and it is used more to <em>interpret</em> the inner workings of the CNN.</p>
  
  <p>After training, the weights of the neural network are fixed (unless you perform online and continual training), so the output of each neuron will be the same given the same input, thus the output of the neural network will also be the same (unless there is some random operation being performed). During training, the weights and thus the output of each neuron (and of the neural network) often change.</p>
  
  <p>The contribution of each neuron to the output of the neural network is determined by the weights of the connections between the neurons, which change during training and can be initialised in different ways, which might affect differently the final weights (after training).</p>
  
  <p>There several <a href="http://cs231n.github.io/understanding-cnn/" rel="nofollow noreferrer">ways of visualising the contribution of each neuron to the output of the neural network</a>. See also this article <a href="https://it.mathworks.com/help/deeplearning/examples/visualize-features-of-a-convolutional-neural-network.html" rel="nofollow noreferrer">Visualize Features of a Convolutional Neural Network</a> and the paper <a href="https://arxiv.org/pdf/1311.2901.pdf" rel="nofollow noreferrer">Visualizing and Understanding Convolutional Networks</a> (2013).</p>
  
Answers.ContentLicense: CC BY-SA 4.0
Answers.CreationDate: 2019-05-08T13:42:06.687Z
Answers.LastActivityDate: 2019-05-08T15:37:40.790Z
Answers.LastEditDate: 2019-05-08T15:37:40.790Z
Answers.UserDisplayName: nbro
Answers.Body: <p>The determination of what each neuron represents is dictated by the initial weights of the network. As you may know, the common practice is to initialize the weights randomly. This means that given the same input data, the network may switch what each neuron means. It may also function differently, taking longer or shorter times to train. However, if you set the random seed to some constant, you can make the network deterministic.</p>
  
Answers.ContentLicense: CC BY-SA 4.0
Answers.CreationDate: 2019-04-08T07:43:17.503Z
Answers.LastActivityDate: 2019-04-08T07:43:17.503Z
Answers.UserDisplayName: axon
Body: <p>In a neural network, each neuron represents some part of the input. For example, in the case of a MNIST digit, consider the stem of the number 9. Each neuron in the NN represents some part of this digit.</p>
  
  <ol>
  <li><p>What determines which neuron will represent which part of the digit?</p></li>
  <li><p>Is it possible that if we pass in the same input multiple times, each neuron can represent different parts of the digit?</p></li>
  <li><p>How is this related to the back-propagation algorithm and chain rule? Is it the case that, before training the neural network, each neuron doesn't really represent anything of the input, and, as training proceeds, neurons start to represent some part of the input?</p></li>
  </ol>
  
Tags: <neural-networks><machine-learning><convolutional-neural-networks><backpropagation><features>
Title: Which neuron represents which part of the input?
UserDisplayName: karthikeyan
ThreadText: # Which neuron represents which part of the input?
  
  (Asked by: username_0 on 2019-02-05)
  
  In a neural network, each neuron represents some part of the input. For example, in the case of a MNIST digit, consider the stem of the number 9. Each neuron in the NN represents some part of this digit.
  
  1. What determines which neuron will represent which part of the digit?
  2. Is it possible that if we pass in the same input multiple times, each neuron can represent different parts of the digit?
  3. How is this related to the back-propagation algorithm and chain rule? Is it the case that, before training the neural network, each neuron doesn't really represent anything of the input, and, as training proceeds, neurons start to represent some part of the input?
  
  **Tags:** neural-networks, machine-learning, convolutional-neural-networks, backpropagation, features
  
  ---
  
  ## 2 answers
  
  ### Answer by username_1 on 2019-05-08. Score: 1
  
  It is the combination of the output of all neurons that determines the output of the neural network. In the case of convolutional neural networks (CNNs), the term "feature" is used because it is associated with the [feature maps](https://qr.ae/TWIcfO) (or [activation maps](https://stats.stackexchange.com/a/292064/82135)) and [filters](https://qr.ae/TWIcfL) (or kernels) of the CNN. However, this terminology might not be accurate (because these might not be features in the intuitive sense) and it is used more to *interpret* the inner workings of the CNN.
  
  After training, the weights of the neural network are fixed (unless you perform online and continual training), so the output of each neuron will be the same given the same input, thus the output of the neural network will also be the same (unless there is some random operation being performed). During training, the weights and thus the output of each neuron (and of the neural network) often change.
  
  The contribution of each neuron to the output of the neural network is determined by the weights of the connections between the neurons, which change during training and can be initialised in different ways, which might affect differently the final weights (after training).
  
  There several [ways of visualising the contribution of each neuron to the output of the neural network](http://cs231n.github.io/understanding-cnn/). See also this article [Visualize Features of a Convolutional Neural Network](https://it.mathworks.com/help/deeplearning/examples/visualize-features-of-a-convolutional-neural-network.html) and the paper [Visualizing and Understanding Convolutional Networks](https://arxiv.org/pdf/1311.2901.pdf) (2013).
  
  
  ---
  
  ### Answer by username_2 on 2019-04-08. Score: 1
  
  The determination of what each neuron represents is dictated by the initial weights of the network. As you may know, the common practice is to initialize the weights randomly. This means that given the same input data, the network may switch what each neuron means. It may also function differently, taking longer or shorter times to train. However, if you set the random seed to some constant, you can make the network deterministic.
  
  
  ---
  
  