3dwoo大學簡體電腦書店
TensorFlow 2.0深度學習應用實踐
( 簡體 字)
作者:王曉華類別:1. -> 程式設計 -> 機器學習
出版社:清華大學出版社TensorFlow 2.0深度學習應用實踐 3dWoo書號: 53170
詢問書籍請說出此書號!
有庫存
NT售價: 345
出版日:7/1/2020
頁數:288
光碟數:0
站長推薦:
印刷:黑白印刷語系: ( 簡體 字 )
ISBN:9787302554783 加入購物車加到我的最愛 (請先登入會員)
(簡體書上所述之下載連結耗時費功, 恕不適用在台灣, 若讀者需要請自行嘗試, 恕不保證, 繁體書的下載亦請直接連絡出版社)
第1章星星之火 1
1.1計算機視覺與深度學習 1
1.1.1人類視覺神經的啟迪 2
1.1.2計算機視覺的難點與人工
神經網絡 3
1.1.3應用深度學習解決計算機
視覺問題 4
1.2計算機視覺學習的基礎與研究方向 5
1.2.1學習計算機視覺結構圖 5
1.2.2計算機視覺的學習方式和
未來趨勢 6
1.3本章小結 7
第2章Python的安裝與使用 8
2.1Python基本安裝和用法 8
2.1.1Anaconda的下載與安裝 8
2.1.2Python編譯器PyCharm的安裝 11
2.1.3使用Python計算softmax函數 13
2.2Python常用類庫threading 15
2.2.1threading庫的使用 15
2.2.2threading模塊中最重要的
Thread類 16
2.2.3threading中Lock類 17
2.2.4threading中join類 18
2.3本章小結 18
第3章深度學習的理論基礎——
機器學習 19
3.1機器學習基本分類 19
3.1.1應用學科的分類 19
3.1.2學習模式的分類 20
3.1.3應用領域的分類 20
3.2機器學習基本算法 21
3.2.1機器學習的算法流程 21
3.2.2基本算法的分類 22
3.3算法的理論基礎 23
3.3.1小學生的故事——求圓的面積 23
3.3.2機器學習基礎理論——函數
逼近 24
3.4回歸算法 25
3.4.1函數逼近經典算法——線性回歸
算法 25
3.4.2線性回歸的姐妹——邏輯回歸 27
3.5本章小結 28
第4章Python類庫的使用——數據處理
及可視化展示 29
4.1從小例子起步——NumPy的初步使用 29
4.1.1數據的矩陣化 29
4.1.2數據分析 30
4.1.3基于統計分析的數據處理 32
4.2圖形化數據處理——Matplotlib包使用 32
4.2.1差異的可視化 33
4.2.2坐標圖的展示 34
4.2.3玩個大的 35
4.3深度學習理論方法——相似度計算 38
4.3.1基于歐幾里得距離的相似度
計算 38
4.3.2基于余弦角度的相似度
計算 39
4.3.3歐幾里得相似度與余弦相似度的
比較 40
4.4數據的統計學可視化展示 40
4.4.1數據的四分位 40
4.4.2數據的四分位示例 41
4.4.3數據的標準化 45
4.4.4數據的平行化處理 46
4.4.5熱點圖-屬性相關性檢測 48
4.5Python實戰——某地降雨的關系處理 49
4.5.1不同年份的相同月份統計 49
4.5.2不同月份之間的增減程度比較 51
4.5.3每月降雨不相關嗎 52
4.6本章小結 53
第5章OpenCV的基礎使用 54
5.1OpenCV基本的圖片讀取 54
5.1.1基本的圖片存儲格式 54
5.1.2圖像的讀取與存儲 56
5.1.3圖像的轉換 56
5.1.4使用NumPy模塊對圖像進行
編輯 58
5.2OpenCV的卷積核處理 59
5.2.1計算機視覺的三種不同色彩
空間 59
5.2.2卷積核與圖像特征提取 60
5.2.3卷積核進階 62
5.3本章小結 63
第6章OpenCV與TensorFlow的融合 64
6.1圖片的自由縮放以及邊緣裁剪 64
6.1.1圖像的擴縮裁挖 64
6.1.2圖像色調的調整 65
6.1.3圖像的旋轉、平移和翻轉 67
6.2使用OpenCV擴大圖像數據庫 68
6.2.1圖像的隨機裁剪 68
6.2.2圖像的隨機旋轉變換 69
6.2.3圖像色彩的隨機變換 70
6.2.4對鼠標的監控 70
6.3本章小結 71
第7章Let’splayTensorFlow 72
7.1TensorFlow游樂場 72
7.1.1Iwanttoplayagame 72
7.1.2TensorFlow游樂場背后的故事 75
7.1.3如何訓練神經網絡 76
7.2HelloTensorFlow 77
7.2.1TensorFlow名稱的解釋 77
7.2.2TensorFlow基本概念 78
7.3本章小結 80
第8章HelloTensorFlow,從0到1 81
8.1TensorFlow的安裝 81
8.2.1檢測Anaconda中的TensorFlow
版本 81
8.2.2TensorFlow2.0GPU版本基礎
顯卡推薦和前置軟件安裝 82
8.2.3第一個HelloTensorFlow
小程序 84
8.2TensorFlow常量、變量和數據類型 86
8.3TensorFlow矩陣計算 88
8.4HelloTensorFlow 89
8.5本章小結 92
第9章TensorFlow重要算法基礎 93
9.1BP神經網絡簡介 93
9.2BP神經網絡兩個基礎算法詳解 95
9.2.1最小二乘法(LS算法)詳解 95
9.2.2道士下山的故事——梯度下降
算法 98
9.3反饋神經網絡反向傳播算法介紹 101
9.3.1深度學習基礎 101
9.3.2鏈式求導法則 102
9.3.3反饋神經網絡原理與公式
推導 103
9.3.4反饋神經網絡原理的激活
函數 108
9.3.5反饋神經網絡原理的Python
實現 109
9.4本章小結 115
第10章HelloTensorFlow&Keras 116
10.1MODEL!MODEL!還是MODEL 116
10.2使用KerasAPI實現鳶尾花分類的例子
(順序模式) 117
10.2.1數據的準備 118
10.2.2數據的處理 118
10.2.3梯度更新函數的寫法 119
10.3使用Keras函數式編程實現鳶尾花
分類的例子(重點) 120
10.4使用保存的Keras模式對模型進行
復用 123
10.5使用TensorFlow2.0標準化編譯
對Iris模型進行擬合 124
10.6多輸入單輸出TensorFlow2.0編譯
方法(選學) 128
10.7多輸入多輸出TensorFlow2.0編譯
方法(選學) 132
10.8全連接層詳解 133
10.8.1全連接層的定義與實現 133
10.8.2使用TensorFlow2.0自帶的
API實現全連接層 135
10.8.3打印顯示TensorFlow2.0設計的
Model結構和參數 138
10.9本章小結 140
第11章卷積層詳解與MNIST實戰 141
11.1卷積運算基本概念 141
11.1.1卷積運算 142
11.1.2TensorFlow2.0中卷積函數
實現詳解 143
11.1.3池化運算 145
11.1.4softmax激活函數 146
11.1.5卷積神經網絡原理 147
11.2TensorFlow2.0編程實戰:MNIST
手寫體識別 150
11.2.1MNIST數據集 150
11.2.2MNIST數據集特征和標簽
介紹 151
11.2.3TensorFlow2.0編程實戰
MNIST數據集 153
11.2.4使用自定義的卷積層實現
MNIST識別 157
11.3本章小結 161
第12章卷積神經網絡公式推導與
應用 162
12.1反饋神經網絡算法 162
12.1.1經典反饋神經網絡正向與反向
傳播公式推導 162
12.1.2卷積神經網絡正向與反向傳播
公式推導 165
12.2使用卷積神經網絡分辨
CIFAR-10數據集 171
12.2.1CIFAR-10數據集下載與
介紹 172
12.2.2CIFAR-10模型的構建與
數據處理 174
12.2.3CIFAR-10模型的細節描述與
參數重構 181
12.3本章小結 183
第13章TensorFlowDatasets和
TensorBoard詳解 184
13.1TensorFlowDatasets簡介 184
13.2Datasets數據集的基本使用 186
13.3Datasets數據集的使用——
Fashion-MNIST 188
13.3.1Fashion-MNIST數據集下載與
展示 189
13.3.2模型的建立與訓練 191
13.4使用Keras對Fashion-MNIST數據集
進行處理 193
13.5使用TensorBoard可視化訓練過程 199
13.5.1TensorBoard文件夾的設置 199
13.5.2TensorBoard的顯式調用 200
13.5.3TensorBoard的使用 202
13.6本章小結 206
第14章從冠軍開始:ResNet 207
14.1ResNet基礎原理與程序設計基礎 207
14.1.1ResNet誕生的背景 208
14.1.2模塊工具的TensorFlow實現——
不要重復造輪子 211
14.1.3TensorFlow高級模塊layers用法
簡介 211
14.2ResNet實戰CIFAR-100數據集分類 219
14.2.1CIFAR-100數據集簡介 219
14.2.2ResNet殘差模塊的實現 222
14.2.3ResNet網絡的實現 224
14.2.4使用ResNet對CIFAR-100進行
分類 227
14.3ResNet的兄弟——ResNeXt 228
14.3.1ResNeXt誕生的背景 229
14.3.2ResNeXt殘差模塊的實現 230
14.3.3ResNeXt網絡的實現 231
14.3.4ResNeXt和ResNet的比較 233
14.4本章小結 234

