前言 这篇文章适合实践过MNIST入门的人学习观看.没有看过MNIST基础的人请移步这里 深入MNIST TensorFlow是一个非常强大的用来做大规模数值计算的库.其所擅长的任务之一就是实现以及训练深度神经网络. 在本教程中,我们将学到构建一个TensorFlow模型的基本步骤,并将通过这些步骤为MNIST构建一个深度卷积神经网络. 这个教程假设你已经熟悉神经网络和MNIST数据集.如果你尚未了解,请查看新手指南. 安装 在创建模型之前,我们会先加载MNIST数据集,然后启动一个Tensor…
一.MNSIT数据处理 MNSIT是一个非常有名的手写体数字识别数据集.包含60000张训练图片,10000张测试图片.每张图片是28X28的数字. TonserFlow提供了一个类来处理 MNSIT数据.这个类会自动下载并转化数据结构. import tensorflow as tf from tensorflow.examples.tutorials.mnist import input_data mnist_data = input_data.read_data_sets("mnist_s…
tensorflow学习笔记——使用TensorFlow操作MNIST数据(1) 一:神经网络知识点整理 1.1,多层:使用多层权重,例如多层全连接方式 以下定义了三个隐藏层的全连接方式的神经网络样例代码: import tensorflow as tf l1 = tf.matmul(x, w1) l2 = tf.matmul(l1, w2) y = tf.matmul(l2,w3) 1.2,激活层:引入激活函数,让每一层去线性化 激活函数有多种,例如常用的 tf.nn.relu  tf.nn.…
续集请点击我:tensorflow学习笔记——使用TensorFlow操作MNIST数据(2) 本节开始学习使用tensorflow教程,当然从最简单的MNIST开始.这怎么说呢,就好比编程入门有Hello World,机器学习入门有MNIST.在此节,我将训练一个机器学习模型用于预测图片里面的数字. 开始先普及一下基础知识,我们所说的图片是通过像素来定义的,即每个像素点的颜色不同,其对应的颜色值不同,例如黑白图片的颜色值为0到255,手写体字符,白色的地方为0,黑色为1,如下图. MNIST…
此程序被称为TF的 Hello World,19行代码,给人感觉很简单.第一遍看的时候,不到半个小时,就把程序看完了.感觉有点囫囵吞枣的意思,没理解透彻.现在回过头来看,感觉还可以从中学到更多东西. # -*- coding:utf- -*- import tensorflow as tf from tensorflow.examples.tutorials.mnist import input_data mnist = input_data.read_data_sets("E:/testdat…
一.任务:采用基本的LSTM识别MNIST图片,将其分类成10个数字. 为了使用RNN来分类图片,将每张图片的行看成一个像素序列,因为MNIST图片的大小是28*28像素,所以我们把每一个图像样本看成一行行的序列.因此,共有(28个元素的序列)×(28行),然后每一步输入的序列长度是28,输入的步数是28步. 二.LSTM模型: 输入:x(t-1)的大小为一个28维的向量.……x(t-1),x(t).x(t+1)……有28个.[将一张图片拆成28*28] 隐藏层大小:128 输出:10 U:28…
一.AlexNet:共8层:5个卷积层(卷积+池化).3个全连接层,输出到softmax层,产生分类. 论文中lrn层推荐的参数:depth_radius = 4,bias = 1.0 , alpha = 0.001 / 9.0 , beta = 0.75 lrn现在仅在AlexNet中使用,主要是别的卷积神经网络模型效果不明显.而LRN在AlexNet中会让前向和后向速度下降,(下降1/3). [训练时耗时是预测的3倍] 代码: #加载数据 import tensorflow as tf fr…
一.卷积神经网络的简述 卷积神经网络将一个图像变窄变长.原本[长和宽较大,高较小]变成[长和宽较小,高增加] 卷积过程需要用到卷积核[二维的滑动窗口][过滤器],每个卷积核由n*m(长*宽)个小格组成,每个小格都有自己的权重值, 长宽变窄:过滤器的长宽决定的 高度变高:过滤器的个数决定的 输入:55000 × 784 = 28*28 输出:55000 × 10 lenet:两层卷积层(卷积层 + 池化层).两层全连接层 二.代码: 1.数据集: 下载好Mnist数据集加压到文件夹'MNIST_d…
import numpy as npimport gzip import struct import keras as ks import logging from keras.layers import Dense, Activation, Flatten, Convolution2D from keras.utils import np_utils def read_data(label_url,image_url): with gzip.open(label_url) as flbl: m…
一个门外汉写的MXNET跑MNIST的例子,三层全连接层最后验证率是97%左右,毕竟是第一个例子,主要就是用来理解MXNet怎么使用. #导入需要的模块 import numpy as np #numpy只保存数值,用于数值运算,解决Python标准库中的list只能保存对象的指针的问题 import os #本例子中没有使用到 import gzip #使用zlib来压缩和解压缩数据文件,读写gzip文件 import struct #通过引入struct模块来处理图片中的二进制数据 impo…