MNIST加载已训练好的模型进行预测

这篇博客是初学者的教程,展示了如何利用TensorFlow2加载预先训练好的模型,对MNIST数据集进行预测。代码已经添加了注释以便理解。
摘要由CSDN通过智能技术生成

MNIST加载已训练好的模型进行预测

初学时练习用的代码,已加注释

基于tensorflow2

import  tensorflow as tf
import numpy as np
import matplotlib.pylab as plt
from tensorflow.keras import datasets, layers, optimizers, Sequential, metrics
import scipy
import imageio
import cv2
from PIL import Image
from scipy import ndimage
import scipy.misc
(x, y), (x_val, y_val) = datasets.mnist.load_data()

#%%
# 提取部分数据集中的图片,保存为图片格式
for i in range(20):
    image_array = x_val[i]
    filename = "./images/" + 'mnist_test_%d.jpg' % i
    img = Image.fromarray(np.uint8(image_array))
    img.save(filename)

#%%
  • 0
    点赞
  • 6
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
好的,我可以帮你回答这个问题。首先,MNIST是一个手写数字的图像数据集,我们可以使用Keras来构建一个神经网络模型,并对这个数据集进行训练预测。 下面是一个基本的MNIST模型训练预测的代码示例: ```python # 导入需要的库 import keras from keras.datasets import mnist from keras.models import Sequential from keras.layers import Dense, Dropout from keras.optimizers import RMSprop # 加载MNIST数据集 (x_train, y_train), (x_test, y_test) = mnist.load_data() # 将数据转换为适当的格式 x_train = x_train.reshape(60000, 784) x_test = x_test.reshape(10000, 784) x_train = x_train.astype('float32') x_test = x_test.astype('float32') x_train /= 255 x_test /= 255 # 将标签转换为独热编码格式 y_train = keras.utils.to_categorical(y_train, 10) y_test = keras.utils.to_categorical(y_test, 10) # 构建神经网络模型 model = Sequential() model.add(Dense(512, activation='relu', input_shape=(784,))) model.add(Dropout(0.2)) model.add(Dense(10, activation='softmax')) # 编译模型 model.compile(loss='categorical_crossentropy', optimizer=RMSprop(), metrics=['accuracy']) # 训练模型 batch_size = 128 epochs = 20 history = model.fit(x_train, y_train, batch_size=batch_size, epochs=epochs, verbose=1, validation_data=(x_test, y_test)) # 对测试集进行预测 score = model.evaluate(x_test, y_test, verbose=0) print('Test loss:', score[0]) print('Test accuracy:', score[1]) ``` 在上面的代码中,我们首先使用`mnist.load_data()`函数加载MNIST数据集,并对数据进行了预处理。然后,我们构建了一个简单的神经网络模型,包含两个全连接层和一个dropout层。我们使用了RMSprop优化器来训练模型,并在训练过程中记录了模型的准确率和损失值。最后,我们使用`model.evaluate()`函数对测试集进行预测,并输出了预测的结果。 希望这个例子能够帮助你理解如何使用Keras进行MNIST模型训练预测
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值