title: keras model.evaluate doens't seem to be using weights
body: <p>I'm trying to build a CNN and I'm using keras for the classification.</p>
  <p>During the training step (model.fit()), I get accuracy near 90% but even using the same data on the test (model.evaluate()) I get roughly 50%.</p>
  <p>I think that it should not happen, as I'm using data that the model has already seen. Here is my code using the same data for train and test:</p>
  <pre><code>classificationModel.fit(X_train_img, Y_train_img, epochs=20, batch_size=50)
  print('\nevaluating\n')
  preds = classificationModel.evaluate(X_train_img, Y_train_img, batch_size=50)
  
  print (&quot;Loss = &quot; + str(preds[0]))
  print (&quot;Test Accuracy = &quot; + str(preds[1]))
  </code></pre>
  <p>and here is the output:</p>
  <pre><code>...
  Epoch 17/20
  6/6 [==============================] - 0s 25ms/step - loss: 0.0145 - accuracy: 1.0000
  Epoch 18/20
  6/6 [==============================] - 0s 24ms/step - loss: 0.0135 - accuracy: 1.0000
  Epoch 19/20
  6/6 [==============================] - 0s 24ms/step - loss: 0.0132 - accuracy: 1.0000
  Epoch 20/20
  6/6 [==============================] - 0s 24ms/step - loss: 0.0136 - accuracy: 1.0000
  
  evaluating
  
  6/6 [==============================] - 0s 9ms/step - loss: 7.6774 - accuracy: 0.4800
  
  Loss = 7.677433490753174
  Test Accuracy = 0.47999998927116394
  </code></pre>
  <p>in this case, shouldn't the model return something like 95~100% accuracy?</p>