Python深度學習:模型、方法與實現(xiàn)
定 價:129 元
叢書名:智能系統(tǒng)與技術(shù)叢書
- 作者:[保]伊凡·瓦西列夫(Ivan Vasilev)
- 出版時間:2021/9/1
- ISBN:9787111688457
- 出 版 社:機械工業(yè)出版社
- 中圖法分類:TP311.561
- 頁碼:
- 紙張:膠版紙
- 版次:
- 開本:16開
本書集合了基于應(yīng)用領(lǐng)域的高級深度學習的模型、方法和實現(xiàn)。本書分為四部分。第1部分介紹了深度學習的構(gòu)建和神經(jīng)網(wǎng)絡(luò)背后的數(shù)學知識。第二部分討論深度學習在計算機視覺領(lǐng)域的應(yīng)用。第三部分闡述了自然語言和序列處理。講解了使用神經(jīng)網(wǎng)絡(luò)提取復(fù)雜的單詞向量表示。討論了各種類型的循環(huán)網(wǎng)絡(luò),如長短期記憶網(wǎng)絡(luò)和門控循環(huán)單元網(wǎng)絡(luò)。第四部分介紹一些雖然還沒有被廣泛采用但有前途的深度學習技術(shù),包括如何在自動駕駛上應(yīng)用深度學習。學完本書,讀者將掌握與深度學習相關(guān)的關(guān)鍵概念,學會如何使用TensorFlow和PyTorch實現(xiàn)相應(yīng)的AI解決方案。
為了構(gòu)建穩(wěn)健的深度學習系統(tǒng),需要理解神經(jīng)網(wǎng)絡(luò)的工作原理以及如何訓練CNN模型等知識。通過本書,你可以探索新開發(fā)的深度學習模型及其在各個領(lǐng)域的使用方法,以及基于應(yīng)用領(lǐng)域的實現(xiàn)。 本書首先介紹構(gòu)建模塊和神經(jīng)網(wǎng)絡(luò)背后的數(shù)學知識,然后介紹CNN及其在計算機視覺領(lǐng)域的先進應(yīng)用,以及在對象檢測和圖像分割中應(yīng)用流行的CNN架構(gòu)。還將介紹變分自編碼器和GAN,以及如何使用神經(jīng)網(wǎng)絡(luò)來提取單詞的復(fù)雜向量表示。在繼續(xù)討論各種類型的循環(huán)網(wǎng)絡(luò)(如LSTM和GRU)之前,會介紹如何在沒有RNN的情況下使用注意力機制處理序列數(shù)據(jù)。然后,介紹如何使用圖神經(jīng)網(wǎng)絡(luò)處理結(jié)構(gòu)化數(shù)據(jù),以及如何使用元學習采用較少的訓練樣本來訓練神經(jīng)網(wǎng)絡(luò)。后,了解如何將深度學習應(yīng)用于自動駕駛汽車。 閱讀本書,你將掌握關(guān)鍵的深度學習概念和深度學習模型在現(xiàn)實世界中的不同應(yīng)用。你將學到:?·先進的神經(jīng)網(wǎng)絡(luò)架構(gòu)。?·神經(jīng)網(wǎng)絡(luò)背后的理論和數(shù)學知識。?·訓練DNN并將其應(yīng)用于現(xiàn)代深度學習問題。?·使用CNN進行對象檢測和圖像分割。?·實現(xiàn)GAN和變分自編碼器來生成新圖像。?·使用seq2seq模型解決NLP任務(wù),如機器翻譯。?·了解DL技術(shù),如元學習和圖神經(jīng)網(wǎng)絡(luò)。
本書涵蓋了基于應(yīng)用領(lǐng)域的新的深度學習模型、方法和實現(xiàn)。全書共四部分:
● 部分(第1章)介紹深度學習的構(gòu)建和神經(jīng)網(wǎng)絡(luò)(NN)背后的數(shù)學知識。
● 第二部分(第2~4章)闡述卷積神經(jīng)網(wǎng)絡(luò)(CNN)及其在計算機視覺(CV)中的高級應(yīng)用。你將學習在對象檢測和圖像分割應(yīng)用中流行的CNN架構(gòu)。之后,還將學習變分自編碼器和生成對抗網(wǎng)絡(luò)。
● 第三部分(第6~8章)闡述自然語言和序列處理。講解如何使用神經(jīng)網(wǎng)絡(luò)提取復(fù)雜的單詞向量表示。討論各種類型的循環(huán)網(wǎng)絡(luò),如長短期記憶(LSTM)網(wǎng)絡(luò)和門控循環(huán)單元(GRU)網(wǎng)絡(luò)。之后,介紹如何在沒有循環(huán)網(wǎng)絡(luò)的情況下使用注意力機制處理序列數(shù)據(jù)。
● 第四部分(第9~11章)介紹如何使用圖神經(jīng)網(wǎng)絡(luò)來處理結(jié)構(gòu)化數(shù)據(jù)。講解元學習,幫助讀者用較少的訓練樣本來訓練神經(jīng)網(wǎng)絡(luò)。后,介紹如何將深度學習應(yīng)用于自動駕駛。
閱讀本書,讀者將掌握與深度學習相關(guān)的關(guān)鍵概念,以及監(jiān)控和管理深度學習模型的方法。
本書讀者
本書適合數(shù)據(jù)科學家、深度學習工程師、研究人員閱讀,也適合想要掌握深度學習,并想建立自己的創(chuàng)新和獨特的深度學習項目的AI開發(fā)者閱讀。本書也將吸引希望通過使用真實的例子來精通高級用例和深度學習領(lǐng)域的方法的人。閱讀本書需要讀者了解深度學習和Python的基礎(chǔ)知識。
本書涵蓋的內(nèi)容
第1章簡要介紹什么是深度學習,然后討論神經(jīng)網(wǎng)絡(luò)的數(shù)學基礎(chǔ)。本章將討論神經(jīng)網(wǎng)絡(luò)的數(shù)學模型。更具體地說,我們將關(guān)注向量、矩陣和微分,還將深入討論一些梯度下降變化方法,如動量、Adam和Adadelta。除此之外,還將討論如何處理不平衡數(shù)據(jù)集。
第2章提供CNN的簡短描述。我們將討論CNN及其在CV中的應(yīng)用。
第3章討論一些先進的、廣泛使用的神經(jīng)網(wǎng)絡(luò)架構(gòu),包括VGG、ResNet、MobileNet、GoogleNet、Inception、Xception和DenseNet。我們還將使用PyTorch實現(xiàn)ResNet和Xception/MobileNet。
第4章討論兩個重要的視覺任務(wù):對象檢測和圖像分割。我們將提供實現(xiàn)過程。
第5章討論生成模型。特別是我們將討論生成對抗網(wǎng)絡(luò)和神經(jīng)類型的轉(zhuǎn)移,之后將實現(xiàn)特定的風格轉(zhuǎn)換。
第6章介紹單詞和字符級語言模型。我們還將討論單詞向量(word2vec、Glove和fastText),并使用Gensim實現(xiàn)它們。我們還將在自然語言工具包(Natural Language ToolKit,NLTK)的文本處理技術(shù)的幫助下,介紹為機器學習應(yīng)用程序(如主題建模和情感建模)準備文本數(shù)據(jù)的高級技術(shù)和復(fù)雜過程。
第7章討論基本的循環(huán)網(wǎng)絡(luò)、LSTM和GRU單元。我們將為所有的網(wǎng)絡(luò)提供詳細的解釋和純Python實現(xiàn)。
第8章討論序列模型和注意力機制,包括雙向LSTM以及一個名為transformer的新架構(gòu)(該架構(gòu)具有編碼器和解碼器)。
第9章討論圖神經(jīng)網(wǎng)絡(luò)和具有記憶的神經(jīng)網(wǎng)絡(luò),如神經(jīng)圖靈機(NTM)、可微神經(jīng)計算機和MANN。
第10章討論元學習教算法如何學習的算法。我們還將嘗試改進深度學習算法,使其能夠使用更少的訓練樣本來學習更多的信息。
第11章探索深度學習在自動駕駛汽車上的應(yīng)用。我們將討論如何使用深度網(wǎng)絡(luò)來幫助車輛了解其周圍的環(huán)境。
如何充分利用本書
為了充分利用本書,需要熟悉Python并掌握一些機器學習的知識。本書包括對神經(jīng)網(wǎng)絡(luò)的主要類型的簡要介紹,即使你已經(jīng)熟悉神經(jīng)網(wǎng)絡(luò)的基礎(chǔ)知識,這些介紹也會對你有所幫助。
下載示例代碼及彩色圖像
本書的示例代碼及所有截圖和樣圖,可以從http://wwwpacktpubcom通過個人賬號下載,也可以訪問華章圖書官網(wǎng)http://wwwhzbookcom,通過注冊并登錄個人賬號下載。
本書的代碼包也托管在GitHub的https://githubcom/PacktPublishing/AdvancedDeepLearningwithPython上。如果代碼有更新,它將在現(xiàn)有的GitHub存儲庫上更新。
我們還提供了一個PDF文件,其中有本書使用的屏幕截圖和圖表的彩色圖像。你可以在http://wwwpacktpubcom/sites/default/files/downloads/9781789956177_ColorImagespdf下載。
排版約定
本書中使用了許多排版約定。
CodeInText:表示文本中的代碼、數(shù)據(jù)庫表名、文件夾名、文件名、文件擴展名、路徑名、用戶輸入和Twitter句柄。下面是一個示例:通過包含generator、discriminator和combined網(wǎng)絡(luò)來構(gòu)建完整的GAN模型。
書中代碼塊的風格如下:
粗體:表示新術(shù)語、重要的詞,或你在屏幕上看到的詞。例如:一個實驗的所有可能結(jié)果(事件)的集合稱為樣本空間。
表示警告或重要說明。
表示提示和技巧。
譯者序
前言
作者簡介
審校者簡介
部分核心概念
第1章神經(jīng)網(wǎng)絡(luò)的具體細節(jié)2
1.1神經(jīng)網(wǎng)絡(luò)的數(shù)學基礎(chǔ)2
1.1.1線性代數(shù)2
1.1.2概率介紹6
1.1.3微分學16
1.2神經(jīng)網(wǎng)絡(luò)的簡單介紹18
1.2.1神經(jīng)元18
1.2.2層的運算19
1.2.3神經(jīng)網(wǎng)絡(luò)21
1.2.4激活函數(shù)22
1.2.5通用逼近定理25
1.3訓練神經(jīng)網(wǎng)絡(luò)27
1.3.1梯度下降27
1.3.2代價函數(shù)28
1.3.3反向傳播30
1.3.4權(quán)重初始化32
1.3.5SGD改進33
1.4總結(jié)35
第二部分計算機視覺
第2章理解卷積網(wǎng)絡(luò)38
2.1理解CNN38
2.1.1卷積類型43
2.1.2提高CNN的效率46
2.1.3可視化CNN51
2.1.4CNN正則化54
2.2遷移學習介紹56
2.2.1使用PyTorch實現(xiàn)遷移學習57
2.2.2使用TensorFlow 2.0實現(xiàn)遷移學習62
2.3總結(jié)66
第3章高級卷積網(wǎng)絡(luò)67
3.1AlexNet介紹67
3.2VGG介紹68
3.3理解殘差網(wǎng)絡(luò)70
3.4理解Inception網(wǎng)絡(luò)78
3.4.1Inception v179
3.4.2Inception v2和v380
3.4.3Inception v4和InceptionResNet81
3.5Xception介紹82
3.6MobileNet介紹83
3.7DenseNet介紹85
3.8神經(jīng)架構(gòu)搜索的工作原理87
3.9膠囊網(wǎng)絡(luò)介紹91
3.9.1卷積網(wǎng)絡(luò)的局限性91
3.9.2膠囊92
3.9.3膠囊網(wǎng)絡(luò)的結(jié)構(gòu)94
3.10總結(jié)95
第4章對象檢測與圖像分割96
4.1對象檢測介紹96
4.1.1對象檢測的方法96
4.1.2使用YOLO v3進行對象檢測98
4.1.3使用Faster RCNN進行對象檢測104
4.2圖像分割介紹110
4.2.1使用UNet進行語義分割110
4.2.2使用Mask RCNN進行實例分割112
4.3總結(jié)115
第5章生成模型116
5.1生成模型的直覺和證明116
5.2VAE介紹117
5.3GAN介紹124
5.3.1訓練GAN125
5.3.2實現(xiàn)GAN128
5.3.3訓練GAN的缺陷129
5.4GAN的類型129
5.4.1DCGAN130
5.4.2CGAN135
5.4.3WGAN137
5.4.4使用CycleGAN實現(xiàn)圖像到圖像的轉(zhuǎn)換142
5.5藝術(shù)風格遷移介紹150
5.6總結(jié)151
第三部分自然語言和序列處理
第6章語言建模154
6.1理解ngram154
6.2神經(jīng)語言模型介紹156
6.2.1神經(jīng)概率語言模型157
6.2.2word2vec158
6.2.3GloVe模型161
6.3實現(xiàn)語言模型164
6.3.1訓練嵌入模型164
6.3.2可視化嵌入向量166
6.4總結(jié)169
第7章理解RNN170
7.1RNN介紹170
7.2長短期記憶介紹180
7.3門控循環(huán)單元介紹187
7.4實現(xiàn)文本分類189
7.5總結(jié)193
第8章seq2seq模型和注意力機制194
8.1seq2seq模型介紹194
8.2使用注意力的seq2seq196
8.2.1Bahdanau Attention196
8.2.2Luong Attention199
8.2.3一般注意力200
8.2.4使用注意力實現(xiàn)seq2seq201
8.3理解transformer207
8.3.1transformer注意力207
8.3.2transformer模型210
8.3.3實現(xiàn)transformer212
8.4transformer語言模型219
8.4.1基于transformer的雙向編碼器表示219
8.4.2transformerXL224
8.4.3XLNet227
8.4.4使用transformer語言模型生成文本230
8.5總結(jié)231
第四部分展望未來
第9章新興的神經(jīng)網(wǎng)絡(luò)設(shè)計234
9.1GNN介紹234
9.1.1循環(huán)GNN236
9.1.2卷積圖神經(jīng)網(wǎng)絡(luò)238
9.1.3圖自編碼器244
9.1.4神經(jīng)圖學習246
9.2記憶增強神經(jīng)網(wǎng)絡(luò)介紹251
9.2.1神經(jīng)圖靈機251
9.2.2MANN*256
9.3總結(jié)257
第10章元學習258
10.1元學習介紹258
10.1.1零樣本學習259
10.1.2單樣本學習260
10.1.3元訓練和元測試261
10.2基于度量的元學習262
10.2.1為單樣本學習匹配網(wǎng)絡(luò)263
10.2.2孿生網(wǎng)絡(luò)264
10.2.3原型網(wǎng)絡(luò)267
10.3基于優(yōu)化的元學習269
10.4總結(jié)274
第11章自動駕駛汽車的深度學習275
11.1自動駕駛汽車介紹275
11.1.1自動駕駛汽車研究簡史275
11.1.2自動化的級別277
11.2自動駕駛汽車系統(tǒng)的組件278
11.2.1環(huán)境感知280
11.2.2路徑規(guī)劃282
11.33D數(shù)據(jù)處理介紹282
11.4模仿駕駛策略285
11.5ChauffeurNet駕駛策略294
11.5.1輸入/輸出表示294
11.5.2模型架構(gòu)296
11.5.3訓練297
11.6總結(jié)300