深度學習 500 問
1. 版權宣告
請尊重作者的智慧財產權,版權所有,翻版必究。 未經許可,嚴禁轉發內容!
請大家一起維護自己的勞動成果,進行監督。 未經許可, 嚴禁轉發內容! 2018.6.27 TanJiyong
2. 概述
本專案是大家對AI的相關知識進行整合,集思廣益, 以便形成 內容充實,覆蓋全面的文集。
3. 加入以及文件規範
1、尋求有願意繼續完善的朋友、編輯、寫手;如有意合作,完善出書(成為共同作者)。
2、所有提交內容的貢獻者,將會在文中體現貢獻者個人資訊(例: 大佬-西湖大學)
3、為了讓內容更充實完善,集思廣益,歡迎Fork該專案並參與編寫。請在修改MD檔案的同時(或直接留言)備註自己的姓名-單位(大佬-斯坦福大學),一經採納,會在原文中顯示貢獻者的資訊,謝謝!
4、推薦使用typora-Markdown閱讀器: https://typora.io/
例子:
### 3.3.2 如何尋找超引數的最優值?(貢獻者:大佬-斯坦福大學) 在使用機器學習演算法時,總有一些難搞的超引數。例如權重衰減大小,高斯核寬度等等。演算法不會設定這些引數,而是需要你去設定它們的值。設定的值對結果產生較大影響。常見設定超引數的做法有: 1. 猜測和檢查:根據經驗或直覺,選擇引數,一直迭代。 2. 網格搜尋:讓計算機嘗試在一定範圍內均勻分佈的一組值。 3. 隨機搜尋:讓計算機隨機挑選一組值。 4. 貝葉斯優化:使用貝葉斯優化超引數,會遇到貝葉斯優化演算法本身就需要很多的引數的困難。 5. 在良好初始猜測的前提下進行區域性優化:這就是 MITIE 的方法,它使用 BOBYQA 演算法,並有一個精心選擇的起始點。由於 BOBYQA 只尋找最近的區域性最優解,所以這個方法是否成功很大程度上取決於是否有一個好的起點。在 MITIE 的情下,我們知道一個好的起點,但這不是一個普遍的解決方案,因為通常你不會知道好的起點在哪裡。從好的方面來說,這種方法非常適合尋找區域性最優解。稍後我會再討論這一點。 6. 最新提出的 LIPO 的全域性優化方法。這個方法沒有引數,而且經驗證比隨機搜尋方法好。
4. 貢獻與專案概覽
已提交MD版本章節:請檢視MarkDown
5. 更多
-
尋求有願意繼續完善的朋友、編輯、寫手; 如有意合作,完善出書(成為共同作者)。
所有提交內容的貢獻者,將會在文中體現貢獻者個人資訊(大佬-西湖大學)。
-
聯絡方式 : 請聯絡 [email protected] (唯一官方郵箱);微信Tan:
(進群先在MD版本增加、改善、提交內容後,更易進群,享受分享知識幫助他人。)
進群請加微信委託人1:HQJ199508212176委託人2:Xuwumin1203委託人3:tianyuzy
-
Markdown閱讀器推薦: https://typora.io/ 免費且對於數學公式顯示支援的比較好。
-
注意, 現出現不法分子冒充發起人,請廣大夥伴兒知悉!
-
接下來,將提供MD版本,大家一起編輯完善,敬請期待!希望踴躍提建議,補充修改內容!
6. 目錄
第一章 數學基礎 1
1.1 標量、向量、張量之間的聯絡 1
1.2 張量與矩陣的區別? 1
1.3 矩陣和向量相乘結果 1
1.4 向量和矩陣的範數歸納 1
1.5 如何判斷一個矩陣為正定? 2
1.6 導數偏導計算 3
1.7 導數和偏導數有什麼區別? 3
1.8 特徵值分解與特徵向量 3
1.9 奇異值與特徵值有什麼關係? 4
1.10 機器學習為什麼要使用概率? 4
1.11 變數與隨機變數有什麼區別? 4
1.12 常見概率分佈? 5
1.13 舉例理解條件概率 9
1.14 聯合概率與邊緣概率聯絡區別? 10
1.15 條件概率的鏈式法則 10
1.16 獨立性和條件獨立性 11
1.17 期望、方差、協方差、相關係數總結 11
第二章 機器學習基礎 14
2.1 各種常見演算法圖示 14 2.2 監督學習、非監督學習、半監督學習、弱監督學習? 15
2.3 監督學習有哪些步驟 16
2.4 多例項學習? 17
2.5 分類網路和迴歸的區別? 17
2.6 什麼是神經網路? 17
2.7 常用分類演算法的優缺點? 18
2.8 正確率能很好的評估分類演算法嗎? 20
2.9 分類演算法的評估方法? 20
2.10 什麼樣的分類器是最好的? 22
2.11 大資料與深度學習的關係 22
2.12 理解區域性最優與全域性最優 23
2.13 理解邏輯迴歸 24
2.14 邏輯迴歸與樸素貝葉斯有什麼區別? 24
2.15 為什麼需要代價函式? 25
2.16 代價函式作用原理 25
2.17 為什麼代價函式要非負? 26
2.18 常見代價函式? 26
2.19 為什麼用交叉熵代替二次代價函式 28
2.20 什麼是損失函式? 28
2.21 常見的損失函式 28
2.22 邏輯迴歸為什麼使用對數損失函式? 30
0.00 對數損失函式是如何度量損失的? 31
2.23 機器學習中為什麼需要梯度下降? 32
2.24 梯度下降法缺點? 32
2.25 梯度下降法直觀理解? 32
2.23 梯度下降法演算法描述? 33
2.24 如何對梯度下降法進行調優? 35
2.25 隨機梯度和批量梯度區別? 35
2.26 各種梯度下降法效能比較 37
2.27 計算圖的導數計算圖解? 37
2.28 線性判別分析(LDA)思想總結 39
2.29 圖解LDA核心思想 39
2.30 二類LDA演算法原理? 40
2.30 LDA演算法流程總結? 41
2.31 LDA和PCA區別? 41
2.32 LDA優缺點? 41
2.33 主成分分析(PCA)思想總結 42
2.34 圖解PCA核心思想 42
2.35 PCA演算法推理 43
2.36 PCA演算法流程總結 44
2.37 PCA演算法主要優缺點 45
2.38 降維的必要性及目的 45
2.39 KPCA與PCA的區別? 46
2.40 模型評估 47
2.40.1模型評估常用方法? 47
2.40.2 經驗誤差與泛化誤差 47
2.40.3 圖解欠擬合、過擬合 48
2.40.4 如何解決過擬合與欠擬合? 49
2.40.5 交叉驗證的主要作用? 50
2.40.6 k折交叉驗證? 50
2.40.7 混淆矩陣 50
2.40.8 錯誤率及精度 51
2.40.9 查準率與查全率 51
2.40.10 ROC與AUC 52
2.40.11 如何畫ROC曲線? 53
2.40.12 如何計算TPR,FPR? 54
2.40.13 如何計算Auc? 56
2.40.14 為什麼使用Roc和Auc評價分類器? 56
2.40.15 直觀理解AUC 56
2.40.16 代價敏感錯誤率與代價曲線 57
2.40.17 模型有哪些比較檢驗方法 59
2.40.18 偏差與方差 59
2.40.19 為什麼使用標準差? 60
2.40.20 點估計思想 61
2.40.21 點估計優良性原則? 61
2.40.22 點估計、區間估計、中心極限定理之間的聯絡? 62
2.40.23 類別不平衡產生原因? 62
2.40.24 常見的類別不平衡問題解決方法 62
2.41 決策樹 64
2.41.1 決策樹的基本原理 64
2.41.2 決策樹的三要素? 64
2.41.3 決策樹學習基本演算法 65
2.41.4 決策樹演算法優缺點 65
2.40.5 熵的概念以及理解 66
2.40.6 資訊增益的理解 66
2.40.7 剪枝處理的作用及策略? 67
2.41 支援向量機 67
2.41.1 什麼是支援向量機 67
2.25.2 支援向量機解決的問題? 68
2.25.2 核函式作用? 69
2.25.3 對偶問題 69
2.25.4 理解支援向量迴歸 69
2.25.5 理解SVM(核函式) 69
2.25.6 常見的核函式有哪些? 69
2.25.6 軟間隔與正則化 73
2.25.7 SVM主要特點及缺點? 73
2.26 貝葉斯 74
2.26.1 圖解極大似然估計 74
2.26.2 樸素貝葉斯分類器和一般的貝葉斯分類器有什麼區別? 76
2.26.4 樸素與半樸素貝葉斯分類器 76
2.26.5 貝葉斯網三種典型結構 76
2.26.6 什麼是貝葉斯錯誤率 76
2.26.7 什麼是貝葉斯最優錯誤率 76
2.27 EM演算法解決問題及實現流程 76
2.28 為什麼會產生維數災難? 78
2.29 怎樣避免維數災難 82
2.30 聚類和降維有什麼區別與聯絡? 82
2.31 GBDT和隨機森林的區別 83
2.32 四種聚類方法之比較 84
第三章 深度學習基礎 88
3.1 基本概念 88
3.1.1 神經網路組成? 88
3.1.2 神經網路有哪些常用模型結構? 90
3.1.3 如何選擇深度學習開發平臺? 92
3.1.4 為什麼使用深層表示 92
3.1.5 為什麼深層神經網路難以訓練? 93
3.1.6 深度學習和機器學習有什麼不同 94
3.2 網路操作與計算 95
3.2.1 前向傳播與反向傳播? 95
3.2.2 如何計算神經網路的輸出? 97
3.2.3 如何計算卷積神經網路輸出值? 98
3.2.4 如何計算Pooling層輸出值輸出值? 101
3.2.5 例項理解反向傳播 102
3.3 超引數 105
3.3.1 什麼是超引數? 105
3.3.2 如何尋找超引數的最優值? 105
3.3.3 超引數搜尋一般過程? 106
3.4 啟用函式 106
3.4.1 為什麼需要非線性啟用函式? 106
3.4.2 常見的啟用函式及影象 107
3.4.3 常見啟用函式的導數計算? 109
3.4.4 啟用函式有哪些性質? 110
3.4.5 如何選擇啟用函式? 110
3.4.6 使用ReLu啟用函式的優點? 111
3.4.7 什麼時候可以用線性啟用函式? 111
3.4.8 怎樣理解Relu(<0時)是非線性啟用函式? 111
3.4.9 Softmax函式如何應用於多分類? 112
3.5 Batch_Size 113
3.5.1 為什麼需要Batch_Size? 113
3.5.2 Batch_Size值的選擇 114
3.5.3 在合理範圍內,增大 Batch_Size 有何好處? 114
3.5.4 盲目增大 Batch_Size 有何壞處? 114
3.5.5 調節 Batch_Size 對訓練效果影響到底如何? 114
3.6 歸一化 115
3.6.1 歸一化含義? 115
3.6.2 為什麼要歸一化 115
3.6.3 為什麼歸一化能提高求解最優解速度? 115
3.6.4 3D圖解未歸一化 116
3.6.5 歸一化有哪些型別? 117
3.6.6 區域性響應歸一化作用 117
3.6.7 理解區域性響應歸一化公式 117
3.6.8 什麼是批歸一化(Batch Normalization) 118
3.6.9 批歸一化(BN)演算法的優點 119
3.6.10 批歸一化(BN)演算法流程 119
3.6.11 批歸一化和群組歸一化 120
3.6.12 Weight Normalization和Batch Normalization 120
3.7 預訓練與微調(fine tuning) 121
3.7.1 為什麼無監督預訓練可以幫助深度學習? 121
3.7.2 什麼是模型微調fine tuning 121
3.7.3 微調時候網路引數是否更新? 122
3.7.4 fine-tuning模型的三種狀態 122
3.8 權重偏差初始化 122
3.8.1 全都初始化為0 122
3.8.2 全都初始化為同樣的值 123
3.8.3 初始化為小的隨機數 124
3.8.4 用1/sqrt(n)校準方差 125
3.8.5 稀疏初始化(Sparse Initialazation) 125
3.8.6 初始化偏差 125
3.9 Softmax 126
3.9.1 Softmax定義及作用 126
3.9.2 Softmax推導 126
3.10 理解One Hot Encodeing原理及作用? 126
3.11 常用的優化器有哪些 127
3.12 Dropout 系列問題 128
3.12.1 dropout率的選擇 128
3.27 Padding 系列問題 128
第四章 經典網路 129
4.1 LetNet5 129
4.1.1 模型結構 129
4.1.2 模型結構 129
4.1.3 模型特性 131
4.2 AlexNet 131
4.2.1 模型結構 131
4.2.2 模型解讀 131
4.2.3 模型特性 135
4.3 視覺化ZFNet-解卷積 135
4.3.1 基本的思想及其過程 135
4.3.2 卷積與解卷積 136
4.3.3 卷積視覺化 137
4.3.4 ZFNe和AlexNet比較 139
4.4 VGG 140
4.1.1 模型結構 140
4.1.2 模型特點 140
4.5 Network in Network 141
4.5.1 模型結構 141
4.5.2 模型創新點 141
4.6 GoogleNet 143
4.6.1 模型結構 143
4.6.2 Inception 結構 145
4.6.3 模型層次關係 146
4.7 Inception 系列 148
4.7.1 Inception v1 148
4.7.2 Inception v2 150
4.7.3 Inception v3 153
4.7.4 Inception V4 155
4.7.5 Inception-ResNet-v2 157
4.8 ResNet及其變體 158
4.8.1 重新審視ResNet 159
4.8.2 殘差塊 160
4.8.3 ResNet架構 162
4.8.4 殘差塊的變體 162
4.8.5 ResNeXt 162
4.8.6 Densely Connected CNN 164
4.8.7 ResNet作為小型網路的組合 165
4.8.8 ResNet中路徑的特點 166
4.9 為什麼現在的CNN模型都是在GoogleNet、VGGNet或者AlexNet上調整的? 167
第五章 卷積神經網路(CNN) 170
5.1 卷積神經網路的組成層 170
5.2 卷積如何檢測邊緣資訊? 171
5.2 卷積的幾個基本定義? 174
5.2.1 卷積核大小 174
5.2.2 卷積核的步長 174
5.2.3 邊緣填充 174
5.2.4 輸入和輸出通道 174
5.3 卷積網路型別分類? 174
5.3.1 普通卷積 174
5.3.2 擴張卷積 175
5.3.3 轉置卷積 176
5.3.4 可分離卷積 177
5.3 圖解12種不同型別的2D卷積? 178
5.4 2D卷積與3D卷積有什麼區別? 181
5.4.1 2D 卷積 181
5.4.2 3D卷積 182
5.5 有哪些池化方法? 183
5.5.1 一般池化(General Pooling) 183
5.5.2 重疊池化(OverlappingPooling) 184
5.5.3 空金字塔池化(Spatial Pyramid Pooling) 184
5.6 1x1卷積作用? 186
5.7 卷積層和池化層有什麼區別? 187
5.8 卷積核一定越大越好? 189
5.9 每層卷積只能用一種尺寸的卷積核? 189
5.10 怎樣才能減少卷積層引數量? 190
5.11卷積操作時必須同時考慮通道和區域嗎? 191
5.12 採用寬卷積的好處有什麼? 192
5.12.1 窄卷積和寬卷積 192
5.12.2 為什麼採用寬卷積? 192
5.13 卷積層輸出的深度與哪個部件的個數相同? 192
5.14 如何得到卷積層輸出的深度? 193
5.15 啟用函式通常放在卷積神經網路的那個操作之後? 194
5.16 如何理解最大池化層有幾分縮小? 194
5.17 理解影象卷積與反捲積 194
5.17.1 影象卷積 194
5.17.2 影象反捲積 196
5.18 不同卷積後圖像大小計算? 198
5.18.1 型別劃分 198
5.18.2 計算公式 199
5.19 步長、填充大小與輸入輸出關係總結? 199
5.19.1 沒有0填充,單位步長 200
5.19.2 零填充,單位步長 200
5.19.3 不填充,非單位步長 202
5.19.4 零填充,非單位步長 202
5.20 理解反捲積和棋盤效應 204
5.20.1 為什麼出現棋盤現象? 204
5.20.2 有哪些方法可以避免棋盤效應? 205
5.21 CNN主要的計算瓶頸? 207
5.22 CNN的引數經驗設定 207
5.23 提高泛化能力的方法總結 208
5.23.1 主要方法 208
5.23.2 實驗證明 208
5.24 CNN在CV與NLP領域運用的聯絡與區別? 213
5.24.1 聯絡 213
5.24.2 區別 213
5.25 CNN凸顯共性的手段? 213
5.25.1 區域性連線 213
5.25.2 權值共享 214
5.25.3 池化操作 215
5.26 全卷積與Local-Conv的異同點 215
5.27 舉例理解Local-Conv的作用 215
5.28 簡述卷積神經網路進化史 216
第六章 迴圈神經網路(RNN) 218
6.1 RNNs和FNNs有什麼區別? 218
6.2 RNNs典型特點? 218
6.3 RNNs能幹什麼? 219
6.4 RNNs在NLP中典型應用? 220
6.5 RNNs訓練和傳統ANN訓練異同點? 220
6.6 常見的RNNs擴充套件和改進模型 221
6.6.1 Simple RNNs(SRNs) 221
6.6.2 Bidirectional RNNs 221
6.6.3 Deep(Bidirectional) RNNs 222
6.6.4 Echo State Networks(ESNs) 222
6.6.5 Gated Recurrent Unit Recurrent Neural Networks 224
6.6.6 LSTM Netwoorks 224
6.6.7 Clockwork RNNs(CW-RNNs) 225
第七章 目標檢測 228
7.1 基於候選區域的目標檢測器 228
7.1.1 滑動視窗檢測器 228
7.1.2 選擇性搜尋 229
7.1.3 R-CNN 230
7.1.4 邊界框迴歸器 230
7.1.5 Fast R-CNN 231
7.1.6 ROI 池化 233
7.1.7 Faster R-CNN 233
7.1.8 候選區域網路 234
7.1.9 R-CNN 方法的效能 236
7.2 基於區域的全卷積神經網路(R-FCN) 237
7.3 單次目標檢測器 240
7.3.1單次檢測器 241
7.3.2 滑動視窗進行預測 241
7.3.3 SSD 243
7.4 YOLO系列 244
7.4.1 YOLOv1介紹 244
7.4.2 YOLOv1模型優缺點? 252
7.4.3 YOLOv2 253
7.4.4 YOLOv2改進策略 254
7.4.5 YOLOv2的訓練 261
7.4.6 YOLO9000 261
7.4.7 YOLOv3 263
7.4.8 YOLOv3改進 264
第八章 影象分割 269
8.1 傳統的基於CNN的分割方法缺點? 269
8.1 FCN 269
8.1.1 FCN改變了什麼? 269
8.1.2 FCN網路結構? 270
8.1.3 全卷積網路舉例? 271
8.1.4 為什麼CNN對畫素級別的分類很難? 271
8.1.5 全連線層和卷積層如何相互轉化? 272
8.1.6 FCN的輸入圖片為什麼可以是任意大小? 272
8.1.7 把全連線層的權重W重塑成卷積層的濾波器有什麼好處? 273
8.1.8 反捲積層理解 275
8.1.9 跳級(skip)結構 276
8.1.10 模型訓練 277
8.1.11 FCN缺點 280
8.2 U-Net 280
8.3 SegNet 282
8.4 空洞卷積(Dilated Convolutions) 283
8.4 RefineNet 285
8.5 PSPNet 286
8.6 DeepLab系列 288
8.6.1 DeepLabv1 288
8.6.2 DeepLabv2 289
8.6.3 DeepLabv3 289
8.6.4 DeepLabv3+ 290
8.7 Mask-R-CNN 293
8.7.1 Mask-RCNN 的網路結構示意圖 293
8.7.2 RCNN行人檢測框架 293
8.7.3 Mask-RCNN 技術要點 294
8.8 CNN在基於弱監督學習的影象分割中的應用 295
8.8.1 Scribble標記 295
8.8.2 影象級別標記 297
8.8.3 DeepLab+bounding box+image-level labels 298
8.8.4 統一的框架 299
第九章 強化學習 301
9.1 強化學習的主要特點? 301
9.2 強化學習應用例項 302
9.3 強化學習和監督式學習、非監督式學習的區別 303
9.4 強化學習主要有哪些演算法? 305
9.5 深度遷移強化學習演算法 305
9.6 分層深度強化學習演算法 306
9.7 深度記憶強化學習演算法 306
9.8 多智慧體深度強化學習演算法 307
9.9 深度強化學習演算法小結 307
第十章 遷移學習 309
10.1 什麼是遷移學習? 309
10.2 什麼是多工學習? 309
10.3 多工學習有什麼意義? 309
10.4 什麼是端到端的深度學習? 311
10.5 端到端的深度學習舉例? 311
10.6 端到端的深度學習有什麼挑戰? 311
10.7 端到端的深度學習優缺點? 312
第十三章 優化演算法 314
13.1 CPU和GPU 的區別? 314
13.2 如何解決訓練樣本少的問題 315
13.3 什麼樣的樣本集不適合用深度學習? 315
13.4 有沒有可能找到比已知演算法更好的演算法? 316
13.5 何為共線性, 跟過擬合有啥關聯? 316
13.6 廣義線性模型是怎被應用在深度學習中? 316
13.7 造成梯度消失的原因? 317
13.8 權值初始化方法有哪些 317
13.9 啟發式優化演算法中,如何避免陷入區域性最優解? 318
13.10 凸優化中如何改進GD方法以防止陷入區域性最優解 319
13.11 常見的損失函式? 319
13.14 如何進行特徵選擇(feature selection)? 321
13.14.1 如何考慮特徵選擇 321
13.14.2 特徵選擇方法分類 321
13.14.3 特徵選擇目的 322
13.15 梯度消失/梯度爆炸原因,以及解決方法 322
13.15.1 為什麼要使用梯度更新規則? 322
13.15.2 梯度消失、爆炸原因? 323
13.15.3 梯度消失、爆炸的解決方案 324
13.16 深度學習為什麼不用二階優化 325
13.17 怎樣優化你的深度學習系統? 326
13.18為什麼要設定單一數字評估指標? 326
13.19滿足和優化指標(Satisficing and optimizing metrics) 327
13.20 怎樣劃分訓練/開發/測試集 328
13.21如何劃分開發/測試集大小 329
13.22什麼時候該改變開發/測試集和指標? 329
13.23 設定評估指標的意義? 330
13.24 什麼是可避免偏差? 331
13.25 什麼是TOP5錯誤率? 331
13.26 什麼是人類水平錯誤率? 332
13.27 可避免偏差、幾大錯誤率之間的關係? 332
13.28 怎樣選取可避免偏差及貝葉斯錯誤率? 332
13.29 怎樣減少方差? 333
13.30 貝葉斯錯誤率的最佳估計 333
13.31 舉機器學習超過單個人類表現幾個例子? 334
13.32 如何改善你的模型? 334
13.33 理解誤差分析 335
13.34 為什麼值得花時間檢視錯誤標記資料? 336
13.35 快速搭建初始系統的意義? 336
13.36 為什麼要在不同的劃分上訓練及測試? 337
13.37 如何解決資料不匹配問題? 338
13.38 梯度檢驗注意事項? 340
13.39 什麼是隨機梯度下降? 341
13.40 什麼是批量梯度下降? 341
13.41 什麼是小批量梯度下降? 341
13.42 怎麼配置mini-batch梯度下降 342
13.43 區域性最優的問題 343
13.44 提升演算法效能思路 346
第十四章 超引數調整 358
14.1 除錯處理 358
14.2 有哪些超引數 359
14.3 如何選擇除錯值? 359
14.4 為超引數選擇合適的範圍 359
14.5 如何搜尋超引數? 359
第十五章 異構計算, GPU和框架選型指南 361
15.1 什麼是異構計算? 361
15.2 什麼是GPGPU? 361
15.3 GPU架構簡介 361
15.3.1 為什麼要使用GPU?
15.3.2 CUDA 核心是什麼?
15.3.3 新圖靈架構裡的tensor core對深度學習有什麼作用?
15.3.4 GPU記憶體架構和應用效能的聯絡?
15.4 CUDA 框架
15.4.1 做CUDA程式設計難不難?
15.4.2 cuDNN
15.5 GPU硬體環境配置推薦
15.5.1 GPU主要效能指標
15.5.2 購買建議
15.6 軟體環境搭建
15.6.1 作業系統選擇?
15.6.2 本機安裝還是使用docker?
15.6.3 GPU驅動問題
15.7 框架選擇
15.7.1 主流框架比較
15.7.2 框架詳細資訊
15.7.3 哪些框架對於部署環境友好?
15.7.4 移動平臺的框架如何選擇?
15.8 其他
15.8.1 多GPU環境的配置
15.8.2 是不是可以分散式訓練?
15.8.3 可以在SPARK環境裡訓練或者部署模型嗎?
15.8.4 怎麼進一步優化效能?
15.8.5 TPU和GPU的區別?
15.8.6 未來量子計算對於深度學習等AI技術的影像?
參考文獻 366
hey you look like a cool developer. Translate it in english.