文章出處:深度學習筆記11:利用numpy搭建一個卷積神經網路免費視頻課程:Hellobi Live | 從數據分析師到機器學習(深度學習)工程師的進階之路
文章出處:深度學習筆記11:利用numpy搭建一個卷積神經網路
深度學習大多用來處理圖片、語言、視頻和文本等大量非結構化數據,因而計算資源是進行深度學習開發的必要條件,想依靠windows單機玩深度學習恐怕不現實,基於linux和 gpu伺服器的深度學習開發環境配置就顯得尤為重要了。本節筆記就先學習下如何在 ubuntu16.04 系統下配置深度學習開發環境。
使用 xshell 工具創建與linux伺服器的連接,設置好主機地址和埠號,輸入登錄名和密碼連上伺服器。
先查看本機當前顯卡信息:
ubuntu-drivers devices
依次執行下述命令:
sudo apt-get purge nvidia*sudo add-apt-repository ppa:graphics-drivers/ppasudo apt-get update sudo apt-get install nvidia-384 nvidia-settings
sudo apt-get purge nvidia*
之後重啟伺服器使更新生效
sudo shutdown -r now
重新連接伺服器後查看當前的生效的顯卡驅動
nvidia-smi
以CUDA8為例進行安裝,CUDA是NVIDIA推出的用於自家GPU的並行計算框架,也就是說CUDA只能在NVIDIA的GPU上運行,而且只有當要解決的計算問題是可以大量並行計算的時候才能發揮CUDA的作用。安裝CUDA的話首先必須去 Nvidia 官網下載對應的CUDA安裝包:
選擇 cuda-repo-ubuntu1604-8-0-local-ga2_8.0.61-1_amd64.deb 進行下載:
然後運行下列命令進行安裝:
sudo dpkg -i cuda-repo-ubuntu1604-8-0-local-cublas-performance-update_8.0.61-1_amd64.debsudo apt-get updatesudo apt-get upgrade cuda
sudo dpkg -i cuda-repo-ubuntu1604-8-0-local-cublas-performance-update_8.0.61-1_amd64.deb
安裝完成之後在 ~/.bashrc 中設置CUDA的環境變數:
export PATH=/usr/local/cuda/bin${PATH:+:${PATH}}export LD_LIBRARY_PATH=/usr/local/cuda/lib64${LD_LIBRARY_PATH:+:${LD_LIBRARY_PATH}}export CUDA_HOME=/usr/local/cuda
export PATH=/usr/local/cuda/bin${PATH:+:${PATH}}
完了之後運行 source ~/.bashrc 生效。再次運行 nvidia-smi 查看驅動信息如若報驅動不匹配的錯誤:
Failed to initialize NVML: Driver/library version mismatch
這個問題出現的原因是kernel mod 的 Nvidia driver 的版本沒有更新,一般情況下,重啟機器就能夠解決,如果因為某些原因不能夠重啟的話,也有辦法reload kernel mod。依次執行下述命令即可解決:
lsmod | grep nvidia
sudo rmmod nvidia_drmsudo rmmod nvidia_modesetsudo rmmod nvidia_uvmsudo rmmod nvidiasudo lsof /dev/nvidia*lsmod | grep nvidia
sudo rmmod nvidia_drm
最後再次輸入 nvidia-smi即可查看到當前的驅動信息。
cuDNN(CUDA Deep Neural Network library)是NVIDIA打造的針對深度神經網路的加速庫,是一個用於深層神經網路的GPU加速庫。如果你要用GPU訓練模型,cuDNN不是必須的,但是一般會採用這個加速庫。CUDA8.0的最佳匹配的cuDNN版本為6.0,所以我們到nvidia官網下載cuDNN6.0即可。但目前下載cuDNN需要註冊nvidia賬號才可下載,可能需要多費些周折。
下載完成後按照下列命令進行解壓縮和安裝:
tar -zxvf cudnn-8.0-linux-x64-v6.0.tgzsudo cp cuda/include/cudnn.h /usr/local/cuda/include/sudo cp cuda/lib64/libcudnn* /usr/local/cuda/lib64/ -d
tar -zxvf cudnn-8.0-linux-x64-v6.0.tgz
下載anaconda 的 linux版本:
wget https://repo.anaconda.com/archive/Anaconda3-5.2.0-Linux-x86_64.sh
執行bash命令進行安裝:
bash Anaconda3-5.1.0-Linux-x86_64.sh
安裝完成後創建 anaconda 虛擬環境:
conda install -n 虛擬環境名稱
啟動虛擬環境:
source activate 虛擬環境名稱
退出虛擬環境:
source deactivate 虛擬環境名稱
安裝 tensorflow:
安裝keras:
再安裝一些其他的常用庫即可搭建好深度學習開發環境。
註:本深度學習筆記系作者學習 Andrew NG 的 deeplearningai 五門課程所記筆記,其中代碼為每門課的課後assignments作業整理而成。
參考資料:
http://www.52nlp.cn/%E6%B7%B1%E5%BA%A6%E5%AD%A6%E4%B9%A0%E4%B8%BB%E6%9C%BA%E7%8E%AF%E5%A2%83%E9%85%8D%E7%BD%AE-ubuntu-16-04-nvidia-gtx-1080-cuda-8
往期精彩:
深度學習筆記14:CNN經典論文研讀之Le-Net5及其Tensorflow實現
深度學習筆記13:Tensorflow實戰之手寫mnist手寫數字識別
深度學習筆記12:卷積神經網路的Tensorflow實現
深度學習筆記11:利用numpy搭建一個卷積神經網路
深度學習筆記10:三維卷積、池化與全連接
深度學習筆記9:卷積神經網路(CNN)入門
深度學習筆記8:利用Tensorflow搭建神經網路
深度學習筆記7:Tensorflow入門
深度學習筆記6:神經網路優化演算法之從SGD到Adam
數據分析入行半年之經驗、感悟與思考
談談過擬合
一個統計方向畢業生的2017年數據科學從業之路總結
推薦閱讀: