I have a multilabel data, with 8 labels for each instance.
The shape of validation data is (1000,8)
, when i use the data, keras fit_generator
show me good result.
Epoch 1/5
- 445s - loss: 0.3608 - acc: 0.8522 - val_loss: 0.3528 - val_acc: 0.8538
Epoch 2/5
- 382s - loss: 0.3579 - acc: 0.8528 - val_loss: 0.3528 - val_acc: 0.8538
Epoch 3/5
- 377s - loss: 0.3555 - acc: 0.8525 - val_loss: 0.3516 - val_acc: 0.8538
Epoch 4/5
- 375s - loss: 0.3550 - acc: 0.8526 - val_loss: 0.3509 - val_acc: 0.8538
Epoch 5/5
- 373s - loss: 0.3515 - acc: 0.8528 - val_loss: 0.3454 - val_acc: 0.8538
<keras.callbacks.History at 0x7fd7d2fca2b0>
But when i check the accuracy usig sklearn
using following code
y_pred = model.predict_generator(valid_gen,steps=step_size_val)
I got this error ValueError: Classification metrics can't handle a mix of multilabel-indicator and continuous-multioutput targets
So i do
y_pred[y_pred>=0.5] = 1
y_pred[y_pred<0.5] = 0
y_pred=y_pred.astype(int)
But now i got zero
accuracy