機(jī)器學(xué)習(xí)是人工智能的核心實現(xiàn)方式之一,深度學(xué)習(xí)是機(jī)器學(xué)習(xí)的一種,它基于人工神經(jīng)網(wǎng)絡(luò),通過多層非線性變換提取數(shù)據(jù)特征。本書系統(tǒng)地介紹了深度學(xué)習(xí)的核心理論與應(yīng)用,從人工智能發(fā)展歷程和機(jī)器學(xué)習(xí)基礎(chǔ)講起,涵蓋Python編程、主流框架(TensorFlow、PyTorch等)、神經(jīng)網(wǎng)絡(luò)原理(結(jié)構(gòu)、優(yōu)化、評估)及經(jīng)典模型(MLP、CNN、RNN),并配有手寫數(shù)字識別、圖像分類等實戰(zhàn)案例。書中特別設(shè)置生成式學(xué)習(xí)(VAE、GAN)、強(qiáng)化學(xué)習(xí)、神經(jīng)算子(DeepONet、PINN)等前沿內(nèi)容,最后探討Transformer架構(gòu)、模型可解釋性等熱點議題。
更多科學(xué)出版社服務(wù),請掃碼獲取。
1991.09-1995.07 山西大學(xué),本科
1995.08-1998.03 北京理工大學(xué),碩士
2000.12-2004.08 香港大學(xué),博士1998.04-2000.11,北京理工大學(xué),助教
2004.09-2006.06,南非金山大學(xué),博士后
2006.07-2009.06,北京理工大學(xué),副教授
2009.07-現(xiàn)在, 北京理工大學(xué),教授控制論與人工智能基礎(chǔ)已發(fā)表SCI學(xué)術(shù)論文120多篇,撰寫專著 2部,主持國家自然科學(xué)基金 5 項IEEE 高級會員,《Control Theory and Technology》副主編
目錄
前言
主要符號表
1 深度學(xué)習(xí)概述 1
1.1 人工智能浪潮 1
1.1.1 第一次人工智能浪潮 2
1.1.2 第二次人工智能浪潮 3
1.1.3 第三次人工智能浪潮 4
1.2 什么是機(jī)器學(xué)習(xí)? 6
1.2.1 數(shù)據(jù) 6
1.2.2 模型 7
1.2.3 算法 9
1.2.4 指標(biāo) 10
1.2.5 機(jī)器學(xué)習(xí)與傳統(tǒng)編程的區(qū)別 10
1.3 監(jiān)督學(xué)習(xí) 11
1.3.1 分類問題 12
1.3.2 回歸問題 14
1.4 無監(jiān)督學(xué)習(xí) 17
1.5 半監(jiān)督學(xué)習(xí) 21
1.6 強(qiáng)化學(xué)習(xí) 22
1.7 深度學(xué)習(xí) 24
2 深度學(xué)習(xí)的編程基礎(chǔ) 27
2.1 安裝Anaconda開發(fā)環(huán)境 27
2.1.1 環(huán)境和包的管理 28
2.1.2 運(yùn)行Python程序 32
2.2 Python語言基礎(chǔ) 34
2.2.1 基本數(shù)據(jù)類型 35
2.2.2 條件語句 40
2.2.3 循環(huán)語句 42
2.2.4 函數(shù) 47
2.2.5 類 59
2.3 Numpy 69
2.3.1 創(chuàng)建和保存ndarray 70
2.3.2 Numpy中的函數(shù) 74
2.3.3 ndarray塑形 78
2.3.4 ndarray中的矩陣代數(shù) 81
2.3.5 ndarray的random模塊 82
2.4 Pandas 85
2.4.1 主要數(shù)據(jù)結(jié)構(gòu) 85
2.4.2 數(shù)據(jù)的導(dǎo)入與導(dǎo)出 97
2.4.3 數(shù)據(jù)操作 102
2.4.4 缺失值處理 109
2.4.5 描述性統(tǒng)計 113
2.4.6 數(shù)據(jù)可視化 116
2.5 Matplotlib 118
2.5.1 函數(shù)式接口和OO接口 118
2.5.2 圖形、坐標(biāo)軸和其他組件 119
2.5.3 一些繪圖實例 121
3 深度學(xué)習(xí)框架簡介 127
3.1 TensorFlow框架 127
3.1.1 核心特點 127
3.1.2 TensorFlow的工作流程 128
3.1.3 TensorFlow的優(yōu)勢 128
3.1.4 張量 129
3.2 Keras API 130
3.2.1 序貫API 131
3.2.2 函數(shù)式API 131
3.2.3 子類化API 132
3.2.4 總結(jié) 132
3.3 PyTorch框架 133
3.3.1 PyTorch的關(guān)鍵特點 133
3.3.2 PyTorch的基本使用流程 136
3.3.3 總結(jié) 143
3.4 其他框架 143
3.4.1 華為MindSpore 143
3.4.2 百度PaddlePaddle 144
3.4.3 總結(jié) 145
4 深度學(xué)習(xí)的數(shù)學(xué)理論 147
4.1 神經(jīng)網(wǎng)絡(luò)簡介 147
4.1.1 神經(jīng)元 147
4.1.2 層 149
4.1.3 神經(jīng)網(wǎng)絡(luò) 149
4.2 激活函數(shù) 150
4.3 損失函數(shù) 155
4.3.1 均方誤差 155
4.3.2 交叉熵 156
4.3.3 實例:ILSVRC 2012圖片分類任務(wù)的損失函數(shù) 158
4.4 優(yōu)化器 158
4.4.1 小批量隨機(jī)梯度下降法 158
4.4.2 帶動量的SGD 161
4.4.3 Adagrad 161
4.4.4 RMSProp 162
4.4.5 Adam 162
4.5 評估指標(biāo) 163
4.5.1 數(shù)據(jù)集的劃分 164
4.5.2 交叉驗證 165
4.5.3 過擬合與泛化 166
5 多層感知機(jī)模型 169
5.1 感知機(jī)簡介 169
5.1.1 感知機(jī)的基本結(jié)構(gòu) 169
5.1.2 感知機(jī)的工作原理 169
5.1.3 感知機(jī)的數(shù)學(xué)公式 170
5.1.4 感知機(jī)的訓(xùn)練過程 170
5.1.5 感知機(jī)的優(yōu)缺點 171
5.1.6 總結(jié) 171
5.2 多層感知機(jī)的反向傳播算法 171
5.2.1 多層感知機(jī)簡介 171
5.2.2 反向傳播算法概述 172
5.3 mnist手寫數(shù)字識別問題 174
5.3.1 mnist數(shù)據(jù)集 175
5.3.2 建立MLP模型 176
5.3.3 訓(xùn)練MLP模型 179
5.3.4 繪制學(xué)習(xí)曲線 180
5.3.5 評估MLP模型 182
5.3.6 利用模型進(jìn)行預(yù)測 183
5.3.7 模型訓(xùn)練中的各種時間開銷 185
5.4 Boston房價預(yù)測的回歸問題 186
5.4.1 Boston房價數(shù)據(jù)集 186
5.4.2 建立MLP回歸模型 188
5.4.3 訓(xùn)練MLP模型 190
5.4.4 評估MLP模型 191
5.4.5 用MLP模型進(jìn)行預(yù)測 191
5.4.6 建立、訓(xùn)練、評估多元線性回歸模型 191
5.4.7 MLP與MLR模型對比 193
6 在計算機(jī)視覺領(lǐng)域的實踐 195
6.1 卷積神經(jīng)網(wǎng)絡(luò) 195
6.1.1 卷積運(yùn)算 196
6.1.2 填充和步幅 198
6.1.3 最大與平均匯聚 199
6.2 CNN的典型應(yīng)用 200
6.2.1 圖像分類 200
6.2.2 目標(biāo)檢測 201
6.2.3 圖像分割 201
6.2.4 風(fēng)格遷移 201
6.2.5 圖像生成與超分辨率 201
6.2.6 圖像描述與視覺問答 202
6.2.7 人臉識別與表情分析 202
6.2.8 姿態(tài)估計 202
6.2.9 自動駕駛 202
6.2.10 視頻分析與處理 202
6.3 在mnist數(shù)據(jù)集上訓(xùn)練CNN模型 203
6.3.1 mnist數(shù)據(jù)集 204
6.3.2 建立多層CNN模型 205
6.3.3 訓(xùn)練CNN模型 207
6.3.4 繪制學(xué)習(xí)曲線 208
6.3.5 評估CNN模型 210
6.3.6 利用模型進(jìn)行預(yù)測 211
6.3.7 模型訓(xùn)練中的各種時間開銷 213
6.4 經(jīng)典CNN模型簡介 214
6.4.1 LeNet-5 214
6.4.2 AlexNet 217
6.4.3 VGGNet 220
6.4.4 GoogLeNet 223
6.4.5 ResNet 227
6.5 圖片數(shù)據(jù)增強(qiáng) 229
6.6 解釋CNN模型學(xué)到的內(nèi)容 233
6.6.1 可視化卷積濾波器 233
6.6.2 可視化類激活熱力圖 238
6.6.3 可視化中間激活值 244
6.7 DeepDream 249
7 在序列數(shù)據(jù)學(xué)習(xí)領(lǐng)域的實踐 257
7.1 循環(huán)神經(jīng)網(wǎng)絡(luò)簡介 257
7.2 長短期記憶網(wǎng)絡(luò) 259
7.3 門控循環(huán)單元 261
7.4 在小型時間序列數(shù)據(jù)集上訓(xùn)練RNN模型 263
7.4.1 jena數(shù)據(jù)集簡介 263
7.4.2 dense模型 268
7.4.3 Conv1D模型 269
7.4.4 LSTM模型 270
7.5 對文本序列的學(xué)習(xí) 271
7.5.1 自然語言處理概述 271
7.5.2 序列到序列的學(xué)習(xí) 274
7.6 文本情感分類 277
7.6.1 準(zhǔn)備IMDB數(shù)據(jù) 279
7.6.2 詞袋模型:BoW 283
7.6.3 序列模型:雙向LSTM 287
7.6.4 序列模型:word embedding 289
8 生成式學(xué)習(xí) 295
8.1 生成式學(xué)習(xí)簡述 295
8.1.1 生成式學(xué)習(xí)基本方法簡述 295
8.1.2 生成式學(xué)習(xí)的應(yīng)用 296
8.1.3 生成式學(xué)習(xí)的挑戰(zhàn) 297
8.2 自編碼器 298
8.2.1 自編碼器的結(jié)構(gòu)、原理及特性 298
8.2.2 自編碼器的類型 299
8.2.3 應(yīng)用領(lǐng)域 304
8.3 變分自編碼器 304
8.3.1 潛變量模型 304
8.3.2 非線性潛變量模型 306
8.3.3 模型訓(xùn)練 307
8.3.4 ELBO性質(zhì) 309
8.3.5 變分近似 311
8.3.6 變分自編碼器的原理 312
8.3.7 重新參數(shù)化技巧 313
8.3.8 示例:生成與mnist手寫數(shù)字風(fēng)格相似的圖片 314
8.4 生成對抗網(wǎng)絡(luò) 319
8.4.1 GAN的原理 320
8.4.2 提高GAN訓(xùn)練穩(wěn)定性 323
8.4.3 示例:利用GAN生成圖像 326
9 強(qiáng)化學(xué)習(xí) 335
9.1 馬爾可夫決策過程、回報和策略 335
9.1.1 馬爾可夫過程 336
9.1.2 馬爾可夫獎勵過程 336
9.1.3 馬爾可夫決策過程 337
9.1.4 部分可觀察馬爾可夫決策過程 337
9.1.5 策略 338
9.2 期望回報 339
9.2.1 狀態(tài)值和動作值 339
9.2.2 最優(yōu)策略 340
9.2.3 貝爾曼方程 340
9.3 表格型強(qiáng)化學(xué)習(xí) 341
9.3.1 動態(tài)規(guī)劃 342
9.3.2 蒙特卡洛方法 342
9.3.3 時序差分方法 343
9.4 擬合Q學(xué)習(xí) 344
9.4.1 利用深度Q網(wǎng)絡(luò)玩Atari游戲 344
9.4.2 雙Q學(xué)習(xí)和雙Q深度學(xué)習(xí) 346
9.5 策略梯度方法 347
9.5.1 梯度更新的推導(dǎo) 348
9.5.2 REINFORCE算法 350
9.5.3 基線 350
9.5.4 狀態(tài)依賴的基線 351
9.6 Actor-Critic算法 357
9.7 離線強(qiáng)化學(xué)習(xí) 362
9.8 討論 363
10 神經(jīng)算子 365
10.1 DeepONet 365
10.1.1 算子的通用逼近定理 365
10.1.2 DeepONet的架構(gòu) 366
10.1.3 DeepONet的學(xué)習(xí)實例 369
10.1.4 DeepONet的優(yōu)勢 374
10.2 傅里葉神經(jīng)算子 375
10.2.1 FNO的背景 376
10.2.2 FNO的原理 376
10.2.3 FNO的架構(gòu) 378
10.2.4 FNO的學(xué)習(xí)實例 379
10.2.5 DeepONet和FNO的比較 384
10.3 物理信息神經(jīng)網(wǎng)絡(luò) 385
10.3.1 正向問題:數(shù)據(jù)驅(qū)動微分方程求解 385
10.3.2 逆向問題:數(shù)據(jù)驅(qū)動發(fā)現(xiàn)微分方程 392
11 深度學(xué)習(xí)進(jìn)階 399
11.1 預(yù)訓(xùn)練模型與微調(diào) 399
11.1.1 特征提取 399
11.1.2 模型微調(diào) 408
11.2 Transformer架構(gòu) 410
11.2.1 Transformer架構(gòu)的發(fā)展歷程 410
11.2.2 Transformer架構(gòu)的核心原理 410
11.2.3 Transformer在自然語言處理中的應(yīng)用 420
11.2.4 Transformer架構(gòu)的未來發(fā)展趨勢 424
11.2.5 總結(jié) 426
11.3 KAN與模型可解釋性 427
11.3.1 Kolmogorov-Arnold表示定理 428
11.3.2 KAN的結(jié)構(gòu) 428
11.3.3 KAN的逼近能力 431
11.3.4 網(wǎng)格擴(kuò)展 432
11.3.5 可解釋性:簡化KAN并使其具有交互性 433
11.3.6 如何實現(xiàn)與KAN交互 434
11.3.7 示例:KAN實現(xiàn)函數(shù)擬合 437
A 微積分 443
A.1 導(dǎo)數(shù)與偏導(dǎo)數(shù) 443
A.2 梯度與多元函數(shù)極值問題 444
A.2.1 基本概念 444
A.2.2 梯度消失 445
A.2.3 梯度爆炸 446
A.3 鏈?zhǔn)椒▌t 446
B 線性代數(shù) 449
B.1 向量與矩陣 449
B.1.1 向量和矩陣范數(shù) 449
B.1.2 向量點積 449
B.1.3 矩陣乘法 450
B.1.4 轉(zhuǎn)置 450
B.1.5 方陣的逆 450
B.1.6 方陣的跡 451
B.1.7 方陣的行列式 451
B.1.8 矩陣的特征值分解 452
B.1.9 矩陣的奇異值分解 452
B.1.10 對角矩陣 452
B.1.11 三角矩陣 452
B.1.12 正交矩陣 453
B.2 線性函數(shù) 453
B.3 矩陣和向量的微積分 454
B.3.1 向量值函數(shù)的梯度 454
B.3.2 矩陣的梯度 455
B.4 張量 455
C 概率統(tǒng)計 457
C.1 隨機(jī)變量和概率分布 457
C.2 邊緣概率分布 458
C.3 期望和方差 458
C.3.1 期望 458
C.3.2 方差 459
C.4 常見的概率分布 459
C.4.1 正態(tài)分布 459
C.4.2 二項分布 459
C.4.3 泊松分布 460
C.4.4 指數(shù)分布 460
C.4.5 均勻分布 460
C.4.6 卡方分布 460
C.5 概率分布間的度量 461
C.5.1 交叉熵 461
C.5.2 KL散度 461
D 優(yōu)化 463
參考文獻(xiàn) 465