title: Keras - predict_proba does not add up to 1?
body: <p>I'm new to Keras, and this is my nn:</p>
  
  <pre><code>model = Sequential()
  model.add(Dense(12, activation="relu", input_dim=12, kernel_initializer="normal"))
  model.add(Dense(3, activation="sigmoid", kernel_initializer="normal"))
  model.compile(loss='categorical_crossentropy', optimizer='adam', metrics=['accuracy'])
  </code></pre>
  
  <p>I have 3 outputs: high, medium, or low.</p>
  
  <p>When I tried to use the <code>predict</code> function, I get the correct classes:</p>
  
  <pre><code>array(['medium', 'low', 'medium', ..., 'low', 'medium', 'low'], dtype=object)
  </code></pre>
  
  <p>However, when i tried <code>predict_proba</code> function, I would get probabilities that doesn't add up to 1?</p>
  
  <pre><code>array([[  4.93983855e-04,   2.28181913e-01,   9.70774710e-01],
         [  3.14530940e-03,   9.60477769e-01,   3.79752717e-04],
         [  1.40661141e-03,   5.70683666e-02,   9.96348858e-01],
         ..., 
         [  1.29012510e-01,   7.08254218e-01,   2.44960701e-03],
         [  1.69786233e-02,   4.71719205e-02,   9.90665674e-01],
         [  1.28657368e-04,   9.89430904e-01,   9.04915680e-04]], dtype=float32)
  </code></pre>
  
  <p>The first row is 4.93983855e-04 + 2.28181913e-01 + 9.70774710e-01, the sum is 1.199450606855, which is greater than 1.</p>
  
  <p>I thought the 1st row means: probability of 1st column (4.93983855e-04) is medium?</p>