TensorFlow進階指南:基礎、算法與應用 ( 簡體 字) |
作者:黃鴻波 | 類別:1. -> 程式設計 -> 深度學習 |
譯者: |
出版社:電子工業出版社 | 3dWoo書號: 50161 詢問書籍請說出此書號!【有庫存】 NT售價: 495 元 |
出版日:10/1/2018 |
頁數:376 |
光碟數:0 |
|
站長推薦: |
印刷:黑白印刷 | 語系: ( 簡體 版 ) |
|
加入購物車 │加到我的最愛 (請先登入會員) |
ISBN:9787121345654 |
作者序 | 譯者序 | 前言 | 內容簡介 | 目錄 | 序 |
(簡體書上所述之下載連結耗時費功, 恕不適用在台灣, 若讀者需要請自行嘗試, 恕不保證) |
作者序: |
譯者序: |
前言:自從2016年初谷歌的AlphaGo戰勝了世界圍棋冠軍李世石,人工智能和機器學習領域就變得異常火爆。其實早在半個世紀以前,人工智能領域的相關概念就已經被提出,經過了這半個世紀的不斷發展,人工智能以及深度學習相關領域已經在工業界和學術界發生了顛覆性的改變。2017年2月11日,谷歌公司正式發布TensorFlow 1.0版本,由此開始,一段新的熱潮被掀起。到目前為止,谷歌公司的TensorFlow版本已經更新至1.10版本,本書代碼主要是在1.6版本的基礎上進行開發的,同時兼容1.2~1.10的版本,并已經過驗證,讀者可以放心使用。 關于本書的使用 本書主要面向對TensorFlow具有強烈興趣且希望盡快入門的讀者,以及正在從事TensorFlow方面的工作且希望深入的讀者。 本書一共有14章的內容,分為四個部分: TensorFlow基礎部分(第1章到第3章) 主要講解了TensorFlow的基礎知識(包括張量、運行圖、Session等部分)、環境的搭建方法(包括Windows、Linux版本的環境搭建,以及Java版本的環境搭建)等。 TensorFlow神經網絡基礎和各種模型部分(第4章到第6章) 從基礎的神經元開始,逐步講解單層神經網絡、多層神經網絡、卷積神經網絡、循環神經網絡等,在每個神經網絡中還講解其附帶的各種數據集、模型和變體,比如BP神經網絡、AlexNet模型、LSTM等。通過這些內容,讀者可以對神經網絡等知識有初步認識,并能把握其整體脈絡。 TensorFlow的常用技術(第7章到第9章) 主要講解TensorFlow對于數據集的制作和處理,以及在TensorBoard的模式下可視化觀察模型的各種參數變化,并講解了支持向量機的概念。之所以把支持向量機放在這個部分,是因為支持向量機目前在深度學習領域是非常常用的,比如目標檢測和分類任務。通過學習這一部分的內容,讀者可以對TensorFlow在實際應用過程中的常用技術有一定的了解。 TensorFlow的實際應用(第10章到第14章) 主要講解如何使用TensorFlow在實際生活中解決問題,并講解TensorFlow打包發布的各種方法,以及在GPU環境下如何使用TensorFlow。另外,在這一部分,我們也講到目標檢測,讀者可以將其思路用于實際工業生產領域當中。 初學TensorFlow的讀者閱讀本書時需要具有一定的Python基礎,并建議從第1章開始,如果您有GPU版本的服務器或主機,則可以選擇先看第13章,而不必閱讀第2章;另外本書中含有一部分公式的推導,例如第6章循環神經網絡會講解關于BP神經網絡的推導過程,這需要您有一定的數學基礎,但是如果您看不懂數學推導也不會耽誤對后面章節的理解和學習;如果您從事圖像處理相關的工作和研究,可以著重看第5章卷積神經網絡和第8章TensorFlow中的數據操作,通過這兩章內容,我們可以建立自己的數據集,并將數據集應用到自己的模型中。如果您想了解各個公開數據集的相關信息,以及如何使用公開的數據模型,可以參考第5章卷積神經網絡。 針對已經從事TensorFlow相關工作的讀者,本書中含有大量的實例,以及作者在實際開發過程中的心得體會,并且循序漸進地講解了公式推導部分,在講解知識點的時候會推薦知識點,例如講解RNN,同時會講解為什么會使用RNN,RNN是由什么樣的神經網絡算法(BP神經網絡)演變而來的,又在其中加入了什么樣的內容(時序處理),以及這些算法的推導原理等。通過對一個網絡的深入研究,能夠使您在使用相關模型時了解其本質。 致謝 本書的順利出版離不開大家對我的幫助。 在這里,首先我要感謝電子工業出版社博文視點的孫學瑛老師對我的信任及支持,正是由于孫老師的支持,才能有此書的順利出版。其次我要感謝我的家人在我寫書的這近一年時間內給我的支持和理解,尤其是我的妻子,在懷有身孕的情況下還幫助我分擔了一些家庭中的瑣事,使得我的寫作能夠順利完成。 另外,還要感謝華中科技大學的胡中旭博士對本書關于神經網絡及強化學習部分給出的建議和支持;感謝南京大學黃繼鵬對于RNN部分寫詩機器人的支持;感謝格力電器大數據中心的劉艷國幫助我實現了Android相關章節代碼的調試工作;感謝韋家弘同學對于RNN相關內容的幫助和支持。 除此之外,本書還參考了網上的一些圖例和部分代碼,由于大多無法找到其出處,所以無法一一列舉,在此感謝相關作者。 最后還要感謝所有在本書編寫過程中給予我支持和幫助的人們,正是你們的幫助才使本書得以面世。 讀者服務 輕松注冊成為博文視點社區用戶(www.broadview.com.cn),掃碼直達本書頁面。 ?下載資源:本書如提供示例代碼及資源文件,均可在?下載資源?處下載。 ?提交勘誤:您對書中內容的修改意見可在?提交勘誤?處提交,若被采納,將獲贈博文視點社區積分(在您購買電子書時,積分可用來抵扣相應金額)。 ?交流互動:在頁面下方?讀者評論?處留下您的疑問或觀點,與我們和其他讀者一同學習交流。 |
內容簡介:本書是由人工智能一線從業專家根據自己日常工作的體會與經驗總結而成的,在對TensorFlow的基礎知識、環境搭建、神經網絡、常用技術的詳細講解當中穿插了自己實戰的經驗與教訓。更與眾不同的是,本書詳細地解析了使用TensorFlow進行深度學習領域中常用模型的搭建、調參和部署整個流程,以及數據集的使用方法,能夠幫助您快速理解和掌握TensorFlow相關技術,最后還用實戰項目幫助您快速地學會TensorFlow開發,并使用TensorFlow技術來解決實際問題。本書代碼主要是在1.6版本的基礎上進行開發的,同時兼容1.2~1.10的版本,并已得到驗證。本書主要面向對TensorFlow、深度學習、人工智能具有強烈興趣且希望盡快入門的相關從業人員、高校相關專業的教育工作者和在校學生,以及正在從事深度學習工作且希望深入的數據科學家、軟件工程師、大數據平臺工程師、項目管理者等。 |
目錄:第1章 人工智能與深度學習 1 1.1 人工智能與機器學習 1 1.2 無處不在的深度學習 6 1.3 如何入門深度學習 7 1.4 主流深度學習框架介紹 13 第2章 搭建TensorFlow環境 15 2.1 基于pip安裝 15 2.1.1 基于Windows環境安裝TensorFlow 15 2.1.2 基于Linux環境安裝TensorFlow 22 2.2 基于Java安裝TensorFlow 24 2.3 安裝TensorFlow的常用依賴模塊 27 2.4 Hello TensorFlow 30 2.4.1 MNIST數據集 30 2.4.2 編寫訓練程序 32 2.5 小結 35 第3章 TensorFlow基礎 36 3.1 TensorFlow的系統架構 36 3.1.1 Client 37 3.1.2 Distributed Master 38 3.1.3 Worker Service 39 3.1.4 Kernel Implements 39 3.2 TensorFlow的數據結構——張量 39 3.2.1 什么是張量 39 3.2.2 張量的階 40 3.2.3 張量的形狀 40 3.2.4 數據類型 41 3.3 TensorFlow的計算模型——圖 42 3.3.1 計算圖基礎 42 3.3.2 計算圖的組成 43 3.3.3 計算圖的使用 45 3.3.4 小結 48 3.4 TensorFlow中的會話——Session 48 第4章 TensorFlow中常用的激活函數與神經網絡 50 4.1 激活函數的概念 50 4.2 常用的激活函數 51 4.2.1 Sigmoid函數 51 4.2.2 Tanh函數 53 4.2.3 ReLU函數 55 4.2.4 Softplus函數 57 4.2.5 Softmax函數 58 4.2.6 小結 59 4.3 損失函數的概念 60 4.4 損失函數的分類 63 4.5 常用的損失函數 65 4.5.1 0-1損失函數 65 4.5.2 Log損失函數 66 4.5.3 Hinge損失函數 69 4.5.4 指數損失 70 4.5.5 感知機損失 70 4.5.6 平方(均方)損失函數 71 4.5.7 絕對值損失函數 71 4.5.8 自定義損失函數 71 4.6 正則項 72 4.6.1 L0范數和L1范數 72 4.6.2 L2范數 73 4.6.3 核范數 74 4.7 規則化參數 76 4.8 易混淆的概念 76 4.9 神經網絡的優化方法 77 4.9.1 梯度下降算法 77 4.9.2 隨機梯度下降算法 79 4.9.3 其他的優化算法 80 4.9.4 小結 84 4.10 生成式對抗網絡(GAN) 84 4.10.1 CGAN 96 4.10.2 DCGAN 97 4.10.3 WGAN 98 4.10.4 LSGAN 99 4.10.5 BEGAN 100 第5章 卷積神經網絡 102 5.1 神經網絡簡介 102 5.1.1 神經元與神經網絡 102 5.1.2 感知器(單層神經網絡)與多層感知器 104 5.2 圖像識別問題 108 5.3 常用的圖像庫介紹 111 5.4 卷積神經網絡簡介 114 5.4.1 CNN的基本原理與卷積核 115 5.4.2 池化 116 5.4.3 再探ReLU 118 5.5 CNN模型 119 5.5.1 LeNet-5模型 119 5.5.2 AlexNet模型 123 5.5.3 Inception模型 130 5.6 用CNN實現MNIST訓練 147 第6章 循環神經網絡 151 6.1 初識循環神經網絡 151 6.1.1 前饋神經網絡 152 6.1.2 神經網絡中的時序信息 158 6.2 詳解循環神經網絡 159 6.3 RNN的變種——雙向RNN 162 6.4 One-Hot Encoding 165 6.5 詞向量和word2vec 166 6.5.1 CBOW模型 167 6.5.2 Skip-Gram模型 168 6.6 梯度消失問題和梯度爆炸問題 169 6.6.1 梯度下降 170 6.6.2 解決梯度消失和梯度爆炸問題的方法 172 6.7 RNN的變種——LSTM 179 6.8 寫詩機器人 189 第7章 TensorFlow的可視化 196 7.1 TensorBoard簡介 196 7.2 生成和使用TensorBoard 200 7.3 TensorBoard的面板展示 208 7.4 小結 223 第8章 TensorFlow中的數據操作 224 8.1 制作TFRecords數據集 224 8.2 Dataset API介紹 230 8.3 TensorFlow中的隊列 233 第9章 支持向量機(SVM) 240 9.1 什么是支持向量機 240 9.2 計算最優超平面 242 9.3 TensorFlow實現線性SVM 243 9.4 非線性SVM介紹 247 9.5 使用TensorFlow實現非線性SVM分類器 250 第10章 TensorFlow結合Flask發布MNIST模型 258 10.1 Flask框架介紹 258 10.2 訓練MNIST模型 259 10.3 小結 275 第11章 TensorFlow模型的發布與部署 276 11.1 TensorFlow Serving的前導知識 276 11.2 TensorFlow Serving 模型打包 280 11.3 TensorFlow Serving模型的部署和調用 284 第12章 TensorFlow Lite牛刀小試 285 12.1 什么是TensorFlow Lite 285 12.2 如何使用TensorFlow Lite模型 287 12.3 TensorFlow Lite與Android結合實現圖像識別 290 第13章 TensorFlow GPU 296 13.1 什么是GPU 296 13.2 GPU的選擇 297 13.3 搭建TensorFlow GPU 299 13.3.1 在Windows上搭建TensorFlow GPU 299 13.3.2 在Linux上搭建TensorFlow GPU 307 13.4 使用TensorFlow GPU進行訓練 311 第14章 TensorFlow與目標檢測 317 14.1 傳統目標檢測方法 317 14.2 RCNN介紹 319 14.3 Fast-RCNN 321 14.4 Faster-RCNN 325 14.5 YOLO 328 附錄A TensorFlow歷代版本更新內容 354 A.1 TensorFlow 1.3版本更新內容 354 A.2 TensorFlow 1.4版本更新內容 355 A.3 TensorFlow 1.5版本更新內容 356 A.4 TensorFlow 1.6版本更新內容 356 A.5 TensorFlow 1.7版本更新內容 357 A.6 TensorFlow 1.8版本更新內容 357 A.7 TensorFlow 1.9版本更新內容 358 |
序: |