深度學習計算機視覺MXNET docker環境搭建


       現在計算機視覺領域深度學習已經成為主流,我在美讀研的時候,深度學習並未取得大的突破,當時流行的圖像識別分類器多采用手工設計特征+編碼+SVM(支持向量機)框架下的算法,終於到了2012年(我剛畢業),在ILSVRC上,alexnet的橫空出世,將分類錯誤率從之前的25.7%降到了15.3%,這只是一個5卷積層+2全連接層的卷積神經網絡,卻一下取得了10%的突破,這是深度學習在CV領域的一次翻身仗,自此以后,ImageNet的參賽者幾乎全體轉向了基於卷積神經網絡的深度學習算法。基於此的應用如雨后春筍般一夜之間全冒了出來。深度學習尤其是卷積神經網絡就如同萬能的大殺器,在計算機視覺的各個領域開始發揮作用。

       cuda的應用在這一進程中起到了毋庸置疑的作用,所以想要在這一領域開展工作,使用正確的硬件和計算框架是很重要的,本文提供了一個快速搭建MXNET環境的方案,雖然TensorFlow和Caffe是更加主流,但是MXnet作為Amazon主推的深度學習平台,具有輕量級,高性能等特點,並且支持多種語言,可以說是一個非常具有潛力的框架。

       我的硬件環境是一台GPU服務器,有2塊tesla p100進行GPU運算,對於一般人來說,你的硬件至少需要一個支持cuda的英偉達顯卡,並且安裝了任意linux環境,常規安裝教程很多,但都很繁瑣,由於我是用docker進行部署,所以可以非常快速的進行環境搭建,會用docker並且想省去安裝過程的同學可以參考以下教程。

       前提是你的linux環境中已經安裝了docker,nvidia cuda驅動,NVIDIA docker等,這些步驟在網上有很多的教程,在此不表 

    獲取鏡像

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

 

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

   

      如果鏡像下載速度慢,可以搜一些國內鏡像服務器的地址,例如 docker pull registry.docker-cn.com/mxnet/python:1.3.0_gpu_cu90_mkl

 

       隨后啟動該鏡像:

       

      啟動鏡像

 

 執行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后,即可愉快的進行各種實驗啦~

     

       


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM