3dwoo大學簡體電腦書店
深度學習原理與TensorFlow實踐
( 簡體 字)
作者:喻儼,莫瑜類別:1. -> 程式設計 -> 深度學習
出版社:電子工業出版社深度學習原理與TensorFlow實踐 3dWoo書號: 46736
詢問書籍請說出此書號!
有庫存
NT售價: 395
出版日:5/1/2017
頁數:304
光碟數:0
站長推薦:
印刷:黑白印刷語系: ( 簡體 字 )
ISBN:9787121312984 加入購物車加到我的最愛 (請先登入會員)
(簡體書上所述之下載連結耗時費功, 恕不適用在台灣, 若讀者需要請自行嘗試, 恕不保證, 繁體書的下載亦請直接連絡出版社)
1 深度學習簡介 1
1.1 深度學習介紹 1
1.2 深度學習的趨勢 7
1.3 參考資料 10
2 TensorFlow系統介紹 12
2.1 TensorFlow誕生的動機 12
2.2 TensorFlow系統簡介 14
2.3 TensorFlow基礎概念 16
2.3.1 計算圖 16
2.3.2 Session會話 18
2.4 系統架構 19
2.5 源碼結構 21
2.5.1 后端執行引擎 22
2.5.2 前端語言接口 24
2.6 小結 24
2.7 參考資料 25
3 Hello TensorFlow 26
3.1 環境準備 26
3.1.1 Mac OS安裝 27
3.1.2 Linux GPU服務器安裝 28
3.1.3 常用Python庫 32
3.2 Titanic題目實戰 34
3.2.1 Kaggle平臺介紹 34
3.2.2 Titanic題目介紹 35
3.2.3 數據讀入及預處理 38
3.2.4 構建計算圖 40
3.2.5 構建訓練迭代過程 44
3.2.6 執行訓練 46
3.2.7 存儲和加載模型參數 47
3.2.8 預測測試數據結果 50
3.3 數據挖掘的技巧 51
3.3.1 數據可視化 52
3.3.2 特征工程 54
3.3.3 多種算法模型 57
3.4 TensorBoard可視化 58
3.4.1 記錄事件數據 58
3.4.2 啟動TensorBorad服務 60
3.5 數據讀取 62
3.5.1 數據文件格式 63
3.5.2 TFRecord 63
3.6 SkFlow、TFLearn與TF-Slim 67
3.7 小結 69
3.8 參考資料 69
4 CNN“看懂”世界 71
4.1 圖像識別的難題 72
4.2 CNNs的基本原理 74
4.2.1 卷積的數學意義 75
4.2.2 卷積濾波 77
4.2.3 CNNs中的卷積層 81
4.2.4 池化(Pooling) 83
4.2.5 ReLU 84
4.2.6 多層卷積 86
4.2.7 Dropout 86
4.3 經典CNN模型 87
4.3.1 AlexNet 88
4.3.2 VGGNets 95
4.3.3 GoogLeNet & Inception 98
4.3.4 ResNets 106
4.4 圖像風格轉換 109
4.4.1 量化的風格 109
4.4.2 風格的濾鏡 116
4.5 小結 120
4.6 參考資料 121
5 RNN“能說會道” 123
5.1 文本理解和文本生成問題 124
5.2 標準RNN模型 128
5.2.1 RNN模型介紹 128
5.2.2 BPTT算法 130
5.2.3 靈活的RNN結構 132
5.2.4 TensorFlow實現正弦序列預測 135
5.3 LSTM模型 138
5.3.1 長期依賴的難題 138
5.3.2 LSTM基本原理 139
5.3.3 TensorFlow構建LSTM模型 142
5.4 更多RNN的變體 144
5.5 語言模型 146
5.5.1 NGram語言模型 146
5.5.2 神經網絡語言模型 148
5.5.3 循環神經網絡語言模型 150
5.5.4 語言模型也能寫代碼 152
5.5.5 改進方向 163
5.6 對話機器人 164
5.6.1 對話機器人的發展 165
5.6.2 基于seq2seq的對話機器人 169
5.7 小結 181
5.8 參考資料 182
6 CNN+LSTM看圖說話 183
6.1 CNN+LSTM網絡模型與圖像檢測問題 184
6.1.1 OverFeat和Faster R-CNN圖像檢測算法介紹 185
6.1.2 遮擋目標圖像檢測方法 187
6.1.3 ReInspect算法實現及模塊說明 188
6.1.4 ReInspect算法的實驗數據與結論 204
6.2 CNN+LSTM網絡模型與圖像摘要問題 207
6.2.1 圖像摘要問題 208
6.2.2 NIC圖像摘要生成算法 209
6.2.3 NIC圖像摘要生成算法實現說明 214
6.2.4 NIC算法的實驗數據與結論 243
6.3 小結 249
6.4 參考資料 250
7 損失函數與優化算法 253
7.1 目標函數優化策略 254
7.1.1 梯度下降算法 254
7.1.2 RMSProp優化算法 256
7.1.3 Adam優化算法 257
7.1.4 目標函數優化算法小結 258
7.2 類別采樣(Candidate Sampling)損失函數 259
7.2.1 softmax類別采樣損失函數 261
7.2.2 噪聲對比估計類別采樣損失函數 281
7.2.3 負樣本估計類別采樣損失函數 286
7.2.4 類別采樣logistic損失函數 286
7.3 小結 287
7.4 參考資料 288
結語 289
本書主要介紹了深度學習的基礎原理和TensorFlow系統基本使用方法。TensorFlow是目前機器學習、深度學習領域最優秀的計算系統之一,本書結合實例介紹了使用TensorFlow開發機器學習應用的詳細方法和步驟。同時,本書著重講解了用于圖像識別的卷積神經網絡和用于自然語言處理的循環神經網絡的理論知識及其TensorFlow實現方法,并結合實際場景和例子描述了深度學習技術的應用范圍與效果。本書非常適合對機器學習、深度學習感興趣的讀者,或是對深度學習理論有所了解,希望嘗試更多工程實踐的讀者,抑或是對工程產品有較多經驗,希望學習深度學習理論的讀者。


