位置: IT常识 - 正文

MNIST数据集下载+idx3-ubyte解析【超详细+上手简单】(mnist数据集下载码)

编辑:rootadmin
MNIST数据集下载+idx3-ubyte解析【超详细+上手简单】 前言

推荐整理分享MNIST数据集下载+idx3-ubyte解析【超详细+上手简单】(mnist数据集下载码),希望有所帮助,仅作参考,欢迎阅读内容。

文章相关热门搜索词:mnist数据集下载卡住了怎么办,mnist数据集下载导入,mnist数据集下载卡住了怎么办,mnist数据集下载官网,mnist数据集下载码,MNIST数据集下载,mnist数据集下载400张,MNIST数据集下载,内容如对您有帮助,希望把文章链接给更多的朋友!

训练模型的时候经常会使用MNIST数据集来训练模型,那么如何获取到MNIST数据集呢?博主经过实践后,总结了经验,希望能帮助到屏幕前的你使用MNIST数据集。

目录

前言

1 下载MNIST数据集文件

2 解析idx3-ubyte文件

2.1 解析训练集

2.2解析测试集

3.运行py文件


1 下载MNIST数据集文件

由于MNIST数据集是在外网发布,下载比较慢,博主把MNIST放在了百度网盘中

链接:https://pan.baidu.com/s/1V-4FOePbTyBG7qZ7ge_TqQ?pwd=dw2i  提取码:dw2i

下载到本地后,把gz后缀压缩包进行解压缩

其中包含4个文件,详细介绍如下表所示:

 

 图表来源转自:MNIST数据集_保持理智802的博客-CSDN博客_mnist数据集

2 解析idx3-ubyte文件

接下来我们要把idx3-ubyte文件转换成图片形式

MNIST数据集下载+idx3-ubyte解析【超详细+上手简单】(mnist数据集下载码)

分别转换训练集和测试集,博主使用的是pycharm

2.1 解析训练集

train-images.idx3-ubyte和train-labels.idx1-ubyte分别是训练集的图片和标签,其中数据/标签文件位置需要进行修改成你本地训练集保存的位置。

import numpy as npimport structfrom PIL import Imageimport osdata_file = r'D:\postgraduate\DUT\tpds\malicious_node\MNIST_data\train-images.idx3-ubyte'# It's 47040016B, but we should set to 47040000Bdata_file_size = 47040016data_file_size = str(data_file_size - 16) + 'B'data_buf = open(data_file, 'rb').read()magic, numImages, numRows, numColumns = struct.unpack_from( '>IIII', data_buf, 0)datas = struct.unpack_from( '>' + data_file_size, data_buf, struct.calcsize('>IIII'))datas = np.array(datas).astype(np.uint8).reshape( numImages, 1, numRows, numColumns)label_file = r'D:\postgraduate\DUT\tpds\malicious_node\MNIST_data\train-labels.idx1-ubyte'# It's 60008B, but we should set to 60000Blabel_file_size = 60008label_file_size = str(label_file_size - 8) + 'B'label_buf = open(label_file, 'rb').read()magic, numLabels = struct.unpack_from('>II', label_buf, 0)labels = struct.unpack_from( '>' + label_file_size, label_buf, struct.calcsize('>II'))labels = np.array(labels).astype(np.int64)datas_root = 'mnist_train'if not os.path.exists(datas_root): os.mkdir(datas_root)for i in range(10): file_name = datas_root + os.sep + str(i) if not os.path.exists(file_name): os.mkdir(file_name)for ii in range(numLabels): img = Image.fromarray(datas[ii, 0, 0:28, 0:28]) label = labels[ii] file_name = datas_root + os.sep + str(label) + os.sep + \ 'mnist_train_' + str(ii) + '.png' img.save(file_name)2.2解析测试集

t10k-labels.idx3-ubyte和t10k-labels.idx1-ubyte分别是测试集的图片和标签,其中数据/标签文件位置需要进行修改成你本地测试集保存的位置。

