MXNET Windows 编译安装(Python)

本文只记录Mxnet在windows下的编译安装,更多环境配置请移步官方文档:http://mxnet.readthedocs.io/en/latest/how_to/build.html

编译目标:

  • libmxnet.dll

必要条件:

  • 支持C++11,g++>=4.8
  • BLAS库, 比如 libblas, libblas, openblas intel mkl

可选条件:

  • CUDA Toolkit >= v7.0 to run on nvidia GPUs
    • Requires GPU with support for Compute Capability >= 2.0
  • CUDNN to accelerate the GPU computation (only CUDNN 3 is supported)
  • opencv for image augmentation

Steps

首先,强化VS2013,使之能支持C++11特性。

  • 下载安装: Visual C++ Compiler Nov 2013 CTP.
  • 将安装目录下的文件拷贝至VS2013相应安装目录下,例如:  将C:\Program Files (x86)\Microsoft Visual C++ Compiler Nov 2013 CTP下所有文件拷贝到  C:\Program Files (x86)\Microsoft Visual Studio 12.0\VC 最好将原来的文件备份。

其次,安装第三方库。

包括 OpenCVCuDNN and OpenBlas(如果已经安装 MKL,则忽略此项).

最后,使用CMake来创建VS工程,CMake需要预先安装。

注意,应该根据自己机器选择是否为Win64,否则配置openCV时,会找不到cuBLAS.

点击configure之后,需要配置openCV、openBLAS和cuDNN路径,按提示next即可。

提示Configure done后,点击Generate生成解决方案。

提示Generate done后,在VS里打开解决方案进行编译。

如果提示opencv2/opencv.hpp找不到,则在项目属性的VC++中,在包含目录添加该文件目录(在opencv安装目录中可找到)即可,类似问题都如此解决。

Python Package Installation

需要 python>=2.7 和 numpy. 在windows命令行中使用pip命令安装numpy即可:

pip install numpy

检验是否安装成功:

python example/image-classification/train_mnist.py

安装(即将所需库文件放到指定位置):

cd python; 
python setup.py install

或者设置环境变量 PYTHONPATH 为/<RootPathToProject>/mxnet/python

Train MLP on MNIST

现在训练一个MLP来简单了解下训练一个网络的过程以及相关Python接口。

import mxnet as mx
# step 1 配置训练集
train = mx.io.MNISTIter(
image = "mnist/train-images-idx3-ubyte",
label = "mnist/train-labels-idx1-ubyte",
batch_size = 128,
data_shape = (784, )) # step 2 配置验证集
val = mx.io.MNISTIter(
image = "mnist/t10k-images-idx3-ubyte",
label = "mnist/t10k-labels-idx1-ubyte",
batch_size = 128,
data_shape = (784, )) # step 3 配置网络,此处简单的三层
data = mx.symbol.Variable('data')
fc1 = mx.symbol.FullyConnected(data = data, num_hidden=128)
act1 = mx.symbol.Activation(data = fc1, act_type="relu")
fc2 = mx.symbol.FullyConnected(data = act1, num_hidden = 64)
act2 = mx.symbol.Activation(data = fc2, act_type="relu")
fc3 = mx.symbol.FullyConnected(data = act2, num_hidden=10)
mlp = mx.symbol.SoftmaxOutput(data = fc3, name = 'softmax') # step 4 前馈网络配置
model = mx.model.FeedForward(
symbol = mlp,
num_epoch = 20,
learning_rate = .1) # step 5 拟合
model.fit(X = train, eval_data = val) # step 6 训练完成后,利用训练好的模型进行预测
model.predict(X = val)

填坑~~

