mxnet卷积神经网络训练MNIST数据集测试
mxnet框架下超全手写字体识别—从数据预处理到网络的训练—模型及日志的保存
import numpy as np
import mxnet as mx
import logging logging.getLogger().setLevel(logging.DEBUG) batch_size = 100
mnist = mx.test_utils.get_mnist()
train_iter = mx.io.NDArrayIter(mnist['train_data'], mnist['train_label'], batch_size, shuffle=True)
val_iter = mx.io.NDArrayIter(mnist['test_data'], mnist['test_label'], batch_size) data = mx.sym.var('data')
# first conv layer
conv1= mx.sym.Convolution(data=data, kernel=(5,5), num_filter=20)
tanh1= mx.sym.Activation(data=conv1, act_type="tanh")
pool1= mx.sym.Pooling(data=tanh1, pool_type="max", kernel=(2,2), stride=(2,2))
# second conv layer
conv2= mx.sym.Convolution(data=pool1, kernel=(5,5), num_filter=50)
tanh2= mx.sym.Activation(data=conv2, act_type="tanh")
pool2= mx.sym.Pooling(data=tanh2, pool_type="max", kernel=(2,2), stride=(2,2))
# first fullc layer
flatten= mx.sym.Flatten(data=pool2)
fc1= mx.symbol.FullyConnected(data=flatten, num_hidden=500)
tanh3= mx.sym.Activation(data=fc1, act_type="tanh")
# second fullc
fc2= mx.sym.FullyConnected(data=tanh3, num_hidden=10)
# softmax loss
lenet= mx.sym.SoftmaxOutput(data=fc2, name='softmax') # create a trainable module on GPU 0
lenet_model = mx.mod.Module(
symbol=lenet,
context=mx.cpu()) # train with the same
lenet_model.fit(train_iter,
eval_data=val_iter,
optimizer='sgd',
optimizer_params={'learning_rate':0.1},
eval_metric='acc',
batch_end_callback = mx.callback.Speedometer(batch_size, 100),
num_epoch=10)
INFO:root:Epoch[0] Batch [100] Speed: 1504.57 samples/sec accuracy=0.113564
INFO:root:Epoch[0] Batch [200] Speed: 1516.40 samples/sec accuracy=0.118100
INFO:root:Epoch[0] Batch [300] Speed: 1515.71 samples/sec accuracy=0.116600
INFO:root:Epoch[0] Batch [400] Speed: 1505.61 samples/sec accuracy=0.110200
INFO:root:Epoch[0] Batch [500] Speed: 1406.21 samples/sec accuracy=0.107600
INFO:root:Epoch[0] Train-accuracy=0.108081
INFO:root:Epoch[0] Time cost=40.572
INFO:root:Epoch[0] Validation-accuracy=0.102800
INFO:root:Epoch[1] Batch [100] Speed: 1451.87 samples/sec accuracy=0.115050
INFO:root:Epoch[1] Batch [200] Speed: 1476.86 samples/sec accuracy=0.179600
INFO:root:Epoch[1] Batch [300] Speed: 1409.67 samples/sec accuracy=0.697100
INFO:root:Epoch[1] Batch [400] Speed: 1379.52 samples/sec accuracy=0.871900
INFO:root:Epoch[1] Batch [500] Speed: 1374.88 samples/sec accuracy=0.901000
INFO:root:Epoch[1] Train-accuracy=0.925556
INFO:root:Epoch[1] Time cost=42.527
INFO:root:Epoch[1] Validation-accuracy=0.936900
INFO:root:Epoch[2] Batch [100] Speed: 1376.59 samples/sec accuracy=0.936436
INFO:root:Epoch[2] Batch [200] Speed: 1379.29 samples/sec accuracy=0.948100
INFO:root:Epoch[2] Batch [300] Speed: 1375.07 samples/sec accuracy=0.953400
INFO:root:Epoch[2] Batch [400] Speed: 1369.65 samples/sec accuracy=0.958600
INFO:root:Epoch[2] Batch [500] Speed: 1371.79 samples/sec accuracy=0.960900
INFO:root:Epoch[2] Train-accuracy=0.966667
INFO:root:Epoch[2] Time cost=43.660
INFO:root:Epoch[2] Validation-accuracy=0.972900
INFO:root:Epoch[3] Batch [100] Speed: 1230.74 samples/sec accuracy=0.969505
INFO:root:Epoch[3] Batch [200] Speed: 1335.27 samples/sec accuracy=0.970800
INFO:root:Epoch[3] Batch [300] Speed: 1264.43 samples/sec accuracy=0.972600
INFO:root:Epoch[3] Batch [400] Speed: 1242.03 samples/sec accuracy=0.974100
INFO:root:Epoch[3] Batch [500] Speed: 1322.77 samples/sec accuracy=0.974600
INFO:root:Epoch[3] Train-accuracy=0.976465
INFO:root:Epoch[3] Time cost=46.860
INFO:root:Epoch[3] Validation-accuracy=0.980700
INFO:root:Epoch[4] Batch [100] Speed: 1342.42 samples/sec accuracy=0.978020
INFO:root:Epoch[4] Batch [200] Speed: 1339.98 samples/sec accuracy=0.980600
INFO:root:Epoch[4] Batch [300] Speed: 1344.36 samples/sec accuracy=0.981000
INFO:root:Epoch[4] Batch [400] Speed: 1338.13 samples/sec accuracy=0.980000
INFO:root:Epoch[4] Batch [500] Speed: 1343.76 samples/sec accuracy=0.979000
INFO:root:Epoch[4] Train-accuracy=0.983535
INFO:root:Epoch[4] Time cost=44.694
INFO:root:Epoch[4] Validation-accuracy=0.985700
INFO:root:Epoch[5] Batch [100] Speed: 1333.50 samples/sec accuracy=0.981584
INFO:root:Epoch[5] Batch [200] Speed: 1342.07 samples/sec accuracy=0.985400
INFO:root:Epoch[5] Batch [300] Speed: 1339.04 samples/sec accuracy=0.984300
INFO:root:Epoch[5] Batch [400] Speed: 1323.42 samples/sec accuracy=0.983500
mxnet卷积神经网络训练MNIST数据集测试的更多相关文章
- TensorFlow——CNN卷积神经网络处理Mnist数据集
CNN卷积神经网络处理Mnist数据集 CNN模型结构: 输入层:Mnist数据集(28*28) 第一层卷积:感受视野5*5,步长为1,卷积核:32个 第一层池化:池化视野2*2,步长为2 第二层卷积 ...
- Tensorflow学习教程------利用卷积神经网络对mnist数据集进行分类_利用训练好的模型进行分类
#coding:utf-8 import tensorflow as tf from PIL import Image,ImageFilter from tensorflow.examples.tut ...
- TensorFlow初探之简单神经网络训练mnist数据集(TensorFlow2.0代码)
from __future__ import print_function from tensorflow.examples.tutorials.mnist import input_data #加载 ...
- 使用一层神经网络训练mnist数据集
import numpy as np import tensorflow as tf from tensorflow.examples.tutorials.mnist import input_dat ...
- 实践详细篇-Windows下使用VS2015编译的Caffe训练mnist数据集
上一篇记录的是学习caffe前的环境准备以及如何创建好自己需要的caffe版本.这一篇记录的是如何使用编译好的caffe做训练mnist数据集,步骤编号延用上一篇 <实践详细篇-Windows下 ...
- 3层-CNN卷积神经网络预测MNIST数字
3层-CNN卷积神经网络预测MNIST数字 本文创建一个简单的三层卷积网络来预测 MNIST 数字.这个深层网络由两个带有 ReLU 和 maxpool 的卷积层以及两个全连接层组成. MNIST 由 ...
- 使用caffe训练mnist数据集 - caffe教程实战(一)
个人认为学习一个陌生的框架,最好从例子开始,所以我们也从一个例子开始. 学习本教程之前,你需要首先对卷积神经网络算法原理有些了解,而且安装好了caffe 卷积神经网络原理参考:http://cs231 ...
- Python实现bp神经网络识别MNIST数据集
title: "Python实现bp神经网络识别MNIST数据集" date: 2018-06-18T14:01:49+08:00 tags: [""] cat ...
- deep_learning_LSTM长短期记忆神经网络处理Mnist数据集
1.RNN(Recurrent Neural Network)循环神经网络模型 详见RNN循环神经网络:https://www.cnblogs.com/pinard/p/6509630.html 2. ...
随机推荐
- lua -- table.nums
table.nums 计算表格包含的字段数量. 格式: count = table.nums(表格对象) Lua 的“#”操作可以取得表格的长度,但仅限从 开始连续数字为索引的表格.table.num ...
- cmd命令操作Oracle数据库
//注意cmd命令执行的密码字符不能过于复杂 不能带有特殊符号 以免执行不通过 譬如有!@#¥%……&*之类的 所以在Oracle数据库设置密码是不要太复杂 /String Database ...
- MySQL Workbench 的安全设置
今日用MySQL Workbench进行数据库的管理更新时,执行一个更新的语句碰到以下错误提示: Error Code: 1175 You are using safe update mode and ...
- iOS开发-按钮的基本使用
// // ViewController.m // 05-用代码创建按钮 // // Created by vic fan on 2017/7/30. // Copyright © 2017年 ...
- (转)CTP: 平昨仓与平今仓,log轻轻告诉你.......
转自:http://blog.csdn.net/wowotuo/article/details/43242663 CTP的相关文档告诉我们,中金所和三大商品交易所中,只有上期所区分平今仓和平昨仓.也就 ...
- GNU make简介
引言 接触开源项目有一段时间了,对自动化编译工具一直很好奇.近期有时间正好整理下GNU make.后续可以深入了解下. 本文主要整理GNU make的学习的基本资料,同时简要介绍make的功能.语法. ...
- Linux中查看GNOME版本号
在使用图形终端时,可以在虚拟终端中直接输入gnome-about,会弹出如下窗口. 或者在纯命令行模式下使用下面命令: $ gnome-about --gnome-version 注:Gnome 3. ...
- ffmpeg抓屏输出的设置
之前做windows下抓屏输出时使用ffmpeg.exe作为抓屏输出测试,命令行如下: ffmpeg -f gdigrab -i "desktop" -r 25 -vcodec m ...
- PowerDesigner小技巧
1. 附加:工具栏不见了 调色板(Palette)快捷工具栏不见了PowerDesigner 快捷工具栏 palette 不见了,怎么重新打开,找回来呢 上网搜索了一下”powerdesigner 图 ...
- NewStyleClass学习笔记[一]
from : https://www.python.org/doc/newstyle/ New-style Classes Unfortunately(遗憾,不幸的), new-style class ...