《深度學習之TensorFlow:入門、原理與進階實戰》一書由李金洪編寫,由機械工業出版社出版發行。
基本介紹
- 書名:深度學習之TensorFlow——入門、原理與進階實戰
- 作者:李金洪
- 類別:計算機/人工智慧
- 出版社:機械工業出版社
- 出版時間:2018年
- 頁數:508 頁
- 定價:99 元
- 開本:16 開
- 裝幀:精裝
- ISBN:9787111590057
內容簡介,圖書目錄,作者簡介,
內容簡介
本書採用“理論+實踐”的形式編寫,通過大量的實例(共96個),全面而深入地講解了深度學習神經網路原理和TensorFlow使用方法兩方面的內容。書中的實例具有很強的實用性,如對圖片分類、製作一個簡單的聊天機器人、進行圖像識別等。書中每章都配有一段教學視頻,視頻和圖書的重點內容對應,能幫助讀者快速地掌握該章的重點內容。本書還免費提供了所有實例的原始碼及承促鑽拔數據樣本,這不僅方便了讀者學習,而且也能為讀者以後的工作提供便利。
本書共12章,分為3篇。第1篇深度學習與TensorFlow基礎,包括快速了解人工智慧與TensorFlow、搭建開發環境、TensorFlow基本開發步驟、TensorFlow編程基礎、識別圖中模糊的手寫數字等內容;第2篇深度學習基礎——神經網路,介紹了神經網路的基礎模型,包括單個神經元、多層神經網路、卷積神經網路、循環神經網路、自編碼網路等內容;第3篇深度學習進階,是對基礎網路模型的靈活運用與自由組合,是對前面知識的綜合及拔高,包括深度神經網路和對抗神經網路兩章內容。
本書結構清晰,案例豐富,通俗易懂,實用性強,特別適合TensorFlow深度學習的初學者和進階讀者作為自學教程閱讀。另外,本書也適合作為相關培訓學校的教材,以及各大院校相關專業的教學參考書。
圖書目錄
第1篇 深度學習與TensorFlow基礎
第1章 快速了解人工智慧與TensorFlow 2
1.1 什麼是深度學習 2
1.2 TensorFlow是做什麼的 3
1.3 TensorFlow的特點 4
1.4 其他深度學習框架特點及介紹 5
1.5 如何通過本書學好深度學習 6
第2章 搭建開發環境 8
2.1 下載及安裝Anaconda開發工具 8
2.2 在Windows平台下載及安裝TensorFlow 11
2.3 GPU版本的安裝方法 12
2.4 熟悉Anaconda 3開發工具 15
第3章 TensorFlow基本開發步驟——以邏輯回歸擬合二維數據為例 19
3.1 實例1:從一組看似混亂的數據中找出y≈2x的規律 19
3.2 模型是如何采全項訓練出來的 25
3.3 了解TensorFlow開發的基本步驟 27
第4章 TensorFlow編程基礎 32
4.1 編程模型 32
4.2 TensorFlow基礎類型定義及操作函式介紹 48
4.3 共享變數 62
4.4 實例19:圖的基本操作 70
4.5 配置分散式TensorFlow 74
4.6 動態圖(Eager) 81
4.7 數據集(tf.data) 82
第5章 識別圖中模糊的手寫數字(實例21) 83
5.1 導入圖片數據集 84
5.2 分析圖片的特點,定義變數 87
5.3 構建模型 87
5.4 訓練模只承型並輸出中間狀態參數 89
5.5 測試模型 90
5.6 保存模型 91
5.7 讀取模型 92
第2篇 深度學習基礎——神經網路
第6章 單個神經元 96
6.1 神經元的擬合原理 96
6.2 激活函式——加入非線性因素,解決線性模型缺陷 99
6.3 softmax算法——處理分類問題 103
6.4 損失函式——用真實值與預測值的距離來指導模型的收斂方向 105
6.5 softmax算法與損失函式的綜合套用 108
6.6 梯度下降——讓模型逼近最小偏差 111
6.7 初始化學習參數 115
6.8 單個神經元的擴展——Maxout網路 116
6.9 練習題 118
第7章 多層神經網路——解決非線性問題 119
7.1 線性問題與非線性問題 119
7.2 使用隱藏層解決非線性問題 130
7.3 實例31:利用全連線網路將圖片進行分類 136
7.4 全連線網路訓練中的最佳化技巧 137
7.5 練習題 150
第8章婆少備 卷積神殃頌愉套經網路——解決參數太多問題 151
8.1 全拔整墊連線網路的局限性 151
8.2 理解卷積神經網路 152
8.3 網路結構 153
8.4 卷積神經網路的相關函式 158
8.5 使用卷積神經網路對圖片分類 170
8.6 反卷積神經網路 183
8.7 實例50:用反卷積技術復原卷積網路各層圖像 195
8.8 善用函槳察訂數封裝庫 198
8.9 深度學習的模型訓練技巧 201
第9章 循環神經網路——具有記憶功能的網路 210
9.1 了解RNN的工作原理 210
9.2 簡單RNN 215
9.3 循環神經網路(RNN)的改進 225
9.4 TensorFlow實戰RNN 233
9.5 實例68:利用BiRNN實現語音識別 255
9.6 實例69:利用RNN訓練語言模型 273
9.7 語言模型的系統學習 279
9.8 處理Seq2Seq任務 296
9.9 實例75:製作一個簡單的聊天機器人 339
9.10 時間序列的高級接口TFTS 344
第10章 自編碼網路——能夠自學習樣本特徵的網路 346
10.1 自編碼網路介紹及套用 346
10.2 最簡單的自編碼網路 347
10.3 自編碼網路的代碼實現 347
10.4 去噪自編碼 359
10.5 去噪自編碼網路的代碼實現 359
10.6 棧式自編碼 364
10.7 深度學習中自編碼的常用方法 366
10.8 去噪自編碼與棧式自編碼的綜合實現 366
10.9 變分自編碼 377
10.10 條件變分自編碼 385
第3篇 深度學習進階
第11章 深度神經網路 392
11.1 深度神經網路介紹 392
11.2 GoogLeNet模型介紹 394
11.3 殘差網路(ResNet) 399
11.4 Inception-ResNet-v2結構 400
11.5 TensorFlow中的圖片分類模型庫——slim 400
11.6 使用slim中的深度網路模型進行圖像的識別與檢測 410
11.7 實物檢測模型庫——Object Detection API 417
11.8 實物檢測領域的相關模型 425
11.9 機器自己設計的模型(NASNet) 428
第12章 對抗神經網路(GAN) 430
12.1 GAN的理論知識 430
12.2 DCGAN——基於深度卷積的GAN 432
12.3 InfoGAN和ACGAN:指定類別生成模擬樣本的GAN 432
12.4 AEGAN:基於自編碼器的GAN 441
12.5 WGAN-GP:更容易訓練的GAN 447
12.6 LSGAN(最小乘二GAN):具有WGAN 同樣效果的GAN 455
12.7 GAN-cls:具有匹配感知的判別器 457
12.8 SRGAN——適用於超解析度重建的GAN 461
12.9 GAN網路的高級接口TFGAN 485
12.10 總結 486
作者簡介
李金洪 長期拼搏在一線的高級軟體工程師。先後擔任過CAD算法工程師、手機遊戲主程、架構師、項目經理、CTO、部門經理、資深產品總監和CEO等職務。現任代碼醫生工作室主程式設計師。精通C、C++、彙編、Python、Java和Go等程式語言;擅長神經網路、算法、協定分析、逆向和移動網際網路安全架構等技術。在深度學習領域中參與過某移動網際網路後台的OCR項目、某娛樂節目機器人的語音識別和聲紋識別項目,以及活體檢測、金融和安全等領域的多個AI項目。發布過兩套關於CNTK深度學習框架的視頻教程。
5.1 導入圖片數據集 84
5.2 分析圖片的特點,定義變數 87
5.3 構建模型 87
5.4 訓練模型並輸出中間狀態參數 89
5.5 測試模型 90
5.6 保存模型 91
5.7 讀取模型 92
第2篇 深度學習基礎——神經網路
第6章 單個神經元 96
6.1 神經元的擬合原理 96
6.2 激活函式——加入非線性因素,解決線性模型缺陷 99
6.3 softmax算法——處理分類問題 103
6.4 損失函式——用真實值與預測值的距離來指導模型的收斂方向 105
6.5 softmax算法與損失函式的綜合套用 108
6.6 梯度下降——讓模型逼近最小偏差 111
6.7 初始化學習參數 115
6.8 單個神經元的擴展——Maxout網路 116
6.9 練習題 118
第7章 多層神經網路——解決非線性問題 119
7.1 線性問題與非線性問題 119
7.2 使用隱藏層解決非線性問題 130
7.3 實例31:利用全連線網路將圖片進行分類 136
7.4 全連線網路訓練中的最佳化技巧 137
7.5 練習題 150
第8章 卷積神經網路——解決參數太多問題 151
8.1 全連線網路的局限性 151
8.2 理解卷積神經網路 152
8.3 網路結構 153
8.4 卷積神經網路的相關函式 158
8.5 使用卷積神經網路對圖片分類 170
8.6 反卷積神經網路 183
8.7 實例50:用反卷積技術復原卷積網路各層圖像 195
8.8 善用函式封裝庫 198
8.9 深度學習的模型訓練技巧 201
第9章 循環神經網路——具有記憶功能的網路 210
9.1 了解RNN的工作原理 210
9.2 簡單RNN 215
9.3 循環神經網路(RNN)的改進 225
9.4 TensorFlow實戰RNN 233
9.5 實例68:利用BiRNN實現語音識別 255
9.6 實例69:利用RNN訓練語言模型 273
9.7 語言模型的系統學習 279
9.8 處理Seq2Seq任務 296
9.9 實例75:製作一個簡單的聊天機器人 339
9.10 時間序列的高級接口TFTS 344
第10章 自編碼網路——能夠自學習樣本特徵的網路 346
10.1 自編碼網路介紹及套用 346
10.2 最簡單的自編碼網路 347
10.3 自編碼網路的代碼實現 347
10.4 去噪自編碼 359
10.5 去噪自編碼網路的代碼實現 359
10.6 棧式自編碼 364
10.7 深度學習中自編碼的常用方法 366
10.8 去噪自編碼與棧式自編碼的綜合實現 366
10.9 變分自編碼 377
10.10 條件變分自編碼 385
第3篇 深度學習進階
第11章 深度神經網路 392
11.1 深度神經網路介紹 392
11.2 GoogLeNet模型介紹 394
11.3 殘差網路(ResNet) 399
11.4 Inception-ResNet-v2結構 400
11.5 TensorFlow中的圖片分類模型庫——slim 400
11.6 使用slim中的深度網路模型進行圖像的識別與檢測 410
11.7 實物檢測模型庫——Object Detection API 417
11.8 實物檢測領域的相關模型 425
11.9 機器自己設計的模型(NASNet) 428
第12章 對抗神經網路(GAN) 430
12.1 GAN的理論知識 430
12.2 DCGAN——基於深度卷積的GAN 432
12.3 InfoGAN和ACGAN:指定類別生成模擬樣本的GAN 432
12.4 AEGAN:基於自編碼器的GAN 441
12.5 WGAN-GP:更容易訓練的GAN 447
12.6 LSGAN(最小乘二GAN):具有WGAN 同樣效果的GAN 455
12.7 GAN-cls:具有匹配感知的判別器 457
12.8 SRGAN——適用於超解析度重建的GAN 461
12.9 GAN網路的高級接口TFGAN 485
12.10 總結 486
作者簡介
李金洪 長期拼搏在一線的高級軟體工程師。先後擔任過CAD算法工程師、手機遊戲主程、架構師、項目經理、CTO、部門經理、資深產品總監和CEO等職務。現任代碼醫生工作室主程式設計師。精通C、C++、彙編、Python、Java和Go等程式語言;擅長神經網路、算法、協定分析、逆向和移動網際網路安全架構等技術。在深度學習領域中參與過某移動網際網路後台的OCR項目、某娛樂節目機器人的語音識別和聲紋識別項目,以及活體檢測、金融和安全等領域的多個AI項目。發布過兩套關於CNTK深度學習框架的視頻教程。