|CHAPTER 01| PyTorch簡介與安裝
1.1 本章提要
1.2 PyTorch簡介
1.3 建置PyTorch開發環境
1.4 安裝CPU版本的PyTorch
1.5 安裝GPU版本的PyTorch
1.6 Jupyter Notebook基本操作
1.7 測試PyTorch是否安裝成功
|CHAPTER 02| PyTorch張量
2.1 本章提要
2.2 建立張量
2.3 建立預設值張量
2.4 張量與NumPy
2.5 CPU和GPU中的張量
2.6 張量的索引及切片
2.7 張量的變換
2.8 張量拼接及拆分
2.9 比較運算
2.10 實習①:張量基本操作
|CHAPTER 03| 自動微分與線性迴歸
3.1 本章提要
3.2 PyTorch自動微分
3.3 線性迴歸
3.4 梯度下降法解多元迴歸問題
3.5 張量算術運算
3.6 實習②:Autograd解多元迴歸問題
|CHAPTER 04| 建構神經網路
4.1 本章提要
4.2 感知器
4.3 多層神經網路
4.4 激活函數
4.5 損失函數
4.6 倒傳遞演算法
4.7 優化器
4.8 torch.nn模組
4.9 torch.optim模組
4.10 訓練神經網路程式架構
4.11 實習③:單層神經網路解多元迴歸問題
|CHAPTER 05| 數據探索與處理
5.1 本章提要
5.2 數據分析
5.3 探索數據
5.4 處理異常值
5.5 處理缺失值
5.6 數據縮放
5.7 拆分數據集
5.8 實習④:預測歌曲發行年份
|CHAPTER 06| 自定義神經網路
6.1 本章提要
6.2 自定義網路層
6.3 nn.functional模組
6.4 深度學習實現流程
6.5 Dataset與DataLoader
6.6 儲存與載入模型
6.7 實習⑤:信用卡違約二元分類
6.8 自定義Dataset
6.9 實習⑥:鳶尾花多元分類
|CHAPTER 07| 卷積神經網路
7.1 本章提要
7.2 CNN基本結構
7.3 卷積層
7.4 池化層.
7.5 全連接層
7.6 加入Dropout層及BatchNorm層
7.7 實習⑦:MNIST手寫數字辨識
|CHAPTER 08| 遷移學習
8.1 本章提要
8.2 TorchVision函式庫
8.3 實習⑧:使用ResNet18模型進行圖片分類
8.4 調整學習率
8.5 ImageFolder類別
8.6 實習⑨:微調ResNet18模型進行圖片分類
|CHAPTER 09| 建構ResNet神經網路
9.1 本章提要
9.2 CIFAR-10數據準備與探索
9.3 實習⑩:CIFAR-10 CNN圖片分類
9.4 ResNet殘差網路
9.5 ResNet18模型架構
9.6 PyTorch實現ResNet網路
9.7 實習⑪:ResNet10 圖形分類
|CHAPTER 10| 循環神經網路
10.1 本章提要
10.2 RNN 循環神經網路
10.3 隨時間倒傳遞演算法
10.4 雙向RNN
10.5 PyTorch實作RNN網路
10.6 實習⑫:RNN處理序列數據
|CHAPTER 11| 長短期記憶網路
11.1 本章提要
11.2 LSTM工作原理
11.3 門控機制
11.4 GRU網路
11.5 PyTorch實作LSTM網路
11.6 文字轉數字的處理
11.7 詞嵌入
11.8 實習⑬:LSTM網路處理IMDB評論分類
|CHAPTER 12| 強化學習
12.1 本章提要
12.2 強化學習簡介
12.3 Markov決策過程
12.4 獎勵與回報
12.5 Q學習演算法
12.6 Q學習演算法手算範例
12.7 實習⑭:Q學習演算法解走至戶外問題
12.8 實習⑮:Q學習解迷宮
|CHAPTER 13| OpenAI Gym
13.1 本章提要
13.2 OpenAI Gym基本操作
13.3 FrozenLake遊戲
13.4 Epsilon- 貪婪策略
13.5 實習⑯:Q學習演算法解Frozen Lake
13.6 Mountain Car遊戲
13.7 將連續值轉換成離散值
13.8 實習⑰:Q學習演算法解Mountain Car
|CHAPTER 14| 深度Q網路
14.1 本章提要
14.2 DQN網路
14.3 DQN工作原理
14.4 DQN演算法
14.5 CartPole-v1遊戲
14.6 CartPole的深度Q學習
14.7 建構回放緩衝區
14.8 建構主要Q網路及目標Q網路
14.9 實習⑱:DQN解CartPole問題