拟合顺序模型后缺少val_acc

时间:2019-04-23 19:51:32

标签: python-3.x tensorflow keras neural-network

当我拟合编译的顺序模型时,我缺少有关'val_acc'属性的信息。

我有一个采用“准确性”指标进行编译的顺序模型

model = Sequential()
model.add(Dense(12, input_dim=8, activation='relu'))
model.add(Dense(8, activation='relu'))
model.add(Dense(1, activation='sigmoid'))
model.compile(loss='binary_crossentropy', optimizer='adam', metrics=['accuracy'])

我希望在拟合该神经网络后获得有关['acc','loss','val_acc','val_loss']属性的信息

history = model.fit(X, Y, epochs=100, batch_size=10)

但是进度条上缺少有关val_acc的信息

Epoch 14/100
768/768 [==============================] - 0s 212us/step - loss: 0.4356 - acc: 0.7969
Epoch 15/100
768/768 [==============================] - 0s 219us/step - loss: 0.4388 - acc: 0.8034
Epoch 16/100
768/768 [==============================] - 0s 220us/step - loss: 0.4398 - acc: 0.7956

而且在对象历史记录中也没有找到它

>>> print (history.history.keys())
dict_keys(['loss', 'acc'])

训练神经网络时如何获取缺少的属性(“ val_acc”,“ val_loss”)?

1 个答案:

答案 0 :(得分:3)

  

history = model.fit(X, Y, epochs=100, batch_size=10)

您的fit方法中缺少验证数据,因此无法计算验证指标。

  • 要么将您的一些火车数据拆分为验证集,然后将其传递 通过适合方法的validation_data参数

  • 使用fit方法的validation_split参数来使用您的% 训练数据作为验证数据。示例:validation_split=0.15将 使用火车数据的15%作为验证数据。