久久精品国产亚洲高清|精品日韩中文乱码在线|亚洲va中文字幕无码久|伊人久久综合狼伊人久久|亚洲不卡av不卡一区二区|精品久久久久久久蜜臀AV|国产精品19久久久久久不卡|国产男女猛烈视频在线观看麻豆

千鋒教育-做有情懷、有良心、有品質(zhì)的職業(yè)教育機(jī)構(gòu)

手機(jī)站
千鋒教育

千鋒學(xué)習(xí)站 | 隨時(shí)隨地免費(fèi)學(xué)

千鋒教育

掃一掃進(jìn)入千鋒手機(jī)站

領(lǐng)取全套視頻
千鋒教育

關(guān)注千鋒學(xué)習(xí)站小程序
隨時(shí)隨地免費(fèi)學(xué)習(xí)課程

當(dāng)前位置:首頁  >  技術(shù)干貨  > Pytorch入門之配置云服務(wù)器環(huán)境

Pytorch入門之配置云服務(wù)器環(huán)境

來源:千鋒教育
發(fā)布人:xqq
時(shí)間: 2023-11-07 13:41:10 1699335670

Pytorch簡介

Pytorch底層是Torch框架,Torch框架是一個(gè)科學(xué)計(jì)算框架,擁有一個(gè)與Numpy類似的張量操作庫。非常靈活,但是它的語言是Lua,比較小眾,因此沒有廣泛流行。

后來開發(fā)團(tuán)隊(duì)在Torch的基礎(chǔ)上包裝了一層Python的Api,使得我們可以通過Python來進(jìn)行調(diào)用。它是由Facebook的人工智能小組開發(fā)維護(hù)的,目前在業(yè)內(nèi)也非常流行,尤其是學(xué)術(shù)界,幾乎清一色的Pytorch。它擁有兩個(gè)最大的優(yōu)點(diǎn),一個(gè)是動態(tài)網(wǎng)絡(luò),像是TensorFlow等框架定義出來的神經(jīng)網(wǎng)絡(luò)是靜態(tài)的,一旦寫死不能輕易改變。但是Pytorch我們可以零延遲地改變?nèi)魏紊窠?jīng)網(wǎng)絡(luò)。第二個(gè)有點(diǎn)是具有強(qiáng)大的GPU加速計(jì)算的工具,Pytorch的GPU加速非常好用。

另外Pytorch的語法更加簡潔規(guī)范,更加Pythonic,學(xué)習(xí)曲線也更平穩(wěn)一些。寫出來的代碼更加容易理解,更適合初學(xué)者。

當(dāng)然由于誕生的時(shí)間還短,并且在工業(yè)界的普及度還不如TensorFlow,所以它也有一些短板,比如一些底層的文檔不夠完善,一些功能欠缺等等。在我個(gè)人的學(xué)習(xí)和使用當(dāng)中,我的體驗(yàn)非常好,因此如果你沒有學(xué)過深度學(xué)習(xí)的框架的話,推薦使用它作為你的第一門框架。

云服務(wù)器既然是深度學(xué)習(xí)的框架,那么最好是能夠擁有GPU環(huán)境。但是對于我們大多數(shù)人而言,GPU環(huán)境并不是一個(gè)容易的事情。比如我是Mac黨,本身的機(jī)器就沒有N卡,外接也不方便。當(dāng)然沒有GPU用CPU硬肝也是可以的,不過發(fā)熱很嚴(yán)重,對電腦也有損傷。所以,最好的辦法就是租借網(wǎng)上的GPU云服務(wù)器或者是云服務(wù)。

查看原文

因?yàn)槲沂翘匮脩?,所以我拿到了?nèi)部優(yōu)惠的大師碼,如果要購買其他GPU云服務(wù)器的話,可以在付款的時(shí)候輸入我的大師碼2323,可以再享受9折優(yōu)惠。

當(dāng)然你也可以購買裝好環(huán)境的Notebook,或者是按照時(shí)常購買。Notebook好處是預(yù)裝了各種環(huán)境,上手可用,但是缺點(diǎn)是不支持定制化,一些操作不太方便。畢竟有了云服務(wù)器可以自己搭建Notebook,但是Notebook并不支持服務(wù)器的功能。

如果你想要使用其他云服務(wù)器平臺,可以查看我之前的文章

