MXnet的使用

关于MXnet的介绍:

MXNet: A flexible and efficient library for deep learning.

这是MXNet的官网介绍,“MXNet是灵活且高效的深度学习库”。

MXNet是主流的三大深度学习框架之一:

TensorFlow:Google支持,其简化版是Keras
PyTorch:Facebook支持,其工业版是Caffe2
MXNet:中立,Apache孵化器项目,也被AWS选为官方DL平台;
MXNet的优势是,其开发者之一李沐,是中国人,在MXNet的推广中具有语言优势(汉语),有利于国内开发者的学习。同时,推荐李沐录制的教学视频,非常不错。

MXNet的高层接口是Gluon,Gluon同时支持灵活的动态图和高效的静态图,既保留动态图的易用性,也具有静态图的高性能,这也是官网介绍的flexible和efficient的出处。同时,MXNet还具备大量学术界的前沿算法,方便移植至工业界。希望MXNet团队再接再励,在深度学习框架的竞赛中,位于前列。

我是在Ubuntu18.04里面安装的

安装步骤:

1、安装Python

sudo apt-get install python

2、安装Git

sudo apt-get install git

3、安装依赖包

sudo apt-get install -y build-essential git libatlas-base-dev libopencv-dev

4、从GitHub上获取代码(这个可能不是最新的,自己可以换成最新的路径)

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

5、进入MXnet目录进行编译,命令如下

cd mxnet
make -j$(nproc) #利用多核特性

6 安装python的必备库

sudo apt-get install python-setuptools
sudo apt-get install python-numpy

7、安装Python支持,进入Mxnet下的Python目录执行如下命令

sudo python setup.py install

8、进入example目录下的image-classification目录执行如下命令

sudo python train_mnist.py

执行结果如下

INFO:root:Epoch[18] Batch [100-200]    Speed: 11223.70 samples/sec    accuracy=0.999844
INFO:root:Epoch[18] Batch [200-300]    Speed: 10489.39 samples/sec    accuracy=0.999844
INFO:root:Epoch[18] Batch [300-400]    Speed: 10071.96 samples/sec    accuracy=0.999531
INFO:root:Epoch[18] Batch [400-500]    Speed: 11706.14 samples/sec    accuracy=1.000000
INFO:root:Epoch[18] Batch [500-600]    Speed: 10958.20 samples/sec    accuracy=0.999531
INFO:root:Epoch[18] Batch [600-700]    Speed: 10575.25 samples/sec    accuracy=0.999687
INFO:root:Epoch[18] Batch [700-800]    Speed: 10963.99 samples/sec    accuracy=0.999375
INFO:root:Epoch[18] Batch [800-900]    Speed: 11068.63 samples/sec    accuracy=0.999531
INFO:root:Epoch[18] Train-accuracy=0.999684
INFO:root:Epoch[18] Time cost=5.598
INFO:root:Epoch[18] Validation-accuracy=0.983380
INFO:root:Epoch[19] Batch [0-100]    Speed: 11794.51 samples/sec    accuracy=0.999845
INFO:root:Epoch[19] Batch [100-200]    Speed: 11534.11 samples/sec    accuracy=1.000000
INFO:root:Epoch[19] Batch [200-300]    Speed: 11276.61 samples/sec    accuracy=0.999844
INFO:root:Epoch[19] Batch [300-400]    Speed: 11382.12 samples/sec    accuracy=0.999687
INFO:root:Epoch[19] Batch [400-500]    Speed: 11193.14 samples/sec    accuracy=0.999219
INFO:root:Epoch[19] Batch [500-600]    Speed: 11618.06 samples/sec    accuracy=0.999844
INFO:root:Epoch[19] Batch [600-700]    Speed: 11561.83 samples/sec    accuracy=0.999687
INFO:root:Epoch[19] Batch [700-800]    Speed: 11611.91 samples/sec    accuracy=0.999687
INFO:root:Epoch[19] Batch [800-900]    Speed: 10880.64 samples/sec    accuracy=0.999844
INFO:root:Epoch[19] Train-accuracy=0.999733
INFO:root:Epoch[19] Time cost=5.261
INFO:root:Epoch[19] Validation-accuracy=0.982882

说明:由于我使用普通权限操作都不能成功,所以使用了sudo,还有就是在调用python那里使用python3也是可以的。

比如:

sudo python3 train_mnist.py

参考博客:https://blog.csdn.net/caroline_wendy/article/details/80350366

参考博客:https://www.cnblogs.com/ibyte/p/6141832.html

猜你喜欢

转载自www.cnblogs.com/juluwangshier/p/12000805.html