MNIST 数据集来自美国国家标准与技术研究所, National Institute of Standards and Technology (NIST). 训练集 (training set) 由来自 250 个不同人手写的数字构成, 其中 50% 是高中学生, 50% 来自人口普查局 (the Census Bureau) 的工作人员. 测试集(test set) 也是同样比例的手写数字数据.

MNIST 数据集可在  http://yann.lecun.com/exdb/mnist/ 获取,将下载来的数据解压保存到datesets文件下,四个文件分别包括了images和labels,其中labels是images所对应的数字,训练集为50000个样本,测试集为10000个样本。

像素为28x28,单通道

图片是以字节的形式进行存储,需要把它转换成矩阵形式,

import os
import struct
import numpy as npdef load_mnist(path, kind='train'):"""Load MNta from `path`"""labels_path = os.path.join(path,IST da'%s-labels.idx1-ubyte'% kind)images_path = os.path.join(path,'%s-images.idx3-ubyte'% kind)with open(labels_path, 'rb') as lbpath:magic, n = struct.unpack('>II',lbpath.read(8))labels = np.fromfile(lbpath,dtype=np.uint8)with open(images_path, 'rb') as imgpath:magic, num, rows, cols = struct.unpack('>IIII',imgpath.read(16))images = np.fromfile(imgpath,dtype=np.uint8).reshape(len(labels), 784)return images, labels
X_train, y_train = load_mnist('E:\datasets')
import matplotlib.pyplot as pltfig, ax = plt.subplots(nrows=2,ncols=5,sharex=True,sharey=True, )ax = ax.flatten()
for i in range(10):img = X_train[y_train == i][1].reshape(28, 28)ax[i].imshow(img, cmap='Reds', interpolation='nearest')ax[0].set_xticks([])
ax[0].set_yticks([])
plt.tight_layout()
plt.show()
fig, ax = plt.subplots(nrows=5,ncols=5,sharex=True,sharey=True, )ax = ax.flatten()
for i in range(25):img = X_train[y_train == 3][i].reshape(28, 28)ax[i].imshow(img, cmap='Greens', interpolation='nearest')ax[0].set_xticks([])
ax[0].set_yticks([])
plt.tight_layout()
plt.show()

load_mnist 函数返回两个数组, 第一个是一个 n x m 维的 NumPy array(images), 这里的 n 是样本数(行数), m 是特征数(列数).  在 MNIST 数据集中的每张图片由 28 x 28 个像素点构成, 每个像素点用一个灰度值表示. 在这里, 我们将 28 x 28 的像素展开为一个一维的行向量, 这些行向量就是图片数组里的行(每行 784 个值, 或者说每行就是代表了一张图片). load_mnist 函数返回的第二个数组(labels) 包含了相应的目标变量, 也就是手写数字的类标签(整数 0-9).

分别是一组0到9的图片和数字是3的图片.

