# -*- coding: utf-8 -*- import numpy as np np.random.seed(1337) #for reproducibility再现性 from keras.datasets import mnist from keras.utils import np_utils from keras.models import Sequential#按层 from keras.layers import Dense, Activation,Convolution2D,…
import kerasimport matplotlib.pyplot as pltfrom keras.models import Sequentialfrom keras.layers import Dense,Activation,Flatten,Dropout,Convolution2D,MaxPooling2Dfrom keras.utils import np_utilsfrom keras.optimizers import RMSpropfrom skimage import…
# -*- coding: utf-8 -*- import numpy as np np.random.seed(1337) from keras.datasets import mnist from keras.utils import np_utils from keras.models import Sequential from keras.layers import SimpleRNN,Activation,Dense from keras.optimizers import Ada…
import os import tensorflow as tf from tensorflow.examples.tutorials.mnist import input_data INPUT_NODE = 784 OUTPUT_NODE = 10 LAYER1_NODE = 500 def get_weight_variable(shape, regularizer): weights = tf.get_variable("weights", shape, initializer…
上一节,我们完成了网络训练代码的实现,还有一些问题需要做进一步的确认.网络的最终目标是,输入一张手写数字图片后,网络输出该图片对应的数字.由于网络需要从0到9一共十个数字中挑选出一个,于是我们的网络最终输出层应该有十个节点,每个节点对应一个数字.假设图片对应的是数字0,那么输出层网络中,第一个节点应该输出一个高百分比,其他节点输出低百分比,如果图片对应的数字是9,那么输出层最后一个节点应该输出高百分比,其他节点输出低百分比,例如下图: 屏幕快照 2018-05-07 下午5.10.59.png…
MNIST手写数字集 MNIST是一个由美国由美国邮政系统开发的手写数字识别数据集.手写内容是0~9,一共有60000个图片样本,我们可以到MNIST官网免费下载,总共4个.gz后缀的压缩文件,该文件是二进制内容. train-images-idx3-ubyte.gz:  training set images     图片样本,用来训练模型 train-labels-idx1-ubyte.gz:  training set labels     图片样本对应的数字标签 t10k-images-…
目录 一.背景介绍 1.1 卷积神经网络 1.2 深度学习框架 1.3 MNIST 数据集 二.方法和原理 2.1 部署网络模型 (1)权重初始化 (2)卷积和池化 (3)搭建卷积层1 (4)搭建卷积层2 (5)搭建全连接层3 (6)搭建输出层 2.2 训练和评估模型 三.结果 3.1 训练过程 3.2 测试过程 四.讨论与结论 一.背景介绍 1.1 卷积神经网络 近年来,深度学习的概念非常火热.深度学习的概念最早由Hinton等人在2006年提出.基于深度置信网络(DBN),提出非监督贪心逐层…
卷积:神经网络不再是对每个像素做处理,而是对一小块区域的处理,这种做法加强了图像信息的连续性,使得神经网络看到的是一个图像,而非一个点,同时也加深了神经网络对图像的理解,卷积神经网络有一个批量过滤器,通过重复的收集图像的信息,每次收集的信息都是小块像素区域的信息,将信息整理,先得到边缘信息,再用边缘信息总结从更高层的信息结构,得到部分轮廓信息,最后得到完整的图像信息特征,最后将特征输入全连接层进行分类,得到分类结果. 卷积: 经过卷积以后,变为高度更高,长和宽更小的图像,进行多次卷积,就会获得深…
上一篇文章,比较了三种算法实现对手写数字识别,其中,SVM和神经网络算法表现非常好准确率都在90%以上,本文章进一步探讨对神经网络算法优化,进一步提高准确率,通过测试发现,准确率提高了很多. 首先,改变之一: 先在初始化权重的部分,采取一种更为好的随机初始化方法,我们依旧保持正态分布的均值不变,只对标准差进行改动, 初始化权重改变前, def large_weight_initializer(self): self.biases = [np.random.randn(y, 1) for y in…
#卷积神经网络cnn import tensorflow as tf from tensorflow.examples.tutorials.mnist import input_data #数据包,如果没有自动下载 number 1 to 10 data mnist = input_data.read_data_sets('MNIST_data',one_hot=True) #用测试集来评估神经网络的准确度 def computer_accuracy(v_xs,v_ys): global pre…