I am training a multi-lable classification model on keras, after 10 epochs it's showing 91.80% accuracy on training set and 86.95% on validation set. When I am testing the same training set using model's predict method I am getting different(78%) accuracy. Is it because keras is using different method for computing accuracy?
Any ideas will be appreciated on how to overcome this difference.
Please find training and testing code @GithubGist
Epoch 1/10
2019-05-28 20:50:45.675999: I tensorflow/core/platform/cpu_feature_guard.cc:141] Your CPU supports instructions that this TensorFlow binary was not compiled to use: SSE4.1 SSE4.2 AVX AVX2 FMA
2019-05-28 20:50:45.840580: I tensorflow/core/common_runtime/process_util.cc:69] Creating new thread pool with default inter op setting: 2. Tune using inter_op_parallelism_threads for best performance.
9600/9600 [==============================] - 99s 10ms/step - loss: 0.5300 - acc: 0.7443 - val_loss: 0.4317 - val_acc: 0.7950
Epoch 2/10
9600/9600 [==============================] - 60s 6ms/step - loss: 0.4399 - acc: 0.7911 - val_loss: 0.3859 - val_acc: 0.8305
Epoch 3/10
9600/9600 [==============================] - 60s 6ms/step - loss: 0.3891 - acc: 0.8256 - val_loss: 0.3607 - val_acc: 0.8485
Epoch 4/10
9600/9600 [==============================] - 60s 6ms/step - loss: 0.3520 - acc: 0.8466 - val_loss: 0.3182 - val_acc: 0.8455
Epoch 5/10
9600/9600 [==============================] - 59s 6ms/step - loss: 0.3225 - acc: 0.8609 - val_loss: 0.3229 - val_acc: 0.8705
Epoch 6/10
9600/9600 [==============================] - 59s 6ms/step - loss: 0.2920 - acc: 0.8788 - val_loss: 0.3143 - val_acc: 0.8640
Epoch 7/10
9600/9600 [==============================] - 60s 6ms/step - loss: 0.2644 - acc: 0.8903 - val_loss: 0.3308 - val_acc: 0.8645
Epoch 8/10
9600/9600 [==============================] - 62s 6ms/step - loss: 0.2397 - acc: 0.9030 - val_loss: 0.3322 - val_acc: 0.8725
Epoch 9/10
9600/9600 [==============================] - 60s 6ms/step - loss: 0.2226 - acc: 0.9108 - val_loss: 0.3353 - val_acc: 0.8670
Epoch 10/10
9600/9600 [==============================] - 60s 6ms/step - loss: 0.2029 - acc: 0.9180 - val_loss: 0.3797 - val_acc: 0.8695