小生不才:tensorflow实战01-基于bp神经网络的手写数字识别
前言
- 利用搭建网络八股,使用简单的bp神经网络完成手写数字的识别。
搭建过程
- 导入相应的包
- 获取数据集,划分数据集和测试集并进行简单处理(归一化等)
- 对数据进行乱序处理
- 定义网络结构
- 选择网络优化器以及损失函数
- 进行训练,设置batch大小以及迭代次数
代码实现
import tensorflow as tf
import numpy as np
# 导入手写数字数据集
from tensorflow.keras.datasets import mnist# 获取数据
(x_train, y_train), (x_test, y_test) = mnist.load_data()# 对数据归一化
x_train = x_train / 255.0
x_test = x_test / 255.0# 打乱训练集顺序
# 设置随机种子,使训练集和标签打乱顺序的次序一样
np.random.seed(116)
np.random.shuffle(x_train)
np.random.seed(116)
np.random.shuffle(y_train)# 搭建网络model = tf.keras.models.Sequential([# 将照片拉直成1维数组tf.keras.layers.Flatten(),tf.keras.layers.Dense(128, activation='relu', kernel_regularizer=tf.keras.regularizers.l2()),# 10个数字,最后一层设置为10个神经元tf.keras.layers.Dense(10, activation='softmax')]
)# 设置训练参数
model.compile(optimizer=tf.keras.optimizers.Adam(lr=0.01), loss=tf.keras.losses.SparseCategoricalCrossentropy(from_logits=False),metrics=['sparse_categorical_accuracy'])
# 训练模型model.fit(x_train, y_train, batch_size=400, epochs=10, validation_data=(x_test, y_test), validation_freq=10)# 打印网络结构
model.summary()
到这完成了手写数字识别体训练,有什么问题,大家可以留言。
小生不才:tensorflow实战01-基于bp神经网络的手写数字识别相关推荐
- MATLAB实现基于BP神经网络的手写数字识别+GUI界面+mnist数据集测试
文章目录 MATLAB实现基于BP神经网络的手写数字识别+GUI界面+mnist数据集测试 一.题目要求 二.完整的目录结构说明 三.Mnist数据集及数据格式转换 四.BP神经网络相关知识 4.1 ...
- 基于BP神经网络的手写数字识别
基于BP神经网络的手写数字识别 摘要 本文实现了基于MATLAB关于神经网络的手写数字识别算法的设计过程,采用神经网络中反向传播神经网络(即BP神经网络)对手写数字的识别,由MATLAB对图片进行读入 ...
- MATLAB--基于BP神经网络的手写数字识别
MATLAB–基于BP神经网络的手写数字识别 在干活的过程中整理下来的,希望对大家有帮助. 手写数字识别技术作为图像处理和模式识别中的研究热点,在大规模数据统计(如行业年检.人口普查等).票据识别.财 ...
- BP神经网络实现手写数字识别Python实现,带GUI手写画板
BP神经网络实现手写数字识别 BP神经网络模型 用tkinter编写用于手写输入的画板 程序运行的效果截图 在B站看了一个机器学习基础的视频( 链接)后,发现到资料里面有一个用BP神经网络对手写数字进 ...
- Python学习记录 搭建BP神经网络实现手写数字识别
搭建BP神经网络实现手写数字识别 通过之前的文章我们知道了,构建一个简单的神经网络需要以下步骤 准备数据 初始化假设 输入神经网络进行计算 输出运行结果 这次,我们来通过sklearn的手写数字数据集 ...
- 基于卷积神经网络的手写数字识别(附数据集+完整代码+操作说明)
基于卷积神经网络的手写数字识别(附数据集+完整代码+操作说明) 配置环境 1.前言 2.问题描述 3.解决方案 4.实现步骤 4.1数据集选择 4.2构建网络 4.3训练网络 4.4测试网络 4.5图 ...
- 基于matlab BP神经网络的手写数字识别
摘要 本文实现了基于MATLAB关于神经网络的手写数字识别算法的设计过程,采用神经网络中反向传播神经网络(即BP神经网络)对手写数字的识别,由MATLAB对图片进行读入.灰度化以及二值化等处理,通过神 ...
- 【图像识别】基于卷积神经网络CNN手写数字识别matlab代码
1 简介 针对传统手写数字的随机性,无规律性等问题,为了提高手写数字识别的检测准确性,本文在研究手写数字区域特点的基础上,提出了一种新的手写数字识别检测方法.首先,对采集的手写数字图像进行预处理,由于 ...
- BP神经网络(手写数字识别)
1实验环境 实验环境:CPU i7-3770@3.40GHz,内存8G,windows10 64位操作系统 实现语言:python 实验数据:Mnist数据集 程序使用的数据库是mnist手写数字数据 ...
最新文章
- xml 和android脚本之家,Android利用Document实现xml读取和写入操作
- java 向下转型_Java_向下转型
- 基于AcrGIS平台实现三维场景下的积水效果动态模拟
- 构建LAMP平台(一)(软件版本:httpd-2.4.16,php-5.6.12,mysql-5.6.26)
- java不带package和带package的编译方式
- Ubantu18.04安装Vivado
- php带参数跳转页面,如何带参数跳转php界面_后端开发
- 马斯克再创历史!人类首个商业载人飞船发射成功:移民火星又近一步
- 万字长文带你解析23 个问题 TCP 疑难杂症!
- linux---編輯器
- pacman吃豆人_“植物河豚”狗爪豆,你吃过吗?
- wxpython多线程 假死_wxpython多线程防假死与线程间传递消息实例详解
- tomcat session共享问题
- 安卓开机自启动app
- OpenAI注册(ChatGPT)
- 开源资产扫描系统-ARL资产灯塔系统
- c语言报错(二)expected initializer before “int“
- Python pip自动管理脚本
- Panda-DEA_1.0正式发布!
- 压缩视频最好最快的软件?mp4视频太大怎么压缩格式工厂?
热门文章
- 量化交易系统最基本的策略是什么?怎么执行买入和持有?
- openoffice免费安装教程
- 基于Givens矩阵的QR矩阵分解
- [转]简单算法---主页浏览工具GreenBrowser算法分析!
- VC中基于TWAIN协议控制扫描仪-----初级版
- 大数据是什么?学大数据要掌握的基础是?(简单的介绍)
- Activity内嵌Fragment,当Activity recreate时Fragment出现重叠
- 新版excel下拉数字递增
- 【论文笔记|深读】struc2vec: Learning Node Representations from Structural Identity
- web前端——table标签