MXNET Windows+Anaconda下安装教程及Bug解决
来源:互联网 发布:淘宝店公告栏在哪里写 编辑:程序博客网 时间:2024/04/28 01:09
MXNET Windows +Anaconda下安装教程及Bug解决
前言
MXNET 作为2015年底开始流行的Deep Learning 开源框架, 由于其灵活性、对多种语言的支持、 轻量级的调度引擎已经成为很多DL 研发、学习者的开发框架。 网上也出现了很多的mxnet安装教程,但随着mxnet的更新迭代,较早的安装教程会出现一些问题。 笔者在安装过程中出现过很多头疼的Bug, 故针对mxnet 0.9.2(2017年2月更新的mxnet)在windows下的安装写一篇教程, 并汇总一些安装过程中遇到的bug,不定期更新。
1. 安装环境
1 安装Cuda
在NVidia官网下载
一定要检查你的显卡是否能用cuda, 如果不能,是用不了mxnet的 GPU版的,请安装CPU版
2 安装Cudnn
Cudnn一定要下载跟cuda对应的版本, 现在cuda 8.0对应的是cudnn 5。注意,有的较早教程提供的是7.5的Cuda,如果安错了对应的Cudnn以后会出现无法使用Cudnn的Bug
下载地址可以去 Cudnn, 要注册英伟达账号
下载后得到Cudnn文件夹(名字也叫cuda), 分别将里面的cuda/include、cuda/lib、cuda/bin三个目录中的内容拷贝到C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v8.0对应的include、lib、bin目录下即可
注意是32 or 64位系统
3 Open CV
OpenCV安装地址为 opencv, opencv 3.0下载下来就好
4 OpenBlas
下载地址为OpenBlas,也是下载下来就好
5 安装Anaconda
这里取决于你用的Python编译器,笔者研发需要安装了Anaconda 作为IDE。
注意你的python 版本,用Anaconda的话应为2.7版, mxnet暂时是不支持python3的
下载地址Anaconda , 下2.7
6 C++
VS2013及以上都行, 没有C++11新特性的VS要下载 Visual C++ Compiler Nov 2013 CTP并安装,然后把 C:\Program Files (x86)\Microsoft Visual C++ Compiler Nov 2013 CTP\ 文件夹内所有拷贝至你的VS2013目录,如:拷贝至 D:\Microsoft Visual Studio 12.0\VC\ 目录下覆盖。
7 记得查看上述的安装(一般为1到5步)有没有添加到系统的path环境变量中, 且查看版本之间, 如python, anaconda, opencv, cuda之间有没有冲突
2. 下载MXNET
在完成了 “安装环境过程后”, 在GitHub 上下载 mxnet, 可以直接down下来,也可以用git fork然后克隆下来。(使用Git请自己百度/Google),下载地址mxnet
下载下来后打开 mxnet\make\config.mk,查找并修改为以下参数:
USE_CUDNN = 1
USE_BLAS = openblas
用Cmake和C++编译MXNET源码
其实如果能自己搞到libmxnet.dll是不用cmake 和C++编译的, 但是自己编译通过的libmxnet.dll一般没啥问题,而从别人那copy的就可能发生很多无法描述的bug了,所以笔者还是建议大家尽量自己编译。
这里最上面2行填你自己的mxnet安装路径
然后点configure, 选你的c++版本, 然后点generator
mxnet_build目录下会生成mxnet.sln,用vs打开, 切换成release模式, dubug模式也是可以编译的,编译出来也可以用,就是编译时间很长长长长……..
编译完成后,在mxnet_build\Release目录下生成了libmxnet.dll文件
安装Python的MXNET库
将libmxnet.dll文件copy到 …\mxnet\python\mxnet 路径下 打开cmd,切换到当前目录
输入python setup.py install 安装
把 …\Anaconda2\Lib\site-packages\mxnet-0.9.2-py2.7.egg\mxnet 添加到环境变量,中间的.egg是mxnet的版本号
测试MXNET安装是否成功
打开anaconda或者python, 运行官网上的代码
能跑通证明mxnet安装成功,且能使用GUP。
Bug汇总
1 执行 python setup.py install 后安装失败?
Solution: 如果一直到编译完libmxnet.dll都没有出现问题, 而却无法 setup.py, 请检查python的版本。 如果已经安了python3, 请把python3路径下的python.exe改个名字, 如果用anaconda也同样。 最后请检查python或anaconda的环境变量, mxnet是无法用python3 or anaconda3 的。 在执行时用 管理员权限运行。
2 在跑 Import mxnet as mx , a = mx.nd.ones((2,3), mx.gpu())代码时, 最后print 时全为0?
Solution: 没有用上gup,检查gup是否符合cuda, 把代码改成a = mx.nd.ones((2,3), mx.cpu())试试用cup有没有问题。如果CPU可以正常运行,请仔细排查安装教程1-7涉及的问题,或者转到问题3
3 “ImportError: cannot import name libinfo” python import error on windows?
Solution: 这种情况一般为libinfo文件没有找到dll, 请把安装的open, openblas, cudnn 等的.dll文件copy到 你的python/anaconda 的mxnet库下, 例如:笔者用anaconda2则copy到 E:\Anaconda2\Lib\site-packages\mxnet-0.9.2-py2.7.egg\mxnet 下
这里注意32 or 64位
4 Import Error: No module named cv2?
Solution: 在跑mxnet自带的pre_trained model例子时出现的问题, 原因是缺少了opencv 的cv2文件,将OpenCV安装目录里的Python文件夹内的cv2.pyd复制到Python安装目录里Lib中site-packages内即可解决。
5 Failed loading Op conv_conv1 of type Convolution: Cannot find argument ‘cudnn_tune’ ?
Solution:也是在跑pre_trained model时出现的bug, 原因是cudnn没有用上, 请按教程全部重新安装。(记得删除之前的无效版, 否则会起冲突)
- MXNET Windows+Anaconda下安装教程及Bug解决
- Anaconda+Mxnet 安装及配置
- windows下安装Anaconda及tensorflow
- windows下安装配置Mxnet
- mxnet 在windows下安装
- Windows下安装python版的XGBoost教程(Anaconda)
- Windows解决anaconda下双python版本安装TensorFlow
- Windows 环境下配置MXNET教程
- Windows 环境下配置MXNET教程
- Windows下通过Anaconda安装TensorFlow及Spyder编译器
- windows anaconda下安装xgboost
- windows 下 Anaconda 安装 TensorFlow
- windows 下 Anaconda 安装 TensorFlow
- Windows下mxnet的编译与安装
- Windows下mxnet的CPU版本安装
- MXnet在windows下的安装
- 深度学习--windows 下安装mxnet
- MXNet安装教程
- springMVC实现ajax返回json
- JavaScript中检测对象的方法
- 词语变形练习题
- HRV非线性分析PoincarePlot:SD1,SD2计算算法
- eclipse如何安装struts2的插件 (2013-09-11 16:43:56)
- MXNET Windows+Anaconda下安装教程及Bug解决
- PX4源码分析3_pixhawk硬件结构
- Android的广播Receiver动态注册和静态注册
- Android之AppWidget桌面小部件开发
- 两串旋转练习题
- junit4.1.2导入及入门使用
- JZ2440 TFT LCD
- 【菜鸟之路】杨辉三角形
- VMware tools安装 提点