TensorFlow Lite移動端深度學習循序漸進地講解了在移動設備中使用TensorFlow Lite開發機器學習和深度學習程序的核心知識,并通過具體實例演練了各知識點的使用方法和流程。全書共9章,分別講解了人工智能開發基礎、編寫個TensorFlow Lite程序、創建模型、轉換模型、推斷、優化處理、微控制器、物體檢測識別系統和姿勢預測器。全書簡潔而不失技術深度,內容豐富全面,以簡明的文字介紹了復雜的案例。同時書中配有二維碼視頻,結合視頻講解可加深對相關內容的理解,是學習TensorFlow Lite開發的實用教程。
TensorFlow Lite移動端深度學習適用于已經了解Python語言基礎語法和TensorFlow基礎,希望進一步提高自己Python開發水平的讀者閱讀,還可以作為大中專院校和相關培訓學校的專業教程。
來自IT大廠一線研發工程師的實戰經驗,詳解TensorFlow Lite機器學習和深度學習程序開發的關鍵技術。作者為浪潮云資深機器學習開發專家。
人工智能是研究、開發用于模擬、延伸和擴展人類智能的理論、方法、技術及應用系統的一門新的技術科學。TensorFlow Lite是一種用于設備端推斷的開源深度學習框架,可幫助開發者在移動設備、嵌入式設備和IoT設備上運行TensorFlow模型。也就是說,通過用TensorFlow Lite,可以開發出能夠在Android設備、iOS設備和IoT設備上使用的深度學習程序。
本書特色
1.內容全面
本書詳細講解了使用TensorFlow Lite開發人工智能程序的相關知識,循序漸進地引出這些知識的使用方法和技巧,幫助讀者快速步入Python 人工智能開發高手之列。
2.實例驅動
本書采用理論加實例的講解方式,通過實例實現了對知識點的橫向切入和縱向比較,讓讀者有更多的實踐演練機會,并且可以從不同的方位展現一個知識點的用法,真正實現了拔高的教學效果。
3.詳解TensorFlow Lite開發流程
本書從一開始便對TensorFlow Lite開發的流程進行了詳細介紹,而且在講解中結合了多個實用性很強的數據分析項目案例,帶領讀者掌握TensorFlow Lite開發的相關知識,以解決實際工作中的問題。
4.視頻講解
本書正文的每一個二級目錄都有一個視頻來輔助讀者學習,讀者可以通過掃描旁邊的二維碼來直接觀看。
本書讀者對象
軟件開發工程師。
Python機器學習開發者。
Python深度學習開發者。
數據庫工程師和系統管理員。
大學及中學教育工作者。
致謝
本書在編寫過程中,得到了機械工業出版社編輯的大力支持,正是各位編輯的求實、耐心和高效工作,才使得本書能夠順利出版。另外,也十分感謝我的家人給予的巨大支持。由于編者水平有限,書中難免存在紕漏之處,誠請讀者提出寶貴意見和建議,以便修訂時加以完善。作者QQ:150649826。
后感謝您購買本書,希望本書能成為您編程路上的領航者!
編者
資深機器學習開發工程師和架構師。現就職于浪潮云,專門從事大數據挖掘和通信大數據研發工作。
曾在谷歌應用市場發布多款經典應用程序并取得不錯的銷售業績。精通Python、C#、Java等語言,并且精通Android、iOS等主流移動端和Linux底層嵌入式開發技術。
TensorFlow Lite移動端深度學習
前言
第1章 人工智能開發基礎/
1.1人工智能的基礎知識/
1.1.1人工智能介紹/
1.1.2人工智能的發展歷程/
1.1.3人工智能的兩個重要發展階段/
1.1.4和人工智能相關的幾個重要概念/
1.2機器學習/
1.2.1什么是機器學習/
1.2.2機器學習的3個發展階段/
1.2.3機器學習的分類/
1.2.4深度學習和機器學習的對比/
1.3使用Python學習人工智能開發/
1.3.1Python在人工智能方面的優勢/
1.3.2常用的Python庫/
1.4TensorFlow開源庫/
1.4.1TensorFlow介紹/
1.4.2TensorFlow的優勢/
1.4.3TensorFlow Lite介紹/
第2章 編寫個TensorFlow Lite程序/
2.1安裝環境要求/
2.1.1硬件要求/
2.1.2軟件要求/
2.2安裝TensorFlow /
2.2.1使用pip安裝TensorFlow/
2.2.2使用Anaconda安裝TensorFlow/
2.2.3安裝TensorFlow Lite解釋器/
2.2.4解決速度過慢的問題/
2.3準備開發工具/
2.3.1使用PyCharm開發并調試運行TensorFlow程序/
2.3.2使用Colaboratory開發并調試運行TensorFlow程序/
2.4開發TensorFlow Lite程序的流程/
2.4.1準備模型/
2.4.2轉換模型/
2.4.3使用模型進行推斷/
2.4.4優化模型/
2.5在Android中創建TensorFlow Lite/
2.5.1需要安裝的工具/
2.5.2新建Android工程/
2.5.3使用JCenter中的TensorFlow Lite AAR/
2.5.4運行和測試/
第3章 創建模型/
3.1創建TensorFlow模型/
3.1.1在PyCharm環境實現/
3.1.2在Colaboratory環境實現/
3.2基于TensorFlow機器學習核心算法創建模型/
3.2.1線性回歸算法/
3.2.2邏輯回歸算法/
3.2.3二元決策樹算法/
3.2.4Bagging算法/
3.2.5Boosting算法/
3.2.6隨機森林算法/
3.2.7K近鄰算法/
第4章 轉換模型/
4.1TensorFlow Lite轉換器/
4.1.1轉換方式/
4.1.2將TensorFlow RNN轉換為TensorFlow Lite/
4.2將元數據添加到 TensorFlow Lite 模型/
4.2.1具有元數據格式的模型/
4.2.2使用Flatbuffers Python API添加元數據/
4.3使用TensorFlow Lite Task Library/
4.4手寫數字識別器/
4.4.1系統介紹/
4.4.2創建TensorFlow數據模型/
4.4.3將Keras模型轉換為TensorFlow Lite/
4.4.4Android手寫數字識別器/
第5章 推斷/
5.1TensorFlow Lite推斷的基本知識/
5.1.1推斷的基本步驟/
5.1.2推斷支持的平臺/
5.2運行模型/
5.2.1在Java程序中加載和運行模型/
5.2.2在 Swift程序中加載和運行模型/
5.2.3在ObjectiveC程序中加載和運行模型/
5.2.4在ObjectiveC中使用C API/
5.2.5在 C 中加載和運行模型/
5.2.6在 Python中加載和運行模型/
5.3運算符操作/
5.3.1運算符操作支持的類型/
5.3.2從TensorFlow中選擇運算符/
5.3.3自定義運算符/
5.3.4融合運算符/
5.4使用元數據進行推斷/
5.4.1元數據推斷基礎/
5.4.2使用元數據生成模型接口/
5.4.3使用TensorFlow Lite代碼生成器生成模型接口/
5.5通過Task庫集成模型/
5.5.1Task Library可以提供的內容/
5.5.2支持的任務/
5.5.3集成圖像分類器/
5.6自定義輸入和輸出/
第6章 優化處理/
6.1性能優化/
6.2TensorFlow Lite委托/
6.2.1選擇委托/
6.2.2評估工具/
6.3TensorFlow Lite GPU代理/
6.3.1在Android中使用TensorFlow Lite GPU代理/
6.3.2在iOS中使用TensorFlow Lite GPU代理/
6.3.3在自己的模型上使用GPU代理/
6.4硬件加速/
6.4.1使用GPU加速的優勢/
6.4.2Android中的硬件加速/
6.4.3iOS中的硬件加速/
6.4.4輸入/輸出緩沖器/
6.5模型優化/
6.5.1模型量化/
6.5.2訓練后量化/
6.5.3訓練后動態范圍量化/
6.5.4訓練后整數量化/
第7章 微控制器/
7.1適用于微控制器的 TensorFlow Lite/
7.2官方示例/
7.2.1Hello World示例/
7.2.2微語音示例/
7.3C 庫/
7.3.1文件結構/
7.3.2開始新項目/
7.3.3寫入新設備/
7.3.4構建二進制文件/
7.3.5優化內核/
7.3.6生成 Arduino 庫/
第8章 物體檢測識別系統/
8.1系統介紹/
8.2準備模型/
8.2.1模型介紹/
8.2.2自定義模型/
8.3Android物體檢測識別器/
8.3.1準備工作/
8.3.2頁面布局/
8.3.3實現主Activity/
8.3.4物體識別界面/
8.3.5相機預覽界面拼接/
8.3.6lib_task_api方案/
8.3.7lib_interpreter方案/
8.4iOS物體檢測識別器/
8.4.1系統介紹/
8.4.2視圖文件/
8.4.3相機處理/
8.4.4處理TensorFlow Lite模型/
第9章 姿勢預測器/
9.1系統介紹/
9.2準備模型/
9.2.1身體部位監測點說明/
9.2.2導入TensorFlow Lite模型/
9.3Android姿勢預測器/
9.3.1準備工作/
9.3.2頁面布局/
9.3.3實現主Activity/
9.3.4圖像處理/
9.3.5姿勢識別/