從理論到工程
技術發展的過程就是人類在探索自身創造能力邊界的過程,而人工智能無疑是最重要以及影響最深遠的領域之一。
AlphaGo及其馬甲Master在圍棋領域大勝人類頂尖高手之后,在智力分析領域人類優勢開始出現裂痕。而在“聽說讀寫”方面,不管是語音識別、語音合成、機器翻譯,還是圖像識別、物體識別,甚至是自動文章生成、自動曲譜生成、藝術圖像合成方面,機器已經開始做得比人類更為強大。深度學習在工程領域的突破,使得“機器學習”走出了實驗室,進入到工程領域,人類開始重新審視機器能帶來的更多可能性。
正如2007年以iPhone為代表的智能手機出現,10年之間已經顛覆了諸多商業領域、影響了人類的生活方式一樣,深度學習也必將如此,作為一名技術人,必須理解和跟上行業和時代的變革!
在過去的計算機技術演變過程中,數據主線(展示、邏輯、存儲)、架構主線(C/S,B/S,SASS)、語言框架平臺主線(語法、庫、框架、操作系統、平臺)的變遷基本有跡可循,易于舉一反三,遷移學習曲線相對平緩。而機器學習的學習曲線相當陡峭,需要同時專注于數據處理、模型構建以及結果優化,顛覆了我們以往對數據處理的理解。作為工程業界人士來說,沒有機器學習理論基礎的支持,幾乎無法應用相關的工具;而沒有工程實踐的嘗試,又很難體系化理解理論基礎——入門著實不易。
本書的作者為具有多年研究經驗的博士和多年業界工程研發經驗的團隊,他們在工程領域的經驗能快速地幫助讀者理解TensorFlow的基礎概念,并以最快速度搭建環境和跑通Demo。更為重要的是,他們從學術+工程領域的角度,高屋建瓴地拎出了CNN(卷積神經網絡)、RNN(循環神經網絡)、CNN+LSTM(Long Short Term網絡)的基本原理,并且結合CNN在圖像領域處理、RNN在語義領域處理以及結合CNN+LSTM在圖像檢測和圖像摘要生成等基本工程領域的處理,快速地讓讀者理解深度學習能干什么,如何利用TensorFlow快速解決這些領域的問題,讓自己的應用插上“人工智能”的翅膀!
人工智能的時代已經開啟,唯有快速擁抱變化才能應對變化,希望讀者能借這本書建立對機器學習的宏觀認識并對之深入理解,跑步進入機器學習領域!

