为什么 val_loss 和 val_accuracy 没有在纪元中显示

ran*_*ent 2 python deep-learning keras tensorflow

我正在尝试对图像进行分类,无论它们是猫、狗还是熊猫。数据包含所有图像(猫+狗+熊猫),标签包含它们的标签,但不知何故,当我将数据拟合到模型时, 和val_loss没有val_accuracy显示,每个时期中显示的唯一指标是lossaccuracy。我不知道为什么它没有出现,但我感觉这是因为我没有通过,validation_data所以我通过X_test.all()了,validation_data但仍然没有出现,我该怎么办?val_lossval_accuracy

data = np.array(data, dtype="float") / 255.0
labels = np.array(labels)

X_train, X_test, y_train, y_test = train_test_split(data, labels, test_size=0.2)

model = tf.keras.models.Sequential([
  tf.keras.layers.Conv2D(32, (2,2), activation = 'relu', input_shape= (height, width, n_channels)),
  tf.keras.layers.MaxPooling2D(2,2),
  tf.keras.layers.Conv2D(64,(2,2), activation= 'relu'),
  tf.keras.layers.MaxPooling2D(2,2),
  tf.keras.layers.Conv2D(128,(2,2), activation= 'relu'),
  tf.keras.layers.MaxPooling2D(2,2),
  tf.keras.layers.Conv2D(256,(2,2), activation= 'relu'),
  tf.keras.layers.MaxPooling2D(2,2),
  tf.keras.layers.Flatten(),
  tf.keras.layers.Dense(512, activation= 'relu'),
  tf.keras.layers.Dense(3, activation= 'softmax')
])

model.compile(loss='categorical_crossentropy', optimizer='adam', metrics=['accuracy'])

y_train = np_utils.to_categorical(y_train, 3)

model.fit(X_train, y_train, batch_size=32, epochs=25, verbose=1)
Run Code Online (Sandbox Code Playgroud)

小智 5

您忘记在模型拟合中输入验证测试。

model.fit(X_train,y_train,batch_size = 32,epochs = 25,verbose = 1,validation_data =(X_test,y_test))