點(diǎn)擊上方“小白學(xué)視覺”,選擇加"星標(biāo)"或“置頂”
重磅干貨,第一時(shí)間送達(dá)
入門深度學(xué)習(xí),很多人經(jīng)歷了從入門到放棄的心酸歷程,且千軍萬馬倒在了入門第一道關(guān)卡:環(huán)境配置問題。俗話說,環(huán)境配不對(duì),學(xué)習(xí)兩行淚。如果你正在面臨配置環(huán)境的痛苦,不管你是Windows用戶、Ubuntu用戶還是蘋果死忠粉,這篇文章都是為你量身定制的。接下來就依次講下Windows、Mac和Ubuntu的深度學(xué)習(xí)環(huán)境配置問題。一、Windows系統(tǒng)深度學(xué)習(xí)環(huán)境配置
系統(tǒng):Win10? 64位操作系統(tǒng)
安裝組合:Anaconda+PyTorch(GPU版)+GTX1060開源貢獻(xiàn):伍天舟,內(nèi)蒙古農(nóng)業(yè)大學(xué)
1.1 打開Anaconda Prompt
1、conda create -n pytorch python=3.7.0:創(chuàng)建名為pytorch的虛擬環(huán)境,并為該環(huán)境安裝python=3.7。2、activate pytorch:激活名為pytorch的環(huán)境NVIDIA控制面板-幫助-系統(tǒng)信息-組件
2020年5月19日16:46:31,我更新了顯卡驅(qū)動(dòng),看到我的cuda支持11以內(nèi)的1.3 確定pytorch版本,torchvision版本進(jìn)入pytorch官網(wǎng):https://pytorch.org/get-started/locally/1.4 鏡像中下載對(duì)應(yīng)的安裝包https://mirrors.tuna.tsinghua.edu.cn/anaconda/cloud/pytorch/win-64/接著第一步,在pytorch環(huán)境下進(jìn)行安裝,依次輸入如下指令。然后回到虛擬環(huán)境所在目錄,用conda install anaconda安裝環(huán)境所需的基礎(chǔ)包
from future import print_functionimport torchx = torch.rand(5, 3)print(x)
import torchtorch.cuda.is_available()
如果以上兩段代碼輸出無異常,表明環(huán)境搭建成功。- 用下面命令創(chuàng)建虛擬環(huán)境報(bào)錯(cuò)
conda create -n py37_torch131 python=3.7
【解決方法】https://blog.csdn.net/weixin_42329133/article/details/102640763環(huán)境會(huì)保存在Anaconda目錄下的envs文件夾內(nèi)
- PackagesNotFoundError: The following packages are not available from current channels
https://www.cnblogs.com/hellojiaojiao/p/10790273.html【解決方案】https://mirror.tuna.tsinghua.edu.cn/help/anaconda/cuda歷史版本下載:https://developer.nvidia.com/cuda-toolkit-archive要看NVIDIA的組件,自己的CUDA支持哪個(gè)版本,我是1060顯卡,所以我下的10.0版本的cuda官網(wǎng)沒有我的組合,我滿臉問號(hào)這里我直接(別忘了先進(jìn)入剛創(chuàng)建的環(huán)境)conda install pytorch torchvision cudatoolkit=10.0 -c pytorch
- jupyter note如何進(jìn)入虛擬環(huán)境
python -m ipykernel install --name 虛擬環(huán)境名
1.打開Anaconda Prompt,輸入conda env list 查看現(xiàn)有環(huán)境2.輸入activate name(name是你想切換的環(huán)境)3.conda install ipykernel 安裝必要插件4.python -m ipykernel install --name Name 將環(huán)境添加到Jyputer中(Name是此環(huán)境顯示在Jyputer中的名稱,可自定義)jupyter kernelspec remove 內(nèi)核名稱[Errno 13] Permission denied: ‘/usr/local/share/jupyter’為此,需要添加–user選項(xiàng),將配置文件生成在本賬戶的家目錄下。python -m ipykernel install --user --name py27-caffe-notebook
至此,添加kernel完成。查看已有的kernel:jupyter kernelspec remove kernelname
以上的命令刪除僅僅是配置文件,并沒有卸載相應(yīng)虛擬環(huán)境的ipykernel,因此若要再次安裝相應(yīng)python虛擬環(huán)境的kernel,只需激活虛擬環(huán)境,然后python -m ipykernel install --name kernelname
把文件下載到本地,進(jìn)入該文件的目錄,然后用命令
conda install --offline 包名
二、Mac深度學(xué)習(xí)環(huán)境配置
?
安裝組合:Anaconda+PyTorch(GPU版)
2.1 安裝Anaconda
Anaconda 的安裝有兩種方式,這里僅介紹一種最直觀的- macOS graphical?install。https://www.anaconda.com/products/individual里,Anaconda Installers的位置,選擇Python 3.7 下方的“64-Bit Graphical Installer (442)”。下載好pkg 安裝包后點(diǎn)擊進(jìn)入,按下一步完成安裝即可。默認(rèn)安裝地點(diǎn)為~/opt。想用command line install 的,請(qǐng)自行參考:https://docs.anaconda.com/anaconda/install/mac-os/
2.2 確認(rèn)下載情況
確保安裝的Python 是3.x 版本。在Terminal 輸入彈出網(wǎng)頁(yè),即可進(jìn)入notebook。
在網(wǎng)頁(yè)右上角點(diǎn)擊Quit,或返回Terminal,command + c,退出notebook。
2.2.1 常見問題
如果電腦中下載了多個(gè)Anaconda,運(yùn)行時(shí)可能出現(xiàn)沖突。在Terminal 中輸入如果只能看到一個(gè)Anaconda 版本就沒有問題。如果有多個(gè)則下載包時(shí)有可能
造成一定的沖突。用vim、nano 或其他文本編輯器把舊版本Anaconda 的
2.3 虛擬環(huán)境和包的下載
用conda 去創(chuàng)建虛擬環(huán)境和下載對(duì)應(yīng)的包是很簡(jiǎn)單的一件事。點(diǎn)擊Anaconda-Navigator,可以看到自己下載好的應(yīng)用程序,左上角“Applications?on”應(yīng)該指向的是“base (root)”,左邊點(diǎn)擊“Environments”就可以看到自己建立的虛擬環(huán)境和對(duì)應(yīng)的包了。點(diǎn)擊左下角的Create 即可創(chuàng)建一個(gè)新的虛擬環(huán)境。輸入環(huán)境名稱和python 的版本,點(diǎn)擊create 進(jìn)行創(chuàng)建。之后在Home 頁(yè)面,確保左上角指向的是你剛剛創(chuàng)建的環(huán)境名,在這個(gè)環(huán)境下install jupyter notebook,注意原本裝的notebook 是在base 里的,不可通用。回到Environments 中,可以看到在此環(huán)境中的所有包,左上方選擇All,然后輸入想要下載的包名用command line 完成以上的操作也很簡(jiǎn)潔。這次以Pytorch 為例。在Terminal 中輸入conda create --name env_name
就可以創(chuàng)建一個(gè)虛擬環(huán)境,叫“env_name”。輸入即可看到創(chuàng)建了的所有虛擬環(huán)境,其中打* 的就是當(dāng)前環(huán)境。輸入退出當(dāng)前虛擬環(huán)境,進(jìn)入base。一般情況下Mac 是不支持CUDA 的。進(jìn)入https://pytorch.org/ 可以看到pytorch 官網(wǎng)顯示當(dāng)前設(shè)備應(yīng)該用的下載語(yǔ)句。此情況,我的是conda install pytorch torchvision -c pytorch
復(fù)制下來,粘貼到Terminal 中運(yùn)行就可以開始下載了。之后import 兩個(gè)剛下載的包,確認(rèn)下載完成import torchimport torchvision
print(torch.__version__)print(torchvision.__version__)
國(guó)內(nèi)如果直接用conda 下載,可能會(huì)很慢??梢該Q下載源進(jìn)行加速。換源方法可參考下列資料中的Linux 部分:https://zhuanlan.zhihu.com/p/87123943。conda 下載中常會(huì)出現(xiàn)“Solving environment: failed...”的問題,如果正常創(chuàng)建虛擬環(huán)境,這位問題應(yīng)該就是沒有問題的,如果還發(fā)生,可以再創(chuàng)建一個(gè)虛擬環(huán)境。conda 的社群很大,基本上遇到的問題很有可能有人遇到、有人解答,Google會(huì)是一個(gè)很好的解決辦法。三、Ubuntu深度學(xué)習(xí)環(huán)境配置
?
安裝組合:Anaconda+PyTorch(CPU版)或PyTorch(GPU版)開源貢獻(xiàn):陳信達(dá),華北電力大學(xué)Anaconda和Python版本是對(duì)應(yīng)的,所以需要選擇安裝對(duì)應(yīng)Python2.7版本的還是Python3.7版本或其他版本的,根據(jù)自己的需要下載合適的安裝包。下載鏈接:https://www.anaconda.com/download/#linux點(diǎn)擊下面的64-Bit (x86) Installer (522 MB),下載64位的版本。下載完后的文件名是:Anaconda3-2020.02-Linux-x86_64.sh。cd到Anaconda3-2020.02-Linux-x86_64.sh所在的目錄:執(zhí)行bash Anaconda3-2020.02-Linux-x86_64.sh開始安裝:這里直接回車安裝到默認(rèn)路徑,或者在>>>后輸入自定義路徑等待安裝進(jìn)度條走完,然后出現(xiàn)下面的提示,yes是加入環(huán)境變量,no是不加入環(huán)境變量,這里我們以輸入no為例接下來手動(dòng)加入環(huán)境變量,先cd到~,然后編輯.bashrc文件:sudo vim .bashrc# 區(qū)分anaconda python與系統(tǒng)內(nèi)置pythonalias python3="/usr/bin/python3.5"alias python2="/usr/bin/python2.7"
. /home/cxd/anaconda3/etc/profile.d/conda.sh
輸入source .bashrc來執(zhí)行剛修改的初始化文檔下面輸入conda env list來試試環(huán)境變量是否設(shè)置成功:試試剛剛設(shè)置的使用內(nèi)置python的命令:python2、python3如果到這就結(jié)束的話,大家安裝包的時(shí)候肯定會(huì)無比煎熬~這里需要將anaconda換一下源(加入清華源):然后我們創(chuàng)建一個(gè)名為pytorch的虛擬環(huán)境,發(fā)現(xiàn)報(bào)了下面的錯(cuò)誤:原因是我們沒有清除上次安裝留下來的源,輸入sudo vim ?.condarc,修改該文件的內(nèi)容(記得刪除default那行):然后輸入source .condarc,再次創(chuàng)建虛擬環(huán)境:
3.2 pytorch cpu版本安裝
打開pytorch官網(wǎng):https://pytorch.org/激活剛剛創(chuàng)建的虛擬環(huán)境:conda activate pytorch在安裝之前先添加下面這個(gè)源:conda config --add channels https://mirrors.tuna.tsinghua.edu.cn/anaconda/cloud/pytorch
conda install pytorch torchvision cpuonly -c pytorch
import torchprint(torch.__version__)
3.3?pytorch-gpu安裝
3.3.1 GPU驅(qū)動(dòng)安裝
執(zhí)行命令:' ubuntu-drivers devices'== /sys/devices/pci0000:00/0000:00:01.0/0000:01:00.0 ==modalias : pci:v000010DEd00001C8Dsv00001028sd0000086Fbc03sc02i00vendor : NVIDIA Corporationmodel : GP107M [GeForce GTX 1050 Mobile]driver : nvidia-driver-390 - distro non-freedriver : nvidia-driver-435 - distro non-freedriver : nvidia-driver-440 - distro non-free recommendeddriver : xserver-xorg-video-nouveau - distro free builtin
== /sys/devices/pci0000:00/0000:00:14.3 ==modalias : pci:v00008086d0000A370sv00008086sd000042A4bc02sc80i00vendor : Intel Corporationmodel : Wireless-AC 9560 [Jefferson Peak]manual_install: Truedriver : backport-iwlwifi-dkms - distro free
大家可以看到,這里有個(gè)設(shè)備是GTX1050。推薦安裝驅(qū)動(dòng)是440。sudo ubuntu-drivers autoinstall
sudo apt install nvidia-440
3.3.2 安裝cuda
cuda安裝需要對(duì)應(yīng)合適的顯卡驅(qū)動(dòng)。下面是驅(qū)動(dòng)和cuda的版本對(duì)應(yīng)關(guān)系Table 1. CUDA Toolkit and Compatible Driver VersionsCUDA Toolkit Linux x86_64 Driver Version Windows x86_64 Driver VersionCUDA 10.2.89 >= 440.33 >= 441.22CUDA 10.1 (10.1.105 general release, and updates) >= 418.39 >= 418.96CUDA 10.0.130 >= 410.48 >= 411.31CUDA 9.2 (9.2.148 Update 1) >= 396.37 >= 398.26CUDA 9.2 (9.2.88) >= 396.26 >= 397.44CUDA 9.1 (9.1.85) >= 390.46 >= 391.29CUDA 9.0 (9.0.76) >= 384.81 >= 385.54CUDA 8.0 (8.0.61 GA2) >= 375.26 >= 376.51CUDA 8.0 (8.0.44) >= 367.48 >= 369.30CUDA 7.5 (7.5.16) >= 352.31 >= 353.66CUDA 7.0 (7.0.28) >= 346.46 >= 347.62
cuda下載鏈接:http://suo.im/6dY8rLInstaller Type選擇第一第二個(gè)都可。但是要在獲得cuda文件后先檢測(cè)gcc版本。下面以第一個(gè)runfile(local)安裝方式為例。linux一般會(huì)自帶了gcc,我們先檢測(cè)一下自己系統(tǒng)的gcc版本而cuda的gcc依賴版本在官方文檔的安裝指南上會(huì)給出如果版本和cuda依賴gcc不對(duì)應(yīng),就安裝cuda需要的版本sudo apt-get install gcc-7.0sudo apt-get install g++-7.0
sudo update-alternatives --install /usr/bin/gcc gcc /usr/bin/gcc-7 50sudo update-alternatives --install /usr/bin/g++ g++ /usr/bin/g++-7 50
sudo update-alternatives --config gcc
選擇 路徑 優(yōu)先級(jí) 狀態(tài)------------------------------------------------------------* 0 /usr/bin/gcc-9 50 自動(dòng)模式 1 /usr/bin/g++-9 50 手動(dòng)模式 2 /usr/bin/gcc-7 50 手動(dòng)模式
sudo sh cuda_你的版本_linux.run
export PATH=/usr/local/cuda-10.2/bin${PATH:+:$PATH}} export LD_LIBRARY_PATH=/usr/local/cuda-10.2/lib64${LD_LIBRARY_PATH:+:${LD_LIBRARY_PATH}}
3.3.3?安裝cudnn
https://developer.nvidia.com/cudnn ? ?選擇對(duì)應(yīng)cuda的版本即可然后將cudnn解壓后的include和lib64文件夾復(fù)制到cuda中sudo cp cuda/include/cudnn.h /usr/local/cuda-10.2/include #解壓后的文件夾名字為cuda-10.2 sudo cp cuda/lib64/libcudnn* /usr/local/cuda-10.2/lib64sudo chmod a+r /usr/local/cuda-10.2/include/cudnn.h /usr/local/cuda-10.2/lib64/libcudnn*
3.3.4 安裝pytorch-gpu
# 選擇自己對(duì)應(yīng)的cuda版本conda install pytorch torchvision cudatoolkit=10.2
pip install torch torchvision -i https://pypi.mirrors.ustc.edu.cn/simple
所有的深度學(xué)習(xí)環(huán)境安裝指南到這里就結(jié)束了,希望能解決你面臨的環(huán)境配置難題。關(guān)于實(shí)踐項(xiàng)目,可以結(jié)合阿里天池的學(xué)習(xí)賽進(jìn)行動(dòng)手實(shí)踐。
數(shù)據(jù)挖掘?qū)W習(xí)賽(進(jìn)行中,5832人參與)https://tianchi.aliyun.com/competition/entrance/231784/forumcv實(shí)踐學(xué)習(xí)賽(進(jìn)行中,1933參與)https://tianchi.aliyun.com/competition/entrance/531795/forumnlp實(shí)踐學(xué)習(xí)賽(進(jìn)行中,573人參與)https://tianchi.aliyun.com/competition/entrance/531810/forum
小白團(tuán)隊(duì)出品:零基礎(chǔ)精通語(yǔ)義分割↓↓↓