想要學(xué)深度學(xué)習(xí)但是沒有GPU?我?guī)湍阏伊艘恍┎诲e(cuò)的平臺

環(huán)境配置為了防止一些小白租借了機(jī)器不會用,接下來提供一下配置環(huán)境的詳細(xì)教程(基于滴滴云)。如果你用的別家的服務(wù)器,由于環(huán)境不一定完全相同,所以可能并不一定適用,只能當(dāng)做參考。

總之我們整個(gè)流程是:安裝Python3,安裝jupyter,配置jupyter遠(yuǎn)程訪問,安裝Pytorch。

這些是明面上的流程,如果機(jī)器環(huán)境不健全,還會有一些隱藏流程。比如說普通的Linux環(huán)境需要配置apt-get,還需要下載git,wget等常用工具。如果沒有cuda驅(qū)動的話,還需要自己安裝cuda配置。如果其中的步驟出現(xiàn)了問題,還需要分析問題的原因解決問題。所以說配置環(huán)境說起來簡單,但是實(shí)際操作的時(shí)候問題并不少。

安裝Python3

yuminstallpython36

安裝jupyternotebook

sudopip3installipythonjupyternotebooklab

設(shè)置jupyter的密碼

jupyternotebookpassword

生成jupyternotebook的配置,這個(gè)配置默認(rèn)不存在,需要我們通過這個(gè)命令來生成。

jupyternotebook--generate-config

運(yùn)行之后,會返回配置文件所在的路徑:

我們用vim打開,修改其中的幾行:

c.NotebookApp.ip='0.0.0.0'

c.NotebookApp.open_browser=False

c.NotebookApp.port=8888#可以自己指定

我們需要將本地的端口和遠(yuǎn)程進(jìn)行綁定,這樣我們就可以在本地打開遠(yuǎn)程的jupyter了。這一行代碼當(dāng)中我們將本地的8899綁定了遠(yuǎn)程的8888端口。這里的8888端口就是上面配置當(dāng)中的遠(yuǎn)程的jupyter端口。

sshdc2-user@116.85.10.225-L127.0.0.1:8899:127.0.0.1:8888

如果你喜歡的話,還可以安裝一下jupyterlab

sudopip3installjupyterlab

使用方法和notebook類似,在遠(yuǎn)程執(zhí)行命令開啟jupyter

jupyterlab--allow-root

當(dāng)我們用完了云服務(wù)器之后,要記得刪除機(jī)器。但由于平臺機(jī)器數(shù)量有限,根據(jù)當(dāng)前平臺的設(shè)置,關(guān)機(jī)之后依然會為用戶保留資源,但是前提是需要付費(fèi)。如果你是按時(shí)租的服務(wù)器顯然不能接受自己沒在使用還需要付費(fèi)。針對這個(gè)問題,我們可以通過快照來解決。我們在關(guān)機(jī)之前先創(chuàng)建快照:

然后刪除云服務(wù)器,下次重新創(chuàng)建服務(wù)器的時(shí)候選擇從快照創(chuàng)建。這樣下次創(chuàng)建的機(jī)器還可以保留當(dāng)前的配置和數(shù)據(jù),而且也不需要扣費(fèi)了。如果你嫌麻煩的話,還可以加我的微信聯(lián)系我,我?guī)湍阏业焦ぷ魅藛T加入關(guān)機(jī)免扣費(fèi)的白名單。

我們用pip安裝一下Pytorch和一些其他需要用到的包。安裝好了,之后,我們通過torch.cuda.is_avaiable()查看一下cuda的情況,如果輸出是True,那說明已經(jīng)安裝好了。

tensorPytorch當(dāng)中很重要的一個(gè)概念就是tensor,它直譯過來是張量,TensorFlow當(dāng)中的tensor也是這個(gè)意思。我們可以認(rèn)為tensor是一個(gè)高維的數(shù)組。當(dāng)它是0維的時(shí)候就是一個(gè)數(shù),一個(gè)標(biāo)量。當(dāng)它是一維的時(shí)候就是一個(gè)向量,二維的時(shí)候是一個(gè)矩陣,多維的時(shí)候是高維的數(shù)組。它和Numpy當(dāng)中的數(shù)組類似,不過Tensor可以使用GPU進(jìn)行加速。

我們通過torch當(dāng)中的接口來初始化tensor,和Numpy當(dāng)中的數(shù)組類似,它支持好幾種初始化的方式。

