深度学习计算机视觉MXNET docker环境搭建

       如今计算机视觉领域深度学习已经成为主流,我在美读研的时候,深度学习并未取得大的突破,当时流行的图像识别分类器多采用手工设计特征+编码+SVM(支持向量机)框架下的算法,终于到了2012年(我刚毕业),在ILSVRC上,alexnet的横空出世,将分类错误率从以前的25.7%降到了15.3%,这只是一个5卷积层+2全链接层的卷积神经网络,却一下取得了10%的突破,这是深度学习在CV领域的一次翻身仗,自此之后,ImageNet的参赛者几乎全体转向了基于卷积神经网络的深度学习算法。基于此的应用如雨后春笋般一晚上之间全冒了出来。深度学习尤为是卷积神经网络就如同万能的大杀器,在计算机视觉的各个领域开始发挥做用。python

       cuda的应用在这一进程中起到了毋庸置疑的做用,因此想要在这一领域开展工做,使用正确的硬件和计算框架是很重要的,本文提供了一个快速搭建MXNET环境的方案,虽然TensorFlow和Caffe是更加主流,可是MXnet做为Amazon主推的深度学习平台,具备轻量级,高性能等特色,而且支持多种语言,能够说是一个很是具备潜力的框架。linux

       个人硬件环境是一台GPU服务器,有2块tesla p100进行GPU运算,对于通常人来讲,你的硬件至少须要一个支持cuda的英伟达显卡,而且安装了任意linux环境,常规安装教程不少,但都很繁琐,因为我是用docker进行部署,因此能够很是快速的进行环境搭建,会用docker而且想省去安装过程的同窗能够参考如下教程。算法

       前提是你的linux环境中已经安装了docker,nvidia cuda驱动,NVIDIA docker等,这些步骤在网上有不少的教程,在此不表 docker

    获取镜像

      https://hub.docker.com/search/?isAutomated=0&isOfficial=0&page=1&pullCount=0&q=mxnet&starCount=0   在docker官方取得你须要镜像的信息,并执行docker pull命令vim

 

      docker pull mxnet/python:你的版本tag。     浏览器

   

      若是镜像下载速度慢,能够搜一些国内镜像服务器的地址,例如 docker pull registry.docker-cn.com/mxnet/python:1.3.0_gpu_cu90_mklbash

 

       随后启动该镜像:服务器

       

      启动镜像网络

 

 执行docker ps -a ,获取你刚pull的镜像的 id,即下文命令 commit后面的字段
框架

    给你的镜像取一个名字

    docker commit 90b97b96394a example:0.1

    随后启动该镜像,若是须要进行外部访问,好比启动一个jupyter在浏览器中进行编码,须要配置端口映射,所有命令以下:

    docker run -itd --runtime=nvidia  --name=example -p 19999:8888 -p 16007:6006 example:0.2 /bin/bash

    这时镜像应该已经启动,使用docker ps -a 指令查看容器运行状态,若是正常运行,便可进入容器。

 

    执行命令    docker exec -it example bash 进入容器,此时已经配好了mxnet环境,进入python,随便敲几行代码进行测试。

    我在实际使用过程当中,发现该容器缺了不少基础组件,如python-dev ,matplotlib等,甚至连vi/vim都没有,因此要安装jupyter的话,注意添加相关依赖,若是报错缺包,安装这些包便可。 jupyter安装教程也不少,在此不表。

    启动jupyter后,便可愉快的进行各类实验啦~

相关文章
相关标签/搜索