Python深度學習

尼基爾·蓋德卡爾 杜長營 蘇輝

買這商品的人也買了...

商品描述

本書詳細闡述了與Python深度學習相關的基本解決方案,主要包括深度學習介紹、機器學習基礎、前饋神經網絡、Theano 介紹、捲積神經網絡、遞歸神經網絡、Keras介紹、隨機梯度下降、自動求導、GPU介紹等內容。此外,本書還提供了豐富的示例及代碼,幫助讀者進一步理解相關方案的實現過程。
本書既適合作為高等院校電腦及相關專業的教材和教學參考書,也可作為相關開發人員的自學教材和參考手冊。



 

作者簡介

作者:(印)尼基爾·蓋德卡爾杜長營蘇輝

目錄大綱

第1章深度學習介紹1 
1.1歷史背景1 
1.2相關領域的進展3 
1.3先決條件3 
1.4後續章節概述4 
1.5安裝所需函數庫4 
第2章機器學習基礎5 
2.1直覺5 
2.2二元分類5 
2.3回歸6 
2.4泛化7 
2.5正規化12 
2.6總結14 
第3章前饋神經網絡15 
3.1單元15 
3.1.1神經網絡的整體結構16 
3.1.2用向量形式表示神經網絡17 
3.1.3評估神經網絡的輸出18 
3.1.4神經網絡訓練19 
3.2使用極大似然估計成本函數20 
3.2.1二元交叉熵20 
3.2.2交叉熵21 
3.2.3平方差21 
3.2.4損失函數總結22 
3.3單元/激活函數/層的類型22 
3.3.1線性單元23 
3.3.2 Sigmoid單元23 
3.3.3 Softmax層23 
3.3.4線性整流函數24 
3.3.5雙曲正切25
3.4用AutoGrad手寫神經網絡25 
3.5總結27 
第4章Theano介紹28 
4.1什麼是Theano 28 
4.2上手Theano 28 
4.3總結50 
第5章卷積神經網絡52 
5.1卷積操作52 
5.2池化操作56 
5.3卷積-探測-池化57 
5.4其他卷積59 
5.5 CNN背後的直覺61 
5.6總結61 
第6章遞歸神經網絡62 
6.1 RNN基礎62 
6.2訓練RNN 65 
6.3雙向RNN 69 
6.4梯度爆炸和梯度消失72 
6.5梯度削減72 
6.6長短期記憶73 
6.7總結75 
第7章Keras介紹76 
7.1單層神經網絡76 
7.2兩層神經網絡77 
7.2.1用於多元分類的兩層神經網絡79 
7.2.2兩層神經網絡的回歸80 
7.3 Keras快速迭代82 
7.3.1使用Keras構建卷積神經網絡(CNN) 85 
7.3.2使用Keras構建LSTM 88 
7.4總結90 
第8章隨機梯度下降91
8.1優化問題91 
8.2最速下降的方法92 
8.3批量,隨機(單例和迷你批)下降93 
8.3.1批量93 
8.3.2隨機單例93 
8.3.3隨機迷你批93 
8.3.4批量VS隨機93 
8.4 SGD的挑戰94 
8.4.1局部最小值94 
8.4.2鞍點94 
8.4.3選擇學習速率95 
8.4.4窄谷中進展緩慢96 
8.5 SGD的算法變體97 
8.5.1動量97 
8.5.2 Nesterov加速梯度( NAS) 97 
8.5.3退火和學習速率計劃? 98 
8.5.4 Adagrad 98 
8.5.5 RMSProp 99 
8.5.6 Adadelta 99 
8.5.7 Adam 99 
8.5.8彈性反向傳播100 
8.5.9平衡SGD 100 
8.6使用SGD的技巧和提示100 
8.6.1輸入數據預處理101 
8.6.2激活函數的選擇101 
8.6.3預處理目標值101 
8.6.4參數初始化102 
8.6.5打散數據102 
8.6.6批標準化102
8.6.7提前停止102 
8.6.8梯度噪聲102 
8.7並行和分佈式SGD 103 
8.7.1 Hogwild 103 
8.7.2 Downpour 103 
8.8用Downhill動手實踐SGD 104 
8.9總結109 
第9章自動求導110 
9.1數值求導110 
9.2符號求導111 
9.3自動求導基礎112 
9.3.1正向/正切線性模型113 
9.3.2反向/餘切/伴隨線性模式115 
9.3.3自動求導實現117 
9.4源代碼轉換117 
9.5運算符重載117 
9.6用Autograd實現自動求導118 
9.7總結122 
第10章GPU介紹123 
10.1基於GPU計算的關鍵要素123 
10.2 OpenCL系統物理視圖124 
10.3 OpenCL系統的邏輯視圖125 
10.4 OpenCL設備上的邏輯內存空間126 
10.5 OpenCL設備的編程模型127 
10.6索引的符號128 
10.7總結132