我在跑keras时发现了一些奇怪的东西。
从数据集中,我手动拆分训练和测试集。 在火车上,我用
validation_split=0.1 and shuffle=True
我的期望是,验证精度会上升到某个点,而测试精度也会上升到该点。但似乎验证集的准确性有所提高,但该模型并未提供预期的性能,如下所示。
Epoch 96/100
2710/2710 [==============================] - 0s 128us/step - loss: 0.6681 - acc: 0.7801 - val_loss: 0.8066 - val_acc: 0.7152
Epoch 97/100
2710/2710 [==============================] - 0s 128us/step - loss: 0.6551 - acc: 0.7823 - val_loss: 0.8254 - val_acc: 0.7086
Epoch 98/100
2710/2710 [==============================] - 0s 129us/step - loss: 0.6422 - acc: 0.7952 - val_loss: 0.7726 - val_acc: 0.7152
Epoch 99/100
2710/2710 [==============================] - 0s 128us/step - loss: 0.5999 - acc: 0.8173 - val_loss: 0.8234 - val_acc: 0.6755
Epoch 100/100
2710/2710 [==============================] - 0s 129us/step - loss: 0.5882 - acc: 0.8277 - val_loss: 0.8162 - val_acc: 0.6722
##########
Accuracy: 0.5594
##########
我怀疑if shuffle = True选项会导致此问题;它将在每个纪元提供另一个验证集。
我是正确的还是我缺少某些选项?