圖解深度學習與神經網絡:從張量到TensorFlow實現 ( 簡體 字) |
作者:張平 | 類別:1. -> 程式設計 -> 深度學習 |
譯者: |
出版社:電子工業出版社 | 3dWoo書號: 49813 詢問書籍請說出此書號!【缺書】 NT售價: 395 元 |
出版日:9/1/2018 |
頁數:336 |
光碟數:0 |
|
站長推薦:  |
印刷:黑白印刷 | 語系: ( 簡體 版 ) |
|
加入購物車 │加到我的最愛 (請先登入會員) |
ISBN:9787121347450 |
作者序 | 譯者序 | 前言 | 內容簡介 | 目錄 | 序 |
(簡體書上所述之下載連結耗時費功, 恕不適用在台灣, 若讀者需要請自行嘗試, 恕不保證) |
作者序: |
譯者序: |
前言:前言 2016 年是人工智能進入大眾視野的一年,從AlphaGo 到無人駕駛,從量子計算機到馬斯克的太空計劃,每一個焦點事件的背后都與人工智能有著很大的聯系。2016 年至今,短短兩年的時間,人工智能在與人類生活息息相關的醫療健康、金融、零售、娛樂等方面,發揮出了巨大的潛能。 從應用領域來看,人工智能可應用于機器視覺、指紋識別、人臉識別、視網膜識別、虹膜識別、掌紋識別、專家系統、自動規劃、智能搜索、語音識別、自動程序設計、智能控制、機器翻譯、智能對話機器人等領域。掀起這股人工智能熱潮最重要的技術之一就是深度學習(Deep Learning)技術。 本書的整體架構 本書由14 章組成。第1 章和第2 章主要介紹TensorFlow 的安裝和基礎使用知識。第3 章主要介紹高等代數中的梯度和求解最優化問題的梯度下降法。第4 章介紹如何使用第1章∼第3 章中講的知識解決機器學習中比較簡單的回歸問題,便于讀者學習后續章節中全連接神經網絡和卷積神經網絡的知識。第5 章和第6 章主要介紹全連接神經網絡,包括全連接神經網絡的計算步驟,如何利用全連接神經網絡構建分類模型,以及全連接神經網絡的梯度反向傳播算法,等等。第7 章主要介紹一維離散卷積。第8 章主要介紹二維離散卷積。第9章主要介紹池化操作。第10 章主要介紹經典的卷積神經網絡。第11 章∼第13 章主要介紹卷積神經網絡的梯度反向傳播。第14 章介紹搭建神經網絡的主要函數。本書中的每一章都會涉及大量的技術細節描述,便于讀者掌握深度學習背后的基礎知識及技術細節。 本書特色 眾所周知,掌握機器學習理論的數學門檻比較高,而大量優秀的機器學習、深度學習開源框架在工程實現上幫助我們越過了這些數學細節,所以很多深度學習的相關書籍是以講解項目為主要目標。本書試圖從另一個角度引導入門者直接面對深度學習背后的數學基礎,并進行了以下兩點嘗試: (1) 不同書籍對同一個數學公式的符號表達可能不同,這給入門者帶來了比較大的困擾。 本書試圖通過簡單的示例和圖例的形式展示復雜抽象的數學公式背后的計算原理,通過示例更好地理解復雜抽象的公式。 (2) 作者采用手動計算和利用程序代碼進行處理這兩種方式講解示例,兩種方式的結果可以相互驗證,幫助入門者更好地理解開源框架中的函數接口。 作者認為,想在人工智能路上走得更遠,內功扎實是致勝關鍵。希望本書可以幫助入門者夯實基礎。 本書面向的讀者 本書的目標讀者是想學習神經網絡和深度學習的初學者。同時,本書的示例代碼基于TensorFlow 的Python API,所以需要讀者具備基本的Python 編程基礎。 致謝 感謝我的父母、姐姐一家人一直以來對我生活和工作的支持。 感謝TensorFlow 開源庫的所有貢獻者。 感謝電子工業出版社博文視點的鄭柳潔老師,在本書寫作的過程中,不厭其煩地解答我遇到的各種問題,感謝她一直以來的支持和肯定。 我們期待您的反饋 限于篇幅,加之作者水平有限,書中疏漏和錯誤之處在所難免,懇請讀者批評并指正,我們視讀者的滿意為己任,視讀者的反饋意見為無價之寶,如果您發現了錯誤或者對書中內容有任何建議,都可以將其發送至電子郵箱wxcdzhangping@126.com,也可以登錄博文視點官網,在本書頁面上留言。本書中所有樣例的代碼,均可從博文視點官網下載。 作者:張平 |
內容簡介:290張圖+110個可執行的TensorFlow示例程序+算法示例易懂的神經網絡深度學習人工智能參考書源代碼文件供下載本書適合神經網絡、深度學習、TensorFlow 的入門者閱讀。 |
目錄:1 深度學習及TensorFlow 簡介1 1.1 深度學習. . . . . . 1 1.2 TensorFlow 簡介及安裝. . . . 2 2 基本的數據結構及運算6 2.1 張量. . . . . 6 2.1.1 張量的定義. . . . . 6 2.1.2 Tensor 與Numpy 的ndarray 轉換. . . . 9 2.1.3 張量的尺寸. . . . . 10 2.1.4 圖像轉換為張量. . . . 13 2.2 隨機數. . . . . 14 2.2.1 均勻(平均)分布隨機數. . . 14 2.2.2 正態(高斯)分布隨機數. . . 15 2.3 單個張量的運算. . . . 17 2.3.1 改變張量的數據類型. . . . . 17 2.3.2 訪問張量中某一個區域的值. . . 19 2.3.3 轉置. . . . . 22 2.3.4 改變形狀. . . . 26 2.3.5 歸約運算:求和、平均值、最大(小)值. . . 29 2.3.6 最大(小)值的位置索引. . . 34 2.4 多個張量之間的運算. . . . . 35 2.4.1 基本運算:加、減、乘、除. . . 35 2.4.2 乘法. . . . . 41 2.4.3 張量的連接. . . . . 42 2.4.4 張量的堆疊. . . . . 44 2.4.5 張量的對比. . . . . 48 2.5 占位符. . . . . 49 2.6 Variable 對象. . . . . . 50 3 梯度及梯度下降法52 3.1 梯度. . . . . 52 3.2 導數計算的鏈式法則. . . . . 53 3.2.1 多個函數和的導數. . . . . 54 3.2.2 復合函數的導數. . . . 54 3.2.3 單變量函數的駐點、極值點、鞍點. . . 55 3.2.4 多變量函數的駐點、極值點、鞍點. . . 57 3.2.5 函數的泰勒級數展開. . . . . 60 3.2.6 梯度下降法. . . . . 63 3.3 梯度下降法. . . . . 73 3.3.1 Adagrad 法. . . . . 73 3.3.2 Momentum 法. . . . . 75 3.3.3 NAG 法. . . . . 77 3.3.4 RMSprop 法. . . . 78 3.3.5 具備動量的RMSprop 法. . . 80 3.3.6 Adadelta 法. . . . . 81 3.3.7 Adam 法. . . . 82 3.3.8 Batch 梯度下降. . . . 84 3.3.9 隨機梯度下降. . . . . 85 3.3.10 mini-Batch 梯度下降. . . . 86 3.4 參考文獻. . . . . . 86 4 回歸分析88 4.1 線性回歸分析. . . . . 88 4.1.1 一元線性回歸. . . . . 88 4.1.2 保存和加載回歸模型. . . . . 91 4.1.3 多元線性回歸. . . . . 95 4.2 非線性回歸分析. . . . 99 5 全連接神經網絡102 5.1 基本概念. . . . . . 102 5.2 計算步驟. . . . . . 104 5.3 神經網絡的矩陣表達. . . . . 107 5.4 激活函數. . . . . . 112 5.4.1 sigmoid 激活函數. . . . . 112 5.4.2 tanh 激活函數. . . . . 113 5.4.3 ReLU 激活函數. . . . 114 5.4.4 leaky relu 激活函數. . . . 115 5.4.5 elu 激活函數. . . . 118 5.4.6 crelu 激活函數. . . . . 119 5.4.7 selu 激活函數. . . . . 120 5.4.8 relu6 激活函數. . . . . 121 5.4.9 softplus 激活函數. . . . . 121 5.4.10 softsign 激活函數. . . . . 122 5.5 參考文獻. . . . . . 123 6 神經網絡處理分類問題125 6.1 TFRecord 文件. . . . . 125 6.1.1 將ndarray 寫入TFRecord 文件. . . . 125 6.1.2 從TFRecord 解析數據. . . . 128 6.2 建立分類問題的數學模型. . . . . 134 6.2.1 數據類別(標簽) . . . . . 134 6.2.2 圖像與TFRecrder . . . . . 135 6.2.3 建立模型. . . . 140 6.3 損失函數與訓練模型. . . . . 143 6.3.1 sigmoid 損失函數. . . . . 143 6.3.2 softmax 損失函數. . . . . 144 6.3.3 訓練和評估模型. . . . 148 6.4 全連接神經網絡的梯度反向傳播. . . 151 6.4.1 數學原理及示例. . . . 151 6.4.2 梯度消失. . . . 166 7 一維離散卷積168 7.1 一維離散卷積的計算原理. . . . . 168 7.1.1 full 卷積. . . . 169 7.1.2 valid 卷積. . . . 170 7.1.3 same 卷積. . . . . 170 7.1.4 full、same、valid 卷積的關系. . . . 171 7.2 一維卷積定理. . . . . 174 7.2.1 一維離散傅里葉變換. . . . . 174 7.2.2 卷積定理. . . . 177 7.3 具備深度的一維離散卷積. . . . . 182 7.3.1 具備深度的張量與卷積核的卷積. . . 182 7.3.2 具備深度的張量分別與多個卷積核的卷積. . . 183 7.3.3 多個具備深度的張量分別與多個卷積核的卷積. . . 185 8 二維離散卷積187 8.1 二維離散卷積的計算原理. . . . . 187 8.1.1 full 卷積. . . . 187 8.1.2 same 卷積. . . . . 189 8.1.3 valid 卷積. . . . 191 8.1.4 full、same、valid 卷積的關系. . . . 192 8.1.5 卷積結果的輸出尺寸. . . . . 193 8.2 離散卷積的性質. . . . 194 8.2.1 可分離的卷積核. . . . 194 8.2.2 full 和same 卷積的性質. . . . 195 8.2.3 快速計算卷積. . . . . 197 8.3 二維卷積定理. . . . . 198 8.3.1 二維離散傅里葉變換. . . . . 198 8.3.2 二維與一維傅里葉變換的關系. . . . 201 8.3.3 卷積定理. . . . 203 8.3.4 利用卷積定理快速計算卷積. . . 203 8.4 多深度的離散卷積. . . . . 205 8.4.1 基本的多深度卷積. . . . . 205 8.4.2 一個張量與多個卷積核的卷積. . . . 207 8.4.3 多個張量分別與多個卷積核的卷積. . . 208 8.4.4 在每一深度上分別卷積. . . . 211 8.4.5 單個張量與多個卷積核在深度上分別卷積. . . 212 8.4.6 分離卷積. . . . 214 9 池化操作218 9.1 same 池化. . . . . . 218 9.1.1 same 最大值池化. . . . . 218 9.1.2 多深度張量的same 池化. . . 221 9.1.3 多個三維張量的same 最大值池化. . . . 223 9.1.4 same 平均值池化. . . . . 224 9.2 valid 池化. . . . . . 226 9.2.1 多深度張量的vaild 池化. . . 228 9.2.2 多個三維張量的valid 池化. . . . 229 10 卷積神經網絡231 10.1 淺層卷積神經網絡. . . . . 231 10.2 LeNet . . . . . . 238 10.3 AlexNet . . . . . 244 10.3.1 AlexNet 網絡結構詳解. . . . 244 10.3.2 dropout 及其梯度下降. . . . . 247 10.4 VGGNet . . . . . 256 10.5 GoogleNet . . . . . . 264 10.5.1 網中網結構. . . . . 264 10.5.2 Batch Normalization . . . . 269 10.5.3 BN 與卷積運算的關系. . . . 273 10.5.4 指數移動平均. . . . . 275 10.5.5 帶有BN 操作的卷積神經網絡. . . . 276 10.6 ResNet . . . . . . 281 10.7 參考文獻. . . . . . 284 11 卷積的梯度反向傳播286 11.1 valid 卷積的梯度. . . . 286 11.1.1 已知卷積核,對未知張量求導. . . . 286 11.1.2 已知輸入張量,對未知卷積核求導. . . 290 11.2 same 卷積的梯度. . . . 294 11.2.1 已知卷積核,對輸入張量求導. . . . 294 11.2.2 已知輸入張量,對未知卷積核求導. . . 298 12 池化操作的梯度303 12.1 平均值池化的梯度. . . . . 303 12.2 最大值池化的梯度. . . . . 306 13 BN 的梯度反向傳播311 13.1 BN 操作與卷積的關系. . . . . 311 13.2 示例詳解. . . . . . 314 14 TensorFlow 搭建神經網絡的主要函數324 |
序: |