大部分TensorFlow教材應(yīng)用案例少,理論講解比較概括,學(xué)生數(shù)學(xué)基礎(chǔ)薄弱,對人工神經(jīng)網(wǎng)絡(luò)較難入門。本教材介紹TensorFlow的發(fā)展和特點(diǎn)后,通過案例詳細(xì)介紹TensorFlow的使用,著重細(xì)致地講解學(xué)生學(xué)習(xí)中遇到的難點(diǎn),比如張量的形狀、卷積、池化、交叉熵等。通過案例讓學(xué)生逐層遞進(jìn)地掌握TensorFlow,最后將模型移植到安卓移動(dòng)終端,隨時(shí)隨地感受人工智能的魅力。
周倩:1996-2000 河南師范大學(xué)計(jì)算機(jī)科學(xué)系 本科學(xué)習(xí)2000-2006 河南科技學(xué)院計(jì)算機(jī)科學(xué)系 本科生教學(xué)2006-2008 北京郵電大學(xué)計(jì)算機(jī)科學(xué)系 研究生學(xué)習(xí)2008-至今 河南省濟(jì)源職業(yè)技術(shù)學(xué)院 信息工程系 高職教學(xué)
第1章 初識TensorFlow
1.1 場景導(dǎo)入 2
1.2 人工智能的發(fā)展歷程 3
1.2.1 早期人工智能階段 4
1.2.2 機(jī)器學(xué)習(xí)階段 4
1.2.3 深度學(xué)習(xí)階段 5
1.3 TensorFlow簡介 6
1.4 Anaconda的安裝和使用 7
1.4.1 安裝Anaconda 7
1.4.2 使用Anaconda 13
1.5 在Windows 10系統(tǒng)中安裝PyCharm 15
1.6 在Windows系統(tǒng)中安裝TensorFlow CPU版 20
1.6.1 創(chuàng)建和激活環(huán)境 20
1.6.2 解決錯(cuò)誤 23
1.7 在PyCharm中使用Anaconda的環(huán)境 24
1.7.1 新建和配置項(xiàng)目 24
1.7.2 再次查看項(xiàng)目配置 27
1.7.3 運(yùn)行案例代碼 28
1.8 在Windows系統(tǒng)中安裝Python版OpenCV 29
1.8.1 激活環(huán)境并安裝OpenCV 29
1.8.2 PyCharm配置 30
1.8.3 OpenCV代碼測試 31
第2章 深入了解TensorFlow
2.1 認(rèn)識TensorFlow數(shù)據(jù)流圖 34
2.1.1 數(shù)據(jù)流圖簡介 34
2.1.2 實(shí)現(xiàn)數(shù)據(jù)流圖 35
2.1.3 數(shù)據(jù)流圖代碼解析 35
2.2 TensorBoard的使用 37
2.2.1 TensorBoard的啟動(dòng) 37
2.2.2 TensorBoard界面介紹 40
2.3 TensorFlow張量思維 42
2.3.1 什么是張量 42
2.3.2 用Numpy定義張量 43
2.3.3 張量的形狀 44
2.4 TensorFlow中張量的幾種形式 47
2.4.1 常量 47
2.4.2 變量 48
2.4.3 占位符 51
第3章 機(jī)器學(xué)習(xí)入門
3.1 機(jī)器學(xué)習(xí)的基本步驟 54
3.2 泰坦尼克號案例 55
3.2.1 泰坦尼克號事件 55
3.2.2 泰坦尼克號案例數(shù)據(jù)集 56
3.2.3 訓(xùn)練數(shù)據(jù)集預(yù)處理 58
3.2.4 測試數(shù)據(jù)集預(yù)處理 60
3.2.5 搭建神經(jīng)網(wǎng)絡(luò) 60
3.2.6 進(jìn)行訓(xùn)練 62
3.2.7 進(jìn)行預(yù)測并可視化 62
3.3 MNIST手寫數(shù)字識別案例 64
3.3.1 數(shù)據(jù)集簡介 64
3.3.2 加載MNIST數(shù)據(jù)集 65
3.3.3 構(gòu)建網(wǎng)絡(luò)模型 66
3.3.4 訓(xùn)練模型 68
3.3.5 測試模型 68
3.3.6 矩陣乘法和加法規(guī)則 70
3.4 機(jī)器學(xué)習(xí)相關(guān)概念詳解 72
3.4.1 線性回歸模型 73
3.4.2 激活函數(shù) 73
3.4.3 交叉熵 75
3.4.4 梯度下降法 77
第4章 深度學(xué)習(xí)之圖像分類
4.1 卷積神經(jīng)網(wǎng)絡(luò) 80
4.1.1 卷積神經(jīng)網(wǎng)絡(luò)簡介 80
4.1.2 卷積 81
4.2 卷積神經(jīng)網(wǎng)絡(luò)的基本結(jié)構(gòu) 86
4.2.1 卷積層 87
4.2.2 大池化層 93
4.3 樹葉識別案例 95
4.3.1 樣本集簡介 95
4.3.2 卷積層 96
4.3.3 池化層 98
4.3.4 全連接層 100
4.3.5 正則化 103
4.3.6 其他部分的代碼 106
第5章 TensorFlow Lite
5.1 概述 115
5.2 如何使用TensorFlow Lite 116
5.2.1 使用步驟 116
5.2.2 模型格式 117
5.2.3 模型格式轉(zhuǎn)換 117
5.2.4 模型格式轉(zhuǎn)換完整代碼 118
5.3 樹葉識別案例 119
5.3.1 功能和界面設(shè)計(jì) 119
5.3.2 Android Studio配置 121
5.3.3 調(diào)用模型 123
5.3.4 使用模型 124
5.3.5 添加交互功能 125
5.4 “你畫我猜”案例 127
5.4.1 功能和界面設(shè)計(jì) 127
5.4.2 添加模型并配置項(xiàng)目 129
5.4.3 調(diào)用模型 130
5.4.4 使用模型 131
5.4.5 其他部分的代碼 131
第6章 TensorFlow的樹莓派應(yīng)用
6.1 嵌入式人工智能 138
6.1.1 概述 138
6.1.2 樹莓派簡介 138
6.2 樹莓派準(zhǔn)備工作 139
6.2.1 安裝操作系統(tǒng) 139
6.2.2 配置網(wǎng)絡(luò) 145
6.2.3 安裝VNC Viewer 145
6.2.4 安裝TensorFlow 147
6.2.5 安裝OpenCV 148
6.2.6 連接攝像頭 151
6.2.7 安裝tqdm庫 154
6.3 基于樹莓派的人臉識別案例 155
6.3.1 MTCNN人臉識別模型 155
6.3.2 下載并運(yùn)行人臉識別程序 157
第7章 Keras案例
7.1 Keras簡介 161
7.2 基于Keras的Fashion-MNIST案例 162
7.2.1 Fashion-MNIST數(shù)據(jù)集簡介 162
7.2.2 下載和加載Fashion-MNIST數(shù)據(jù)集 164
7.2.3 搭建網(wǎng)絡(luò) 165
7.2.4 編譯、訓(xùn)練和評估模型 167