如何2小时快速入门MxNet?
首发

如何2小时快速入门MxNet?

优质
请用语音读文章

热门回答:

一、MXnet的安装及使用

  开源地址:https://github.com/dmlc/mxnet

  如下是单节点的具体安装和实验流程。参考于官方文档:http://mxnt.ml/en/latest/build.html#building-on-linux

  1.1、基本依赖的安装

  sudo apt-get update

  sudo apt-get install -y build-essential git libblas-dev libopencv-dev

  1.2、下载mxnet

  git clone –recursive https://github.com/dmlc/mxnet

  1.3、安装cuda

  详见博客:http://blog.csdn.net/a350203223/article/details/50262535

  1.4、编译支持GPU的MXnet

  将mxnet/目录里找到mxnet/make/子目录。把该目录下的config.mk复制到mxnet/目录。用文本编辑器打开。找到并修改以下两行:

  USE_CUDA = 1

  USE_CUDA_PATH = /usr/local/cuda

  修改之后。在mxnet/目录下编译

  make -j4

  1.5、安装Python支持

  cd python;

  python setup.py install

  有些时候需要安装setuptools和numpy(sudo apt-get install python-numpy)。

  1.6、运行Mnist手写体识别实例

  MNIST手写数字识别。数据集包含6万个手写数字的训练数据集以及1万个测试数据集。每个图片是28×28的灰度图。在mxnet/example/image-classification里可以找到MXnet自带MNIST的识别样例。我们可以先运行一下试试:

  cd mxnet/example/image-classification

  python train_mnist.py

  在第一次运行的时候会自动下载MNIST数据集。

  以上的命令是使用默认的参数运行。即使用mlp网络。在cpu上计算。

  如果使用lenet网络。在GPU上实现加速。则使用如下命令:

  python train_mnist.py –gpus 0 –network lenet

  想要搞清楚一个框架怎么使用。第一步就是用它来训练自己的数据。这是个很关键的一步。

二、MXnet数据预处理

  整个数据预处理的代码都集成在了toosl/im2rec.py中了。这个首先要造出一个list文件。lst文件有三列。分别是index label 图片路径。如下图所示:

  我这个label是瞎填的。所以都是0。另外最新的MXnet上面的im2rec是有问题的。它生成的list所有的index都是0。不过据说这个index没什么用…..但我还是改了一下。把yield生成器换成直接append即可。

  执行的命令如下:

    sudo python im2rec.py –list=True /home/erya/dhc/result/try /home/erya/dhc/result/ –recursive=True –shuffle=true –train-ratio=0.8

  每个参数的意义在代码内部都可以查到。简单说一下这里用到的:–list=True说明这次的目的是make list。后面紧跟的是生成的list的名字的前缀。我这里是加了路径。然后是图片所在文件夹的路径。recursive是是否迭代的进入文件夹读取图片。–train-ratio则表示train和val在数据集中的比例。

  执行上面的命令后。会得到三个文件:

然后再执行下面的命令生成最后的rec文件:

  sudo python im2rec.py /home/erya/dhc/result/try_val.lst /home/erya/dhc/result –quality=100

以及。sudo python im2rec.py /home/erya/dhc/result/try_train.lst /home/erya/dhc/result –quality=100

  来生成相应的lst文件的rec文件。参数意义太简单就不说了..看着就明白。result是我存放图片的目录。

  这样最终就完成了数据的预处理。简单的说。就是先生成lst文件。这个其实完全可以自己做。而且后期我做segmentation的时候。label就是图片了..

三、非常简单的小demo

  先上代码:

以上就是由优质生活领域创作者 生活常识网 整理编辑的,如果觉得有帮助欢迎收藏转发~

分享到 :
相关推荐

为什么说在做一件事成功之前,不要告诉任何人?

请用语音读文章热门回答:因为——天机不可泄露。在这件事没有成功之前都不算成功。不[&...

如何看待抖音的“网红”现象,它有文化内涵吗?

请用语音读文章热门回答:抖音在年轻人群里很是流行。甚至是感染到了外国人。随之而产[&...

真实赛车3如何联机?

请用语音读文章热门回答:如果你是苹果用户。你就要用gamecenter登录。然后[&...

想建一个小型养猪场,大概一百头左右,要投资多少钱?要准备什么?

请用语音读文章热门回答:养一百头猪要建猪圈一百五十平米。加上储物间五十平米。也就[&...

发表评论

您的电子邮箱地址不会被公开。

评论(2)

  • 陌上柳絮倾城雪 永久VIP 2022年9月30日 22:43:58

    数据,文件,命令,图片,都是,简单,路径,参数,代码,目录

  • 旧日梦 永久VIP 2022年9月30日 22:43:58

    没想到大家都对如何2小时快速入门MxNet?感兴趣,不过这这篇解答确实也是太好了

  • 小新卖蜡笔 永久VIP 2022年9月30日 22:43:58

    一、MXnet的安装及使用开源地址:https://github.com/dmlc/mxnet如下是单节点的具体安装和实