深度學習是人工智能的重要分支,在多個應(yīng)用領(lǐng)域取得了突破性成果。本書作為深度學習的入門教材,基本涵蓋了深度學習的各個方面。全書共8章,第1章概要介紹了深度學習的基本概念、典型算法及應(yīng)用;第2~5章是本書的核心內(nèi)容,詳細介紹了卷積神經(jīng)網(wǎng)絡(luò)、循環(huán)神經(jīng)網(wǎng)絡(luò)、Transformer和生成對抗網(wǎng)絡(luò)的基本原理、典型算法以及主要應(yīng)用;第6章介紹了一些典型的深度生成模型以及近期比較流行的擴散模型;第7章介紹了深度學習中常用的正則化與優(yōu)化方法;第8章介紹了TensorFlow、PyTorch和飛槳三個常用的深度學習框架。本書每章都附有復習題,中間各章還附有實驗題,便于讀者復習知識點和進行實踐鍛煉。此外,附錄中還給出了一些數(shù)學基礎(chǔ)知識和中英文術(shù)語對照。
本書可作為高等院校計算機科學與技術(shù)、智能科學與技術(shù)、自動化、電子科學與技術(shù)等相關(guān)專業(yè)的研究生或本科生教材,也可作為深度學習研究人員與算法工程師的參考書。
?讀者通過本書可以掌握深度學習的基本原理、核心技術(shù)以及實踐技能。
?各章內(nèi)容相對獨立,讀者可根據(jù)需要選擇閱讀。
?每章附有復習題和實驗題,便于讀者復習重要知識點和進行實踐技能鍛煉。
?每章附有“本章人物”專欄,介紹與該章內(nèi)容相關(guān)的著名科學家。
?附錄中給出了數(shù)學基礎(chǔ)知識和中英文術(shù)語對照,便于讀者查閱學習。
前言
ChatGPT等大型語言模型的出現(xiàn)引發(fā)了新一輪人工智能浪潮,這被認為是繼互聯(lián)網(wǎng)之后信息技術(shù)發(fā)展史上的又一個里程碑。ChatGPT等大型語言模型均基于Transformer構(gòu)建,Transformer本身就是一種深度學習模型,這足以說明深度學習在人工智能中具有舉足輕重的地位。深度學習在計算機視覺、語音識別和自然語言處理等領(lǐng)域都取得了大量突破性的成果,很多成果已經(jīng)在我國經(jīng)濟與社會發(fā)展、人民生產(chǎn)生活中發(fā)揮了重要作用,如人臉識別、語音識別、語音合成、機器翻譯、問答系統(tǒng)和產(chǎn)品缺陷檢測等。目前,深度學習的應(yīng)用領(lǐng)域還在不斷擴展,如基于AI的內(nèi)容生成、蛋白質(zhì)結(jié)構(gòu)預(yù)測、新興材料結(jié)構(gòu)預(yù)測、天氣預(yù)報以及數(shù)學發(fā)現(xiàn)等,并且在部分領(lǐng)域已經(jīng)取得了重要進展。
2018~2019學年春季學期,我在中國科學院大學首次開設(shè)了“深度學習”課程,選課人數(shù)超過400人,由于當時市面上并沒有合適的教材可用,為了講好這門課,我花費了大量時間備課,好在自己的研究方向跟深度學習緊密相關(guān),積累了不少素材,但仍閱讀了大量文獻資料來撰寫講義和制作課件。我很早就有將課程講義完善并出版的想法,但是由于教學科研工作繁忙,直到學校批復“深度學習”課程要出版教材,我才付諸行動。在此要感謝學校教務(wù)處田晨晨老師和計算機學院楊林春老師在本書撰寫過程中的支持與幫助,同時也要感謝機械工業(yè)出版社對本書出版工作的大力支持。
作為高等學校教材,本書寫作的初衷是希望幫助同學們掌握深度學習的基本原理、核心技術(shù)以及實踐技能。全書共分8章,各章內(nèi)容相對獨立,在講授或者閱讀時不一定要按照順序進行。第1章概要介紹了深度學習的基本概念、典型算法及應(yīng)用;第2~5章是本書的核心內(nèi)容,詳細介紹了卷積神經(jīng)網(wǎng)絡(luò)、循環(huán)神經(jīng)網(wǎng)絡(luò)、Transformer和生成對抗網(wǎng)絡(luò)的相關(guān)知識;第6章介紹了一些典型的深度生成模型以及近期比較流行的擴散模型;第7章介紹了深度學習中常用的正則化與優(yōu)化方法;第8章介紹了TensorFlow、PyTorch和飛槳三個常用的深度學習框架。此外,附錄中還給出了一些數(shù)學基礎(chǔ)知識和中英文術(shù)語對照。
每章都給出了復習題,以幫助讀者復習該章內(nèi)容。同時,我認為只有通過動手實踐才能深刻領(lǐng)會深度學習算法的精髓,因此,第2~7章都給出了一些實驗題,便于選用本書的教師有選擇地安排教學實驗。此外,為了讓讀者更好地了解深度學習的起源與發(fā)展,在每章最后還開設(shè)了“本章人物”專欄,介紹與該章內(nèi)容相關(guān)的著名科學家。
當然,由于深度學習技術(shù)的發(fā)展日新月異,本書并沒有覆蓋深度學習的全部內(nèi)容,希望再版時能夠不斷更新,也希望廣大讀者提出寶貴建議。
本書能夠完成,還要感謝“深度學習”課程教學團隊的張新鋒老師、林姝老師和萬方老師的支持與幫助,感謝CCIP實驗室的各位同學,包括李鵬飛、李帥敏、景琨、王義宇、劉淼、李科堯、向迅之、王迪、陳旭、邱柏瑜、夏琦等。北京交通大學于劍教授審閱了教材全稿并提出了很好的修改建議,在此對于劍教授表示衷心的感謝。此外,本書參考了大量學術(shù)文獻與互聯(lián)網(wǎng)資源,在此對文獻與資源作者同樣表示衷心的感謝!
最后,由于本人能力有限,書中難免會有不當和錯誤之處,還請各位讀者不吝告知,我將及時糾正!
徐俊剛
中國科學院大學
2024年4月于北京
徐俊剛 中國科學院大學計算機科學與技術(shù)學院教授,博士生導師,云計算與智能信息處理實驗室(Cloud Computing & Intelligent Information Processing Lab,CCIP實驗室)主任,中國科學院大學第六屆學位評定委員會計算機與控制學位評定委員會委員,計算機科學與技術(shù)學院教學委員會委員,計算機科學與技術(shù)學院“深度學習”課程首席教授。2003年博士畢業(yè)于中國科學院軟件研究所,2005年清華大學計算機科學與技術(shù)系博士后出站。研究領(lǐng)域包括深度學習、自動機器學習和多模態(tài)智能分析等,主持國家科技支撐計劃課題、國家自然科學基金面上項目、北京市科技計劃課題、北京市自然科學基金面上項目等科研項目多項,發(fā)表論文100余篇。現(xiàn)為國家科技專家?guī)鞂<,北京市科學技術(shù)委員會、中關(guān)村科技園區(qū)管理委員會專家。目前任中國人工智能學會智能服務(wù)專業(yè)委員會常務(wù)委員,中國計算機學會人工智能與模式識別專業(yè)委員會執(zhí)行委員、數(shù)據(jù)庫專業(yè)委員會執(zhí)行委員和自然語言處理專業(yè)委員會執(zhí)行委員。講授的“深度學習”課程被評為2021年中國科學院大學“校級優(yōu)秀研究生課程”,個人榮獲2016年“中國科學院朱李月華優(yōu)秀教師獎”。
目錄
序
前言
主要符號表
第1章 引言 1
1.1 深度學習的起源與發(fā)展 1
1.1.1 深度學習的起源 1
1.1.2 深度學習的發(fā)展 2
1.2 深度學習與機器學習、人工智能的關(guān)系 4
1.2.1 人工智能 4
1.2.2 機器學習 4
1.2.3 深度學習 5
1.3 深度學習的基本概念和典型算法 6
1.3.1 深度學習的基本概念 6
1.3.2 典型深度學習算法 6
1.4 深度學習的主要應(yīng)用概述 12
1.4.1 深度學習在計算機視覺領(lǐng)域的應(yīng)用 12
1.4.2 深度學習在語音處理領(lǐng)域的應(yīng)用 13
1.4.3 深度學習在自然語言處理領(lǐng)域的應(yīng)用 14
1.4.4 深度學習在多模態(tài)處理領(lǐng)域的應(yīng)用 14
1.5 本書的組織結(jié)構(gòu) 14
復習題 15
參考文獻 15
本章人物:Geoffrey Hinton教授 18
第2章 卷積神經(jīng)網(wǎng)絡(luò) 19
2.1 卷積神經(jīng)網(wǎng)絡(luò)的起源與發(fā)展 19
2.1.1 卷積神經(jīng)網(wǎng)絡(luò)的起源 19
2.1.2 卷積神經(jīng)網(wǎng)絡(luò)的發(fā)展 20
2.2 卷積神經(jīng)網(wǎng)絡(luò)的基本結(jié)構(gòu) 21
2.2.1 卷積層 21
2.2.2 激活函數(shù) 26
2.2.3 池化層 30
2.2.4 全連接層 30
2.2.5 輸出層 30
2.3 卷積神經(jīng)網(wǎng)絡(luò)的訓練 31
2.3.1 卷積神經(jīng)網(wǎng)絡(luò)的訓練過程 31
2.3.2 池化層的訓練 31
2.3.3 卷積層的訓練 33
2.4 典型卷積神經(jīng)網(wǎng)絡(luò) 35
2.4.1 LeNet-5 35
2.4.2 AlexNet 37
2.4.3 VGGNet 39
2.4.4 GoogleNet 41
2.4.5 ResNet 42
2.5 卷積神經(jīng)網(wǎng)絡(luò)的主要應(yīng)用 43
2.5.1 目標檢測 43
2.5.2 圖像分割 52
2.5.3 姿態(tài)估計 56
2.5.4 人臉識別 58
復習題 62
實驗題 62
參考文獻 63
本章人物:Yann LeCun教授 65
第3章 循環(huán)神經(jīng)網(wǎng)絡(luò) 66
3.1 循環(huán)神經(jīng)網(wǎng)絡(luò)的起源與發(fā)展 66
3.2 循環(huán)神經(jīng)網(wǎng)絡(luò)的訓練 67
3.3 長短期記憶網(wǎng)絡(luò) 70
3.4 循環(huán)神經(jīng)網(wǎng)絡(luò)的變種 73
3.4.1 GRU 73
3.4.2 雙向RNN 75
3.4.3 堆疊RNN 75
3.5 循環(huán)神經(jīng)網(wǎng)絡(luò)的典型應(yīng)用 76
3.5.1 語言模型 76
3.5.2 自動文本摘要 79
3.5.3 機器閱讀理解 82
復習題 85
實驗題 86
參考文獻 86
本章人物:Jürgen Schmidhuber教授 89
第4章 Transformer 90
4.1 注意力機制 90
4.1.1 注意力機制的Encoder-Decoder結(jié)構(gòu) 90
4.1.2 注意力機制的分類 92
4.2 Transformer概述 93
4.2.1 Transformer的結(jié)構(gòu) 93
4.2.2 Transformer的輸入編碼 94
4.2.3 Transformer中的自注意力機制 95
4.2.4 Transformer中的其他細節(jié) 98
4.2.5 基于Transformer的大規(guī)模預(yù)訓練模型 99
4.3 GPT系列模型 99
4.3.1 GPT-1 99
4.3.2 GPT-2 101
4.3.3 GPT-3 102
4.3.4 InstructGPT和ChatGPT 103
4.4 BERT系列模型 104
4.4.1 與其他大規(guī)模預(yù)訓練模型的區(qū)別 105
4.4.2 BERT的架構(gòu)與參數(shù) 105
4.4.3 BERT的輸入表示 105
4.4.4 BERT的訓練 107
4.4.5 BERT的變種 107
4.5 Swin Transformer 109
4.5.1 Swin Transformer的提出 109
4.5.2 Swin Transformer結(jié)構(gòu) 109
4.5.3 Swin Transformer的滑動窗口機制 111
4.6 Transformer的主要應(yīng)用 112
4.6.1 自然語言處理領(lǐng)域 112
4.6.2 計算機視覺領(lǐng)域 117
4.6.3 多模態(tài)領(lǐng)域 121
復習題 128
實驗題 128
參考文獻 128
本章人物:Yoshua Bengio教授 131
第5章 生成對抗網(wǎng)絡(luò) 132
5.1 GAN的基本原理 132
5.1.1 零和博弈 132
5.1.2 GAN的基本結(jié)構(gòu) 133
5.1.3 GAN的目標函數(shù) 134
5.1.4 GAN的訓練 134
5.2 GAN的優(yōu)化與改進 135
5.2.1 限定條件優(yōu)化 136
5.2.2 迭代式生成優(yōu)化 138
5.2.3 結(jié)構(gòu)優(yōu)化 141
5.3 GAN的主要應(yīng)用 143
5.3.1 圖像生成 143
5.3.2 圖像轉(zhuǎn)換 144
5.3.3 圖像超分辨率重建 147
5.3.4 音樂生成 148
5.3.5 異常檢測 152
復習題 156
實驗題 156
參考文獻 156
本章人物:Ian Goodfellow博士 158
第6章 深度生成模型 159
6.1 深度生成模型概述 159
6.2 Hopfield神經(jīng)網(wǎng)絡(luò) 160
6.3 玻爾茲曼機與受限玻爾茲曼機 162
6.3.1 玻爾茲曼機 162
6.3.2 受限玻爾茲曼機 163
6.4 Sigmoid信念網(wǎng)絡(luò)與深度信念網(wǎng)絡(luò) 165
6.4.1 Sigmoid信念網(wǎng)絡(luò) 165
6.4.2 深度信念網(wǎng)絡(luò) 166
6.5 深度玻爾茲曼機 167
6.6 自編碼器及其變種 169
6.6.1 自編碼器 169
6.6.2 降噪自編碼器 170
6.6.3 稀疏自編碼器 170
6.6.4 深度自編碼器 171
6.7 擴散模型 172
6.7.1 前向過程 173
6.7.2 逆向過程 174
6.7.3 DDPM的訓練 176
6.8 深度生成模型的應(yīng)