下載1:OpenCV-Contrib擴(kuò)展模塊中文版教程
在「小白學(xué)視覺」公眾號(hào)后臺(tái)回復(fù):擴(kuò)展模塊中文教程,即可下載全網(wǎng)第一份OpenCV擴(kuò)展模塊教程中文版,涵蓋擴(kuò)展模塊安裝、SFM算法、立體視覺、目標(biāo)跟蹤、生物視覺、超分辨率處理等二十多章內(nèi)容。下載2:Python視覺實(shí)戰(zhàn)項(xiàng)目52講在「小白學(xué)視覺」公眾號(hào)后臺(tái)回復(fù):Python視覺實(shí)戰(zhàn)項(xiàng)目,即可下載包括圖像分割、口罩檢測(cè)、車道線檢測(cè)、車輛計(jì)數(shù)、添加眼線、車牌識(shí)別、字符識(shí)別、情緒檢測(cè)、文本內(nèi)容提取、面部識(shí)別等31個(gè)視覺實(shí)戰(zhàn)項(xiàng)目,助力快速學(xué)校計(jì)算機(jī)視覺。下載3:OpenCV實(shí)戰(zhàn)項(xiàng)目20講在「小白學(xué)視覺」公眾號(hào)后臺(tái)回復(fù):OpenCV實(shí)戰(zhàn)項(xiàng)目20講,即可下載含有20個(gè)基于OpenCV實(shí)現(xiàn)20個(gè)實(shí)戰(zhàn)項(xiàng)目,實(shí)現(xiàn)OpenCV學(xué)習(xí)進(jìn)階。交流群
歡迎加入公眾號(hào)讀者群一起和同行交流,目前有SLAM、三維視覺、傳感器、自動(dòng)駕駛、計(jì)算攝影、檢測(cè)、分割、識(shí)別、醫(yī)學(xué)影像、GAN、算法競(jìng)賽等微信群(以后會(huì)逐漸細(xì)分),請(qǐng)掃描下面微信號(hào)加群,備注:”昵稱+學(xué)校/公司+研究方向“,例如:”張三?+?上海交大?+?視覺SLAM“。請(qǐng)按照格式備注,否則不予通過。添加成功后會(huì)根據(jù)研究方向邀請(qǐng)進(jìn)入相關(guān)微信群。請(qǐng)勿在群內(nèi)發(fā)送廣告,否則會(huì)請(qǐng)出群,謝謝理解~