精华内容
下载资源
问答
  • MXNet

    2020-08-12 11:03:18
    MXNet也是一种深度学习框架,和Caffe、TensorFlow、Torch、Theano等并列 MXNet(发音为“mix-net”)起源于卡内基梅隆大学和华盛顿大学。MXNet是一个功能齐全,可编程和可扩展的深入学习框架,支持最先进的深入...

    MXNet也是一种深度学习框架,和Caffe、TensorFlow、Torch、Theano等并列

     

    MXNet(发音为“mix-net”)起源于卡内基梅隆大学和华盛顿大学。MXNet是一个功能齐全,可编程和可扩展的深入学习框架,支持最先进的深入学习模式。MXNet提供了混合编程模型(命令式和声明式)和大量编程语言的代码(包括Python、C++、R、Scala、Julia、Matlab和JavaScript)的能力。2017年1月30日,MXNet进入Apache基金会,成为Apache的孵化器项目。

    MXNet支持深度学习架构,如卷积神经网络(CNN)和循环神经网络(RNN),包括长短期记忆网络(LTSM)。该框架为成像、手写、语音识别,预测和自然语言处理提供了出色的功能。有些人称MXNet是世界上最好的图像分类器。

    MXNet具有强大的技术,包括扩展能力,如GPU并行性和内存镜像、编程器开发速度和可移植性。此外,MXNet与Apache Hadoop YARN(一种通用的,分布式的应用程序管理框架)集成,使MXNet成为TensorFlow的竞争对手。

    近期,Amazon宣布将MXNet作为Amazon AWS最主要的深度学习框架。

     

    展开全文
  • MXNET

    2019-11-14 22:42:23
    mxnet同时支持Imperative Programming及Symbolic Programming 一、为什么mxnet不像其它深度学习框架那样使用numpy的多维数据,而使用mxnet.NDArray多维数据? 答: 其它深度学习库只有在执行symblic符号函数时,...

       mxnet 同时支持Imperative Programming及Symbolic Programming

     

    一、为什么mxnet不像其它深度学习框架那样使用numpy的多维数据,而使用mxnet.NDArray多维数据?

     答: 其它深度学习库只有在执行symblic符号函数时,才会使用到GPU计算,而mxnet.NDArray可以在命令式编程中指定任意的计算设备。 

    二、符号symbolic计算的优势

    答:mxnet执行复杂的优化措施,使得去除了很多不必要的或重复的计算,比命令式编程提供了更佳的性能。

    其次, 因为我们在计算图中存储了不同变量间关系,使得mxnet可以高效的执行自微分。 

    展开全文
  • mxnet

    2019-02-09 06:24:00
    Ubuntu 14按照官方的说法安装: 装依赖 sudo apt-get updatesudo apt-get install -y build-essential git libblas-...下载mxnet git clone –recursive https://github.com/dmlc/mxnet recursive参数,因为mxnet...

    Ubuntu 14
    按照官方的说法安装:

    装依赖

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

     

     

    下载mxnet
    git clone –recursive https://github.com/dmlc/mxnet
    recursive参数,因为mxnet依赖于DMLC通用工具包http://dmlc.ml/,–recursive参数可以自动加载mshadow等依赖。这里暂时不要着急编译,我们还要装一下CUDA。

    装CUDA(如果没有GPU可以跳过这一步)
    这里提到的CUDA安装方法也适用于除MXnet之外的其他深度学习软件包。我们通过nVidia官方链接下载安装CUDA驱动和工具包,请前往 https://developer.nvidia.com/cuda-downloads 选择对应的安装方式。国内读者建议网络安装方式deb(network),这样ubuntu会选择就近的国内的源安装,速度可能比较快。

    如果用ubuntu 14.04,不用去官网,直接运行以下这些命令也可以调用官网下载(安装包较大需要耐心等待):
    wget http://developer.download.nvidia.com/compute/cuda/repos/ubuntu1404/x86_64/cuda-repo-ubuntu1404_7.5-18_amd64.deb

    接着装它

    sudo dpkg -i cuda-repo-ubuntu1404_7.5-18_amd64.deb
    sudo apt-get update
    sudo apt-get install cuda

    支持GPU的MXnet
    MXnet需要打开一个编译和链接选项来支持CUDA。在前一步git clone得到的mxnet/目录里找到mxnet/make/子目录,把该目录下的config.mk复制到mxnet/目录,用文本编辑器打开,找到并修改以下几行:

    USE_CUDA = 1
    USE_CUDA_PATH = /usr/local/cuda

    其中第二行是CUDA的安装目录。如果选择默认安装方式,它会在/usr/local/cuda或者是类似/usr/local/cuda-7.5这样的原始安装目录,如果是自定义目录的安装,请自行修改本条。

    如果用户选择安装atlas或者openblas等其他BLAS的实现,需要额外的修改。如果ubuntu的atlas实现(sudo apt-get install libatlas-base-dev或者sudo apt-get install libopenblas-dev),需要修改为:

    USE_BLAS = atlas 或者 openblas

    编译mxnet
    修改之后,在mxnet/目录下编译(-j4是可选参数表示用4线程编译):

    make -j4

    如果报错:cannot find -lcblas 就是没有装blas,apt-get install就行

    python支持
    如果要安装Python支持:

    cd python
    sudo apt-get install python-numpy python-setuptools
    python setup.py install

    setup之前需要安装setuptools和numpy

    配置python环境变量
    不配置环境变量的话,有可能会报“no module named mxnet”的错

    gedit ~/.bashrc
    export PYTHONPATH=~/mxnet/python

    我这里的mxnet放在home里

    不配python环境变量的用法
    根据官方文档,如果不想改变系统配置可以这样

    cp -r ~/mxnet/python/mxnet <path to your working directory>
    cp ~/mxnet/lib/libmxnet.so <path to your working directory>/mxnet/

    其中是你当前开发应用的目录,如果你已经在开发目录里,可以用以下命令

    cp -r ~/mxnet/python/mxnet .
    cp ~/mxnet/lib/libmxnet.so mxnet/
    ---------------------
    作者:prahs
    来源:CSDN
    原文:https://blog.csdn.net/prahs/article/details/52184579
    版权声明:本文为博主原创文章,转载请附上博文链接!

    转载于:https://www.cnblogs.com/mrxsc/articles/10357115.html

    展开全文
  • clojure-mxnetMXNET的Clojure软件包
  • Mxnet TensorRT

    2021-04-11 22:17:20
      当这些先决条件满足并保证更新后,可以通过pip安装一个支持TensorRT的Mxnet编译版本。安装命令为:   CUDA9.0环境   pip install mxnet-tensorrt-cu90   CUDA 9.2环境   pip install mxnet-tensorrt-cu...

    Optimizing Deep Learning Computation Graphs with TensorRT


    CUDA9.0或9.2
    Pascal或更新架构的显卡
    下载并安装TensorRT库
      当这些先决条件满足并保证更新后,可以通过pip安装一个支持TensorRT的Mxnet编译版本。安装命令为:
      CUDA9.0环境
      pip install mxnet-tensorrt-cu90
      CUDA 9.2环境
      pip install mxnet-tensorrt-cu100
      非Ubuntu 16.04的系统或者只使用docker镜像
      nvidia-docker run -ti mxnet/tensorrt python模型加载与转换

    import os
    import mxnet as mx
    from mxnet.gluon.model_zoo import vision
    import time
    
    # 转换模型
    batch_shape = (1, 3, 224, 224)
    resnet18 = vision.resnet18_v2(pretrained=True)
    resnet18.hybridize()
    resnet18.forward(mx.nd.zeros(batch_shape))
    resnet18.export('resnet18_v2')
    
    #加载新模型
    sym, arg_params, aux_params = mx.model.load_checkpoint('resnet18_v2', 0)
    
    # Create sample input
    input = mx.nd.zeros(batch_shape)



      TensorRT是一个仅用于推理的库,官方示例中使用Resnet18作为比较TensorRT的基准模型,Resnet18是一个计算复杂度较高的网络结构,常用于计算机视觉任务和深度学习库性能基准测试。Mxnet的Gluon模块可以从Gluon Model Zoo下载Resnet18模型,由于当前版本的TensorRT只支持symbolic的模型,因此需要对Gluon模块下载的模型进行hybridize、export,官方说后续可能考虑更新到直接加速Gluon模型。模型直接运行性能

    # Execute with MXNet
    os.environ['MXNET_USE_TENSORRT'] = '0'
    executor = sym.simple_bind(ctx=mx.gpu(0), data=batch_shape, grad_req='null', force_rebind=True)
    executor.copy_params_from(arg_params, aux_params)
    
    # Warmup
    print('Warming up MXNet')
    for i in range(0, 10):
        y_gen = executor.forward(is_train=False, data=input)
        y_gen[0].wait_to_read()
    
    # Timing
    print('Starting MXNet timed run')
    start = time.process_time()
    for i in range(0, 10000):
        y_gen = executor.forward(is_train=False, data=input)
        y_gen[0].wait_to_read()
    end = time.time()
    print(time.process_time() - start)



      为了提高测试的准确性,例子中在测试前执行了一定的推理次数对模型进行warmup,保证推理中并未实际使用的lazy operations在测试前已经完成,最终在TitanV上跑出了33.73s。模型经TensorRT加速后运行性能

    # Execute with TensorRT
    print('Building TensorRT engine')
    os.environ['MXNET_USE_TENSORRT'] = '1'
    arg_params.update(aux_params)
    all_params = dict([(k, v.as_in_context(mx.gpu(0))) for k, v in arg_params.items()])
    executor = mx.contrib.tensorrt.tensorrt_bind(sym, ctx=mx.gpu(0), all_params=all_params,
                                                 data=batch_shape, grad_req='null', force_rebind=True)
    
    #Warmup
    print('Warming up TensorRT')
    for i in range(0, 10):
        y_gen = executor.forward(is_train=False, data=input)
        y_gen[0].wait_to_read()
    
    # Timing
    print('Starting TensorRT timed run')
    start = time.process_time()
    for i in range(0, 10000):
        y_gen = executor.forward(is_train=False, data=input)
        y_gen[0].wait_to_read()
    end = time.time()
    print(time.process_time() - start)

    我这运行是报错的

    AttributeError: module 'mxnet.contrib.tensorrt' has no attribute 'tensorrt_bind'


      当前mxnet的TensorRT还处于实验性质,因此使用的是contrib中的tensorrt_bind接口,参数初始化时候也是按照字典加载进去的。后续TensorRT将逐步改进,tensorrt_bind将并取消并取得和simple_bind相同的接口风格。
      最终经TensorRT加速后模型的运行时间为18.99s,在本例中的加速原理来源于operator fusion。

    Operators and Subgraph Fusion
      这些出现的优化是以算子和子图的融合为基础发生的,神经网络可以被看做是一堆算子的计算图。算子可以执行各种计算,但在tensor上主要执行的是简单的数学运算或线性代数。这些算子融合在一起,在一个CUDA大核上使用通常更为高效。

    Today’s deep learning models perform tens of thousands of operations on GPU. The input and output of each GPU kernel has to be stored in the global memory, but read and write on global memory is much slower than on on-chip register. When some special kernels executed in sequence share some data, performance and memory locality can be improved by fusing these kernels into a single, larger one, operating on on-chip register instead of global memory.

    融合子图到一个CUDA大核上进行计算,可以避免使用大量全局变量导致的读写太慢问题。

      mxnet_tensorrt能够扫描整个计算图,并找到可以通过TensorRT优化的子图。因此在构造mxnet计算图时会查找是否有支持TensorRT操作符的子图,对可以支持的用TensorRT节点替换它们,在运行时对达到这个TensorRT节点运行TensorRT自己库中的子图实现,这些TensorRT子图可以将大量算子融合到一个CUDA内核进行计算。
      Mxnet负责输入数据到相应的TensorRT节点并获取输出,同时删除掉初始化期间重复的权重参数,如只用于TensorRT部分的权重。
     

    展开全文
  • Mxnet-Nlp 使用mxnet处理nlp工作
  • incubator-mxnet-site:Apache MXNet网站
  • mxnet 源码

    2017-12-15 21:39:55
    git mxnet 源码 ,按照readme.md 内描述即可正常安装
  • Apache MXNet (incubating) for Deep Learning Apache MXNet is a deep learning framework designed for both efficiency and flexibility. It allows you to mix symbolic and imperative programming to ...
  • mxnet symbol 解析

    2021-01-06 23:19:11
    mxnet symbol类定义:https://github.com/apache/incubator-mxnet/blob/master/python/mxnet/symbol/symbol.py 对于一个symbol,可分为non-grouped和grouped。且symbol具有输出,和输出属性。比如,对于Variable而言...
  • mxnet系列之mxnet介绍

    千次阅读 2017-04-20 17:43:55
    mxnet是 [1] mxnet的前世今生
  • linux 安装GPU版本的mxnet

    万次阅读 2019-11-18 16:07:22
    1.先查看自己cuda的版本: ...2.建议先卸载之前安装的mxnet pip uninstall mxnet pip uninstall mxnet-cu90 3.例如cuda的版本是9.0的 pip install -i https://pypi.tuna.tsinghua.edu.cn/simple mxnet-cu...
  • mxnet-clj-tutorials:Clojure MXNet的教程和示例
  • Apache MXNet (incubating) for Deep Learning Apache MXNet is a deep learning framework designed for both efficiency and flexibility. It allows you to mix symbolic and imperative programming to ...
  • mxnet框架简介

    2018-10-21 09:17:14
    mxnet框架的官方简介
  • MXNet中文学习笔记

    2021-02-28 18:46:48
    MXNet中文学习笔记
  • mxnet NDArray

    2021-01-06 17:15:20
    MXNet的NDArray与Numpy中的ndarray极为相似,NDAarray为MXNet中的各种数学计算提供了核心的数据结构,NDArray表示一个多维的、固定大小的数组,并且支持异构计算。那为什么不直接使用Numpy呢?MXNet的NDArray提供...
  • MXNet是用C ++编写的用于机器学习和深度学习的框架,支持跨多台机器和多个GPU(如果有)的分布式培训。 MXNet.cr遵循Python绑定的设计,尽管具有Crystal语法。 如下代码: require " mxnet " a = MXNet :: ...
  • mxnet安装

    2019-09-20 09:11:29
    根据自己的cuda版本选择相应的mxnet。 例如:cuda9.0环境: pip install mxnet-cu90mkl==1.5.0 其中,‘90’表示cuda版本, ‘1.5.0’表示版本,‘mkl’表示mkl CPU版本: pip install mxnet-mkl==1.3.1 如果需要...
  • MxNet学习:MxNet架构

    2018-11-28 15:59:01
    1 MxNet架构 Runtime Dependency Engine:根据读/写依赖关系调度和执行操作 Storage Allocator:高效地分配和回收主机(CPU)和设备(gpu)上的内存块 Resource Manager:管理全局资源,如随机数生成器和临时空间 ...
  • mxnet编译

    2021-01-19 15:53:56
    基本依赖安装 sudo apt-get upgrade sudo apt-get install -y build-essential git libatlas-base-dev ...cd mxnet git checkout 1.4.0 -b 1.4.0 git submodule update --init 把make文件夹下的config.mk 复制到m
  • 开始mxnet

    2020-08-06 17:40:38
    安装 https://mxnet.apache.org/versions/1.6/ 查找API https://mxnet.apache.org/versions/1.6/api/python/docs/api/autograd/index.html (暂时用这个,后面有个更方便的)
  • 文章目录MXNet学习[4]MXNet Data Iterator1、MXNet Data Iterator(数据迭代器)2、DataBatch2.1、介绍2.2、DataBatch类3、DataDesc3.1、介绍4、DataIter4.1、介绍4.2、DataIter类5、Data iterators:Mxnet中所有...

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 10,015
精华内容 4,006
热门标签
关键字:

mxnet