mxnet 框架的搭建

  mxnet是一个深度学习的框架,我们可以在上面运行我们所需要的神经网络及各种深度学习的东西。这里总结一下在ubuntu上安装mxnet以及怎么使用我们自己的数据让mxnet跑起来。很遗憾的是我们的电脑gpu还不能用,只能先讲用cpu的。网上有很多关于这类的东西,我也看了很多,但感觉只有总结后才是自己的东西,不然看过之后不久又忘得干干净净。
    (1)基本依赖安装
           sudo apt-get update
           sudo apt-get install -y build-essential git libblas-dev libopencv-dev
    (2)从github下载mxnet
           git clone --recursive https://github.com/dmlc/mxnet
    (3)用python编译(用于在python上开发,import mxnet as mx)
         cd python  (切换到mxnet里的python文件夹)
         python setup.py install
     (4)上面是基本步骤,如果有需要,还要安装numpy,scipy,sklean,matplotlib,opencv,setuptools,用gpu的话,要安装cuda,然后make -j4(4核是-j4,8核是-j8)


       安装好后,mxnet/examples里有很多可以测试的例子,比如运行python train_minst.py.接下来最重要的是用我们自己的数据进行神经网络的训练。有几个步骤,
        (1)先将我们要训练的数据放在不同的文件夹里,每个文件夹代表不同的分类,就是labels
          (2) 生成.lst文本,用于数据的索引
                            python im2rec.py --list  ../histcut6/cut6  ../histcut6  --recursive=true         #--list指生成.lst文件,../histcut6/cut6指生成.lst的位置和前缀名,../histcut6指原始数据的位置。
           (3)生成.rec二进制文件
                            python im2rec.py   ../histcut6/cut6_train ../histcut6
                             (python im2rec.py -h   查看帮助)
           (4)将生成好的文件送入网络进行训练。在mxnet/example/image-classification里,有多个网络模型,inception-bn,alexnet,googlenet,vggnet.跑一个网络,我们需要用到find_mxnet.py   train_model.py    train_imagenet.py     symbol_alexnet.py
              之后,运行train_imagenet.py,并设置命令行参数。
                                  python train_imagenet.py  --network=alexnet   --data-dir=../histcut6  --num-epochs=20 ........

                                  (python train_imagenet.py  -h  查看帮助)

(5)训练完成后就可以用训练好的模型进行predict,需要用到.params和.json文件,在mxnet/example/cpp/image-classification里有用于分类预测的image-classification-predict.cc,我们需要修改一下里面的.params和.json文件路径,以及图片大小等,然后编译,之后就可以用编译好的文件进行predict












  • 2
    点赞
  • 8
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值