第一次用卷积,看的别人的模型跑的CIFAR-10,不过吐槽一下。。。我觉着我的965m加速之后比我的cpu算起来没快多少。。正确率64%的样子,没达到模型里说的75%,不知道问题出在哪里

import numpy as np
import os
import mxnet as mx
import logging
import cPickle def unpickle(file):
with open(file,'rb') as fo:
dict = cPickle.load(fo)
return np.array(dict['data']).reshape(10000,3072),np.array(dict['labels']).reshape(10000) def to4d(img):
return img.reshape(img.shape[0],3,32,32).astype(np.float32)/255 def fit(batch_num,model,val_iter,batch_size):
(train_img, train_lbl) = unpickle('cifar-10/data_batch_'+str(batch_num))
train_iter = mx.io.NDArrayIter(to4d(train_img), train_lbl, batch_size, shuffle=True)
model.fit(
X=train_iter,
eval_data=val_iter,
batch_end_callback=mx.callback.Speedometer(batch_size,200)
) (val_img, val_lbl) = unpickle('cifar-10/test_batch') batch_size = 100
val_iter = mx.io.NDArrayIter(to4d(val_img),val_lbl,batch_size) data = mx.sym.Variable('data')
cv1 = mx.sym.Convolution(data=data,name='cv1',num_filter=32,kernel=(3,3))
act1 = mx.sym.Activation(data=cv1,name='relu1',act_type='relu')
poing1 = mx.sym.Pooling(data=act1,name='poing1',kernel=(2,2),pool_type='max')
do1 = mx.sym.Dropout(data=poing1,name='do1',p=0.25)
cv2 = mx.sym.Convolution(data=do1,name='cv2',num_filter=32,kernel=(3,3))
act2 = mx.sym.Activation(data=cv2,name='relu2',act_type='relu')
poing2 = mx.sym.Pooling(data=act2,name='poing2',kernel=(2,2),pool_type='avg')
do2 = mx.sym.Dropout(data=poing2,name='do2',p=0.25)
cv3 = mx.sym.Convolution(data=do2,name='cv3',num_filter=64,kernel=(3,3))
act3 = mx.sym.Activation(data=cv3,name='relu3',act_type='relu')
poing3 = mx.sym.Pooling(data=act3,name='poing3',kernel=(2,2),pool_type='avg')
do3 = mx.sym.Dropout(data=poing3,name='do3',p=0.25)
data = mx.sym.Flatten(data=do3)
fc1 = mx.sym.FullyConnected(data=data,name='fc1',num_hidden=64)
act4 = mx.sym.Activation(data=fc1,name='relu4',act_type='relu')
do4 = mx.sym.Dropout(data=act4,name='do4',p=0.25)
fc2 = mx.sym.FullyConnected(data=do4,name='fc2',num_hidden=10)
mlp = mx.sym.SoftmaxOutput(data=fc2,name='softmax') logging.getLogger().setLevel(logging.DEBUG) model = mx.model.FeedForward(
ctx=mx.gpu(0),
symbol=mlp,
num_epoch=10,
learning_rate=0.1
)
for batch_num in range(1,6):
fit(batch_num, model, val_iter, batch_size)