劉鐵鋒
《編程之美》作者
海豚瀏覽器創始人

前言
創造出具有智能的機器一直是人們夢寐以求的理想。自20世紀50年代圖靈測試被提出以來,人工智能就成為了計算機科學領域中一個極具吸引力的研究方向。近年來,深度學習是機器學習領域中一個非常具有突破性的研究方向,從AlphaGo戰勝李世石,到Prisma運用深度學習技術制作濾鏡刷爆全世界的社交網絡,深度學習在圖像處理、自然語言處理甚至博弈決策等問題上不斷取得震驚世人的成績。
隨著科研理論上的不斷突破,機器學習基礎架構方面也有了長足進步。為了提高科研和應用的開發效率,面向深度學習的開發框架不斷涌現,而TensorFlow就是其中的佼佼者。依托于Google強大的影響力,TensorFlow一經發布就吸引了整個行業的關注。TensorFlow自2015年年底在GitHub開源以來,一直是機器學習、深度學習類別中關注度最高的項目,截至2016年年底,已經獲得超過40000個Star。同時,在開源社區共同的努力下,基于TensorFlow開發的各種算法和應用都在飛速增加。
本書結合基于TensorFlow實踐的應用代碼,介紹了深度學習的基礎概念和知識,但需要讀者預先掌握一些傳統機器學習、神經網絡相關方面的知識。同時,本書代碼主要基于目前最新的TensorFlow 1.0版本,大部分為Python代碼,需要讀者有一定的Python語言基礎。希望通過本書的介紹,讀者可以由淺入深、由理論到實踐全面掌握深度學習的基礎知識和實踐方法。
本書第1章介紹了深度學習的由來以及發展趨勢,簡要說明了人工智能、機器學習、深度學習等名詞概念之間的聯系。第2章主要介紹了TensorFlow系統的基礎知識和一些重要概念。第3章通過對Kaggle競賽平臺上的Titanic問題的求解實例,介紹了TensorFlow系統的基本用法,并簡要介紹了機器學習問題中的一些常用的處理技巧。第4章和第5章分別介紹了主要應用于圖像處理領域的卷積神經網絡CNN和主要應用于自然語言處理領域的循環神經網絡RNN。其中第4章介紹了CNN的基本原理和多個經典網絡結構,并通過圖像風格化的實例展示了CNN在更多場景下應用的可能性。第5章介紹了RNN、LSTM以及它們的多種變種結構,并通過實例介紹了如何構建實用的語言模型和對話機器人。第6章介紹了卷積神經網絡與循環神經網絡的結合,通過圖像檢測和圖像摘要兩個問題介紹了CNN+LSTM相結合的威力。最后的第7章介紹了機器學習中非常重要的損失函數與優化算法在TensorFlow中的實現,對實際使用深度學習解決問題都有極大幫助。
在此感謝互聯網時代,感謝Google的開源精神,讓我們可以如此緊跟時代最前沿的技術,也可以為技術的進步做出自己微薄的貢獻。還要感謝電子工業出版社劉皎編輯對新技術的關注和推廣,感謝同事、家人、各位好友的支持和幫助,有你們的支持才有此書的出版,不勝感激。
作 者
pagetop