Body: <p>Consider I have a 3 layers neural network.  </p>
  
  <ul>
  <li>Input Layer containing 784 neurons.</li>
  <li>Hidden layer containing 100 neurons.</li>
  <li>Output layer containing 10 neurons.</li>
  </ul>
  
  <p>My objective is to make an OCR and I used MNIST data to train my network.</p>
  
  <p>Suppose I gave the network an input taken from an image, and the values from the output neurons are the next:  </p>
  
  <ul>
  <li><span class="math-container">$0: 0.0001$</span>  </li>
  <li><span class="math-container">$1: 0.0001$</span>  </li>
  <li><span class="math-container">$2: 0.0001$</span></li>
  <li><span class="math-container">$3: 0.1015$</span></li>
  <li><span class="math-container">$4: 0.0001$</span></li>
  <li><span class="math-container">$5: 0.0002$</span></li>
  <li><span class="math-container">$6: 0.0001$</span></li>
  <li><span class="math-container">$7: 0.0009$</span></li>
  <li><span class="math-container">$8: 0.001$</span></li>
  <li><span class="math-container">$9: 0.051$</span></li>
  </ul>
  
  <p>When the network returns this output, my program will tell me that he identified the image as number 3.  </p>
  
  <p>Now by looking at the values, even though the network recognized the image as 3, the output value of number 3 was actually very low: <span class="math-container">$0.1015$</span>. I am saying very low, because usually the highest value of the classified index is as close as 1.0, so we get the value as 0.99xxx.  </p>
  
  <p>May I assume that the network failed to classify the image, or may I say that the network classified the image as 3, but due to the low value, the network is not certain?</p>
  
  <p>Am I right thinking like this, or did I misunderstand how does the output actually works?</p>
  
Tags: <neural-networks><optical-character-recognition>
Title: How much extra information can we conclude from a neural network output values?
UserDisplayName: Paul Karam
ThreadText: # How much extra information can we conclude from a neural network output values?
  
  (Asked by: username_0 on 2018-10-22)
  
  Consider I have a 3 layers neural network.
  
  * Input Layer containing 784 neurons.
  * Hidden layer containing 100 neurons.
  * Output layer containing 10 neurons.
  
  My objective is to make an OCR and I used MNIST data to train my network.
  
  Suppose I gave the network an input taken from an image, and the values from the output neurons are the next:
  
  * $0: 0.0001$
  * $1: 0.0001$
  * $2: 0.0001$
  * $3: 0.1015$
  * $4: 0.0001$
  * $5: 0.0002$
  * $6: 0.0001$
  * $7: 0.0009$
  * $8: 0.001$
  * $9: 0.051$
  
  When the network returns this output, my program will tell me that he identified the image as number 3.
  
  Now by looking at the values, even though the network recognized the image as 3, the output value of number 3 was actually very low: $0.1015$. I am saying very low, because usually the highest value of the classified index is as close as 1.0, so we get the value as 0.99xxx.
  
  May I assume that the network failed to classify the image, or may I say that the network classified the image as 3, but due to the low value, the network is not certain?
  
  Am I right thinking like this, or did I misunderstand how does the output actually works?
  
  **Tags:** neural-networks, optical-character-recognition
  
  ---
  
  ## 0 answers
  
  