利用tensorflow2 对MNIST数据集进行训练 测试 验证的代码
时间: 2024-05-09 07:21:14 浏览: 116
以下是利用TensorFlow2对MNIST数据集进行训练、测试和验证的代码:
```
import tensorflow as tf
from tensorflow import keras
# 加载MNIST数据集
(x_train, y_train), (x_test, y_test) = keras.datasets.mnist.load_data()
# 对训练集和测试集进行归一化处理
x_train = x_train / 255.0
x_test = x_test / 255.0
# 定义模型
model = keras.Sequential([
keras.layers.Flatten(input_shape=(28, 28)),
keras.layers.Dense(128, activation='relu'),
keras.layers.Dense(10, activation='softmax')
])
# 编译模型
model.compile(optimizer='adam',
loss='sparse_categorical_crossentropy',
metrics=['accuracy'])
# 训练模型
model.fit(x_train, y_train, epochs=5)
# 测试模型
test_loss, test_acc = model.evaluate(x_test, y_test)
print('Test accuracy:', test_acc)
# 验证模型
predictions = model.predict(x_test)
print(predictions[0])
print(y_test[0])
```
首先,我们加载MNIST数据集,并对训练集和测试集进行归一化处理。然后,我们定义了一个包含两个Dense层的简单神经网络模型,并使用Adam优化器和稀疏分类交叉熵损失函数进行编译。接着,我们使用训练集对模型进行训练。最后,我们使用测试集对模型进行测试,并打印出测试准确率。此外,我们还可以使用验证集对模型进行验证,即使用模型对测试集进行预测,并将预测结果和实际标签进行比较。
阅读全文