Google Colab Tensorflow模型未在时代中使用所有样本

问题描述 投票:0回答:1

我的训练数据有10680个样本,我已经设定了这样的拟合度:

model.fit(X, y, batch_size=32, epochs=5, verbose=1, validation_split=0.1)

这意味着它应该使用90%的时间来训练(9612个样本),而另外10%的时间来检查,对吧?

但是当我尝试运行它时,显示的纪元是:

Epoch 1/5
301/301 [==============================] - 25s 85ms/step - loss: nan - accuracy: 0.4999 - val_loss: nan - val_accuracy: 0

仅使用301个样本进行拟合。

我在做什么错或在这里没看到?

我知道这是不对的,因为它只能工作一次(使用9612个样本)。

这是模型:

keras.utils.normalize(X)

model = Sequential()

model.add(Conv2D(128, (3,3), input_shape = X.shape[1:]))
model.add(Activation("relu"))
model.add(MaxPooling2D(pool_size=(2,2)))

model.add(Conv2D(128, (3,3)))
model.add(Activation("relu"))
model.add(MaxPooling2D(pool_size=(2,2)))

model.add(Flatten()) # Converts 3D feature maps to 1D feature vectors

model.add(Dense(128, kernel_regularizer= tf.keras.regularizers.l2(5e-5)))
model.add(Activation("relu"))

model.add(Dense(1, kernel_regularizer=tf.keras.regularizers.l2(5e-5)))
model.add(Activation("sigmoid"))

sgd = tf.keras.optimizers.SGD(lr=0.001, decay=1e-6, momentum=0.9, nesterov=True)

model.compile(loss="binary_crossentropy",
              optimizer=sgd,
              metrics=['accuracy'])

model.summary()
tensorflow machine-learning google-colaboratory epoch
1个回答
0
投票

我认为这里的301表示批次数,因此,由于您具有9612数据并设置了batch_size=32,因此预期批次数为9612 / 32 = 300.375 -> 301

© www.soinside.com 2019 - 2024. All rights reserved.