pytorch学习(二):mnist手写数字数据集训练和测试(一)mnist数据集分析相关推荐

  1. Dataset之MNIST:MNIST(手写数字图片识别及其ubyte.gz文件)数据集简介、下载、使用方法(包括数据增强)之详细攻略

    Dataset之MNIST:MNIST(手写数字图片识别及其ubyte.gz文件)数据集简介.下载.使用方法(包括数据增强,将已有MNIST数据集通过移动像素上下左右的方法来扩大数据集为初始数据集的5 ...

  2. Pytorch 学习 (一)Minst手写数字识别(含特定函数解析)

    目录 本人目前在跟随csdn博主 "K同学啊"进行365天深度学习训练营进行学习,这是打卡内容 也作为本人学习的记录. 一.准备部分 三.训练模型 四.正式训练 五.输出 MNIS ...

  3. mnist手写数字识别python_基于tensorflow的MNIST手写数字识别(二)--入门篇

    一.本文的意义 因为谷歌官方其实已经写了MNIST入门和深入两篇教程了,那我写这些文章又是为什么呢,只是抄袭?那倒并不是,更准确的说应该是笔记吧,然后用更通俗的语言来解释,并且补充更多,官方文章中没有 ...

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

    提示:文章写完后,目录可以自动生成,如何生成可参考右边的帮助文档 文章目录 前言 主要过程 导入 加载数据 创建模型和训练 模型应用 总结 前言 非专业程序员,主业PLC单片机,2019年想扩充知识体 ...

  5. 用python的numpy实现mnist手写数字识别

    完整代码的文章底部(Optimization_mnist.py和lr_utils.py),原理和公式部分可以看前面文章,转载文章请附上本文链接 学完前面(1到6)文章就完成了吴恩达deeplearni ...

  6. TensorFlow高阶 API: keras教程-使用tf.keras搭建mnist手写数字识别网络

    TensorFlow高阶 API:keras教程-使用tf.keras搭建mnist手写数字识别网络 目录 TensorFlow高阶 API:keras教程-使用tf.keras搭建mnist手写数字 ...

  7. Caffe MNIST 手写数字识别(全面流程)

    目录 1.下载MNIST数据集 2.生成MNIST图片训练.验证.测试数据集 3.制作LMDB数据库文件 4.准备LeNet-5网络结构定义模型.prototxt文件 5.准备模型求解配置文件_sol ...

  8. TF:利用是Softmax回归+GD算法实现MNIST手写数字图片识别(10000张图片测试得到的准确率为92%)

    TF:利用是Softmax回归+GD算法实现MNIST手写数字图片识别(10000张图片测试得到的准确率为92%) 目录 设计思路 全部代码 设计思路 全部代码 #TF:利用是Softmax回归+GD ...

  9. 深度学习练手项目(一)-----利用PyTorch实现MNIST手写数字识别

    一.前言 MNIST手写数字识别程序就不过多赘述了,这个程序在深度学习中的地位跟C语言中的Hello World地位并驾齐驱,虽然很基础,但很重要,是深度学习入门必备的程序之一. 二.MNIST数据集 ...

  10. 基于TensorFlow深度学习框架,运用python搭建LeNet-5卷积神经网络模型和mnist手写数字识别数据集,设计一个手写数字识别软件。

    本软件是基于TensorFlow深度学习框架,运用LeNet-5卷积神经网络模型和mnist手写数字识别数据集所设计的手写数字识别软件. 具体实现如下: 1.读入数据:运用TensorFlow深度学习 ...

最新文章

  1. 在虚拟机中快速安装 Ubuntu 18.04
  2. yolov5训练_YoloV5模型训练实战教程:Kaggle全球小麦检测竞赛
  3. linux的nvme驱动需要关心的统计项
  4. 相角裕量的指令 matlab,[转载]什么是相角裕量、增益裕量?
  5. yolo算法_不到2MB,超轻YOLO算法!准确率接近YOLOv3,速度快上45%
  6. javaScript PC端网页特效
  7. IOCP加Windows线程池打造高伸缩性高性能的服务器应用
  8. haproxy安装_Haproxy负载mycat集群配置
  9. 《庆余年》全集资源遭盗播,腾讯、爱奇艺、剧方联合回应...
  10. ZBrush中如何实现智能对称
  11. 台式电脑计算机能创建新磁盘吗,解决方案:如何添加硬盘以扩展台式计算机上的存储空间|如何对新添加的硬盘进行分区...
  12. Seam 的一些必备知识
  13. 桌面虚拟云终端技术研究
  14. Google Cloud
  15. 制造业ERP系统具体操作流程是什么?
  16. pmp华为内部资料,成功的项目管理是怎样的?
  17. (完美)华为P20pro CTL-AL00的usb调试模式在哪里打开的教程
  18. java 图片压缩 base64,图片的尺寸 大小压缩 和转化为base64
  19. 不要让自己的大脑变成别人思想的跑马场-叔本华
  20. HTML5 UI 模板

热门文章

  1. 负数求余简单技巧(C语言)
  2. linux权限后面的点,linux 文件权限后面一个点的含义
  3. HHS整合(Struts2+Spring+Hibernate)
  4. iOS PayPal集成和使用
  5. 蓝桥杯题解 鲁卡斯队列 Java答案
  6. Directx11教程(58) 鼠标控制摄像机
  7. 艾永亮:酒瓶中的战争,谁是下一瓶被拿起的葡萄酒
  8. yigo基础学习笔记2
  9. Mac截图很大很怎么变小?
  10. Vue+el-table实现不规则表格