TensorFlow 神經網絡編程

[印度]曼普里特·辛格·古特(Manpreet Singh Ghotra),拉蒂普·杜瓦(Rajdeep Dua)

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

商品描述

本書首先簡要介紹流行的TensorFlow庫,並講解如何用它訓練不同的神經網絡。 你將深入瞭解神經網絡的基礎知識和它背後的數學原理,以及為什麽我們會選擇TensorFlow訓練神經網絡。然後,你將實現一個簡單的前饋神經網絡。接下來,你將使用TensorFlow掌握神經網絡的優化技術和算法,以及一些更復雜的神經網絡的實現。*後,你將對如何利用TensorFlow的強大功能來訓練各種復雜的神經網絡有一個正確的理解。

作者簡介

曼普里特·辛格·古特(Manpreet Singh Ghotra)在企業和大數據軟件方面擁有超過15年的軟件開發經驗。目前,他正致力於開發一個機器學習平台/ API,該平台主要使用諸如TensorFlow、Keras、Apache Spark和PredictionIO等開源庫和框架進行開發。他在各種機器學習應用場景上有豐富的經驗,其中包括情感分析、垃圾郵件檢測、圖像調整和異常檢測。他是世界上*大在線零售商之一機器學習組的成員,主要工作是使用R和Apache Mahout做運輸時間優化。他擁有機器學習方面的研究生學位,為機器學習社區工作並貢獻卓越。

目錄大綱

譯者序
作者簡介
審校者簡介
前言
第1章神經網絡的數學原理1 
1.1理解線性代數1 
1.1.1環境設置2 
1.1.2線性代數的數據結構3 
1.1.3線性代數運算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最優化25 
1.4總結28 
第2章深度前饋神經網絡29 
2.1定義前饋神經網絡29 
2.2理解反向傳播30 
2.3在TensorFlow中實現前饋神經網絡· 31 
2.4分析Iris數據集· 34 
2.5使用前饋網絡進行圖像分類40 
2.6總結54 
第3章神經網絡的優化· 55 
3.1什麼是優化55 
3.2優化器的類型56 
3.3梯度下降57 
3.3.1梯度下降的變體58
3.3.2優化梯度下降的算法59 
3.4優化器的選擇61 
3.5總結64 
第4章卷積神經網絡· 65 
4.1卷積神經網絡概述和直觀理解66 
4.1.1單個卷積層的計算66 
4.1.2 TensorFlow中的CNN 70 
4.2卷積操作· 72 
4.2.1對圖像進行卷積73 
4.2.2步長75 
4.3池化· 76 
4.3.1最大池化77 
4.3.2示例代碼78 
4.4使用卷積網絡進行圖像分類80 
4.5總結· 102 
第5章遞歸神經網絡· 103 
5.1遞歸神經網絡介紹103 
5.1.1 RNN實現105 
5.1.2 TensorFlow RNN實現110 
5.2長短期記憶網絡簡介114 
5.2.1 LSTM的生命週期115 
5.2 .2 LSTM實現117 
5.3情感分析122 
5.3.1詞嵌入122 
5.3.2使用RNN進行情感分析· 128 
5.4總結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總結· 152 
第7章深度信念網絡· 153 
7.1理解深度信念網絡154 
7.2訓練模型161 
7.3標籤預測162 
7.4探索模型的準確度162 
7.5 DBN在MNIST數據集上的應用· 163 
7.5.1加載數據集163 
7.5.2具有256個神經元的RBM層的DBN的輸入參數· 163 
7.5.3具有256個神經元的RBM層的DBN的輸出· 165 
7.6 DBN中RBM層的神經元數量的影響· 165 
7.6.1具有512個神經元的RBM層· 165 
7.6.2具有128個神經元的RBM層· 166 
7.6.3準確度指標對比166 
7.7具有兩個RBM層的DBN 167 
7.8用DBN對NotMNIST數據集進行分類· 169 
7.9總結172 
第8章自編碼器173 
8.1自編碼算法174 
8.2欠完備自編碼器175
8.3數據集· 175 
8.4基本自編碼器177 
8.4.1自編碼器的初始化177 
8.4.2 AutoEncoder類178 
8.4.3應用於MNIST數據集的基本自編碼器180 
8.4.4基本自編碼器的完整代碼· 184 
8.4.5基本自編碼器小結186 
8.5加性高斯噪聲自編碼器186 
8.5.1自編碼器類187 
8.5.2應用於MNIST數據集的加性高斯自編碼器188 
8.5.3繪製重建的圖像191 
8.5.4加性高斯自編碼器的完整代碼· 192 
8.5.5比較基本自編碼器和加性高斯噪聲自編碼器193 
8.5.6加性高斯噪聲自編碼器小結· 194 
8.6稀疏自編碼器194 
8.6.1 KL散度194 
8.6.2稀疏自編碼器的完整代碼· 196 
8.6.3應用於MNIST數據集的稀疏自編碼器198 
8.6.4比較稀疏自編碼器和加性高斯噪聲自編碼器200 
8.7總結200 
第9章神經網絡研究· 201 
9.1神經網絡中避免過擬合201 
9.1.1過擬合問題闡述201 
9.1.2過擬合解決方案202 
9.1.3影響效果203
9.2使用神經網絡進行大規模視頻處理204 
9.2.1分辨率改進方案204 
9.2.2特徵直方圖基線205 
9.2.3定量結果205 
9.3使用雙分支互向神經網絡進行命名實體識別206 
9.3.1命名實體識別的例子206 
9.3.2定義Twinet 207 
9.3.3結果208 
9.4雙向遞歸神經網絡208 
9.5總結209 
第10章開始使用TensorFlow 211 
10.1環境搭建211 
10.2比較TensorFlow和Numpy 212 
10.3計算圖213 
10.3.1圖213 
10.3.2會話對象214 
10.3.3變量215 
10.3.4域216 
10.3.5數據輸入217 
10.3.6佔位符和輸入字典217 
10.4自動微分218 
10.5 TensorBoard · 219