TensorFlow AI移動項目開發實戰 Intelligent Mobile Projects with TensorFlow: Build 10+ Artificial Intelligence apps using TensorFlow Mobile and Lite for iOS, Android, and Raspberry Pi

Jeff Tang 連曉峰等譯

商品描述

本書主要介紹使用TensorFlow為多個移動平台構建智能深度學習和強化學習應用程序。
內容涵蓋了10餘個由TensorFlow提供支持並從頭開始構建的完整的iOS、
Android和樹莓派應用程序,可在設備上離線運行各種TensorFlow模型:
從計算機視覺、語音識別和自然語言處理到生成對抗網絡以及AlphaZero(如深度強化學習)。
你將學習如何使用或再訓練現有的模型、構建模型以及開發能運行這些模型的智能移動應用程序,
並通過分步教程快速掌握如何構建此類應用程序,同時學會利用大量寶貴的故障排除技巧來避免實現過程中的許多陷阱。

本書主要適合構建和再訓練TensorFlow模型並在移動應用程序中運行該模型的iOS和Android開發人員,
或是在移動設備上運行新開發模型的TensorFlow開發人員閱讀。

目錄大綱

原書序
原書前言
關於作者
關於技術審校者
第1章移動TensorFlow入門//1 
1.1TensorFlow的安裝//1 
1.1.1在MacOS上安裝TensorFlow //2 
1.1.2在GPU驅動的Ubuntu操作系統上安裝TensorFlow //3 
1.2Xcode的安裝//7 
1.3Android Studio的安裝//7 
1.4TensorFlow Mobile與TensorFlow Lite對比//9 
1.5運行TensorFlow iOS示例應用程序//10 
1.6運行TensorFlow Android示例應用程序//10 
1.7小結//11 

第2章基於遷移學習的圖像分類//12 
2.1遷移學習的基本原理與應用//12 
2.2利用Inception v3模型進行再訓練//13 
2.3利用MobileNet模型進行再訓練//19 
2.4再訓練模型在iOS示例應用程序中的應用//21 
2.5再訓練模型在Android示例應用程序中的應用//22 
2.6在iOS應用程序中添加TensorFlow //23 
2.6.1在Objective-C的iOS應用程序中添加TensorFlow //23 
2.6.2在Swift的iOS應用程序中添加TensorFlow //28 
2.7在Android應用程序中添加TensorFlow //32 
2.8小結//35 

第3章目標檢測與定位//36 
3.1目標檢測概述//36 
3.2TensorFlow目標檢測API的安裝//38 
3.2.1快速安裝和示例//38 
3.2.2預訓練模型的應用//39 
3.3SSD-MobileNet和Faster RCNN再訓練模型//42 
3.4在iOS中使用目標檢測模型//47 
3.4.1手動構建TensorFlow iOS庫//47 
3.4.2在應用程序中使用TensorFlow iOS庫//48 
3.4.3為iOS應用程序添加目標檢測功能//50 
3.5YOLO2應用:另一種目標檢測模型//55 
3.6小結//57 

第4章圖像藝術風格遷移//58 
4.1神經風格遷移概述//58 
4.2快速神經風格遷移模型訓練//59 
4.3在iOS中應用快速神經風格遷移模型//61 
4.3.1添加並測試快速神經風格遷移模型//61 
4.3.2應用快速神經風格遷移模型的iOS代碼分析//62 
4.4在Android中應用快速神經風格遷移模型//64 
4.5在iOS中應用TensorFlow Magenta多風格模型//68 
4.6在Android中應用TensorFlow Magenta多風格模型//73 
4.7小結//75 

第5章理解簡單語音命令//77 
5.1語音識別概述//77 
5.2訓練簡單的命令識別模型//79 
5.3在Android中應用簡單的語音識別模型//82 
5.3.1通過模型構建新的應用程序//82 
5.3.2顯示模型驅動的識別結果//86 
5.4在基於Objective-C的iOS中應用簡單的語音識別模型//88 
5.4.1通過模型構建新的應用程序//88 
5.4.2利用tf_op_files.txt文件修正模型加載錯誤//93 
5.5在基於Swift的iOS中應用簡單的語音識別模型//93 
5.6小結//97 