Mxnet Windows配置的更多相关文章

  1. windows配置nginx实现负载均衡集群

    windows配置nginx实现负载均衡集群2014-08-20 09:44:40   来源:www.abcde.cn   评论:0 点击:617 网上大部分关于nginx负载均衡集群的教程都是lin ...

  2. Windows 安装程序无法将 Windows 配置为在此计算机的硬件上运行

    遇到这个问题是用辅助工具(WinNTSetup3.exe)进行的安装,重启后就就遇到“Windows 安装程序无法将 Windows 配置为在此计算机的硬件上运行” 解决:在WIN PE 下挂载安装光 ...

  3. windows安装程序无法将windows配置为在此计算机的硬件上运行

    关于装windows系统时,出现一些安装中断的处理 该方法适用于 windows安装程序无法将windows配置为在此计算机的硬件上运行 计算机意外地重新启动或遇到错误. Windows 安装无法继续 ...

  4. 【NO.3-1】Jmeter - 在Windows配置HOSTS的方法

    在Windows配置HOSTS 那么还记得Windows如何修改HOSTS文件吗? (1) 进入到C:\Windows\System32\drivers\etc (2) 通过”记事本”来打开hosts ...

  5. windows配置nginx实现负载均衡集群 -请求分流

    windows配置nginx实现负载均衡集群 一.windows上安装nginx 1.下载nginx的windows版本http://nginx.org/en/download.html 2.把压缩文 ...

  6. FAT16/32不等于ESP:windows安装程序无法将windows配置为在此计算机的硬件上运行

    今天给公司电脑装系统,由于公司特殊需要,要给新电脑装win7系统.三台完全一样的华硕adol笔记本,前两台都和win10并存装成了双系统,第三台被不懂系统的人尝试装win7搞坏了,只能全盘格式化后再装 ...

  7. windows配置cider和clojure clj

    windows配置cider和clojure clj */--> pre.src {background-color: #292b2e; color: #b2b2b2;} windows配置ci ...

  8. windows配置Python多版本共存

    windows配置Python多版本共存 作者:尹正杰 版权声明:原创作品,谢绝转载!否则将追究法律责任. 最近Python开发蛮火的,三年前我的一个运维朋友就告诉我说Python语言将来会很火,当时 ...

  9. PHP学习日记 Windows配置PHP+Nginx+自动化脚本

    Windows配置PHP+Nginx+自动化脚本 安装与配置 PHP 下载PHP:传送门 选择合适的版本下载 尽量选Thread Safe 配置PHP: 解压后在文件夹中找到php.ini-devel ...

随机推荐

  1. Java的自动拆/装箱

    作者:Alvin 关键字:语法糖 类 对象 参考 Java 中的语法糖 语法糖--这一篇全了解 浅谈 Integer 类 什么是Java中的自动拆装箱 深入剖析Java中的装箱和拆箱 前言 我们知道, ...

  2. Object C学习笔记3-对象的使用和定义

    1. 如何定义一个对象 在面向对象的语言中,定义一个对象是使用Class关键字,而在Object-C中则是使用@interface,@interface用于定义对象的属性和方法,@implementa ...

  3. Linux shell(3)

    shell的运算操作: let整数运算 expr整数运算 bc浮点运算 字符串运算 let命令: let命令让BASH shell 执行算数值的操作,使用let,可以比较两个值或执行加减乘除等这样的算 ...

  4. ubuntu下安装pip install mysqlclient 报错 command "python setup.py egg_info" failed with error.....解决方案

    我的环境: ubuntu 1604 版本, 在黑屏终端已经安装了django和virtualenv虚拟环境, 在创建了django的models后开始迁移的操作, 出现错误, 错误代码最后如题目 可以 ...

  5. static笔记

    目录 1. static概括 2. static特点 1. 被static修饰的成员变量属于类,不属于这个类的某个对象. 2.被static修饰的成员可以并且建议通过类名直接访问 3. static注 ...

  6. Netty源码分析第5章(ByteBuf)---->第6节: 命中缓存的分配

    Netty源码分析第6章: ByteBuf 第六节: 命中缓存的分配 上一小节简单分析了directArena内存分配大概流程, 知道其先命中缓存, 如果命中不到, 则区分配一款连续内存, 这一小节带 ...

  7. 新手Python第一天(接触)

    Python 变量 Python的变量由字母,数字,下划线组成不包含特殊字符,不能以数字开头 可以使用的名称 例如:name,name2,my_name 不可使用的名称 例如:if...(Python ...

  8. Spark计算模型RDD

    RDD弹性分布式数据集 RDD概述 RDD(Resilient Distributed Dataset)叫做弹性分布式数据集,是Spark中最基本的数据抽象,它代表一个不可变.可分区.里面的元素可并行 ...

  9. git查看添加删除远程仓库

    查看远程仓库 git remote -v 删除远程仓库 git remote remove origin 添加远程仓库 git remote add origin 仓库地址 关联远程分支 重新关联远程 ...

  10. python3去除字符串中括号及括号里面的内容

    a = """ <option value="search-alias=arts-crafts-intl-ship">Arts & ...