MXNet学习:试用卷积-训练CIFAR-10数据集的更多相关文章

  1. Keras学习:试用卷积-训练CIFAR-10数据集

    import numpy as np import cPickle import keras as ks from keras.layers import Dense, Activation, Fla ...

  2. 【翻译】TensorFlow卷积神经网络识别CIFAR 10Convolutional Neural Network (CNN)| CIFAR 10 TensorFlow

    原网址:https://data-flair.training/blogs/cnn-tensorflow-cifar-10/ by DataFlair Team · Published May 21, ...

  3. 可变卷积Deforable ConvNet 迁移训练自己的数据集 MXNet框架 GPU版

    [引言] 最近在用可变卷积的rfcn 模型迁移训练自己的数据集, MSRA官方使用的MXNet框架 环境搭建及配置:http://www.cnblogs.com/andre-ma/p/8867031. ...

  4. 【神经网络与深度学习】基于Windows+Caffe的Minst和CIFAR—10训练过程说明

    Minst训练 我的路径:G:\Caffe\Caffe For Windows\examples\mnist  对于新手来说,初步完成环境的配置后,一脸茫然.不知如何跑Demo,有么有!那么接下来的教 ...

  5. TensorFlow学习笔记——LeNet-5(训练自己的数据集)

    在之前的TensorFlow学习笔记——图像识别与卷积神经网络(链接:请点击我)中了解了一下经典的卷积神经网络模型LeNet模型.那其实之前学习了别人的代码实现了LeNet网络对MNIST数据集的训练 ...

  6. 深度学习之卷积神经网络(CNN)详解与代码实现(二)

    用Tensorflow实现卷积神经网络(CNN) 本文系作者原创,转载请注明出处:https://www.cnblogs.com/further-further-further/p/10737065. ...

  7. YOLO训练自己的数据集的一些心得

    YOLO训练自己的数据集 YOLO-darknet训练自己的数据 [Darknet][yolo v2]训练自己数据集的一些心得----VOC格式 YOLO模型训练可视化训练过程中的中间参数 项目开源代 ...

  8. 【Tensorflow系列】使用Inception_resnet_v2训练自己的数据集并用Tensorboard监控

    [写在前面] 用Tensorflow(TF)已实现好的卷积神经网络(CNN)模型来训练自己的数据集,验证目前较成熟模型在不同数据集上的准确度,如Inception_V3, VGG16,Inceptio ...

  9. 深度学习之卷积神经网络(CNN)的应用-验证码的生成与识别

    验证码的生成与识别 本文系作者原创,转载请注明出处:https://www.cnblogs.com/further-further-further/p/10755361.html 目录 1.验证码的制 ...

随机推荐

  1. redis 重启服务丢失 密码设置 现象 与 解决过程

    1. 前言 今天开电脑,开启redis服务后,项目使用redis的时候提示 不能找到 redisPools,并提示密码错误, 然后我用cmd打开却可以使用,真是奇了怪了!!! 2.使用现象: (1)c ...

  2. 战争游戏(War Games 1983)剧情

    战争游戏 War Games(1983) 人工控制导弹发射 傍晚大雾,两值工作人员自驾一辆轿车到达监控俄罗斯核战争的防空基地,在门口出示工作证后进入基地,两工作人员和同事换班后,进入防空系统控制室开始 ...

  3. SSM工程常见问题

    1.引入Junit测试 <!--引入junit单元测试,两个一起引用,spring-test版本要与Spring-core保持一致--> <dependency> <gr ...

  4. C# 开源一个基于 yarp 的 API 网关 Demo,支持绑定 Kubernetes Service

    关于 Neting 刚开始的时候是打算使用微软官方的 Yarp 库,实现一个 API 网关,后面发现坑比较多,弄起来比较麻烦,就放弃了.目前写完了查看 Kubernetes Service 信息.创建 ...

  5. Java NIO Channel 使用

    Java NIO 中的 Channel 分类: FileChannel SocketChannel ServerSocketChannel DatagramChannel channel 分类 Fil ...

  6. Visaul Studio 2015 MFC控件使用之--按钮(Button)

    在MFC开发当中,比较常用的控件之一便是Button控件了,该控件的除了可以通过点击产生的开关量当作开关来使用,还可以设置其颜色变化当作显示灯,按钮控件的使用相对来比较简单. 打开工程解决方案的资源视 ...

  7. 1011day-人口普查系统

    1.Browse.jsp <%@ page language="java" contentType="text/html; charset=UTF-8" ...

  8. 【刷题-LeetCode】211. Add and Search Word - Data structure design

    Add and Search Word - Data structure design Design a data structure that supports the following two ...

  9. zabbix表达式

    system.cpu.load[all,avg1].min(10)}>2 load连续10分钟>2 system.cpu.load[percpu,avg1].count(#3,0.6,&q ...

  10. fio硬盘压力测试

    fio测试工具支持同步(pread/pwrite)和异步(libaio)FIO是测试IOPS的非常好的工具,用来对硬件进行压力测试和验证,支持13种不同的I/O引擎,包括:sync,mmap, lib ...