深度學習計算機視覺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後,便可愉快的進行各類實驗啦~

相關文章
相關標籤/搜索