mnist手写数字模型训练、保存、加载及图片预测

提示:文章写完后,目录可以自动生成,如何生成可参考右边的帮助文档


前言

非专业程序员,主业PLC单片机,2019年想扩充知识体系,紧跟潮流,带学生参加了人工智能大赛,才开始接触tensorflow以及深度学习的基本过程,非常艰难。后来比赛完了之后,学生也毕业了,因为感觉难度过大,而且自己将来也不准备转到这个行业,干脆就放弃了。最近疫情关在家里,想了一个晚上,对于本专业,自己干过项目,参加过大赛,虽然没有掌握PLC单片机所有的知识,但是掌握了方法论,能够快速的学习新的设备和目前尚未掌握的功能,没有应用的点,学习那些知识也就没有太大的必要。所以就决定利用疫情,继续开拓对自己来说仍然是新的领域,人工智能,从头开始。

现在再看tensorflow,已经改头换面了,1.x版本太过复杂,难以理解,2.x改善了很多,入门容易。


今天还是从手写数字开始,入门代码非常多,大多都是有关模型训练的,官网也有保存模型及加载模型的代码,这里就不再多写


预测部分,我在网上找到的都是使用mnist自己的测试数据来进行预测,有的是使用加载模型的方法测试准确率,有的是预测测试集中的数据,但是没有针对一个自己的图片(可以是摄像头拍的,可以是自己在画图里写的数字)的预测方法,这里主要解决这个问题。


这个想法产生的原因很简单,其实就是需要将我们的工作应用到现实中,整个过程我想是这几个步骤:准备训练数据、数据预处理来适配模型网络、搭建深度学习网络、训练模型、模型保存,到这实际上开发工作已经完成,下面的步骤就是要应用了,准备数据、加载模型、预测结果,预测的结果将用到后面的业务逻辑。

主要过程

导入

import tensorflow as tf
from tensorflow import keras
import cv2
from keras.preprocessing.image import img_to_array
import numpy as np

加载数据

def loadData():
    mnist = tf.keras.datasets.mnist
    (x_train, y_train),(x_test, y_test) = mnist.load_data()
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

bobbycumt

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值