mxnet簡介: http://mxnet.readthedocs.org/en/latest/
這是比較新的深度學習框架(號稱第二代的深度學習框架),它的核心使用C++實現,並提供C風格的頭文件。對比其他的深度學習框架,如caffe、theano,它的特點主要是:
1. 編程上,它將聲明式編程和命令式編程相結合。使得代碼運行更快捷(這是事實)、語義更容易理解(這就見仁見智了,反正看的挺頭疼)
2. 自身實現上,它的底層數據格式引用了theano裏面的tensor和TBlob的形式,使得代碼清晰簡潔(如果不懂theano的話,看起來又相對費勁一些)
3. 效果上,它的速度和caffe相近,遠高於tensorFlow,但是mxnet本身支持了分佈式運算,因而在速度上必將由於caffe;內存消耗小是它的主要特徵,這意味着它應該可以同時讀入更多的圖片(batch_size可以更大),但是沒測試過。
網上有很多對比,簡單貼一個鏈接:
https://www.zhihu.com/question/36086842/answer/66118672
mxnet配置:
配置很簡單,按照官網的流程,本人在Ubuntu14.04上配置
<span style="font-size:18px;">sudo apt-get update
sudo apt-get install -y build-essential git libatlas-base-dev libopencv-dev
git clone --recursive https://github.com/dmlc/mxnet
cd mxnet; make -j4</span>
注意:如果要修改配置,需要在修改mxnet/make/config.mk,然後cp mxnet/make/config.mk mxnet/config.mk。它默認沒使用cuda,一般我們都會修改配置信息,以下是我的config.mk的部分配置:
<span style="font-size:18px;">USE_CUDA = 1
USE_CUDA_PATH = /usr/local/cuda-7.0
ifeq ($(UNAME_S), Darwin)
USE_BLAS = apple
else
USE_BLAS = mkl
endif
USE_INTEL_PATH = /opt/intel</span>
至此,它就完成基本配置了如果還需要配置python,則運行:
<span style="font-size:18px;">cd python; python setup.py install</span>
運行demo測試:這裏運行最基本的mnist
<span style="font-family:Lato, proxima-nova, Helvetica Neue, Arial, sans-serif;color:#404040;"><span style="font-size:18px;">cd mxnet/example/iamge-classification
python train_mnist.py </span></span>
運行成功,即可網上還有另一個demo,主要運行的是example/neural-style裏面的例子
http://phunter.farbox.com/post/mxnet-tutorial2