第6章基於自然語言的圖像標註//98 
6.1圖像標註的工作原理//98 
6.2訓練和凍結圖像標註模型//100 
6.2.1訓練和測試標註生成//100 
6.2.2凍結圖像標註模型//102 
6.3轉換和優化圖像標註模型//106 
6.3.1利用轉換模型修正誤差//107 
6.3.2優化轉換模型//109 
6.4在iOS中應用圖像標註模型//110 
6.5在Android中應用圖像標註模型//117 
6.6小結//123 

第7章基於CNN和LSTM的繪圖識別//124 
7.1繪圖分類的工作原理//124 
7.2訓練、預測和準備繪圖分類模型//126 
7.2.1訓練繪圖分類模型//126 
7.2.2利用繪圖分類模型進行預測//127 
7.2.3準備繪圖分類模型//128 
7.3在iOS中應用繪圖分類模型//133 
7.3.1構建iOS的自定義TensorFlow庫//133 
7.3.2開發使用模型的iOS應用程序//134 
7.4在Android中應用繪圖分類模型//140 
7.4.1構建Android的自定義TensorFlow庫//140 
7.4.2開發使用模型的Android應用程序//142 
7.5小結//149 

第8章基於RNN的股票價格預測//150 
8.1RNN和股票價格預測的工作原理//150 
8.2利用TensorFlow RNN API進行股票價格預測//152 
8.2.1在TensorFlow中訓練RNN模型//152 
8.2.2測試TensorFlow RNN模型//155 
8.3利用Keras RNN LSTM API進行股票價格預測//157 
8.3.1在Keras中訓練RNN模型//157 
8.3.2測試Keras RNN模型//160 
8.4在iOS上運行TensorFlow和Keras模型//162 
8.5在Android上運行TensorFlow和Keras模型//167 
8.6小結//171 

第9章基於GAN的圖像生成與增強//172 
9.1GAN的工作原理//172 
9.2基於TensorFlow構建和訓練GAN模型//173 
9.2.1生成手寫體數字的基本GAN模型//174 
9.2.2提高圖像分辨率的改進GAN模型//175 
9.3在iOS中應用GAN模型//179 
9.3.1基本GAN模型應用//181 
9.3.2改進GAN模型應用//182 
9.4在Android中應用GAN模型//185 
9.4.1基本GAN模型應用//187 
9.4.2改進GAN模型應用//188 
9.5小結//190 

第10章移動設備上類AlphaZero的遊戲應用程序開發//192 
10.1AlphaZero的工作原理//193 
10.2訓練和測試用於Connect 4遊戲的類AlphaZero模型//194 
10.2.1訓練模型//194 
10.2.2測試模型//196 
10.2.3分析建模代碼//199 
10.2.4凍結模型//200 
10.3利用iOS中的模型玩Connect 4遊戲//201 
10.4利用Android中的模型玩Connect 4遊戲//211 
10.5小結//220 

第11章TensorFlow Lite和Core ML在移動設備上的應用//222 
11.1TensorFlow Lite概述//222 
11.2在iOS中使用TensorFlow Lite //223 
11.2.1運行TensorFlow Lite iOS示例應用程序//223 
11.2.2在iOS中使用預構建的TensorFlow Lite模型//225 
11.2.3在iOS中使用用於TensorFlow Lite的再訓練TensorFlow模型//229 
11.2.4在iOS中使用自定義的TensorFlow Lite模型//229 
11.3在Android中使用TensorFlow Lite //230 
11.4面向iOS的Core ML概述//233 
11.5結合Scikit Learn機器學習的Core ML應用//234 
11.5.1構建和轉換Scikit Learn模型//234 
11.5.2在iOS中使用轉換的Core ML模型//236 
11.6結合Keras和TensorFlow的Core ML應用//237 
11.7小結//241 

第12章樹莓派上的TensorFlow應用程序開發//242 
12.1安裝樹莓派並運行//243 
12.1.1安裝樹莓派//243 
12.1.2運行樹莓派//245 
12.2在樹莓派上安裝TensorFlow //247 
12.3圖像識別和文本-語音轉換//249 
12.4音頻識別和機器人運動//250 
12.5樹莓派上的強化學習//252 
12.5.1理解CartPole仿真環境//253 
12.5.2基本直覺策略//256 
12.5.3利用神經網絡構建更好的策略//257 
12.6小結//263 
結束語//264