距離寫上一個部落格已經過去很久了,註冊的時候我還是個大三學生抱著windows系統的visual studio在OPENCV等等複雜元件下面瑟瑟發抖,一不小心就擔心hpp找不到了,依賴庫沒了,或者安裝了一個新的東西然後把整個系統玩崩了。(相信這是大多數用自己電腦windows開發者的心聲吧)
研究生之後開始接觸神經網路,自己的電腦肯定是不能用了實驗室提供了伺服器,在linux上面做開發,從一開始只會pip install tensorflow、到處找依賴包,到後面終於學會conda create走了很多彎路,走到現在也算是給自己一個記錄吧,還有向看到部落格的人傳教一下Anaconda大法好.jpg
Anaconda到底是什麼?
這個問題其實很多部落格都已經說了,我自己也是拿出來用沒有很認真的對他去做定義,對我來說就是一個python環境管理軟體,他封裝了建立python下各種各樣的依賴包,當使用者需要使用的時候就從anaconda的庫中調取出來安裝在指定的anaconda環境中,推薦配合清華的映象源(https://mirror.tuna.tsinghua.edu.cn/help/anaconda/)一起使用。
Anaconda解決的問題:
- pip帶來的不同python包之間的衝突,conda在安裝的時候會檢測已有包的版本與需要安裝的版本是否匹配、以及相關包更新後的版本與現有的其他包是否會造成衝突,而pip不會。
- 使用Anaconda可以在一個系統上建立多個環境,而pip只能在原生系統上修改。如果我們兩份程式碼一個要求pytorch=0.4.0,另一個要求pytorch=1.0.1,那麼單純使用pip只能選擇刪去現有的pytorch去安裝另一個,或者重新開一個伺服器。但使用Anaconda我全都要.jpg,使用source activate 【環境名】的命令即可在不同環境之間輕鬆切換。
- 根據python版本的不同,pip的更新可能會引入問題,而conda命令比pip更加穩定(這也是我喜歡conda的主要原因之一。在python2.7下使用pip,我不僅一次遇見過提示我更新pip,更新了之後因為更新導致pip檔案中__main__等引數需要更新而不能正常使用的問題,這時候需要回退pip版本或者修改pip對應python檔案中的引數。當一個系統中python2.7和python3.6一起使用的時候那個感覺真是更加酸爽= =
總的來說,一個好的網路或者是專案開發需要有穩定可管理的環境支援,而Anaconda正是提供了這樣一個功能。
而且安裝還很方便!那為什麼不用天下無敵的Anaconda呢!
Anaconda的安裝(linux)
Anaconda在linux下面的安裝非常簡單,基本上下載下來sh一下改改邊境變數ok fine弄好了,這裡只總結關鍵步驟。
1.下載Anaconda_xxxxxx.sh,我使用的是Anaconda3。可以直接從清華映象下載,不過版本更新比起官網可能稍有延遲。下載連結:https://mirrors.tuna.tsinghua.edu.cn/anaconda/archive/
搜尋最新日期的下載即可。
2.使用命令安裝Anaconda,反正yes下去就對了,在過程中他會問你Anaconda home安裝在哪裡,一般預設是在/home/comptername/Anaconda3,如果需要自己更改的話記住更改後的路徑。
sh Anaconda3-2019.07-Linux-x86_64.sh
3.然後Anaconda已經安裝好了,但是使用conda命令的時候會告訴你找不到命令,這是因為還沒有寫入到環境變數中。
更改/etc/profile檔案(使用vi vim gedit還是 subl自己高興),在裡面加入:
#Anaconda
export PATH=$PATH:/home/computername/anaconda3/bin
4.Anaconda可以正式使用了,如果還存在問題看看是不是步驟3路徑沒寫對。
使用Anaconda配置Pytorch_yolo3環境
程式碼github:https://github.com/azikk/PyTorch-YOLOv3
1.生成新的環境,取名叫做yolo3,使用python 3.6版本,並進入
conda create -n yolo3 python=3.6
source activate yolo3
2.安裝pytorch,這裡要求pytorch版本是1.0以上,我的電腦cuda版本是9.0。使用1.0.1是因為清華源中沒找到更高版本的,如果制定更高版本就會去官方源下載了,太麻煩,就直接使用1.0.1
conda install pytorch=1.0.1 torchvision cudatoolkit=9.0
3.安裝requirement.txt中寫出的其他依賴,其中tqdm的包在官方源和清華源中都沒有,要使用-c conda-forge從該倉庫中下載。
conda install -c conda-forge tqdm
4.安裝所有依賴後,就可以使用程式碼了。