首页 > 其他分享 >用Mnist数据集训练一个手写数字识别网络

用Mnist数据集训练一个手写数字识别网络

时间:2024-03-19 09:14:48浏览次数:24  
标签:网络 gitee LeNet 手写 识别 com 链接 Mnist

Mnist数据集我找了半天才在哔哩哔哩找到一个下载链接,现在的网络下载文件太麻烦了。数据集中的文件格式参考如下链接:

我学习了两种方法。第一种是传统的BP神经网络模式;第二种是LeNet。这些代码已放在gitee上开源。

一、传统方法

开源地址是:Mnist: 基于libtorch1.13.1实现的Mnist数据集手写数字识别程序 (gitee.com),内附了Mnist数据集。代码中使用的是交叉熵损失函数,该函数的介绍可到官网上查找。链接在libtorch的头文件的注释里有。需要注意这个损失函数不需要输入归一化网络输出数据,即在你自定义的网络最后不需要加Softmax层使每个分类的数值之和为1。如下图:

本程序经测试在测试集10000张图片中平均识别率在98%左右。见下图:

二、LeNet网络

这个开源链接是:LeNet: 用libtorch1.13.1实现的LeNet (gitee.com)。网络结构参考自:Pytorch实现卷积神经网络(一) - 知乎 (zhihu.com)。这个网络使用的是Adam优化器,此优化器学习率需要设置的比SGD优化器小一些,否则可能会难以收敛。经对比卷积神经网络的速度明显比普通网络慢一些。训练效果如下图,比前面一种好一点。这个正确率在99%左右:

 

标签:网络,gitee,LeNet,手写,识别,com,链接,Mnist
From: https://www.cnblogs.com/mengxiangdu/p/18027785

相关文章

  • 【工程应用九】再谈基于离散夹角余弦相似度指标的形状匹配优化(十六角度量化+指令集加
    继去年上半年一鼓作气研究了几种不同的模版匹配算法后,这个方面的工作基本停滞了有七八个月没有去碰了,因为感觉已经遇到了瓶颈,无论是速度还是效率方面,以当时的理解感觉都到了顶了。年初,公司业务惨淡,也无心向佛,总要找点事情做一做,充实下自己,这里选择了前期一直想继续研究的基于......
  • 旭日x3派部署自己训练的模型(安全帽识别、视频流推理、yolov5-6.2)
    旭日x3派部署自己训练的模型(安全帽识别、视频流推理、yolov5-6.2)windows,框架pytorch,python3.7效果模型训练模型转换1、pt模型文件转onnx2、检查onnx模型3、准备校准数据4、onnx转bin上板视频流推理1、图片推理2、视频流推理效果模型训练进官网可克隆yolov5......
  • 基于YOLOv8/YOLOv7/YOLOv6/YOLOv5的景区垃圾识别系统(Python+PySide6界面+训练代码)
    摘要:本文介绍了一个先进的基于深度学习的景区垃圾检测系统,该系统集成了最新的YOLOv8算法,并与YOLOv7、YOLOv6、YOLOv5等前代算法进行了性能对比,通过对比实验证明了其在图像、视频、实时视频流和批量文件处理中对景区垃圾进行精确识别和分类的能力。文章深入讲解了YOLOv8算法的工作......
  • 基于YOLOv8/YOLOv7/YOLOv6/YOLOv5的人脸表情识别系统(附完整资源+PySide6界面+训练代码
    摘要:本篇博客呈现了一种基于深度学习的人脸表情识别系统,并详细展示了其实现代码。系统采纳了领先的YOLOv8算法,并与YOLOv7、YOLOv6、YOLOv5等早期版本进行了比较,展示了其在图像、视频、实时视频流及批量文件中识别人脸表情的高准确度。文章深入阐释了YOLOv8的工作机制,并配备了相应......
  • 基于YOLOv8/YOLOv7/YOLOv6/YOLOv5的犬种识别系统(附完整代码资源+UI界面+PyTorch代码)
    摘要:本文介绍了一种基于深度学习的犬种识别系统系统的代码,采用最先进的YOLOv8算法并对比YOLOv7、YOLOv6、YOLOv5等算法的结果,能够准确识别图像、视频、实时视频流以及批量文件中的犬种。文章详细解释了YOLOv8算法的原理,并提供了相应的Python实现代码、训练数据集,以及基于PySide6的......
  • 实现嵌入式设备中的人脸识别
    原文链接欢迎大家对于本站的访问-AsterCasc前言前文实现嵌入式设备中的人脸检测中,我们使用了libfacedetection库进行简单的人脸检测,现在我们尝试使用opencv原始库face进行人脸识别opencv编译关于嵌入式交叉编译环境的搭建,以及opencv的基本编译参考前文交叉编译armv7......
  • libtorch实现一个数码管数字识别网络
    这里的数字范围是0~9共10个数字,用5×3的数字矩阵表示,把它当成图像那么可以看成5×3的图片。如下图中的数字0,用“1”代表有颜色(亮),“0”代表没颜色(灭)。网络是经典的BP神经网络,15个输入,10个输出。当输入是形状“0”时,输出索引为0的数字最大接近于1;当输入是形状“1”时,输出索引为1的......
  • m基于深度学习网络的手势识别系统matlab仿真,包含GUI界面
    1.算法仿真效果matlab2022a仿真结果如下:     2.算法涉及理论知识概要        随着人工智能和机器学习技术的飞速发展,手势识别技术在人机交互、虚拟现实、智能家居等领域的应用越来越广泛。基于深度学习网络的手势识别系统凭借其强大的特征提取和......
  • opencv 人脸识别简单尝试
    opencv人脸识别简单尝试闲来无事,尝试着按照网上的教程和代码来实现简单的人脸识别 参考:基于OpenCv的人脸识别(Python完整代码)-CSDN博客 以下为快速配置 (具体的过程请参阅参考链接所提供的原文章) 1、环境搭建实验环境:python3.6+opencv-python3.4.14.51建......
  • 毕业设计:基于计算机视觉的遛狗牵绳识别系统 目标检测
    目录前言课题背景和意义实现技术思路一、 算法理论基础1.1 卷积神经网络1.2 注意力机制二、 数据集2.1数据集2.2数据扩充三、实验及结果分析3.1 实验环境搭建3.2 模型训练最后前言  ......