內容簡介
TensorFlow.NET深度學習入門實踐教程,涵蓋了基礎API文檔和示例、.NET Keras簡明教程和實際生產套用案例實踐。
圖書目錄
第一部分 TensorFlow.NET API 入門
第 1 章 TensorFlow.NET 介紹 ........................................................................................... 2
1.1 TensorFlow.NET 特性 .................................................................................................. 2
1.2 TensorFlow.NET 開源庫結構 ...................................................................................... 3
第 2 章 數據類型與張量解 ...................................................................... 6
2.1 數據類型 ...................................................................................................................... 6
2.2 張量詳解 ...................................................................................................................... 7
2.3 常量與變數 .................................................................................................................. 8
2.4 字元串常見操作 .........................................................................................................11
2.5 基本張量操作 ............................................................................................................ 14
2.6 維度變換 .................................................................................................................... 19
2.7 合併分割 .................................................................................................................... 22
2.8 廣播機制 .................................................................................................................... 24
第 3 章 Eager Mode 詳解 ............................................................................................. 28
3.1 Eager Mode 說明 ........................................................................................................ 28
3.2 Eager Mode 比較 ........................................................................................................ 29
3.3 Eager Mode 數值運算 ................................................................................................ 31
3.4 Eager Mode 張量降維運算 ........................................................................................ 32
3.5 Eager Mode 矩陣運算 ................................................................................................ 35
3.6 print 與 tf.print 特性對比 ........................................................................................... 37
第 4 章 自動求導原理與套用 ............................................................................................ 44
4.1 機器學習中的求導 .................................................................................................... 44
4.2 簡單函式求導 ............................................................................................................ 45
4.3 複雜函式求偏導 ........................................................................................................ 46
第 5 章 線性回歸操 ............................................................................................................... 48
5.1 線性回歸問題 ............................................................................................................ 48
5.2 TensorFlow 下的線性回歸 ........................................................................................ 50
5.3 C#和 Python 的性能比較 .......................................................................................... 54
第 6 章 MNIST 手寫字元分類邏輯回歸 ................................................................................ 56
6.1 經典的 MNIST 手寫字元分類問題 .......................................................................... 56
6.2 邏輯回歸代碼實操 .................................................................................................... 63
第 7 章 tf.data 數據集創建與預處理 .................................................................................. 77
7.1 tf.data 介紹 ................................................................................................................. 77
7.2 tf.data 數據集創建 ..................................................................................................... 78
7.3 tf.data 數據預處理 ..................................................................................................... 81
7.4 tf.data 數據使用 ......................................................................................................... 89
第 8 章 深度神經網路實踐 ................................................................................................. 91
8.1 深度神經網路介紹 .................................................................................................... 91
8.2 TensorFlow.NET 代碼實操 1:DNN with Eager ...................................................... 93
8.3 TensorFlow.NET Keras 模型搭建的 3 種方式 ........................................................ 105
8.4 TensorFlow.NET 代碼實操 2:DNN with Keras .....................................................116
第 9 章 AutoGraph 機制詳解 ............................................................................................. 131
9.1 AutoGraph 機制說明 ............................................................................................... 131
9.2 AutoGraph 機制原理 ............................................................................................... 144
9.3 AutoGraph 編碼規範 ............................................................................................... 146
第二部分 .NET Keras 簡明教程
第 10 章 Keras 簡要介紹 ..................................................................................................... 149
10.1 Keras 特性 .............................................................................................................. 149
10.2 Keras 版本說明 ...................................................................................................... 150
第 11 章 模型與層 ................................................................................................................ 152
11.1 Keras 常用的模型與層 .......................................................................................... 152
11.2 自定義層 ................................................................................................................ 155
11.3 自定義模型 ............................................................................................................ 157
11.4 模型常用 API 概述 ................................................................................................ 160
第 12 章 Keras 常用 API 說明 .............................................................................................. 167
12.1 回調函式 ................................................................................................................ 167
12.2 數據集預處理 ........................................................................................................ 169
12.3 最佳化器 .................................................................................................................... 172
12.4 損失函式 ................................................................................................................ 175
12.5 評估指標 ................................................................................................................ 180
第 13 章 Keras 搭建模型的 3 種方式 ............................................................................. 184
13.1 Sequential API 方式 ............................................................................................... 185
13.2 Functional API 方式 ............................................................................................... 186
13.3 自定義模型 ............................................................................................................ 188
第 14 章 Keras 模型訓練 ...................................................................................................... 194
14.1 內置 fit 訓練 ........................................................................................................... 194
14.2 自定義訓練 ............................................................................................................ 196
第三部分 生產套用與案例
第 15 章 CPU 和 GPU 環境下的 TensorFlow.NET 套用 .................................................... 201
15.1 CPU 和 GPU 環境搭建及安裝 .............................................................................. 201
15.2 TensorFlow.NET 的圖像利器 SharpCV ................................................................ 221
第 16 章 工業生產環境套用案例 .......................................................................................... 228
16.1 工業機器視覺領域套用 ........................................................................................ 228
16.2 工業時間序列預測領域套用 ................................................................................ 247
第 17 章 在 C#下使用 TensorFlow.NET 訓練自己的數據集 ............................................. 254
17.1 項目說明 ................................................................................................................ 254
17.2 模型介紹 ................................................................................................................ 254
17.3 數據集說明 ............................................................................................................ 256
17.4 代碼說明 ................................................................................................................ 256
17.5 總結 ........................................................................................................................ 274
第 18 章 視覺圖像分類 ........................................................................................................ 275
18.1 卷積神經網路實現圖像分類 ................................................................................ 277
18.2 卷積神經網路詳解 ................................................................................................ 287
18.3 深入了解卷積神經網路 ........................................................................................ 319
第 19 章 視覺目標檢測 ..................................................................................................... 347
19.1 視覺目標檢測原理簡述 ........................................................................................ 347
19.2 YOLO v3 模型推理實踐 ....................................................................................... 360
19.3 YOLO v3 模型訓練實踐 ....................................................................................... 374
第 20 章 遷移學習套用 ............................................................................................... 393
20.1 遷移學習原理簡述 ................................................................................................ 393
20.2 Inception v3 網路 ................................................................................................... 396
20.3 遷移學習代碼實操 ................................................................................................ 400
第 21 章 自然語言處理 .......................................................................................................... 426
21.1 自然語言處理簡述 ................................................................................................ 426
21.2 詞向量 .................................................................................................................... 429
21.3 文本分類代碼實操 ................................................................................................ 446
第 22 章 生成對抗網路 .......................................................................................................... 467
22.1 生成對抗網路簡述 ................................................................................................ 467
22.2 生成對抗網路實戰案例 ........................................................................................ 479
第 23 章 F#套用案例 ........................................................................................................ 500
23.1 F#簡明教程 ............................................................................................................ 500
23.2 F#案例實踐 ............................................................................................................ 513
參考獻 ........................................................................................................................ 534
作者簡介
仇 華
從事機器視覺和機器學習開發的工作14年,在TCL擔任資深軟體工程師。SciSharp Stack開源社區核心組成員,TensorFlow蘇州社區創辦者,多年來專注於圖像算法和深度學習領域的研究,獲得谷歌深度學習開發者認證、微軟AIM人工智慧經理證書和蘇州市高級視覺工程師證書。
陳海平
從事軟體開發和系統架構設計的工作16年,在美國一家公司擔任高級軟體架構師。創辦SciSharp Stack開源社區,TensorFlow .NET創立和主要維護者,主要業餘時間都投入在開源社區的項目中。