第15章Attentionisallweneed 235
15.1簡單的理解注意力機制 235
15.1.1何為注意力 235
15.1.2hardorsoft——注意力機制的
兩種常見形式 237
15.1.3SpatialandChannel——注意力
機制的兩種實現形式 237
15.2SENetorCBAM注意力機制的
經典模型 240
15.2.1最后的冠軍——SENet 240
15.2.2結合了SpatialandChannel的
CBAM模型 243
15.2.3注意力的前沿研究——基于
細粒度的圖像注意力機制 248
15.3本章小結 249
第16章開始找工作吧——深度學習
常用面試問題答疑 250
16.1深度學習面試常用問題答疑 250
16.1.1如何降低過擬合
(Overfitting) 251
16.1.2全連接層詳解 254
16.1.3激活函數起作用的原因 255
16.1.4卷積后的圖像大小 255
16.1.5池化層的作用 255
16.1.6為什么在最后分類時使用softmax
而不是傳統的SVM 256
16.2卷積神經網絡調優面試問答匯總 256
16.2.1數據集的注意事項 256
16.2.2卷積模型訓練的注意事項 256
16.3NIN模型介紹 257

16.3.1NIN(NetworkInNetwork)模型
簡介 257
16.3.2貓狗大戰——NIN的代碼
實現 258
16.4deeperisbetter——GoogLeNet模型
介紹 260
16.4.1GoogLeNet模型的介紹 261
16.4.2GoogLeNet模型單元的
TensorFlow實現 263
16.4.3GoogLeNet模型一些注意
事項 266
16.5本章小結 267
第17章不服就是GAN——對抗生成
網絡 268
17.1一個悲慘的故事 268
17.2GAN基本原理簡介 269
17.3GAN實戰——手寫體數字的生成 272
17.3.1MNIST數據集和GAN模型
實現 272
17.3.2訓練參數的定義和實現 275
17.4本章小結 278
第18章未來的趨勢——圖卷積神經
網絡初步 279
18.1圖卷積神經網絡的誕生背景 279
18.1.1圖卷積基本原理介紹 279
18.1.2圖卷積基本原理和公式介紹 281
18.1.3圖卷積需要的基本概念 282
18.2實戰圖卷積神經網絡 283
18.2.1cora數據集簡介 283
18.2.2圖卷積模型的建立 286
18.3本章小結 288
本書內容分為22章,包括Python類庫的安裝和使用、TensorFlow基本數據結構和使用、TensorFlow數據集的創建與讀取、人工神經網絡介紹、反饋神經網絡的理論基礎,深度學習模型的創建以及相關特性介紹等內容,并在本書各個模型部分特別介紹了模型調參的初步知識。本書強調理論聯系實際,著重介紹了TensorFlow編程解決圖像識別的應用,提供了大量數據集供讀者使用,也以代碼的形式實現了深度學習模型實供讀者參考。
我們處于一個變革的時代!
給定一個物體,讓一個3歲的小孩描述這個物體是什么,似乎是一件非常簡單的事情。然而將同樣的東西放在計算機面前,讓它描述自己看到了什么,這在不久以前還是一件不可能的事。
讓計算機學會“看”東西,這是一個專門的學科——計算機視覺所正在做的工作。借助于人工神經網絡和深度學習的發展,近年來計算機視覺在研究上取得了重大的突破。通過模擬生物視覺所構建的卷積神經網絡模型在圖像識別和分類上取得了非常好的效果。
而今,借助于深度學習的發展,使用人工智能去處理常規勞動、理解語音語義、幫助醫學診斷和支持基礎科研工作,這些曾經是夢想的東西似乎都在眼前。
寫作本書的原因
TensorFlow作為最新的、應用范圍最為廣泛的深度學習開源框架自然引起了廣泛的關注,它吸引了大量程序設計和開發人員進行相關內容的學習開發與開發學習。掌握TensorFlow程序設計基本技能的程序設計人員成為當前各組織和單位熱切追求的最熱門人才。他們的主要工作就是利用獲得數據集設計不同的人工神經網絡模型,利用人工神經網絡強大的學習能力提取和挖掘數據集中包含的潛在信息。編寫相應的TensorFlow程序對數據進行處理,對其價值進行進一步開發,為商業機會的獲取、管理模式的創新、決策的制定提供相應的支持。隨著越來越多的組織、單位和行業對深度學習應用的重視,高層次的TensorFlow程序設計人員才必將成為就業市場上搶手和緊俏的人才。
目前來說,TensorFlow雖然被谷歌開源公布只有不到2年時間,但是其在工業、商業以及科學研究上的應用量和引起的討論,使之成為時下最熱門的深度學習框架。但是由于國內翻譯和知識傳播的滯后性等多方面的原因。國內對這方面的介紹較為欠缺,缺少最新 TensorFlow框架使用和設計的相關內容,從而造成了知識傳播的延遲性。學習是為了掌握新知識、獲得新能力,不應該學習已經被摒棄的內容。
其次,與其他應用框架不同的是,TensorFlow并不是一個簡單的編程框架,深度學習也不簡單的是一個名詞,而是需要相關研究人員對隱藏在其代碼背后的理論進行學習,需要掌握一定的數學知識和理論基礎。本書的作者具有長期一線理科理論教學基礎,可以將其中的理論知識以非常淺顯易懂的語言解釋清楚,這一點是本書比較突出的優勢。
本書是為了滿足廣大TensorFlow程序設計和開發人員學習最新的TensorFlow的程序代碼的要求而出版的。本書對涉及深度學習的結構與編程代碼作了循序漸進地介紹與說明,以解決實際圖像處理為依托,從理論開始介紹了TensorFlow程序設計模式,多角度、多方面地對其中的原理和實現提供了翔實的分析,并結合實際案例設計和編寫了應用程序,使得讀者能夠從開發者的層面掌握TensorFlow程序的設計方法和技巧,為開發出更強大的圖像處理應用打下扎實的基礎。
本書的優勢
(1)本書在方向上偏重于使用卷積神經網絡以及其相關變化的模型,在TensorFlow框架上進行圖像特征提取、圖像識別以及具體應用,這在世面上鮮有涉及。
(2)本書并非枯燥的理論講解,而是筆者閱讀和參考了大量最新文獻作出的歸納總結,在這一點上本書與其他編程書籍有本質區別。本書的例子都是來自于現實世界中對圖像分辨和特征的競賽優勝模型,通過介紹這些例子可以使得讀者更深一步地了解和掌握其內在的算法和本質。
(3)本書作者有長期研究生和本科生教學經驗,通過通俗易懂的語言對全部內容進行講解,深入淺出地介紹了反饋神經網絡和卷積神經網絡理論體系的全部知識點,并在程序編寫時使用官方推薦的TensorFlow最新框架進行程序設計,幫助讀者更好地使用最新的模型框架,理解和掌握TensorFlow程序設計的精妙之處。
(4)作者認為,掌握和使用深度學習的人才應在掌握基本知識和理論的基礎上,重視實際應用程序開發能力和解決問題能力的培養。因此,本書結合作者在實際工作中遇到的大量實際案例進行分析,抽象化核心模型并給出具體解決方案,全部示例程序均提供了相應的代碼供讀者 學習。
本書有什么內容
本書共分為2218章,所有代碼均采用Python語言編寫,也是TensorFlow框架推薦使用語言。
第1章介紹了深度學習的基本內容,初步介紹了其應用于計算機視覺和發展方向,介紹了使用深度學習解決計算機視覺問題的應用前景。旨在說明使用深度學習和人工智能實現計算機視覺是未來的發展方向,也是必然趨勢。
第2章介紹了Python的安裝和最常用的類庫。Python語言是易用性非常強的語言,可以很方便地將公式和愿景以代碼的形式表達出來,而無須需學習過多的編程知識。并且本章也介紹了Python專用類庫threading的使用,這個類庫并不常見,但是為后文的數據讀取和TensorFlow專用格式的生成打下基礎。
第3章全面介紹機器學習的基本分類、算法和理論基礎,也介紹了不同算法,例如回歸算法和決策樹算法的具體實現和應用。這些是深度學習的基礎理論部分,通過這些內容向讀者透徹而準確地展示了深度學習的結構與應用,這為后文中更進一步掌握深度學習在計算機視覺中的應用打下扎實的基礎。
第4章主要介紹了Python語言的使用。通過介紹和實現不同的Python類庫,既幫助讀者強化了Python的編程能力,也學習了相應的類庫,這些都是在后文中反復使用的內容。同時借用掌握的知識,學習了數據的可視化展示能力,這個技能在數據分析中是一項基本技能,具有非常重要的作用。
第5~6章是對OpenCV類庫使用方法的介紹,本書是以圖像處理為重點,因此對圖像數據的讀取、編輯以及加工是本書數據處理的重中之重。而OpenCV是Python中專門用以對圖像處理的類庫,通過基礎講解和進階介紹使得讀者掌握這個重要類庫的使用。,學會對圖像的裁剪、變換和平移處理的代碼編寫。其中,第5章以例子的形式對卷積核的基礎內容做了一個介紹,并用Python語言實現了卷積核的功能。卷積核是本書的一個非常重要的基礎,也是圖像處理中一個非常重要的組成部分,通過編寫相應的程序去實現卷積核對圖像的處理,對掌握和理解卷積神經網絡有很大幫助。
第7~8章是TensorFlow的入門基礎,通過一個娛樂性質的網站向讀者介紹了TensorFlow的基本應用,用圖形圖像的方式演示了神經網絡進行類別分類的擬合過程,在娛樂的同時了解其背后的原理。
第9章是本書的一個重點,也是神經網絡的基礎內容,本章的反饋算法是解決神經網絡計算量過大的里程碑算法,作者通過詳細嚴謹的講解,使用通俗易懂的語言,對這個算法進行了介紹,并且通過獨立編寫代碼的形式,為讀者實現了這個神經網絡中最重要的算法。第9章的內容看起來不多,但是非常重要。
第10章開始正式進入了TensorFlow的程序設計內容,通過與Keras聯合學習,遵循TensorFlow官網的建議,使用Keras作為模型框架的高級API對程序進行編寫,通過多個小例子循序漸進地引導讀者使用TensorFlow 2.0做出第一個TensorFlow 2.0程序。
第11章是應用卷積神經網絡在TensorFlow框架上進行學習的一個基礎教程,經過前面章節的介紹,本章采用卷積神經網絡基本理論進行手寫體的辨識,這是深度學習最基本的技能,也是非常重要的一個學習基礎。在程序編寫的過程中,作者展示了參數調整對模型測試結果的重要作用,這是目前市面上相關圖書沒有涉及的內容,非常重要。
第12~13章是本書新增的內容,第12章著重介紹一些基本理論,卷積神經網絡的推導以及梯度更新反向傳播的算法,而為了更好地讓讀者掌握其相關內容,使用了一個簡單的例子做深入說明。第13章介紹TensorFlow 2.0新增的自帶數據庫和可視化工具TensorBoard。
第14章是ResNet的介紹,通過一個完整的例子,演示了使用卷積神經網絡進行圖像識別的流程。例子來自于ImageNet圖像識別競賽,所采用的模型也是比賽中獲得準確率最高的模型。通過對示例每一步的詳細分析,手把手地教會讀者使用卷積神經網絡進行圖像識別。
第15章是本書新增的內容,通過對最新前沿方向的追蹤,向讀者介紹了最新的注意力機制在圖像領域的應用,并講解了最新型的圖像處理模型SENET的細節和實現。這些內容都能夠給讀者帶來更好的理解,并加深對模型的認識和掌握。
第16章是本書的特色之一,針對神經網絡中一些較為常見而不易解答的問題做了一個統一的回復,其中既涉及理論也涉及最新的應用,讀者可以有針對性地進行學習。
第17章介紹了對抗生成網絡(GAN)的基本理論、應用以及相關的實現,并使用GAN網絡實現了一個手寫體的生成,當然既然可以生成手寫體,那么生成其他的相關圖片也是可以的。
第18章介紹了最新的前沿技術——圖卷積神經網絡,這是一個簡單的應用,但是可以認為圖卷積神經網絡是未來一段時間發展的前沿和趨勢,完全可能加強和加深目前的卷積神經網絡的工作以及加大神經網絡的應用范圍。
本書特點
(1)本書不是純粹的理論知識介紹,也不是高深的技術研討,完全是從實踐應用出發,用最簡單的、典型的示例引伸出核心知識,指明通往“高精尖”進一步深入學習的道路。
(2)本書沒有深入介紹某一個知識塊,而是全面介紹了TensorFlow涉及的圖像處理的基本結構和上層程序設計,藉此能夠系統地掌握深度學習的全貌,使讀者在學習的過程中不至于迷失方向。
(3)本書力求淺顯易懂,沒有深奧的數學知識,而是通過較為形象的方式,采用大量圖像例子描述了應用的理論知識,讓讀者在輕松愉悅的閱讀下掌握相關內容。
(4)本書旨在引導讀者進行更多技術上的創新,每章都會提供示例,以幫助讀者更好地理解本章的學習內容。
(5)本書代碼遵循重構原理,避免代碼污染,真心希望讀者能寫出優秀的、簡潔的、可維護的代碼。
示例代碼下載
本書示例代碼下載地址請掃描右邊二維碼獲得。
如果下載有問題或者對本書有任何疑問,請聯系booksaga@163.com,郵件主題為“TensorFlow 2.0深度學習應用實踐”。
本書適合讀者
本書適合于學習人工神經網絡、深度學習以及TensorFlow程序設計等相關內容的程序設計人員,也可以作為高等院校相關專業的教材。建議在學習本書內容的過程中,理論聯系實際,獨立進行一些代碼的編寫,采取開放式的實驗方法,即讀者自行準備實驗數據和實驗環境,解決實際問題,最終達到理論聯系實際的目的。
作者與致謝
本書作者現任計算機專業教師,擔負數據挖掘、Java程序設計、數據結構等多項本科及研究生課程,研究方向為數據倉庫與數據挖掘、人工智能、機器學習,在研和參研多項科研項目。本書在寫作過程中得到了家人們的大力支持,得到了本書的編輯們大力支持,在此對他們一并表示 感謝。
pagetop