import numpy as npimport structfrom PIL import Imageimport osdata_file = r'D:\postgraduate\DUT\tpds\malicious_node\MNIST_data\t10k-images.idx3-ubyte'# It's 7840016B, but we should set to 7840000Bdata_file_size = 7840016data_file_size = str(data_file_size - 16) + 'B'data_buf = open(data_file, 'rb').read()magic, numImages, numRows, numColumns = struct.unpack_from( '>IIII', data_buf, 0)datas = struct.unpack_from( '>' + data_file_size, data_buf, struct.calcsize('>IIII'))datas = np.array(datas).astype(np.uint8).reshape( numImages, 1, numRows, numColumns)label_file = r'D:\postgraduate\DUT\tpds\malicious_node\MNIST_data\t10k-labels.idx1-ubyte'# It's 10008B, but we should set to 10000Blabel_file_size = 10008label_file_size = str(label_file_size - 8) + 'B'label_buf = open(label_file, 'rb').read()magic, numLabels = struct.unpack_from('>II', label_buf, 0)labels = struct.unpack_from( '>' + label_file_size, label_buf, struct.calcsize('>II'))labels = np.array(labels).astype(np.int64)datas_root = 'mnist_test'if not os.path.exists(datas_root): os.mkdir(datas_root)for i in range(10): file_name = datas_root + os.sep + str(i) if not os.path.exists(file_name): os.mkdir(file_name)for ii in range(numLabels): img = Image.fromarray(datas[ii, 0, 0:28, 0:28]) label = labels[ii] file_name = datas_root + os.sep + str(label) + os.sep + \ 'mnist_test_' + str(ii) + '.png' img.save(file_name)3.运行py文件

运行上述两个py文件后,会在项目的根目录下分别生成两个文件夹:

 

其中,mnist_train有6w个图片,minst_test有1w个图片。

大功告成,接下来就可以开始训练模型啦!!!

本文链接地址:https://www.jiuchutong.com/zhishi/296174.html 转载请保留说明!

上一篇:Auto.js的介绍(auto.js 教程)

