tensorflow实现加载mnist数据集

yipeiwu_com6年前Python基础

mnist作为最基础的图片数据集,在以后的cnn,rnn任务中都会用到

import numpy as np
import tensorflow as tf
import matplotlib.pyplot as plt
from tensorflow.examples.tutorials.mnist import input_data

#数据集存放地址,采用0-1编码
mnist = input_data.read_data_sets('F:/mnist/data/',one_hot = True)
print(mnist.train.num_examples)
print(mnist.test.num_examples)

trainimg = mnist.train.images
trainlabel = mnist.train.labels
testimg = mnist.test.images
testlabel = mnist.test.labels

#打印相关信息
print(type(trainimg))
print(trainimg.shape,)
print(trainlabel.shape,)
print(testimg.shape,)
print(testlabel.shape,)

nsample = 5
randidx = np.random.randint(trainimg.shape[0],size = nsample)

#输出几张数字的图
for i in randidx:
  curr_img = np.reshape(trainimg[i,:],(28,28))
  curr_label = np.argmax(trainlabel[i,:])
  plt.matshow(curr_img,cmap=plt.get_cmap('gray'))
  plt.title(""+str(i)+"th Training Data"+"label is"+str(curr_label))
  print(""+str(i)+"th Training Data"+"label is"+str(curr_label))
  plt.show()

程序运行结果如下:

Extracting F:/mnist/data/train-images-idx3-ubyte.gz
Extracting F:/mnist/data/train-labels-idx1-ubyte.gz
Extracting F:/mnist/data/t10k-images-idx3-ubyte.gz
Extracting F:/mnist/data/t10k-labels-idx1-ubyte.gz
55000
10000
<class 'numpy.ndarray'>
(55000, 784)
(55000, 10)
(10000, 784)
(10000, 10)
52636th 

输出的图片如下:

Training Datalabel is9

下面还有四张其他的类似图片

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持【听图阁-专注于Python设计】。

相关文章

python字符串和常用数据结构知识总结

python字符串和常用数据结构知识总结

使用字符串 第二次世界大战促使了现代电子计算机的诞生,当初的想法很简单,就是用计算机来计算导弹的弹道,因此在计算机刚刚诞生的那个年代,计算机处理的信息主要是数值,而世界上的第一台电子计...

详解js文件通过python访问数据库方法

详解js文件通过python访问数据库方法

我来教你 js文件怎么通过python访问数据库,希望能够为你带来帮助。 1、如果是要提交表单内容给 服务器的 python 处理,那么只需要在表单 <form> 里面的 a...

在Python中操作字典之fromkeys()方法的使用

 fromkeys()方法从序列键和值设置为value来创建一个新的字典。 语法 以下是fromkeys()方法的语法: dict.fromkeys(seq[, value...

对python中return和print的一些理解

前言 最近刚开始学习python,之前只有一些c的基础,也忘得差不多了,现在想边学习边总结和分享收获~看书时看了return的用法,可是后来和print混了,老是感觉可以将函数retur...

不管你的Python报什么错,用这个模块就能正常运行

不管你的Python报什么错,用这个模块就能正常运行

Fucklt.py 使用了最先进的技术能够使你的代码不管里面有什么样的错误,你只管 FuckIt,程序就能"正常"执行,兵来将挡水来土掩。 是不是感觉很不讲道理,这样还担心自己的代码不能...