empty函數(shù)創(chuàng)建一個(gè)指定大小的未初始化的tensor,當(dāng)中的元素內(nèi)容是不可保證的。

rand創(chuàng)建一個(gè)隨機(jī)初始化的數(shù)組:

ones和zeros創(chuàng)建全是0或者全是1的數(shù)組:

我們可以傳入類型指定元素的類型

我們也可以通過現(xiàn)成的數(shù)組創(chuàng)建tensor:

這些創(chuàng)建函數(shù)都有對應(yīng)的like方法,可以傳入一個(gè)已有的tensor,創(chuàng)建出一個(gè)和它一樣大小的新的tensor來。

這里只是列舉了常用的幾種,官方的api當(dāng)中還有其他的幾種創(chuàng)建tensor的方式:

除此之外,tensor還支持從numpy的數(shù)組當(dāng)中創(chuàng)建,我們可以利用from_numpy函數(shù)來實(shí)現(xiàn):

同理,我們也可以通過numpy函數(shù),從一個(gè)tensor得到numpy的數(shù)組:

還可以通過tolist方法將tensor轉(zhuǎn)化成Python的數(shù)組:

函數(shù)功能

Tensor(*sizes)基礎(chǔ)構(gòu)造函數(shù)

tensor(data,)類似np.array的構(gòu)造函數(shù)

ones(*sizes)全1Tensor

zeros(*sizes)全0Tensor

eye(*sizes)對角線為1,其他為0

arange(s,e,step)從s到e,步長為step

linspace(s,e,steps)從s到e,均勻切分成steps份

rand/randn(*sizes)均勻/標(biāo)準(zhǔn)分布

normal(mean,std)/uniform(from,to)正態(tài)分布/均勻分布

randperm(m)隨機(jī)排列

我們在創(chuàng)建tensor的時(shí)候不僅可以指定它們的類型,還可以指定它們存放的設(shè)備。比如是CPU還是GPU。當(dāng)然前期我們暫時(shí)用不到這點(diǎn),只需要記得即可。

總結(jié)這是Pytorch的第一篇文章,我們簡單了解了一下這個(gè)框架,以及它當(dāng)中tensor這個(gè)數(shù)據(jù)結(jié)構(gòu)。簡單來說,我們可以用常用的Numpy去類比它?;旧螻umpy當(dāng)中有的功能它都有,它還有一些自己特性Numpy沒有的api。但不管怎么說,萬變不離其宗,tensor的用處就是為了方便我們處理數(shù)據(jù)的。

關(guān)于Pytorch中tensor的用法還有很多,實(shí)在是沒有辦法在一篇文章當(dāng)中窮盡,所以這里只是簡單介紹,具體的用法將會放在下一篇文章當(dāng)中,讓我們下周再見吧。

以上內(nèi)容為大家介紹了Pytorch入門之配置云服務(wù)器環(huán)境,希望對大家有所幫助,如果想要了解更多Python相關(guān)知識,請關(guān)注IT培訓(xùn)機(jī)構(gòu):千鋒教育。

聲明:本站稿件版權(quán)均屬千鋒教育所有,未經(jīng)許可不得擅自轉(zhuǎn)載。
10年以上業(yè)內(nèi)強(qiáng)師集結(jié),手把手帶你蛻變精英
請您保持通訊暢通,專屬學(xué)習(xí)老師24小時(shí)內(nèi)將與您1V1溝通
免費(fèi)領(lǐng)取
今日已有369人領(lǐng)取成功
劉同學(xué) 138****2860 剛剛成功領(lǐng)取
王同學(xué) 131****2015 剛剛成功領(lǐng)取
張同學(xué) 133****4652 剛剛成功領(lǐng)取
李同學(xué) 135****8607 剛剛成功領(lǐng)取
楊同學(xué) 132****5667 剛剛成功領(lǐng)取
岳同學(xué) 134****6652 剛剛成功領(lǐng)取
梁同學(xué) 157****2950 剛剛成功領(lǐng)取
劉同學(xué) 189****1015 剛剛成功領(lǐng)取
張同學(xué) 155****4678 剛剛成功領(lǐng)取
鄒同學(xué) 139****2907 剛剛成功領(lǐng)取
董同學(xué) 138****2867 剛剛成功領(lǐng)取
周同學(xué) 136****3602 剛剛成功領(lǐng)取
相關(guān)推薦HOT