TensorFlow神經(jīng)網(wǎng)絡(luò)編程
定 價(jià):69 元
叢書名:智能系統(tǒng)與技術(shù)叢書
- 作者:[印度]曼普里特·辛格·古特(Manpreet Singh Ghotra),拉蒂普·杜瓦(Rajdeep Dua)
- 出版時(shí)間:2018/11/1
- ISBN:9787111611783
- 出 版 社:機(jī)械工業(yè)出版社
- 中圖法分類:TP183
- 頁碼:
- 紙張:膠版紙
- 版次:
- 開本:16開
本書首先簡要介紹流行的TensorFlow庫,并講解如何用它訓(xùn)練不同的神經(jīng)網(wǎng)絡(luò)。 你將深入了解神經(jīng)網(wǎng)絡(luò)的基礎(chǔ)知識(shí)和它背后的數(shù)學(xué)原理,以及為什么我們會(huì)選擇TensorFlow訓(xùn)練神經(jīng)網(wǎng)絡(luò)。然后,你將實(shí)現(xiàn)一個(gè)簡單的前饋神經(jīng)網(wǎng)絡(luò)。接下來,你將使用TensorFlow掌握神經(jīng)網(wǎng)絡(luò)的優(yōu)化技術(shù)和算法,以及一些更復(fù)雜的神經(jīng)網(wǎng)絡(luò)的實(shí)現(xiàn)。*后,你將對如何利用TensorFlow的強(qiáng)大功能來訓(xùn)練各種復(fù)雜的神經(jīng)網(wǎng)絡(luò)有一個(gè)正確的理解。
如果你意識(shí)到到處都有圍繞機(jī)器學(xué)習(xí)、人工智能或深度學(xué)習(xí)等術(shù)語的討論,你可能會(huì)知道什么是神經(jīng)網(wǎng)絡(luò)。想知道如何利用它們有效地解決復(fù)雜的計(jì)算問題,或者怎樣訓(xùn)練有效的神經(jīng)網(wǎng)絡(luò)?本書將教你所有這些以及更多的事情。
首先快速瀏覽流行的TensorFlow庫,并了解如何用它訓(xùn)練不同的神經(jīng)網(wǎng)絡(luò)。之后你將深入了解神經(jīng)網(wǎng)絡(luò)的基礎(chǔ)知識(shí)和它背后的數(shù)學(xué)原理,以及為什么選擇TensorFlow訓(xùn)練神經(jīng)網(wǎng)絡(luò)。然后,你將實(shí)現(xiàn)一個(gè)簡單的前饋神經(jīng)網(wǎng)絡(luò)。接下來,你將掌握使用TensorFlow進(jìn)行神經(jīng)網(wǎng)絡(luò)優(yōu)化的技術(shù)和算法。更進(jìn)一步,你將學(xué)習(xí)如何實(shí)現(xiàn)一些更復(fù)雜的神經(jīng)網(wǎng)絡(luò),如卷積神經(jīng)網(wǎng)絡(luò)(CNN)、遞歸神經(jīng)網(wǎng)絡(luò)(RNN)和深度信念網(wǎng)絡(luò)(DBN)。在學(xué)習(xí)本書的過程中,為了使你對神經(jīng)網(wǎng)絡(luò)編程有深切的理解,將在真實(shí)世界的數(shù)據(jù)集上訓(xùn)練模型。你還將訓(xùn)練生成模型,并學(xué)習(xí)自編碼器的應(yīng)用。
在本書的最后,你將對如何利用TensorFlow的強(qiáng)大功能來訓(xùn)練各種復(fù)雜的神經(jīng)網(wǎng)絡(luò)有一個(gè)正確的理解,而不會(huì)有任何困惑。
本書內(nèi)容第1章介紹神經(jīng)網(wǎng)絡(luò)中基本的代數(shù)知識(shí)、概率論和優(yōu)化方法。
第2章介紹感知機(jī)、神經(jīng)元和前饋神經(jīng)網(wǎng)絡(luò)的基礎(chǔ)知識(shí)。你還將學(xué)習(xí)各種模型學(xué)習(xí)的技巧,并主要學(xué)習(xí)稱為反向傳播的核心學(xué)習(xí)算法。
第3章介紹對神經(jīng)網(wǎng)絡(luò)學(xué)習(xí)至關(guān)重要的優(yōu)化方法。
第4章詳細(xì)討論CNN算法。CNN及其在不同數(shù)據(jù)類型中的應(yīng)用也包含在該章中。
第5章詳細(xì)介紹RNN算法。RNN及其在不同數(shù)據(jù)類型中的應(yīng)用也包括在該章中。
第6章介紹生成模型的基礎(chǔ)知識(shí)以及不同的生成模型。
第7章包括深度信念網(wǎng)絡(luò)的基礎(chǔ)知識(shí)、它們與傳統(tǒng)神經(jīng)網(wǎng)絡(luò)的區(qū)別以及它們的實(shí)現(xiàn)。
第8章介紹最近處在生成模型前沿的自編碼器。
第9章討論深度學(xué)習(xí)當(dāng)前和未來的具體研究內(nèi)容,并包括一個(gè)參考文獻(xiàn)。
第10章討論TensorFlow的環(huán)境配置、TensorFlow與Numpy的比較以及自動(dòng)微分的概念。
準(zhǔn)備工作本書將指導(dǎo)你完成所有書中例子所需工具的安裝:
Python3.4或更高版本。
TensorFlow 1.4或更高版本。
讀者對象本書適合希望使用神經(jīng)網(wǎng)絡(luò)的擁有統(tǒng)計(jì)背景的開發(fā)人員。雖然我們將使用TensorFlow作為神經(jīng)網(wǎng)絡(luò)的基礎(chǔ)庫,但本書可以作為從深度學(xué)習(xí)數(shù)學(xué)理論向?qū)嶋H應(yīng)用轉(zhuǎn)化的通用資源。如果你對TensorFlow和Python有一些了解并希望知道比API更底層的一些情況,本書會(huì)很適合你。
本書約定表示警告或重要的注意事項(xiàng)。
表示提示和技巧。
下載示例代碼及彩色圖片本書的示例代碼及所有截圖和樣圖,可以從http://www.packtpub.com通過個(gè)人賬號(hào)下載,也可以訪問華章圖書官網(wǎng)http://www.hzbook.com,通過注冊并登錄個(gè)人賬號(hào)下載。
曼普里特•辛格•古特(Manpreet Singh Ghotra)在企業(yè)和大數(shù)據(jù)軟件方面擁有超過15年的軟件開發(fā)經(jīng)驗(yàn)。 目前,他正致力于開發(fā)一個(gè)機(jī)器學(xué)習(xí)平臺(tái)/ API,該平臺(tái)主要使用諸如TensorFlow、Keras、Apache Spark和PredictionIO等開源庫和框架進(jìn)行開發(fā)。他在各種機(jī)器學(xué)習(xí)應(yīng)用場景上有豐富的經(jīng)驗(yàn),其中包括情感分析、垃圾郵件檢測、圖像調(diào)整和異常檢測。他是世界上*大在線零售商之一機(jī)器學(xué)習(xí)組的成員,主要工作是使用R和Apache Mahout做運(yùn)輸時(shí)間優(yōu)化。他擁有機(jī)器學(xué)習(xí)方面的研究生學(xué)位,為機(jī)器學(xué)習(xí)社區(qū)工作并貢獻(xiàn)卓越。
譯者序
作者簡介
審校者簡介
前言
第1 章 神經(jīng)網(wǎng)絡(luò)的數(shù)學(xué)原理 1
1.1 理解線性代數(shù) 1
1.1.1 環(huán)境設(shè)置 2
1.1.2 線性代數(shù)的數(shù)據(jù)結(jié)構(gòu) 3
1.1.3 線性代數(shù)運(yùn)算 4
1.1.4 求解線性方程 · 9
1.1.5 奇異值分解 11
1.1.6 特征值分解 14
1.1.7 主成分分析 14
1.2 微積分 15
1.2.1 梯度 16
1.2.2 Hessian 矩陣 23
1.2.3 行列式 24
1.3 最優(yōu)化 25
1.4 總結(jié) 28
第2 章 深度前饋神經(jīng)網(wǎng)絡(luò) 29
2.1 定義前饋神經(jīng)網(wǎng)絡(luò) 29
2.2 理解反向傳播 30
2.3 在TensorFlow 中實(shí)現(xiàn)前饋神經(jīng)網(wǎng)絡(luò) · 31
2.4 分析Iris 數(shù)據(jù)集 · 34
2.5 使用前饋網(wǎng)絡(luò)進(jìn)行圖像分類 40
2.6 總結(jié) 54
第3 章 神經(jīng)網(wǎng)絡(luò)的優(yōu)化 · 55
3.1 什么是優(yōu)化 55
3.2 優(yōu)化器的類型 56
3.3 梯度下降 57
3.3.1 梯度下降的變體 58
3.3.2 優(yōu)化梯度下降的算法 59
3.4 優(yōu)化器的選擇 61
3.5 總結(jié) 64
第4 章 卷積神經(jīng)網(wǎng)絡(luò) · 65
4.1 卷積神經(jīng)網(wǎng)絡(luò)概述和直觀理解 66
4.1.1 單個(gè)卷積層的計(jì)算 66
4.1.2 TensorFlow 中的CNN 70
4.2 卷積操作 · 72
4.2.1 對圖像進(jìn)行卷積 73
4.2.2 步長 75
4.3 池化 · 76
4.3.1 最大池化 77
4.3.2 示例代碼 78
4.4 使用卷積網(wǎng)絡(luò)進(jìn)行圖像分類 80
4.5 總結(jié) · 102
第5 章 遞歸神經(jīng)網(wǎng)絡(luò) · 103
5.1 遞歸神經(jīng)網(wǎng)絡(luò)介紹 103
5.1.1 RNN 實(shí)現(xiàn) 105
5.1.2 TensorFlow RNN 實(shí)現(xiàn) 110
5.2 長短期記憶網(wǎng)絡(luò)簡介 114
5.2.1 LSTM 的生命周期 115
5.2.2 LSTM 實(shí)現(xiàn) 117
5.3 情感分析 122
5.3.1 詞嵌入 122
5.3.2 使用RNN 進(jìn)行情感分析 · 128
5.4 總結(jié) 134
第6 章 生成模型 135
6.1 生成模型簡介 135
6.1.1 判別模型對生成模型 136
6.1.2 生成模型的類型 137
6.2 GAN · 140
6.2.1 GAN 示例 141
6.2.2 GAN 的種類 150
6.3 總結(jié) · 152
第7 章 深度信念網(wǎng)絡(luò) · 153
7.1 理解深度信念網(wǎng)絡(luò) 154
7.2 訓(xùn)練模型 161
7.3 標(biāo)簽預(yù)測 162
7.4 探索模型的準(zhǔn)確度 162
7.5 DBN 在MNIST 數(shù)據(jù)集上的應(yīng)用 · 163
7.5.1 加載數(shù)據(jù)集 163
7.5.2 具有256 個(gè)神經(jīng)元的RBM層的DBN 的輸入?yún)?shù) · 163
7.5.3 具有256 個(gè)神經(jīng)元的RBM層的DBN 的輸出 · 165
7.6 DBN 中RBM 層的神經(jīng)元數(shù)量的影響 · 165
7.6.1 具有512 個(gè)神經(jīng)元的RBM 層 · 165
7.6.2 具有128 個(gè)神經(jīng)元的RBM 層 · 166
7.6.3 準(zhǔn)確度指標(biāo)對比 166
7.7 具有兩個(gè)RBM 層的DBN 167
7.8 用DBN 對NotMNIST 數(shù)據(jù)集進(jìn)行分類 · 169
7.9 總結(jié) 172
第8 章 自編碼器 173
8.1 自編碼算法 174
8.2 欠完備自編碼器 175
8.3 數(shù)據(jù)集 · 175
8.4 基本自編碼器 177
8.4.1 自編碼器的初始化 177
8.4.2 AutoEncoder 類 178
8.4.3 應(yīng)用于MNIST 數(shù)據(jù)集的基本自編碼器 180
8.4.4 基本自編碼器的完整代碼 · 184
8.4.5 基本自編碼器小結(jié) 186
8.5 加性高斯噪聲自編碼器 186
8.5.1 自編碼器類 187
8.5.2 應(yīng)用于MNIST 數(shù)據(jù)集的加性高斯自編碼器 188
8.5.3 繪制重建的圖像 191
8.5.4 加性高斯自編碼器的完整代碼 · 192
8.5.5 比較基本自編碼器和加性高斯噪聲自編碼器 193
8.5.6 加性高斯噪聲自編碼器小結(jié) · 194
8.6 稀疏自編碼器 194
8.6.1 KL 散度 194
8.6.2 稀疏自編碼器的完整代碼 · 196
8.6.3 應(yīng)用于MNIST 數(shù)據(jù)集的稀疏自編碼器 198
8.6.4 比較稀疏自編碼器和加性高斯噪聲自編碼器 200
8.7 總結(jié) 200
第9 章 神經(jīng)網(wǎng)絡(luò)研究 · 201
9.1 神經(jīng)網(wǎng)絡(luò)中避免過擬合 201
9.1.1 過擬合問題闡述 201
9.1.2 過擬合解決方案 202
9.1.3 影響效果 203
9.2 使用神經(jīng)網(wǎng)絡(luò)進(jìn)行大規(guī)模視頻處理 204
9.2.1 分辨率改進(jìn)方案 204
9.2.2 特征直方圖基線 205
9.2.3 定量結(jié)果 205
9.3 使用雙分支互向神經(jīng)網(wǎng)絡(luò)進(jìn)行命名實(shí)體識(shí)別 206
9.3.1 命名實(shí)體識(shí)別的例子 206
9.3.2 定義Twinet 207
9.3.3 結(jié)果 208
9.4 雙向遞歸神經(jīng)網(wǎng)絡(luò) 208
9.5 總結(jié) 209
第10 章 開始使用TensorFlow 211
10.1 環(huán)境搭建 211
10.2 比較TensorFlow 和Numpy 212
10.3 計(jì)算圖 213
10.3.1 圖 213
10.3.2 會(huì)話對象 214
10.3.3 變量 215
10.3.4 域 216
10.3.5 數(shù)據(jù)輸入 217
10.3.6 占位符和輸入字典 217
10.4 自動(dòng)微分 218
10.5 TensorBoard · 219