mnist

动手深度学习6-认识Fashion_MNIST图像数据集

匿名 (未验证) 提交于 2019-12-03 00:16:01
本节将使用torchvision包,它是服务于pytorch深度学习框架的,主要用来构建计算机视觉模型。 torchvision主要由以下几个部分构成: torchvision.datasets:一些加载数据的函数以及常用的数据集的接口 torchvision.models: 包含常用的模型结构(含预训练模型),例如AlexNet,VGG,ResNet; torchvision.transforms:常用的图片变换,例如裁剪,旋转等; torchvision.utils: 其他的一些有用的方法 导入本节需要的包或者模块 import torch import torchvision import torchvision.transforms as transforms import matplotlib.pyplot as plt import time import sys sys.path.append('..') # 为了导入上层目录的d2lzh_pytorch import d2lzh_pytorch as d2l 通过调用torchvision的torchvision.datasets来下载这个数据集 可以通过train参数获取指定的训练集或者测试集、 测试集只用了评估模型,并不用来训练模型 同时指定了参数transform = transform.ToTensor(

下载并使用MNIST数据集

匿名 (未验证) 提交于 2019-12-03 00:14:01
TensorFlow提供了一个库,可以直接用来自动下载与安装MNIST。 MNIST里包含3个数据集:第一个是训练数据集(mnist.train.images),另外两个分别是测试数据集(mnist.test.images)和验证数据集(mnist.validation)。 代码中的one_hot=True,表示将样本标签转化为one_hot编码。 刚开始的打印信息是解压数据集的意思。如果是第一次运行,还会显示下载数据的相关消息。 接着打印出来的是训练集的图片信息,是一个55000行、784列的矩阵。即,训练集里有55000张图片。 1 from tensorflow.examples.tutorials.mnist import input_data 2 mnist = input_data.read_data_sets("MNIST_data/",one_hot=True) 3 print ('输入数据:',mnist.train.images) 4 print ('输入打印shape:',mnist.train.images.shape) 5 import pylab 6 im = mnist.train.images[1] 7 im = im.reshape(-1,28) 8 pylab.imshow(im) 9 pylab.show() 代码的输出结果如图: 来源:博客园

MINIST手写数字识别

匿名 (未验证) 提交于 2019-12-03 00:11:01
1、配置环境:tensorflow+matplotlib 添加matplotlib库: https://blog.csdn.net/jiaoyangwm/article/details/79252845 2、下载数据: http://yann.lecun.com/exdb/mnist/ 3、主要步骤:   1)载入数据,解析文件   2)构建CNN网络   3)构建loss function   4)配置寻优器     梯度下降法、动量优化器、Adam优化器、Adagrad优化器、FTRL优化器、RMSProp优化器、   5)训练、测试   6)tensorboard可视化 4、详细解释 http://wiki.jikexueyuan.com/project/tensorflow-zh/tutorials/mnist_beginners.html 5、具体实现 来源:博客园 作者: 偷偷摸鱼的小橙 链接:https://www.cnblogs.com/chengmm/p/11565058.html

2.Mnist手写集

匿名 (未验证) 提交于 2019-12-03 00:05:01
MNIST数据集官网 : Yann LeCun’s website Four files are available on this site: train-images-idx3-ubyte.gz: training set images (9912422 bytes) train-labels-idx1-ubyte.gz: training set labels (28881 bytes) t10k-images-idx3-ubyte.gz: test set images (1648877 bytes) t10k-labels-idx1-ubyte.gz: test set labels (4542 bytes) 也可以从这里下载: linkurl 下载下来的数据集被分为两部分:60000行训练数据集(mnist.train) 和 10000行测试数据集(mnist.test) 每一张图片包含28 28个像素,展开成一个向量,长度是28 28=784,因此在mnist.train.images是一个形状[60000,784]的张量(tensor), mnist.train.labels是一个[60000,10]的数字矩阵 softmax 函数: 这个softmax模型可以用来给不同的对象分配概率。 分类的结果,转化为概率 MNIST手写数字识别简单的版本 import

PyTorch ֮ Datasets

匿名 (未验证) 提交于 2019-12-02 23:56:01
Datasets 的框架: class CustomDataset ( data . Dataset ): # 需要继承 data.Dataset def __init__ ( self ): # TODO # Initialize file path or list of file names. pass def __getitem__ ( self , index ): # TODO # 1. 从文件中读取指定 index 的数据(例:使用 numpy.fromfile, PIL.Image.open) # 2. 预处理读取的数据(例:torchvision.Transform) # 3. 返回数据对(例:图像和对应标签) pass def __len__ ( self ): # TODO # You should change 0 to the total size of your dataset. return 0 下面是官方 MNIST 的例子: class MNIST ( data . Dataset ): """`MNIST <http://yann.lecun.com/exdb/mnist/>`_ Dataset. Args: root (string): Root directory of dataset where ``processed/training.pt

逻辑回归:代码实现

匿名 (未验证) 提交于 2019-12-02 23:43:01
import tensorflow as tf import numpy as np import matplotlib.pyplot as plt from tensorflow.examples.tutorials.mnist import input_data trainimg = mnist.train.images trainlabel = mnist.train.labels testimg = mnist.test.images testlabel = mnist.test.labels print(trainlabel[0]) #输出第一行label值 运行结果: 判别样本是否为对应类别,是则为1,否则为0,完成10分类任务,故上述样本的类别为9。 #初始化变量 x = tf.placeholder("float",[None,784]) #placeholder(先占位,不复制),[None,784]样本的个数(无限大),每个样本的特征(784个像素点) y = tf.placeholder("float",[None,10])#样本的类别(10个) W = tf.Variable(tf.zeros([784,10]))#每个特征(784个像素点)对应输出10个分类值 b = tf.Variable(tf.zeros([10])) #逻辑回归模型

断点续训

匿名 (未验证) 提交于 2019-12-02 23:40:02
断点续训:在进行神经网络训练过程中由于一些因素导致训练无法进行,需要保存当前的训练结果下次接着训练 全连接反向传播神经网络中,训练过程的代码如下: #coding:utf-8 #1前向传播过程 import tensorflow as tf #网络输入节点为784个(代表每张输入图片的像素个数) INPUT_NODE = 784 #输出节点为10个(表示输出为数字0-9的十分类) OUTPUT_NODE = 10 #隐藏层节点500个 LAYER1_NODE = 500 def get_weight(shape, regularizer): #参数满足截断正态分布,并使用正则化, w = tf.Variable(tf.truncated_normal(shape,stddev=0.1)) #w = tf.Variable(tf.random_normal(shape,stddev=0.1)) #将每个参数的正则化损失加到总损失中 if regularizer != None: tf.add_to_collection('losses', tf.contrib.layers.l2_regularizer(regularizer)(w)) return w def get_bias(shape): #初始化的一维数组,初始化值为全 0 b = tf.Variable(tf.zeros

Tensorflow可视化MNIST手写数字训练

匿名 (未验证) 提交于 2019-12-02 23:38:02
【简述】   我们在学习编程语言时,往往第一个程序就是打印“Hello World”,那么对于人工智能学习系统平台来说,他的“Hello World”小程序就是MNIST手写数字训练了。MNIST是一个手写数字的数据集,官网是 Yann LeCun's website 。数据集总共包含了60000行的训练数据集( mnist.train )和10000行的测试数据集( mnist.test ),每一个数字的大小为28*28像素。通过利用Tensorflow人工智能平台,我们可以学习到人工智能学习平台是如何通过数据进行学习的。 【数据准备】   下载mnist数据集,和mnist_10k_sprite.png图片,分别放在MNIST_data文件夹和projector/data文件夹下。 【代码】 import tensorflow as tf from tensorflow.examples.tutorials.mnist import input_data from tensorflow.contrib.tensorboard.plugins import projector #载入数据集 mnist = input_data.read_data_sets("MNIST_data/",one_hot=True) #运行次数 max_steps = 1001 #图片数量 image

卷积神经网络实战(一) mnist 手写数字预测

匿名 (未验证) 提交于 2019-12-02 23:35:02
学了这么久机器学习和深度学习,应该来个小项目练练手。 于是选择了最经典的数据集MNIST来锻炼下自己卷积神经网络的熟练度。 我采用了比较简单的结构,没有用强大的GooLeNet(…实则是电脑带不动),两个卷积层加一个最大池化层,然后加一个大小为64的全连接层,最后是softmax输出。其实这个结构也是看了n遍了,这次来手写一下代码,顺便熟悉熟悉tensorflow的函数。 话不多说,上代码(python 3.7) import tensorflow as tf import numpy as np def reset_graph(seed=42):#设置一下随机数种子 tf.reset_default_graph() tf.set_random_seed(seed) np.random.seed(seed) height = 28 #长 width = 28 #宽 channels = 1 #通道数为1 n_inputs = height * width #图片大小为784像素 conv1_fmaps = 32 #卷积核的数量 conv1_ksize = 3 #卷积核的大小 conv1_stride = 1 #第一卷积层步长为1 conv1_pad = "SAME" #padding采用same conv2_fmaps = 64 #64个卷积核 conv2_ksize = 3