- © 黃志勝 Chih-Sheng (Tommy) Huang (Github) (個人網頁) (Medium文章)
- Class 0: 數據型態簡介
- Class 1: 資料庫取得
- Class 2: 利用Pytorch建立Dataset和Dataloader
- Class 3: 利用Pytorch進行梯度下降更新
- Class 4: 在pytorch建立卷積、池化和激活函數和自定義運算架構方式
- Class 5: 利用Pytorch模組torchvision進行資料擴增(Data Augmentation)
- Class 6: Pytorch進行圖像分類模型訓練
- Class 7: Pytorch進行圖像分類 - 手刻ResNet-18和Torchvision匯入
- Class 8: Pytorch-AutoEncoder
- Class 9: Generative Adversarial Network(GAN)
課程內容皆以jupyter note方式呈現。
內容概述:
- 結構化數據和非結構化數據簡介
*教材: Data Structure.ipynb
內容概述:
主要介紹公開資料(UCI database,kaggle等)的來源,和怎麼用pytorch來讀取/下載pytorch內建的資料庫
- 開源結構化數據範例: scikit-learn
- Pytorch平台提供的數據範例torchvision
- 私有結構化資料(Iris Dataset)
- 私有非結構化資料(水果資料庫)
*教材: database.ipynb
內容概述:
怎麼利用pytorch建立自有資料集的dataset和dataloader
-
Pytorch dataloader: 讀取結構化資料
*教材: Dataloader-1_Structure data.ipynb -
Pytorch dataloader: 讀取非結構化資料
2.1 當dataset是torch vision提供的寫法
2.2 當dataset是私有資料庫的寫法。
2.3 如何將資料丟到CUDA
*教材: Dataloader-2_CustomDataset.ipynb
補充資料:pytorch_dataloader_linux.ipynb
內容概述:
怎麼利用pytorch的函數進行梯度計算,和梯度更新
內容概述:
怎麼利用pytorch的函數進行梯度計算,和梯度更新
-
Pytorch-卷積運作與參數生成
*教材: 04_pytorch_operators_conv.ipynb -
Pytorch- Pool、Activation function和宣告自己想建立的結構
*教材: 04_pytorch_operators.ipynb
內容概述:
怎麼利用Pytorch提供之torchvision data augumentation技巧進行資料擴增
內容概述:
-
Pytorch進行圖像分類: 利用MLP和CNN模型進行私有資料庫訓練
利用課程Class 01介紹「私有非結構化資料(水果資料庫)」的Fruits 360資料來進行圖像分類範例。
採用
1.1. MLP: Multilayer perceptron (多層感知機),在深度學習每一層的perceptron則稱為Fully connection。
1.2. CNN: Convolutional Neural Network (卷積神經網路)
進行分類模型學習。
*教材: pytorch_classification.ipynb -
Pytorch進行圖像分類: 有沒有用Data augumention訓練模型是否真的有影響,以CIFAR-10為例。
這邊我們將拿CIFAR-10的資料來訓練和測試看看Data Augumention對於模型的影響。
- 番外篇1:我們拿西瓜、蘋果和香蕉的圖片來這兩個模型inference看看。
- 番外篇2: lr_scheduler是什麼?
*教材: pytorch_classification_DataAugumention.ipynb
內容概述:
怎麼一層一層手刻ResNet-18,以及如何利用torchvision modelzo直接匯入模型和導入pretrain。
並且以CIFAR10為例進行訓練。
*教材: pytorch_classification_resnet.ipynb
內容概述:
- 介紹Auto-Encoder (AE)
- 利用Pytorch進行MNIST的AutoEncoder
- 可視覺化方式觀察Embedding feature的分布。
內有補充內容: Flatten在pytorch怎麼做
*教材: Pytorch_AutoEncoder.ipynb
內容概述:
- 介紹Generative Adversarial Network (AE)
- Pytorch手把手進行DCGAN實作,以MNIST資料庫為例 DCGAN: Deep Convolutional Generative Adversarial Networks
*教材: Pytorch_DCGAN.ipynb
(CC BY-NC-SA 4.0)
本教學課程適用 Attribution-NonCommercial-ShareAlike 4.0 International 授權方式。
※ 轉載、改作、分享請附上以下內容:
- 如有轉載、改作、分享,請註明出處,source: https://github.com/TommyHuang821/PytorchTutorial