書名:21個項目玩轉深度學習:基於TensorFlow的實踐詳解
定價:79.00元
作者:何之源
齣版社:電子工業齣版社
ISBN:9787121335716
1.本書以TensorFlow為工具,從基礎的MNIST手寫體識彆開始,介紹瞭基礎的捲積神經網絡、循環神經網絡,還包括正處於前沿的對抗生成網絡、深度強化學習等課題,代碼基於TensorFlow 1.4.0 及以上版本。
2.書中所有內容由21個可以動手實驗的項目組織起來,並在其中穿插TensorFlow的教學,讓你可以在實踐中比較輕鬆地學習到深度學習領域的基礎知識,掌握TensorFlow的使用方法,並積纍豐富的深度學習實戰經驗。
3.通過本書,可以學到:
在動手實踐中快速入門深度學習領域。
通過實驗快速掌握TensorFlow的操作方法。
掌握捲積神經網絡、循環神經網絡、對抗生成網絡和深度強化學習等深度學習積纍豐富的深度學習實戰項目,如圖像分類、目標檢測、人臉識彆、圖像生成、文本生成、序列分類、時間序列預測等。
學習TensorFlow的一些新特性,如TimeSeries模塊、RNNCell等。
《21個項目玩轉深度學習——基於TensorFlow的實踐詳解》以實踐為導嚮,深入介紹瞭深度學習技術和TensorFlow框架編程內容。 通過本書,讀者可以訓練自己的圖像識彆模型、進行目標檢測和人臉識彆、完成一個風格遷移應用,還可以使用神經網絡生成圖像和文本,進行時間序列預測、搭建機器翻譯引擎,訓練機器玩遊戲。全書共包含21個項目,分為深度捲積網絡、RNN網絡、深度強化學習三部分。讀者可以在自己動手實踐的過程中找到學習的樂趣,瞭解算法和編程框架的細節,讓學習深度學習算法和TensorFlow的過程變得輕鬆和高效。本書代碼基於TensorFlow 1.4及以上版本,並介紹瞭TensorFlow中的一些新特性。
本書適閤有一定機器學習基礎的學生、研究者或從業者閱讀,尤其是希望深入研究TensorFlow和深度學習算法的數據工程師,也適閤對人工智能、深度學習感興趣的在校學生,以及希望進入大數據應用的研究者。
前言
第1章 MNIST機器學習入門 1
1.1 MNIST數據集 2
1.1.1 簡介 2
1.1.2 實驗:將MNIST數據集保存為圖片 5
1.1.3 圖像標簽的獨熱(one-hot)錶示 6
1.2 利用TensorFlow識彆MNIST 8
1.2.1 Softmax迴歸 8
1.2.2 兩層捲積網絡分類 14
1.3 總結 18
第2章 CIFAR-10與ImageNet圖像識彆 19
2.1 CIFAR-10數據集 20
2.1.1 CIFAR-10簡介 20
2.1.2 下載CIFAR-10數據 21
2.1.3 TensorFlow的數據讀取機製 23
2.1.4 實驗:將CIFAR-10數據集保存為圖片形式 30
2.2 利用TensorFlow訓練CIFAR-10識彆模型 34
2.2.1 數據增強(Data Augmentation) 34
2.2.2 CIFAR-10識彆模型 36
2.2.3 訓練模型 39
2.2.4 在TensorFlow中查看訓練進度 39
2.2.5 測試模型效果 42
2.3 ImageNet圖像識彆模型 44
2.3.1 ImageNet數據集簡介 44
2.3.2 曆代ImageNet圖像識彆模型 45
2.4 總結 49
第3章 打造自己的圖像識彆模型 50
3.1 微調(Fine-tune)的原理 51
3.2 數據準備 52
3.3 使用TensorFlow Slim微調模型 56
3.3.1 下載TensorFlow Slim的源代碼 56
3.3.2 定義新的datasets文件 57
3.3.3 準備訓練文件夾 59
3.3.4 開始訓練 60
3.3.5 訓練程序行為 62
3.3.6 驗證模型正確率 63
3.3.7 TensorBoard可視化與超參數選擇 64
3.3.8 導齣模型並對單張圖片進行識彆 65
3.4 總結 69
第4章 Deep Dream模型 70
4.1 Deep Dream的技術原理 71
4.2 TensorFlow中的Deep Dream模型實踐 73
4.2.1 導入Inception模型 73
4.2.2 生成原始的Deep Dream圖像 76
4.2.3 生成更大尺寸的Deep Dream圖像 78
4.2.4 生成更高質量的Deep Dream圖像 82
4.2.5 *終的Deep Dream模型 87
4.3 總結 90
第5章 深度學習中的目標檢測 91
5.1 深度學習中目標檢測的原理 92
5.1.1 R-CNN的原理 92
5.1.2 SPPNet的原理 94
5.1.3 Fast R-CNN的原理 97
5.1.4 Faster R-CNN的原理 98
5.2 TensorFlow Object Detection API 101
5.2.1 安裝TensorFlow Object Detection API 101
5.2.2 執行已經訓練好的模型 103
5.2.3 訓練新的模型 109
5.2.4 導齣模型並預測單張圖片 113
5.3 總結 114
第6章 人臉檢測和人臉識彆 115
6.1 MTCNN的原理 116
6.2 使用深度捲積網絡提取特徵 121
6.2.1 三元組損失(Triplet Loss)的定義 123
6.2.2 中心損失(Center Loss)的定義 123
6.3 使用特徵設計應用 125
6.4 在TensorFlow中實現人臉識彆 126
6.4.1 項目環境設置 126
6.4.2 LFW人臉數據庫 127
6.4.3 LFW數據庫上的人臉檢測和對齊 128
6.4.4 使用已有模型驗證LFW數據庫準確率 129
6.4.5 在自己的數據上使用已有模型 130
6.4.6 重新訓練新模型 133
6.4.7 三元組損失和中心損失的定義 138
6.5 總結 140
第7章 圖像風格遷移 141
7.1 圖像風格遷移的原理 142
7.1.1 原始圖像風格遷移的原理 142
7.1.2 快速圖像風格遷移的原理 148
7.2 在TensorFlow中實現快速風格遷移 149
7.2.1 使用預訓練模型 150
7.2.2 訓練自己的模型 153
7.2.3 在TensorBoard中監控訓練情況 154
7.2.4 項目實現細節 157
7.3 總結 162
第8章 GAN和DCGAN入門 163
8.1 GAN的原理 164
8.2 DCGAN的原理 166
8.3 在TensorFlow中用DCGAN生成圖像 169
8.3.1 生成MNIST圖像 170
8.3.2 使用自己的數據集訓練 171
8.3.3 程序結構分析:如何將圖像讀入模型 173
8.3.4 程序結構分析:可視化方法 177
8.4 總結 180
第9章 pix2pix模型與自動上色技術 181
9.1 cGAN的原理 182
9.2 pix2pix模型的原理 184
9.3 TensorFlow中的pix2pix模型 187
9.3.1 執行已有的數據集 187
9.3.2 創建自己的數據集 191
9.4 使用TensorFlow為灰度圖像自動上色 194
9.4.1 為食物圖片上色 194
9.4.2 為動漫圖片進行上色 196
9.5 總結 198
第10章 超分辨率:如何讓圖像變得更清晰 199
10.1 數據預處理與訓練 200
10.1.1 去除圖片 200
10.1.2 將圖像裁剪到統一大小 202
10.1.3 為代碼添加新的操作 202
10.2 總結 209
第11章 CycleGAN與非配對圖像轉換 210
11.1 CycleGAN的原理 211
11.2 在TensorFlow中用訓練CycleGAN模型 213
11.2.1 下載數據集並訓練 213
11.2.2 使用自己的數據進行訓練 217
11.3 程序結構分析 220
11.4 總結 224
第12章 RNN基本結構與Char RNN文本生成 225
12.1 RNN的原理 226
12.1.1 經典RNN的結構 226
12.1.2 N VS 1 RNN的結構 229
12.1.3 1 VS N RNN的結構 230
12.2 LSTM的原理 231
12.3 Char RNN的原理 235
12.4 TensorFlow中的RNN實現方式 237
12.4.1 實現RNN的基本單元:RNNCell 238
12.4.2 對RNN進行堆疊:MultiRNNCell 239
12.4.3 注意點:BasicRNNCell和BasicLSTMCell的output 240
12.4.4 使用tf.nn.dynamic_rnn展開時間維度 241
12.5 使用TensorFlow實現Char RNN 242
12.5.1 定義輸入數據 243
12.5.2 定義多層LSTM模型 244
12.5.3 定義損失 245
12.5.4 訓練模型與生成文字 246
12.5.5 更多參數說明 250
12.5.6 運行自己的數據 250
12.6 總結 251
第13章 序列分類問題詳解 252
13.1 N VS 1的RNN結構 253
13.2 數列分類問題與數據生成 254
13.3 在TensorFlow中定義RNN分類模型 258
13.3.1 定義模型前的準備工作 258
13.3.2 定義RNN分類模型 259
13.3.3 定義損失並進行訓練 261
13.4 模型的推廣 262
13.5 總結 263
第14章 詞的嚮量錶示:word2vec與詞嵌入 264
14.1 為什麼需要做詞嵌入 265
14.2 詞嵌入的原理 266
14.2.1 CBOW實現詞嵌入的原理 266
14.2.2 Skip-Gram實現詞嵌入的原理 269
14.3 在TensorFlow中實現詞嵌入 270
14.3.1 下載數據集 270
14.3.2 製作詞錶 272
14.3.3 生成每步的訓練樣本 274
14.3.4 定義模型 276
14.3.5 執行訓練 279
14.3.6 可視化 281
14.4 與第12章的對比 284
14.5 總結 285
第15章 在TensorFlow中進行時間序列預測 286
15.1 時間序列問題的一般形式 287
15.2 用TFTS讀入時間序列數據 287
15.2.1 從Numpy數組中讀入時間序列數據 288
15.2.2 從CSV文件中讀入時間序列數據 291
15.3 使用AR模型預測時間序列 293
15.3.1 AR模型的訓練 293
15.3.2 AR模型的驗證和預測 295
15.4 使用LSTM模型預測時間序列 297
15.4.1 LSTM模型中的單變量時間序列預測 297
15.4.2 LSTM模型中的多變量時間序列預測 299
15.5 總結 301
第16章 神經網絡機器翻譯技術 302
16.1 Encoder-Decoder模型的原理 303
16.2 注意力機製(Attention) 305
16.3 使用TensorFlow NMT搭建神經網絡翻譯引擎 309
16.3.1 示例:將越南語翻譯為英語 309
16.3.2 構建中英翻譯引擎 313
16.4 TensorFlow NMT源碼簡介 317
16.5 總結 319
第17章 看圖說話:將圖像轉換為文字 320
17.1 Image Caption技術綜述 321
17.1.1 從Encoder-Decoder結構談起 321
17.1.2 將Encoder-Decoder應用到Image Caption任務上 322
17.1.3 對Encoder-Decoder的改進1:加入Attention機製 323
17.1.4 對Encoder-Decoder的改進2:加入高層語義 325
17.2 在TensorFlow中實現Image Caption 327
17.2.1 下載代碼 327
17.2.2 環境準備 328
17.2.2 編譯和數據準備 328
17.2.3 訓練和驗證 330
17.2.4 測試單張圖片 331
17.3 總結 332
第18章 強化學習入門之Q 333
18.1 強化學習中的幾個重要概念 334
18.2 Q Learning的原理與實驗 336
18.2.1 環境定義 336
18.2.2 Q函數 338
18.2.3 Q函數的學習策略 339
18.2.4 ?-greedy策略 341
18.2.5 簡單的Q Learning示例 341
18.2.6 更復雜的情況 342
18.3 總結 343
第19章 強化學習入門之SARSA算法 344
19.1 SARSA 算法的原理 345
19.1.1 通過與Q Learning對比學習SARSA算法 345
19.1.2 off-policy與on-policy 346
19.2 SARSA 算法的實現 347
19.3 總結 348
第20章 深度強化學習:Deep Q Learning 349
20.1 DQN算法的原理 350
20.1.1 問題簡介 350
20.1.2 Deep Q Network 351
20.1.3 訓練方法 352
20.2 在TensorFlow中運行DQN算法 353
20.2.1 安裝依賴庫 353
20.2.2 訓練 355
20.2.3 測試 356
20.3 在TensorFlow中DQN算法的實現分析 357
20.4 總結 360
第21章 策略梯度(Policy Gradient)算法 361
21.1 策略梯度(Policy Gradient)算法的原理 362
21.1.1 Cartpole遊戲 362
21.1.2 策略網絡(Policy Network) 363
21.1.3 訓練策略網絡 364
21.2 在TensorFlow中實現策略梯度 算法 365
21.2.1 初始化 365
21.2.2 定義策略網絡 366
21.2.3 訓練 367
21.3 總結 371
作為一名剛踏入深度學習領域不久的學習者,我發現市麵上很多書籍要麼過於理論化,要麼項目過於簡單,難以滿足我既想理解原理又想看到實際效果的需求。《21個項目玩轉深度學習》這本書,可以說完美地平衡瞭這兩者。它的21個項目,每一個都像是打開瞭一個新的世界,從基礎的分類、迴歸問題,到更具挑戰性的物體檢測、文本生成,甚至一些稍微深入的強化學習應用,都涵蓋瞭。我尤其贊賞它在項目講解中,對於TensorFlow API的運用非常熟練且清晰,讓你在實際編碼中能夠得心應手。很多時候,我會在看書的過程中,跟著代碼一步步復現,然後自己動手修改參數,觀察結果的變化,這種互動式的學習體驗,比單純地閱讀理論知識要深刻得多。書中對於一些關鍵的調參技巧和模型優化方法也有提及,這對於新手來說是非常寶貴的經驗。
評分這本書簡直是為那些想在深度學習領域“下水”但又怕觸礁的新手量身定做的!我之前嘗試過一些理論性太強的書,看得雲裏霧裏,結果是鼠標點瞭幾下就丟在瞭一邊。但《21個項目玩轉深度學習》完全不一樣,它的“玩轉”二字絕非虛言。開篇的例子就非常接地氣,比如如何用TensorFlow搭建一個簡單的圖像識彆模型,跟著書裏的步驟一步步來,你會發現那些曾經覺得遙不可及的算法,其實並沒有那麼高冷。而且,它不是那種“一個例子就說完瞭”的淺嘗輒止,而是真正地在每一個項目中,都會深入淺齣地講解背後的原理,讓你既能動手實踐,又能理解“為什麼”。我特彆喜歡它處理錯誤和調試的部分,給齣瞭很多非常實用的技巧,避免瞭新手們最常遇到的“程序跑不通,不知道問題齣在哪裏”的尷尬。總的來說,這本書就像一個耐心又經驗豐富的導師,循循善誘,讓你在玩中學,在學中玩,不知不覺就掌握瞭深度學習的核心技能,而且還能應用到實際問題中去。
評分不得不說,這本書的“實踐”二字真的做到瞭極緻。我之前也看過一些關於深度學習的書,但大多停留在概念和模型介紹,真正上手操作時總是會遇到各種各樣的問題。《21個項目玩轉深度學習》這本書,通過21個真實的項目案例,讓我切切實實地感受到瞭深度學習在解決實際問題中的強大能力。我最喜歡的是書中對每一個項目背後的數據處理、特徵工程、模型選擇以及評估方法的詳細介紹,這些都是實際開發中不可或缺的環節。而且,書中對TensorFlow框架的運用非常到位,讓我能夠更深入地理解這個強大的工具。我記得有一個項目是關於生成對抗網絡的,當時我感覺非常新奇,跟著書上的代碼一點點實現,最終成功生成瞭一些逼真的圖像,那種成就感是難以言喻的。這本書讓我不再是紙上談兵,而是真正地將深度學習技術“玩”瞭起來。
評分這本書為深度學習的學習提供瞭一個極其友好的入口,尤其對於我這種對理論基礎相對薄弱但又渴望快速上手的學習者來說,簡直是福音。《21個項目玩轉深度學習》的核心價值在於它將晦澀的技術語言轉化為生動鮮活的項目實踐。我發現,書中21個項目的選擇非常具有代錶性,涵蓋瞭從圖像處理到自然語言處理的多個重要領域,每一個項目都設計得非常貼閤實際應用場景,讓你能直觀地感受到深度學習的魅力。而且,它並沒有僅僅停留在“跑通代碼”的層麵,而是花瞭大量篇幅去解釋代碼背後的邏輯和算法原理,讓我在實踐的同時,也能不斷加深對深度學習理論的理解。書中的TensorFlow框架應用部分,講解得非常細緻,從最基礎的張量操作到復雜的模型構建,都循序漸進,讓我這個初學者也能輕鬆跟上。總而言之,這是一本能夠真正點燃你對深度學習興趣,並帶你踏上這條技術之路的優秀讀物。
評分這本書的獨特之處在於它將抽象的深度學習概念與具體的TensorFlow實踐巧妙地融閤在瞭一起,形成瞭一種非常有效的學習路徑。我之前對深度學習的一些理論知識有所瞭解,但總感覺缺乏一個將這些知識轉化為實際應用的能力,而這本書恰好彌補瞭這一點。它通過21個精心設計的項目,幾乎覆蓋瞭深度學習的各個重要分支,從基礎的神經網絡構建,到復雜的自然語言處理、計算機視覺應用,甚至還涉及瞭一些前沿的生成模型。讓我印象深刻的是,書中的項目設計邏輯性很強,往往是循序漸進的,前一個項目的知識點會自然地延續到下一個項目中,讓學習過程更加連貫和流暢。而且,對於每一個項目的實現,它都提供瞭詳盡的代碼解析,讓你不僅知道“怎麼做”,更能理解“為什麼這樣做”。這種“知其然,更知其所以然”的學習方式,極大地提升瞭我對深度學習的掌握程度。
本站所有內容均為互聯網搜尋引擎提供的公開搜索信息,本站不存儲任何數據與內容,任何內容與數據均與本站無關,如有需要請聯繫相關搜索引擎包括但不限於百度,google,bing,sogou 等
© 2025 book.cndgn.com All Rights Reserved. 新城书站 版權所有