MXNet 学习 (1) --- 最易上手的深度学习开源库 --- 安装及环境搭建
安装环境:Win 10 专业版 64位 + Visual Studio 2015 Community。
记录下自己在有GPU的环境下安装配置MXNet的过程。该过程直接使用MXNet release 的 pre-built 包,没有自己使用CMake编译。网上有很多自己编译的教程,过程都比较繁琐,直接使用release包对新手来说更加简单方便。
选择MXNet的原因是因为看了《Caffe、TensorFlow、MXNet三个开源库的对比》这篇博文,其中指出MXNet相对来说是最易上手的深度学习开源库,所以选择该开源库作为初学工具。

官方文档
Getting Started: http://mxnet.readthedocs.io/en/latest/get_started/
安装
配置MXNet的pre-built包
- 下载链接:https://github.com/dmlc/mxnet/releases

- 解压pre-built包到合适的位置,如 E:\MXNet;
- 运行setupenv.cmd,该步骤会帮助添加各种系统环境变量,运行后可以检查下自己的系统环境变量是否正确

- 解压的包里有readme文档,可作为安装过程中的参考。
分为不支持GPU的版本和支持GPU的版本,我的电脑支持GPU,因此选择gpu版本的。
配置cuDNN
- 下载链接:https://developer.nvidia.com/cudnn (需要注册为开发者后才能下载)
- 解压cuDNN包,将目录下的bin、include和lib文件夹copy到E:\MXNet\3rdparty\cudnn目录下,覆盖原文件
安装Python2 (version 2.7.11) / Python3 (version 3.5.1)
- 最好python3和python2都安装,虽然发现后面运行默认使用的是python3
- 下载地址:https://www.python.org/downloads/ 选择64位的安装包
- pre-built包是64位的,所以记得安装64位的Python,选择自定义安装,并勾选添加路径到系统变量选项,没有勾选的需要手动添加python安装路径到环境变量。刚开始不小心装了32位的,结果运行报错
安装MXNet的python包
- cmd模式下进入目录 E:\MXNet\python,如下所示:
- 运行python setup.py install,等待安装完毕。安装过程会下载安装python的numpy模块,记得检查是否有错误,如果有错,需要重新运行。
- 我自己在安装的时候因为网络不好,好几次都超时中断了。
- 运行readme文档里的实例代码,看是否正确
- cmd模式下进入目录 E:\MXNet\python,如下所示:
参考其他文章,自己编译需要用到以下工具,记录下来备用:
1. OpenCV (version 3.1):OpenCV3.1已经发布,但是只有64位版的。需要32位版本的建议使用OpenCV3.0
下载链接:http://opencv.org/downloads.html
2. OpenBlas
BLAS (Basic Linear Algebra Subprograms):基础线性代数子程序库,是一个应用程序接口(API)标准,说的简单点就是向量、矩阵之间乘加这些运算。
OpenBlas是BLAS的开源优化库,支持CPU多线程。
看到解压出来的 MXNet pre-built包的3rdparty文件夹下有openblas,应该不用自己再下载了。
单独的下载链接为:https://sourceforge.net/projects/openblas/files/latest/download?source=files
相关文档:https://github.com/xianyi/OpenBLAS/wiki/Document
3. CMake工具
非常强大的编译自动配置工具,可以根据不同平台、不同的编译器,生成相应的Makefile或者vcproj项目。
下载链接:https://cmake.org/download/
入门参考:http://www.cnblogs.com/sinojelly/archive/2010/05/22/1741337.html
MXNet 学习 (1) --- 最易上手的深度学习开源库 --- 安装及环境搭建的更多相关文章
- mxnet:结合R与GPU加速深度学习
转载于统计之都,http://cos.name/tag/dmlc/,作者陈天奇 ------------------------------------------------------------ ...
- 深度学习与CV教程(8) | 常见深度学习框架介绍
作者:韩信子@ShowMeAI 教程地址:http://www.showmeai.tech/tutorials/37 本文地址:http://www.showmeai.tech/article-det ...
- mxnet:结合R与GPU加速深度学习(转)
近年来,深度学习可谓是机器学习方向的明星概念,不同的模型分别在图像处理与自然语言处理等任务中取得了前所未有的好成绩.在实际的应用中,大家除了关心模型的准确度,还常常希望能比较快速地完成模型的训练.一个 ...
- 对比学习:《深度学习之Pytorch》《PyTorch深度学习实战》+代码
PyTorch是一个基于Python的深度学习平台,该平台简单易用上手快,从计算机视觉.自然语言处理再到强化学习,PyTorch的功能强大,支持PyTorch的工具包有用于自然语言处理的Allen N ...
- Python深度学习读书笔记-1.什么是深度学习
人工智能 什么是人工智能.机器学习与深度学习(见图1-1)?这三者之间有什么关系?
- 【深度学习笔记】(一)TensorFlow安装及环境搭建
在学习了一段时间台大李宏毅关于deep learning的课程,以及一些其他机器学习的书之后,终于打算开始动手进行一些实践了. 感觉保完研之后散养状态下,学习效率太低了,于是便想白天学习,晚上对白天学 ...
- 学习笔记︱Nvidia DIGITS网页版深度学习框架——深度学习版SPSS
DIGITS: Deep Learning GPU Training System1,是由英伟达(NVIDIA)公司开发的第一个交互式深度学习GPU训练系统.目的在于整合现有的Deep Learnin ...
- 深度学习Bible学习笔记:第七章 深度学习中的正则化
一.正则化介绍 问题:为什么要正则化? NFL(没有免费的午餐)定理: 没有一种ML算法总是比别的好 好算法和坏算法的期望值相同,甚至最优算法跟随机猜测一样 前提:所有问题等概率出现且同等重要 实际并 ...
- 【深度学习笔记】(一)Mac下TensorFlow安装及环境搭建
本文由@ray 出品,转载请注明出处. 文章链接:http://www.cnblogs.com/wolfray/p/7828903.html 在学习了一段时间台大李宏毅关于deep learning ...
随机推荐
- Minimum no. of iterations to pass information to all nodes in the tree
Given a very large n-ary tree. Where the root node has some information which it wants to pass to al ...
- java环境搭建系列:JDK从下载安装到简单使用
最近,问的比较多的问题居然是jdk的问题,对于新手来说这确实有点难度,毕竟一个人经常上网浏览新闻和观看视频的人,一下子开始一门编程语言的环境搭建.这中间需要一个慢慢适应的过程.回想当初我在这个阶段也很 ...
- Nginx + php-fpm 执行 PHP 脚本超时 报错 502 Bad Gateway + 504 Gateway Time-out 的解决办法
上周写好的发送邮件的计划任务只发送了一部分,检查计划任务日志,发现 502 Bad Gateway 的错误(已经在脚本中设置了 set_time_limit(0)). 后来在网上查找资料,可以通过以下 ...
- Git: untrack a file in local repo only and keep it in the remote repo
You could update your index: git update-index --assume-unchanged nbproject/project.properties and ma ...
- Oracle序列和索引
序列和索引 一.序列 1.序列的概念: 序列(Sequence)是用来生成连续的整数数据的对象.它常常用来作为主键的增长列,可以升序,也可以降序. 2.创建序列: 语法:创建序列 ...
- mongodb sharding配置
mongodb集群配置 1 Mongo使用sharding集群 mongodb副本集群 mongos1 192.168.20.137 mongos2 192.168.20.138 mongo_conf ...
- oracle often commands
还是这个好用 Oracle mysql 对比版本 Personal Oracle7 Release 7.3.4.0.0 mysql 3.23.58-nt 启动画面(点击放大) 默认安装目录 C:O ...
- Redis缓存之Set使用
在Redis中,我们可以将Set类型看作为没有排序的字符集合,和List类型一样,我们也可以在该类型的数据值上执行添加.删除或判断某一元素是否存在等操作.需要说明的是,这些操作的时间复杂度为O(1), ...
- S3C2440 裸机程序之音频
mini2440之Main分析 2012-03-17 20:51:29 分类: 嵌入式 /****************************************************** ...
- Leetcode: Arithmetic Slices II - Subsequence
A sequence of numbers is called arithmetic if it consists of at least three elements and if the diff ...

