这是我的代码:
from tensorflow import keras
import numpy as np
import matplotlib.pyplot as plt
x_train, y_train), (x_test, y_test) = keras.datasets.cifar100.load_data()
num_of_class = 100
y_train = keras.utils.to_categorical(y_train, num_of_class)
y_test = keras.utils.to_categorical(y_test, num_of_class)
x_train = x_train.astype(float) / 255.0
x_test = x_test.astype(float) / 255.0
model_2 = keras.Sequential()
model_2.add(keras.layers.Input(shape=x_train[0].shape))
model_2.add(keras.layers.Conv2D(filters=256, kernel_size=(3,3), activation='ReLU'))
model_2.add(keras.layers.Conv2D(filters=256, kernel_size=(3,3), activation='ReLU'))
model_2.add(keras.layers.Conv2D(filters=256, kernel_size=(3,3), activation='ReLU'))
model_2.add(keras.layers.Conv2D(filters=256, kernel_size=(3,3), activation='ReLU'))
model_2.add(keras.layers.Conv2D(filters=256, kernel_size=(3,3), strides=(2,2), activation='ReLU'))
model_2.add(keras.layers.MaxPooling2D(pool_size=(2, 2)))
model_2.add(keras.layers.Flatten(input_shape=x_train[0].shape))
model_2.add(keras.layers.Dense(units=num_of_class, activation='softmax'))
model_2.compile(loss='categorical_crossentropy', optimizer='adam', metrics=['accuracy'])
history_2 = model_1.fit(x_train, y_train, batch_size=512, epochs=50, validation_data=(x_test, y_test), shuffle=True)`
实际上我是机器学习和计算机视觉的新手。我只是想尝试这个代码来对 cifar100 图片进行分类,但发生的事情令人失望。在所有 50 个时代里我都有这个
损失:0.0100 - 准确度:0.0100 - val_loss:0.0100 - val_accuracy:0.0100
Model_1 未定义。如果您想训练模型,请将其定义为 model_2
model_2.fit(x_train, y_train, batch_size=512, epochs=50, validation_data=(x_test, y_test), shuffle=True)
还有一些语法错误