PyTorch:60分鐘入門學(xué)習(xí)

最近在學(xué)習(xí)PyTorch這個深度學(xué)習(xí)框架,在這里做一下整理分享給大家,有什么寫的不對或者不好的地方,還請大俠們見諒啦~~~

一 寫在前面

未經(jīng)允許,不得轉(zhuǎn)載,謝謝~

本文就是主要是對PyTorch的安裝,以及入門學(xué)習(xí)做了記錄,也可以算是用自己的理解對文檔進(jìn)行了翻譯。

先附上鏈接地址哦(直接點擊即可):
PyTorch官網(wǎng)
PyTorch :A 60 Minute Blitz

二 PyTorch 是什么

  • PyTorch是一個深度學(xué)習(xí)框架;
  • 支持GPU并行處理的張量計算;
  • 支持動態(tài)神經(jīng)網(wǎng)絡(luò)的構(gòu)建;
  • 比較容易學(xué)習(xí)。

大多數(shù)的框架,例如常見的caffe,TensorFlow都需要構(gòu)建靜態(tài)圖,構(gòu)建好一個神經(jīng)網(wǎng)絡(luò)之后需要重復(fù)使用相同的結(jié)構(gòu)。而PyTorch則允許改變網(wǎng)絡(luò)的運行方式,在構(gòu)建神經(jīng)網(wǎng)絡(luò)時只需要定義網(wǎng)絡(luò)中的層結(jié)構(gòu)以及前向傳播函數(shù)即可,反向傳播求梯度的過程它都會自動完成。

除此,使用起來比較方便,對于我自己這樣的新學(xué)者來說真的是非常友善啦,官網(wǎng)提供了詳細(xì)的安裝以及各種入門指導(dǎo),還提供了豐富的examples供我們學(xué)習(xí)~

三 PyTorch 的安裝

PyTorch的安裝在官網(wǎng)上有給出方法,按照


按照自己的電腦配置去選擇,pip下記得要加sudo。
我自己的環(huán)境是:ubuntu14.04+anaconda
具體的配置過程戳這里
ubuntu14.04+anaconda 配置PyTorch

四 PyTorch 60分鐘入門教程

安裝好之后,可以來試一試了~

1 初識PyTorch之Tensor

Tensor是PyTorch中最基礎(chǔ)的數(shù)據(jù)表示方法,它用于代替numpy中的數(shù)組,可以支持GPU的并行計算。
具體的介紹在這里哦:
PyTorch入門學(xué)習(xí)(一):What is PyTorch?
里面介紹了Tensor的基本用法,包括:

  • 包導(dǎo)入
  • 構(gòu)建矩陣
  • 構(gòu)建隨機矩陣
  • 獲取Tensor大小
  • Tensor的4種加法
  • Tensor索引方法
  • Tensor與numpy array的相互轉(zhuǎn)換
  • Tensor移到GPU上

2 PyTorch之自動求梯度

前面提到的自動求梯度就是通過autograd包實現(xiàn)的,是神經(jīng)網(wǎng)絡(luò)的核心部分,可以通過代碼的運行情況來決定反向傳播的過程, 這樣就使得每一次的迭代都可以是不一樣的.
具體的戳這里哦:
PyTorch入門學(xué)習(xí)(二):Autogard之自動求梯度
看完這個就能學(xué)會怎么樣建立計算圖并自動求梯度了。

3 PyTorch之神經(jīng)網(wǎng)絡(luò)

現(xiàn)在來學(xué)習(xí)一下如何構(gòu)建神經(jīng)網(wǎng)絡(luò)哦~
Pytorch入門學(xué)習(xí)(三):Neural Networks
這里介紹了torch.nn包,通過學(xué)習(xí)可以知道:

  • 怎么樣定義一個神經(jīng)網(wǎng)絡(luò)
  • 處理輸入以及調(diào)用backward函數(shù)
  • 計算損失函數(shù)
  • 迭代更新網(wǎng)絡(luò)的權(quán)重

4 PyTorch之訓(xùn)練分類器

看完上面的三篇應(yīng)該算是掌握了神經(jīng)網(wǎng)絡(luò)的最基礎(chǔ)的三個部分了,這里就實現(xiàn)了一個CIFAR10的分類器,除此還介紹了常用數(shù)據(jù)包的獲取方法。
Pytorch入門學(xué)習(xí)(四)-training a classifier
放一張結(jié)果圖在這里吧


展示的是各個類別測試過程中的精度。
基本上簡單的網(wǎng)絡(luò)都可以照著這個思路去實現(xiàn)出來。

5 PyTorch之并行計算

60分鐘入門學(xué)習(xí)的最后一篇當(dāng)然是給我們的GPU并行計算啦,這個很簡單,直接戳吧。
PyTorch入門學(xué)習(xí)(五):Data Parallelism

參考文獻(xiàn)

最后,更多更完整更權(quán)威的學(xué)習(xí)資料還是在官方指南:
PyTorch Tutorials

陸陸續(xù)續(xù)終于整理完了這篇文章,呼一口氣~

正經(jīng)臉:小菜鳥一只,有問題還請多多指教!

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時請結(jié)合常識與多方信息審慎甄別。
平臺聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點,簡書系信息發(fā)布平臺,僅提供信息存儲服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

友情鏈接更多精彩內(nèi)容