下一篇:目标检测算法——YOLOv5/v7/v8改进结合涨点Trick之Wise-IoU(超越CIOU/SIOU)(运动目标检测算法)

  • 开加一笔是什么(开加一笔是什么字一年级)

    开加一笔是什么(开加一笔是什么字一年级)

  • 三星i9003软件下载(三星i900论坛)(三星软件下载中心)

    三星i9003软件下载(三星i900论坛)(三星软件下载中心)

  • realme gt neo2怎么设置双击亮屏(realme GT Neo2怎么读)

    realme gt neo2怎么设置双击亮屏(realme GT Neo2怎么读)

  • switch三码合一啥意思(switch三码合一二码合一)

    switch三码合一啥意思(switch三码合一二码合一)

  • 美团优选新人免费领东西在哪儿(美团优选新人免费领杯子咋没找到)

    美团优选新人免费领东西在哪儿(美团优选新人免费领杯子咋没找到)

  • WPS条件格式在哪个选项卡(wps2013条件格式在哪)

    WPS条件格式在哪个选项卡(wps2013条件格式在哪)

  • 微信被拉黑后还能看到对方朋友圈吗(微信被拉黑后还能搜索到对方账号吗)

    微信被拉黑后还能看到对方朋友圈吗(微信被拉黑后还能搜索到对方账号吗)

  • 淘宝怎么删除好评(淘宝怎么删除好友代付记录)

    淘宝怎么删除好评(淘宝怎么删除好友代付记录)

  • 钉钉暂停算观看时间吗(钉钉上课暂停了算时长吗)

    钉钉暂停算观看时间吗(钉钉上课暂停了算时长吗)

  • 苹果6防水吗(苹果6防水吗?)

    苹果6防水吗(苹果6防水吗?)

  • 微信用户行为规范无法加入群聊是什么意思(微信用户行为规范)

    微信用户行为规范无法加入群聊是什么意思(微信用户行为规范)

  • 粉笔账号一次允许多少人登(粉笔账号最多可以几台设备登录)

    粉笔账号一次允许多少人登(粉笔账号最多可以几台设备登录)

  • 4mm和6mm摄像头区别(摄像头4mm跟6mm区别)

    4mm和6mm摄像头区别(摄像头4mm跟6mm区别)

  • iphone11有128g的吗(iphone11有128g的嘛)

    iphone11有128g的吗(iphone11有128g的嘛)

  • 苹果新机自带保护膜吗(苹果自带的保修是多久)

    苹果新机自带保护膜吗(苹果自带的保修是多久)

  • lneal00是什么型号(lne—al00是华为什么型号)

    lneal00是什么型号(lne—al00是华为什么型号)

  • airpods pro 耳塞怎么换(airpodspro耳塞怎么装上去)

    airpods pro 耳塞怎么换(airpodspro耳塞怎么装上去)

  • excel怎么在日期后面加星期几(excel怎么在日期后面加星期)

    excel怎么在日期后面加星期几(excel怎么在日期后面加星期)

  • 电脑上怎么退出防蓝光(电脑上怎么退出全屏模式)

    电脑上怎么退出防蓝光(电脑上怎么退出全屏模式)

  • 全民k歌怎么添加和删除图片(全民k歌怎么添加陌生好友)

    全民k歌怎么添加和删除图片(全民k歌怎么添加陌生好友)

  • 打印机怎么扫描图片到电脑上(打印机怎么扫描纸质文件)

    打印机怎么扫描图片到电脑上(打印机怎么扫描纸质文件)

  • vivox27没有面部解锁吗(vivo手机找不到面部设置)

    vivox27没有面部解锁吗(vivo手机找不到面部设置)

  • 一号店如何开店(一号店怎么注册商家)

    一号店如何开店(一号店怎么注册商家)

  • 香港手机号码格式(香港手机号码格式不正确)

    香港手机号码格式(香港手机号码格式不正确)

  • OpenPCDet 训练自己的数据集详细教程!(opencv制作训练数据集)

    OpenPCDet 训练自己的数据集详细教程!(opencv制作训练数据集)

  • python中的chr() 返回字符(python中返回结果为true)

    python中的chr() 返回字符(python中返回结果为true)

  • 租厂房土地使用税
  • 小规模免缴增值税吗
  • 工厂道路设计图
  • 以前年度损益调整结转到未分配利润
  • 税收分类编码如何查询
  • 政府回购安置房几种模式
  • 社保多交退款多久到账
  • 固定资产盘亏怎么算
  • 开票金额为什么会多出一分钱
  • 预算基数是什么
  • 累计折旧计入资产负债表什么科目
  • 债务重组损失计算公式
  • 银行汇票怎么填写
  • 调整上年度所得税计提分录
  • 工程技术服务费和技术服务费
  • 或有负债记入哪个科目?
  • 税控盘费用冲减管理费用还是营业外收入?
  • 企业的养老金根据什么扣除
  • 项目顾问是什么意思
  • 服务费主营业务收入会计分录
  • 一般纳税人进货收到普票怎么做账
  • 事业单位福利费计提标准
  • 境内向境外提供服务免征增值税
  • 简易计税项目进项
  • 公司作为二房东怎么给别人开发票
  • 联营企业分配利润
  • linux默认文件类型
  • 超市的成功秘诀
  • 收到个人款开公司发票
  • 飞机票增值税发票可以作为报销凭证吗
  • aspnet_admin.exe进程是安全的吗 aspnet_admin进程信息查询
  • PHP:preg_match_all()的用法_PCRE正则函数
  • 其他业务收入怎么申报增值税
  • 固定资产全额折旧
  • 1.exe是什么文件
  • 夜晚的地球 (© NASA)
  • 住房房产税如何征收
  • 无偿占用资金企业有哪些
  • 蓝桥杯大赛2021
  • semeion手写数据集
  • php文件上传技术
  • init 6命令
  • 国际货运代理存在的必要性有哪些方面
  • 会计分录什么时候写主营业务收入
  • mac下安装mysql
  • 加工费计入什么科目制造企业成本
  • 融资租赁租出的固定资产账务处理
  • 购进免税农产品发生非正常损失
  • 工程项目需要交5000万保证金合理吗
  • 建设银行e信通介绍
  • 工程审图费入什么会计科目
  • 企业所得税留抵税额
  • 高速公路车辆通行卡没还怎么办
  • 2020发票丢失新规
  • 债权人和债务人的区别
  • 小规模开专票的税点是多少
  • 暂估入库一直没有发票
  • 生产型企业入库管理办法
  • 银行承兑到期后怎么兑现
  • sql如何随机抽样
  • mysql连接数 是针对db还是服务器
  • windows active directory功能
  • nmeo.exe是什么
  • 部分用户开启隐私,暂时无法查看怎么办
  • gsicon.exe是什么进程 作用是什么 gsicon进程查询
  • win7 用户组
  • Win10 Build 14316启用Linux Bash 环境图文教程
  • Linux CentOS系统下tomcat配置ssl教程
  • perl-v
  • react组件写法
  • nodejs不再维护
  • android:View的setTag和getTag使用
  • 贵州省网上税务局要那个版本
  • 哪些可以享受三免一补
  • 查账征收个人经营所得税怎么申报
  • 深圳地税局地址工作时间
  • 店面转让,房租怎么交税
  • 如何认真贯彻落实中央八项规定,切实改进工作作风
  • 建筑劳务分包业务范围
  • 拟录用是正式录用吗
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

    网站地图: 企业信息 工商信息 财税知识 网络常识 编程技术

    友情链接: 武汉网站建设