B站:馬上就更?。?!_bilibili
CSDN:手把手帶你入門深度學(xué)習(xí)(一):保姆級Anaconda和PyTorch環(huán)境配置指南_百年后封筆-CSDN博客
Github:封筆
公眾號:百年后封筆
一、 前言和準備工作
你好,我是封筆!
如今深度學(xué)習(xí)技術(shù)的不斷演進,我們的生活發(fā)生著翻天覆地的變化,無論是計算機視覺、自然語言處理還是推薦技術(shù)都有著不同程度的革新。隨著工具和知識的不斷完善,我們學(xué)習(xí)深度學(xué)習(xí)的門檻越來越低,對于想快速入門的同學(xué),往往需要搜集各種資料,很難找到一個完善的入門教程,這里為了滿足初入深度學(xué)習(xí)的同學(xué)的需求,特別記錄一下深度學(xué)習(xí)入門的系列文章吧,說到深度學(xué)習(xí)框架,便于上手且學(xué)術(shù)界用的最多的就是PyTorch啦,要配置PyTorch環(huán)境最好就是先安裝好python環(huán)境和Anaconda包管理工具,本文就為大家介紹深度學(xué)習(xí)——Python和Anaconda環(huán)境配置的全流程,手把手教大家完成Python深度學(xué)習(xí)環(huán)境配置!
1.1 python、anaconda和pytorch的關(guān)系
相信初入深度學(xué)習(xí)的朋友們可能對于python、anaconda還有pytorch這一系列的名詞感到迷惑,不知道到底應(yīng)該先安裝哪一個,每一個又分別有什么用。這里,我大概介紹一些這三者都是什么東西,以及他們各自的作用,相信了解了這三者的關(guān)系之后,我們自己在配置的時候就更加得心應(yīng)手啦!先來看一下他們?nèi)齻€都是啥玩意:
-
Python是一種廣泛使用的
編程語言
,在許多領(lǐng)域都有應(yīng)用。它具有簡潔的語法,易于學(xué)習(xí),并且有大量的第三方庫可以使用。 -
Anaconda是一個Python的
包和環(huán)境管理軟件
,提供了許多用于數(shù)據(jù)科學(xué),機器學(xué)習(xí)和科學(xué)計算的庫和工具。它還提供了一個軟件包管理器conda,可以輕松安裝和管理Python庫和其他軟件包。 -
PyTorch是一款
開源深度學(xué)習(xí)框架
,基于Python開發(fā)。它提供了大量的功能和工具,可以幫助用戶訓(xùn)練和開發(fā)神經(jīng)網(wǎng)絡(luò)模型。 PyTorch可以通過pip或conda進行安裝,因此它與Anaconda和Python之間有著密切的關(guān)系。
所以通過上面的解釋,聯(lián)合起來就是說:
首先,我們需要配置好Python的語言環(huán)境,作為我們基本編程使用;但是呢,實際開發(fā)中,我們往往需要對不同的工程需要安裝不同的第三方庫,A項目的幾個包和B項目的包的版本可能是沖突的,那這就可能需要反復(fù)改環(huán)境中的包版本,這豈不是很麻煩?這時候就需要Anaconda,來幫助我們創(chuàng)建不同的虛擬環(huán)境,各個環(huán)境之間你可以配置和項目對應(yīng)的包和版本,這樣就不會沖突,也顯得非常的優(yōu)雅。那么最后的pytorch呢,他其實是依賴一些其他第三方庫的框架,當然,它也可以算是一個第三方庫,可以認為他的作用是專門用來做深度學(xué)習(xí)的框架,因此我們一般是專門為他創(chuàng)建一個虛擬環(huán)境,是不是很牌面,對沒錯。
二、 Anconda安裝
很多同學(xué)可能比較迷惑,不是說要先配置python環(huán)境嗎,這里怎么一上來就是anaconda,其實不然,anaconda本身安裝好就會自帶一個base環(huán)境
,里面是最新的python解釋器和相關(guān)的包管理工具等,所以我們完全不需要單獨安裝python,而如果你只是簡單使用python殺殺雞,那么也不需要anaconda這個牛刀,hhh~。
這里我們主要按照windows下anaconda環(huán)境的配置方法來演示,linux和mac上的配置其實大同小異。
廢話不多說,開整!
2.1 安裝 anaconda
- 首先去anaconda官網(wǎng)下載安裝包
一般下載起來還是非常快的,如果覺得下載速度比較慢的話,那么也可以去清華源瞧瞧,如下所示,選擇最新的且和自己電腦所適配的版本就行,Windows這邊是Anaconda3-2022.10-Windows-x86_64.exe,如果你是Mac的話,那你選擇上面的Anaconda3-2022.10-MacOSX-x86_64.pkg就ok。
- 打開剛剛下載的安裝包,然后一直Next就ok啦,需要主要按照要求一步步進行安裝即可,一直next就行,如下所示
然后就是安裝過程了,這里我就不繼續(xù)啦,大家等待安裝就ok啦~ 順手可以收藏一哈這篇文章呀!
- 檢查anaconda是否安裝成功
按win
+ r
鍵,輸入cmd
,打開cmd
輸入conda -V
,一般會有兩種情況,下面這種就是安裝好了的。
如果報錯了,那么需要你將anaconda的安裝路徑先找到,比如,是在C:\Users\xxx\anaconda3
,那么接著你就需要在你的系統(tǒng)環(huán)境變量里面,把下面幾個路徑加入到path
里面,也就是把anaconda的bin
和Scripts
路徑加入到環(huán)境變量里面去,如下:
C:\Users\xxx\anaconda3\bin
C:\Users\xxx\anaconda3\Scripts
C:\Users\xxx\anaconda3
操作完之后,再檢驗一下conda有沒有安裝好就行了,一般出問題就是環(huán)境變量沒加入進去
,其他沒啥問題。
2.2 更改pip源和anaconda源
在我們安裝包的過程中經(jīng)常會遇到網(wǎng)絡(luò)不佳或者下載緩慢的問題,這個時候就需要配置一下pip源和anaconda源,下面給出pip源和anaconda源的配置方法:
2.2.1 配置pip源
為了解決安裝相關(guān)依賴包,國內(nèi)下載python非常慢的問題,我們需要先配置一下pip鏡像源,具體做法如下:
- 在
C:\Users\xxx
中創(chuàng)建一個名為pip
的文件夾,然后在里面創(chuàng)建一個pip.ini
文件,注意后續(xù)需要修改這個文件內(nèi)容,因此可以先把名字改成pip.txt
,后續(xù)再改成pip.ini
- 修改
pip.ini
文件內(nèi)容,然后保存就可以啦!就是這么簡單~
[global]
index-url = https://pypi.tuna.tsinghua.edu.cn/simple
當然你也可以使用下面的幾種源來替代上面pip.ini
文件中的index-url
的值,如下:
- 清華大學(xué) :https://pypi.tuna.tsinghua.edu.cn/simple/
- 阿里云:http://mirrors.aliyun.com/pypi/simple/
- 中國科學(xué)技術(shù)大學(xué) :http://pypi.mirrors.ustc.edu.cn/simple/
2.2.2 配置anaconda源
anconda源的配置方法如下:
- 在
C:\Users\xxx
中找到一個叫做.condarc
的文件, 如果沒有那就創(chuàng)一個!
- 然后右鍵用記事本或者vscode打開他!把下面這段話粘到這個文件中
channels:
- defaults
show_channel_urls: true
default_channels:
- http://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/main
- http://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/r
- http://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/msys2
custom_channels:
conda-forge: http://mirrors.tuna.tsinghua.edu.cn/anaconda/cloud
msys2: http://mirrors.tuna.tsinghua.edu.cn/anaconda/cloud
bioconda: http://mirrors.tuna.tsinghua.edu.cn/anaconda/cloud
menpo: http://mirrors.tuna.tsinghua.edu.cn/anaconda/cloud
pytorch: http://mirrors.tuna.tsinghua.edu.cn/anaconda/cloud
simpleitk: http://mirrors.tuna.tsinghua.edu.cn/anaconda/cloud
如果你不清楚的話,也可以參考這個清華源的官方教程或者評論給我!官方教程中地址可能是https開頭的,但實際可能會出錯,那么你把https
改成http
就ok了,這里給大家的直接是http
~
2.3 創(chuàng)建虛擬環(huán)境
好了,萬事俱備!我們終于可以絲滑地地針對不同的項目需要創(chuàng)建自己的虛擬環(huán)境,在虛擬環(huán)境中安裝不同的python版本和第三方庫,廢話不多說,開干!
- 先看看咱們都有哪些虛擬環(huán)境
還是先打開cmd,輸入conda env list
,如下圖所示,可以看出我們有不少虛擬環(huán)境,最基本的就是base環(huán)境,其他是我之前創(chuàng)建的。前面是環(huán)境名,后面是對應(yīng)的環(huán)境相關(guān)的依賴和包的路徑。
- 創(chuàng)一個虛擬環(huán)境
接著我們輸入下面的命令,創(chuàng)建一個python版本為3.9
,名字叫做my_env
的虛擬環(huán)境,如下所示:
conda create -n my_env python=3.9
輸入y
繼續(xù)下一步,他就會火速安裝一些包,然后看到下面的就ok了
- 激活虛擬環(huán)境看看
好了你已經(jīng)擁有了自己的虛擬環(huán)境,下面我們看看里面有什么東西呢?以及如何用你虛擬環(huán)境的python解釋器來運行python代碼呢?
首先,還是打開cmd,使用activate my_env
或 conda activate my_env
激活你的虛擬環(huán)境,你就可以看到命令行前面有一個(my_env),說明你已經(jīng)進來了。然后輸入conda list,就可以看到你這個虛擬環(huán)境里面的包和版本號
這里淺淺測試一下python吧,先在cmd
中輸入python
,進入python終端,然后輸入下面的代碼,就會產(chǎn)生魔法,發(fā)射愛心!
print('\n'.join([''.join([('Love'[(x-y) % len('Love')] if ((x*0.05)**2+(y*0.1)**2-1)**3-(x*0.05)**2*(y*0.1)**3 <= 0 else ' ') for x in range(-30, 30)]) for y in range(30, -30, -1)]))
當然想退出的話,輸入exit()
就可以啦。
2.4 常用conda命令
下面羅列一些常用的conda命令,供你參考使用
# 建立新環(huán)境
conda create -n new env_name python=3.8
# conda初始化
conda init
# 激活虛擬環(huán)境
conda activate env_name 或者 activate env_name
# 查看虛擬環(huán)境
conda env list
# 刪除虛擬環(huán)境
conda remove -n env_name --all
三、 PyTorch安裝
好了現(xiàn)在到了環(huán)境配置的最后一個階段啦,感謝你的堅持!
深度學(xué)習(xí)研究至今,已經(jīng)有很多框架供我們使用,其實說到底,深度學(xué)習(xí)框架我們可以認為是一個煉丹的爐子,別人已經(jīng)把爐子給我們造好了,我們只需要按照步驟使用爐子煉丹就行了。目前比較主流的深度學(xué)習(xí)框架包括:PyTorch、Tensorflow、Caffe等等。當然為了完成端側(cè)模型開發(fā)部署的需求,例如MNN、TNN等端側(cè)框架也十分常用。科研中使用PyTorch更多一些,因此我們這里還是按照PyTorch的安裝來作為實例吧,如果大家有別的需求也可以留言告訴我,可以出番外篇hhh~
配置Pytorch環(huán)境其實也是分為兩步的,根據(jù)我們自身算力設(shè)備的限制,會有所不同,主要分為CPU和GPU版本,GPU主要是針對英偉達顯卡而言的,安裝起來相對麻煩一些,cpu版本可以用來做一些測試,在訓(xùn)練時相比于gpu版本缺少了并行加速,從而速度會慢很多。如何判斷自己是否有英偉達顯卡呢?打開任務(wù)管理器,點擊GPU,如果出現(xiàn)了紅框中的字樣,那么很幸運,你是尊貴的顯卡擁有者,可以安裝gpu版本的PyTorch。
不過如果像下圖一樣,你沒有顯卡,只有一個集成顯卡,也不要慌,我們還有cpu版本的PyTorch,如果你可以忍受在模型訓(xùn)練時風(fēng)扇嗡嗡作響的聲音,以及無窮無盡的訓(xùn)練進度的話,那也完全沒問題哈哈哈,或者說你只是想跑一個代碼的測試,那cpu也完全ok的。
廢話不多說,開整!
3.1 安裝 CPU版本PyTorch
3.1.1 快速安裝
cpu版本的安裝很簡單呀,
-
首先我們先去PyTorch的官網(wǎng)瞧瞧:
-
選擇
windows
,python
和cpu
版本就可以,我們可以得到藍色的命令,看到了嗎!
conda install pytorch torchvision torchaudio cpuonly -c pytorch
這段命令要運行在哪里呢,其實只需要先在cmd中激活我們的第二步用Anaconda創(chuàng)建的my_env這個虛擬環(huán)境就ok,然后再輸入上述的命令即可,如下所示:
processd
輸入y
即可耐心等待自動安裝啦~
- 驗證安裝是否成功
我們可以在安裝好之后的cmd中,輸入python
,然后輸入紅色框中的兩段代碼,第一段是導(dǎo)入torch這個包,然后創(chuàng)建一個5*3的tensor向量并打印出來;第二段是檢查gpu是否可用,cpu版本的gpu肯定是不可用的(總不能無中生有吧哈哈哈):
import torch
x = torch.rand(5, 3)
print(x)
import torch
torch.cuda.is_available()
如果你出現(xiàn)了和上圖類似的結(jié)果,沒有出現(xiàn)error
,那么恭喜你,安裝成功啦,你已經(jīng)可以去去跑很多別人預(yù)訓(xùn)練好的模型和代碼啦~
3.1.2 按照指定版本安裝(進階)
很多時候我們需要去按照項目的要求去安裝PyTorch的版本,這時候一般有兩種:
- 按照項目的requirement.txt進行安裝
例如我們需要配置目標檢測的yolov5的環(huán)境,先下載yolov5項目,然后注意下他里面的requirements.txt
,如下圖所示。
我們進入到y(tǒng)olov5的文件夾中,然后打開cmd,激活虛擬環(huán)境,然后輸入pip install -r requirements.txt
,如下圖所示,即可按項目要求安裝。
- 自行選擇需要的版本安裝
這個自由度更高,當你對自己的版本需求很明確的時候,你可以直接去pytorch歷史版本中尋找自己要的包,例如:你的平臺是linux或者Windows,你要用pip安裝你的包,并且想安裝cpu版本的pytorch,版本為1.8.1,那你可以直接復(fù)制其中的pip命令
,如下所示:
pip install torch==1.8.1+cpu torchvision==0.9.1+cpu torchaudio==0.8.1 -f https://download.pytorch.org/whl/torch_stable.html
當然,你也可以使用conda安裝,或者按照平臺,按照包的版本,cpu或者gpu來選擇不同的指令,這塊適合于對環(huán)境需求非常了解的同學(xué)!初入學(xué)習(xí)的同學(xué),可以先略過哈哈,當你經(jīng)受了環(huán)境配置的毒打,應(yīng)該會更加明確自己的需求。
3.2 安裝 GPU版本PyTorch
這塊的話,主要涉及到三部分:文章來源:http://www.zghlxwxcb.cn/news/detail-714678.html
- 一個是顯卡驅(qū)動的安裝,也就是
cuda
- 一個是
cudnn
的安裝和cudatoolkit的安裝 - 還有就是
gpu版本PyTorch
的安裝了,這個和cpu版本類似,選命令去裝就ok。
這塊可以參考我之前的一篇文章,當時用到的是nvidia的3080顯卡,在windows平臺上配置pytorch1.7.1版本的說明,3080+pytorch1.7+windows的詳細安裝過程。文章來源地址http://www.zghlxwxcb.cn/news/detail-714678.html
到了這里,關(guān)于手把手帶你入門深度學(xué)習(xí)(一):保姆級Anaconda和PyTorch環(huán)境配置指南的文章就介紹完了。如果您還想了解更多內(nèi)容,請在右上角搜索TOY模板網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章,希望大家以后多多支持TOY模板網(wǎng)!