最近在學(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)臉:小菜鳥一只,有問題還請多多指教!