神經(jīng)網(wǎng)絡(luò)在深度學(xué)習(xí)和人工智能中發(fā)揮著非常重要的作用,其應(yīng)用領(lǐng)域非常廣泛,涵蓋從醫(yī)療診斷、財(cái)務(wù)預(yù)測到機(jī)器診斷等多個(gè)領(lǐng)域。
《神經(jīng)網(wǎng)絡(luò)設(shè)計(jì)與實(shí)現(xiàn)》旨在指導(dǎo)你以實(shí)用的方式學(xué)習(xí)神經(jīng)網(wǎng)絡(luò)。書中將簡要介紹感知器網(wǎng)絡(luò),從而幫助你入門。然后,你將獲得有關(guān)機(jī)器學(xué)習(xí)的見解,并了解人工智能的未來。接下來,你將研究如何使用嵌入來處理文本數(shù)據(jù),并學(xué)習(xí)長短期記憶網(wǎng)絡(luò)在解決常見自然語言處理問題中的作用。該書還將演示如何實(shí)現(xiàn)高級(jí)概念,包括遷移學(xué)習(xí)、生成對(duì)抗網(wǎng)絡(luò)、自編碼器和強(qiáng)化學(xué)習(xí),以及有關(guān)神經(jīng)網(wǎng)絡(luò)領(lǐng)域新進(jìn)展的更多內(nèi)容。
在完成該書的學(xué)習(xí)后,你將掌握構(gòu)建、訓(xùn)練和優(yōu)化自己的神經(jīng)網(wǎng)絡(luò)模型所需的技能,該模型能夠提供可預(yù)測的解決方案。通過閱讀該書,你將:
●了解如何使用反向傳播訓(xùn)練網(wǎng)絡(luò)。
●了解遷移學(xué)習(xí)的概念,以使用Keras和VGG網(wǎng)絡(luò)解決任務(wù)。
●探索如何加載和轉(zhuǎn)換圖像以用于神經(jīng)網(wǎng)絡(luò)。
●掌握LSTM和NLP等高級(jí)、復(fù)雜的深度學(xué)習(xí)概念,以掌握新知識(shí)。
●研究如何將神經(jīng)網(wǎng)絡(luò)應(yīng)用于多個(gè)領(lǐng)域。
●探索創(chuàng)新算法,例如生成對(duì)抗網(wǎng)絡(luò)和深度強(qiáng)化學(xué)習(xí)。
●解決神經(jīng)網(wǎng)絡(luò)開發(fā)面臨的共同挑戰(zhàn)。
譯 者 序
“暮色蒼?磩潘,亂云飛渡仍從容。天生一個(gè)仙人洞,無限風(fēng)光在險(xiǎn)峰!
深度學(xué)習(xí)自2006年正式提出以來,經(jīng)過15年多的發(fā)展,無論是在理論還是在實(shí)際應(yīng)用方面,都得到了突破性的進(jìn)展。它使人工智能(AI)產(chǎn)生了革命性的突破,讓人們切實(shí)領(lǐng)略到人工智能給生活帶來改變的潛力。機(jī)器學(xué)習(xí)與深度學(xué)習(xí)因而成為很多AI公司、科研院所和高校的主要研究內(nèi)容。
近年來,深度學(xué)習(xí)、遷移學(xué)習(xí)與強(qiáng)化學(xué)習(xí)已經(jīng)成為獨(dú)立的研究分支,學(xué)術(shù)界和產(chǎn)業(yè)界在理論、算法和應(yīng)用方面均取得了長足發(fā)展,深度學(xué)習(xí)+場景/強(qiáng)化學(xué)習(xí)+場景的AI產(chǎn)品已經(jīng)給人類帶來了很多方便。
本書從機(jī)器學(xué)習(xí)基礎(chǔ)、深度學(xué)習(xí)應(yīng)用和高級(jí)機(jī)器學(xué)習(xí)這三個(gè)方面入手,結(jié)合算法理論、代碼實(shí)現(xiàn)和應(yīng)用場景,介紹了機(jī)器學(xué)習(xí)的新動(dòng)向和新技術(shù)。全書分為三部分,第一部分為神經(jīng)網(wǎng)絡(luò)入門。第1章主要介紹人工智能的歷史、機(jī)器學(xué)習(xí)概述和監(jiān)督學(xué)習(xí)算法。第2章介紹神經(jīng)網(wǎng)絡(luò)基礎(chǔ)、感知器、神經(jīng)網(wǎng)絡(luò)以及FFNN算法實(shí)現(xiàn)。第二部分為深度學(xué)習(xí)應(yīng)用。第3章主要介紹基于卷積神經(jīng)網(wǎng)絡(luò)的圖像處理。第4章介紹文本挖掘。第5章介紹循環(huán)神經(jīng)網(wǎng)絡(luò)。第6章介紹如何利用遷移學(xué)習(xí)重用神經(jīng)網(wǎng)絡(luò)。第三部分為高級(jí)應(yīng)用領(lǐng)域。第7章主要對(duì)生成對(duì)抗網(wǎng)絡(luò)的挑戰(zhàn)、發(fā)展變化和時(shí)間表進(jìn)行了介紹,并實(shí)現(xiàn)了DCGAN、CycleGAN、ProGAN、StarGAN、StyleGAN等算法。第8章主要對(duì)自編碼器、損失函數(shù)和遇到的挑戰(zhàn)進(jìn)行了介紹,并實(shí)現(xiàn)了變分自編碼器。第9章對(duì)深度置信網(wǎng)絡(luò)(DBN)的架構(gòu)、訓(xùn)練和調(diào)參進(jìn)行了介紹。第10章主要講解了強(qiáng)化學(xué)習(xí)的基本定義,并介紹了Q-learning和冰湖問題。第11章首先對(duì)本書進(jìn)行了總結(jié),然后對(duì)人工智能和機(jī)器學(xué)習(xí)的未來進(jìn)行了展望,其中包括對(duì)AI的可解釋性和安全性等問題的討論。
本書的翻譯工作由四川省農(nóng)業(yè)科學(xué)院遙感應(yīng)用研究所郭濤和吉林大學(xué)朱夢瑤發(fā)起并組建翻譯團(tuán)隊(duì)完成。其中四川外國語大學(xué)成都學(xué)院余秋琳負(fù)責(zé)第1、2和11章,北華航天工業(yè)學(xué)院趙子輝負(fù)責(zé)第3、4和5章,吉林大學(xué)朱夢瑤負(fù)責(zé)第8、9和10章,郭濤負(fù)責(zé)第6章、第7章和前言等內(nèi)容,并由郭濤和朱夢瑤負(fù)責(zé)統(tǒng)稿、校對(duì)和審核。在此感謝所有參與本書的翻譯校對(duì)和技術(shù)審核的人員,感謝你們對(duì)本書的出版做出的貢獻(xiàn)。
鑒于本書涉及的廣度和深度,以及譯者團(tuán)隊(duì)的水平,本書的翻譯難免有錯(cuò)漏之處,歡迎各位讀者在閱讀過程中將本書的問題和勘誤提交至Github(https://github.com/guotao0628/Hands-On-Neural-Networks)。
最后,感謝機(jī)械工業(yè)出版社華章分社的王春華編輯和李美瑩編輯,她們?yōu)楸WC本書的質(zhì)量做了大量的編輯和校對(duì)工作,在此深表謝意。
郭 濤
2021年
譯者序
前言
第一部分 神經(jīng)網(wǎng)絡(luò)入門
第1章 有監(jiān)督學(xué)習(xí)入門2
1.1 人工智能的歷史2
1.2 機(jī)器學(xué)習(xí)概述4
1.2.1 有監(jiān)督學(xué)習(xí)4
1.2.2 無監(jiān)督學(xué)習(xí)4
1.2.3 半監(jiān)督學(xué)習(xí)5
1.2.4 強(qiáng)化學(xué)習(xí)5
1.3 配置環(huán)境6
1.3.1 了解虛擬環(huán)境7
1.3.2 Anaconda8
1.3.3 Docker9
1.4 Python有監(jiān)督學(xué)習(xí)實(shí)踐9
1.5 特征工程11
1.6 有監(jiān)督學(xué)習(xí)算法14
1.6.1 指標(biāo)15
1.6.2 模型評(píng)估17
1.7 總結(jié)19
第2章 神經(jīng)網(wǎng)絡(luò)基礎(chǔ)20
2.1 感知器20
2.2 Keras27
2.3 前饋神經(jīng)網(wǎng)絡(luò)29
2.3.1 反向傳播介紹31
2.3.2 激活函數(shù)33
2.3.3 Keras實(shí)現(xiàn)36
2.4 從頭開始使用Python編寫FFNN40
2.4.1 FFNN的Keras實(shí)現(xiàn)43
2.4.2 TensorBoard45
2.4.3 XOR問題中的TensorBoard45
2.5 總結(jié)48
第二部分 深度學(xué)習(xí)應(yīng)用
第3章 基于卷積神經(jīng)網(wǎng)絡(luò)的圖像處理50
3.1 理解卷積神經(jīng)網(wǎng)絡(luò)50
3.2 卷積層52
3.2.1 池化層55
3.2.2 丟棄層57
3.2.3 歸一化層57
3.2.4 輸出層57
3.3 Keras中的卷積神經(jīng)網(wǎng)絡(luò)58
3.3.1 加載數(shù)據(jù)58
3.3.2 創(chuàng)建模型60
3.3.3 網(wǎng)絡(luò)配置60
3.4 Keras表情識(shí)別63
3.5 優(yōu)化網(wǎng)絡(luò)68
3.6 總結(jié)70
第4章 利用文本嵌入71
4.1 面向NLP的機(jī)器學(xué)習(xí)71
4.2 理解詞嵌入73
4.2.1 詞嵌入的應(yīng)用73
4.2.2 Word2vec74
4.3 GloVe80
4.3.1 全局矩陣分解80
4.3.2 使用GloVe模型82
4.3.3 基于GloVe的文本分類85
4.4 總結(jié)87
第5章 循環(huán)神經(jīng)網(wǎng)絡(luò)88
5.1 理解循環(huán)神經(jīng)網(wǎng)絡(luò)88
5.1.1 循環(huán)神經(jīng)網(wǎng)絡(luò)原理90
5.1.2 循環(huán)神經(jīng)網(wǎng)絡(luò)類型91
5.1.3 損失函數(shù)94
5.2 長短期記憶95
5.2.1 LSTM架構(gòu)95
5.2.2 Keras長短期記憶實(shí)現(xiàn)98
5.3 PyTorch基礎(chǔ)知識(shí)102
5.4 總結(jié)106
第6章 利用遷移學(xué)習(xí)重用神經(jīng)網(wǎng)絡(luò)107
6.1 遷移學(xué)習(xí)理論107
6.1.1 多任務(wù)學(xué)習(xí)介紹108
6.1.2 重用其他網(wǎng)絡(luò)作為特征提取器108
6.2 實(shí)現(xiàn)多任務(wù)學(xué)習(xí)108
6.3 特征提取110
6.4 在PyTorch中實(shí)現(xiàn)遷移學(xué)習(xí)110
6.5 總結(jié)116
第三部分 高級(jí)應(yīng)用領(lǐng)域
第7章 使用生成算法118
7.1 判別算法與生成算法118
7.2 理解GAN120
7.2.1 訓(xùn)練GAN121
7.2.2 GAN面臨的挑戰(zhàn)123
7.3 GAN的發(fā)展變化和時(shí)間線124
7.3.1 條件GAN125
7.3.2 DCGAN125
7.3.3 Pix2Pix GAN131
7.3.4 StackGAN132
7.3.5 CycleGAN133
7.3.6 ProGAN135
7.3.7 StarGAN136
7.3.8 BigGAN138
7.3.9 StyleGAN139
7.3.10 Deepfake142
7.3.11 RadialGAN143
7.4 總結(jié)144
7.5 延伸閱讀144
第8章 實(shí)現(xiàn)自編碼器146
8.1 自編碼器概述146
8.2 自編碼器的應(yīng)用147
8.3 瓶頸和損失函數(shù)147
8.4 自編碼器的標(biāo)準(zhǔn)類型148
8.4.1 欠完備自編碼器148
8.4.2 多層自編碼器151
8.4.3 卷積自編碼器152
8.4.4 稀疏自編碼器155
8.4.5 去噪自編碼器156
8.4.6 收縮自編碼器157
8.5 變分自編碼器157
8.6 訓(xùn)練變分自編碼器159
8.7 總結(jié)164
8.8 延伸閱讀164
第9章 DBN165
9.1 DBN概述165
9.1.1 貝葉斯置信網(wǎng)絡(luò)166
9.1.2 受限玻爾茲曼機(jī)167
9.2 DBN架構(gòu)176
9.3 訓(xùn)練DBN177
9.4 微調(diào)179
9.5 數(shù)據(jù)集和庫179
9.5.1 示例—有監(jiān)督的DBN分類180
9.5.2 示例—有監(jiān)督的DBN回歸181
9.5.3 示例—無監(jiān)督的DBN分類182
9.6 總結(jié)183
9.7 延伸閱讀183
第10章 強(qiáng)化學(xué)習(xí)184
10.1 基本定義184
10.2 Q-learning介紹187
10.2.1 學(xué)習(xí)目標(biāo)187
10.2.2 策略優(yōu)化188
10.2.3 Q-learning方法188
10.3 使用OpenAI Gym188
10.4 冰湖問題191
10.5 總結(jié)199
第11章 下一步是什么200
11.1 本書總結(jié)200
11.2 機(jī)器學(xué)習(xí)的未來201
11.3 通用人工智能202
11.3.1 AI倫理問題203
11.3.2 可解釋性203
11.3.3 自動(dòng)化204
11.3.4 AI安全性204
11.3.5 問責(zé)制205
11.4 結(jié)語205