MXnet实战深度学习1--MXnet的安装与第一个例子

时间:2023-01-27 13:50:59

Mxnet是一个轻量化分布式可移植深度学习计算平台,他支持多机多节点、多GPU的计算,其openMP+MPI/SSH+Cuda/Cudnn的框架是的计算速度很快,且能与分布式文件系统结合实现大数据的深度学习。

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

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

1、基本依赖的安装

sudo apt-get update

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

2下载mxnet

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

3、安装CUDA

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

4、编译支持GPU的MXnet

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

USE_CUDA = 1

USE_CUDA_PATH = /usr/local/cuda

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

make -j4

5、装Python支持

cd python;

python setup.py install

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

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

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

cd mxnet/example/image-classification

python train_mnist.py

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

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

MXnet实战深度学习1--MXnet的安装与第一个例子 MXnet实战深度学习1--MXnet的安装与第一个例子

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

python train_mnist.py --gpus 0 --network lenet

MXnet实战深度学习1--MXnet的安装与第一个例子MXnet实战深度学习1--MXnet的安装与第一个例子

运行结果:

MXnet实战深度学习1--MXnet的安装与第一个例子MXnet实战深度学习1--MXnet的安装与第一个例子